Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenjamin Cabe2010-03-17 10:05:04 +0000
committerBenjamin Cabe2010-03-17 10:05:04 +0000
commite18cff011a34b2eaee368f1ebdc8f2bb4426d9f7 (patch)
treedb6fd22d2bb9f7e78bf84ee0e0509300cd28fd83
parent70103970deeaee346de1e74255fe174a2c379429 (diff)
downloadeclipse.pde.incubator-e18cff011a34b2eaee368f1ebdc8f2bb4426d9f7.tar.gz
eclipse.pde.incubator-e18cff011a34b2eaee368f1ebdc8f2bb4426d9f7.tar.xz
eclipse.pde.incubator-e18cff011a34b2eaee368f1ebdc8f2bb4426d9f7.zip
better handling of java projects
-rw-r--r--modeling/plugins/org.eclipse.pde.ds.ui/src/org/eclipse/pde/ds/ui/internal/handlers/AddScrBuilderHandler.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/modeling/plugins/org.eclipse.pde.ds.ui/src/org/eclipse/pde/ds/ui/internal/handlers/AddScrBuilderHandler.java b/modeling/plugins/org.eclipse.pde.ds.ui/src/org/eclipse/pde/ds/ui/internal/handlers/AddScrBuilderHandler.java
index c727c97..c881b62 100644
--- a/modeling/plugins/org.eclipse.pde.ds.ui/src/org/eclipse/pde/ds/ui/internal/handlers/AddScrBuilderHandler.java
+++ b/modeling/plugins/org.eclipse.pde.ds.ui/src/org/eclipse/pde/ds/ui/internal/handlers/AddScrBuilderHandler.java
@@ -2,8 +2,7 @@ package org.eclipse.pde.ds.ui.internal.handlers;
import org.eclipse.core.commands.*;
import org.eclipse.core.resources.*;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.*;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.ui.handlers.HandlerUtil;
@@ -24,11 +23,22 @@ public class AddScrBuilderHandler extends AbstractHandler {
* the command has been executed, so extract extract the needed information
* from the application context.
*/
+ /* (non-Javadoc)
+ * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+ */
public Object execute(ExecutionEvent event) throws ExecutionException {
ISelection sel = HandlerUtil.getCurrentSelection(event);
if (!sel.isEmpty()) {
if (sel instanceof IStructuredSelection) {
- IProject project = (IProject) ((IStructuredSelection) sel).getFirstElement();
+ Object elem = ((IStructuredSelection) sel).getFirstElement();
+ IProject project;
+ if (elem instanceof IProject)
+ project = (IProject) elem;
+ else if (elem instanceof IAdaptable) {
+ project = (IProject) ((IAdaptable) elem).getAdapter(IProject.class);
+ } else {
+ return null;
+ };
IProjectDescription projectDescription = null;
try {

Back to the top