Revision 6931cd11
Added by Cherian Mathew almost 11 years ago
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/handler/OpenDefinedTermEditorHandler.java | ||
---|---|---|
1 | 1 |
package eu.etaxonomy.taxeditor.editor.definedterm.handler; |
2 |
import java.util.UUID; |
|
3 |
|
|
2 | 4 |
import org.eclipse.core.commands.AbstractHandler; |
3 | 5 |
import org.eclipse.core.commands.ExecutionEvent; |
4 | 6 |
import org.eclipse.core.commands.ExecutionException; |
5 | 7 |
import org.eclipse.core.commands.IHandler; |
6 |
import org.eclipse.core.commands.IParameter; |
|
7 |
import org.eclipse.core.commands.common.NotDefinedException; |
|
8 | 8 |
import org.eclipse.ui.IWorkbenchPage; |
9 | 9 |
import org.eclipse.ui.PartInitException; |
10 |
import org.eclipse.ui.handlers.HandlerUtil; |
|
11 |
import org.eclipse.ui.handlers.ShowViewHandler; |
|
12 | 10 |
|
13 |
import eu.etaxonomy.cdm.model.common.DefinedTermBase; |
|
14 |
import eu.etaxonomy.cdm.model.location.NamedArea; |
|
11 |
import eu.etaxonomy.cdm.model.common.TermType; |
|
15 | 12 |
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor; |
16 |
import eu.etaxonomy.taxeditor.editor.definedterm.input.DefinedTermEditorInputFactory;
|
|
13 |
import eu.etaxonomy.taxeditor.editor.definedterm.input.TermEditorInput;
|
|
17 | 14 |
import eu.etaxonomy.taxeditor.store.StoreUtil; |
18 | 15 |
|
19 | 16 |
// $Id$ |
... | ... | |
31 | 28 |
* @date 8 Dec 2011 |
32 | 29 |
* |
33 | 30 |
*/ |
34 |
public class OpenDefinedTermEditorHandler extends AbstractHandler implements |
|
35 |
IHandler { |
|
31 |
public class OpenDefinedTermEditorHandler extends AbstractHandler implements IHandler { |
|
36 | 32 |
|
37 | 33 |
/* (non-Javadoc) |
38 | 34 |
* @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent) |
39 | 35 |
*/ |
40 | 36 |
@Override |
41 | 37 |
public Object execute(ExecutionEvent event) throws ExecutionException { |
42 |
|
|
38 |
|
|
39 |
String termTypeUuid = event.getParameter("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.termTypeUuid"); |
|
40 |
IWorkbenchPage activePage = StoreUtil.getActivePage(); |
|
43 | 41 |
try { |
44 |
String parameter = event.getParameter("eu.etaxonomy.taxeditor.store.openDefinedTermEditor.parameter"); |
|
45 |
Class<? extends DefinedTermBase> clazz = (Class<? extends DefinedTermBase>) Class.forName(parameter); |
|
46 |
|
|
47 |
IWorkbenchPage activePage = StoreUtil.getActivePage(); |
|
48 |
try { |
|
49 |
activePage.openEditor(DefinedTermEditorInputFactory.NewInstance(clazz), DefinedTermEditor.ID); |
|
50 |
} catch (PartInitException e) { |
|
51 |
StoreUtil.error(getClass(), e); |
|
52 |
} |
|
53 |
} catch (ClassNotFoundException e) { |
|
42 |
activePage.openEditor(new TermEditorInput(TermType.getByUuid(UUID.fromString(termTypeUuid))), DefinedTermEditor.ID); |
|
43 |
} catch (PartInitException e) { |
|
54 | 44 |
StoreUtil.error(getClass(), e); |
55 | 45 |
} |
46 |
|
|
56 | 47 |
return null; |
57 | 48 |
} |
58 | 49 |
|
Also available in: Unified diff
updated handlers to be more consistent and use the new TermEditorInput which stores the in memory list of vocabularies
OpenDefinedTermMenu : not used anymore