diff options
author | Benjamin Cabe | 2010-03-17 10:05:04 +0000 |
---|---|---|
committer | Benjamin Cabe | 2010-03-17 10:05:04 +0000 |
commit | e18cff011a34b2eaee368f1ebdc8f2bb4426d9f7 (patch) | |
tree | db6fd22d2bb9f7e78bf84ee0e0509300cd28fd83 | |
parent | 70103970deeaee346de1e74255fe174a2c379429 (diff) | |
download | eclipse.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.java | 16 |
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 { |