Project

General

Profile

« Previous | Next » 

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

View differences:

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