Revision 3429c5db
Added by Patrick Plitzner over 9 years ago
- added support for image gallery creation for FieldUnits (#4389)
- added support for DerivateView to MediaView
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/handler/AddImageGalleryHandler.java | ||
---|---|---|
9 | 9 |
import org.eclipse.core.commands.common.NotDefinedException; |
10 | 10 |
import org.eclipse.jface.viewers.ISelection; |
11 | 11 |
import org.eclipse.jface.viewers.IStructuredSelection; |
12 |
import org.eclipse.jface.viewers.TreeNode; |
|
12 | 13 |
import org.eclipse.ui.IEditorInput; |
13 | 14 |
import org.eclipse.ui.IEditorPart; |
14 | 15 |
import org.eclipse.ui.IWorkbenchPart; |
... | ... | |
21 | 22 |
import eu.etaxonomy.taxeditor.bulkeditor.input.OccurrenceEditorInput; |
22 | 23 |
import eu.etaxonomy.taxeditor.editor.EditorUtil; |
23 | 24 |
import eu.etaxonomy.taxeditor.editor.TaxonEditorInput; |
25 |
import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView; |
|
26 |
import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateViewEditorInput; |
|
24 | 27 |
import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.AddDerivedUnitFacadeMediaOperation; |
25 | 28 |
import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.CreateTaxonDescriptionOperation; |
26 | 29 |
import eu.etaxonomy.taxeditor.model.AbstractUtility; |
... | ... | |
65 | 68 |
else if(input instanceof OccurrenceEditorInput){ |
66 | 69 |
BulkEditor bulkEditor = (BulkEditor) editor; |
67 | 70 |
ISelection selection = bulkEditor.getSelectionProvider().getSelection(); |
68 |
|
|
69 |
if(selection instanceof IStructuredSelection){ |
|
70 |
Object element = ((IStructuredSelection) selection).getFirstElement(); |
|
71 |
if(element instanceof SpecimenOrObservationBase<?>){ |
|
72 |
try { |
|
73 |
AbstractPostOperation<?> operation = new AddDerivedUnitFacadeMediaOperation(event.getCommand().getName(), |
|
74 |
BulkEditorUtil.getUndoContext(), (SpecimenOrObservationBase<?>)element, postOperationEnabled); |
|
75 |
AbstractUtility.executeOperation(operation); |
|
76 |
} catch (NotDefinedException e) { |
|
77 |
MessagingUtils.warn(getClass(), "Command name not set."); |
|
78 |
} |
|
79 |
} |
|
80 |
} |
|
71 |
invokeOperation(event, postOperationEnabled, selection); |
|
72 |
} |
|
73 |
else if(input instanceof DerivateViewEditorInput){ |
|
74 |
ISelection selection = ((DerivateView)editor).getSelection(); |
|
75 |
invokeOperation(event, postOperationEnabled, selection); |
|
81 | 76 |
} |
82 | 77 |
return null; |
83 | 78 |
} |
84 | 79 |
|
80 |
/** |
|
81 |
* @param event |
|
82 |
* @param postOperationEnabled |
|
83 |
* @param selection |
|
84 |
*/ |
|
85 |
private void invokeOperation(ExecutionEvent event, IPostOperationEnabled postOperationEnabled, ISelection selection) { |
|
86 |
if(selection instanceof IStructuredSelection){ |
|
87 |
Object element = ((IStructuredSelection) selection).getFirstElement(); |
|
88 |
if(element instanceof TreeNode){ |
|
89 |
element = ((TreeNode) element).getValue(); |
|
90 |
} |
|
91 |
if(element instanceof SpecimenOrObservationBase<?>){ |
|
92 |
try { |
|
93 |
AbstractPostOperation<?> operation = new AddDerivedUnitFacadeMediaOperation(event.getCommand().getName(), |
|
94 |
BulkEditorUtil.getUndoContext(), (SpecimenOrObservationBase<?>)element, postOperationEnabled); |
|
95 |
AbstractUtility.executeOperation(operation); |
|
96 |
} catch (NotDefinedException e) { |
|
97 |
MessagingUtils.warn(getClass(), "Command name not set."); |
|
98 |
} |
|
99 |
} |
|
100 |
} |
|
101 |
} |
|
102 |
|
|
85 | 103 |
} |
Also available in: Unified diff