- TaxonNameEditor editor = (TaxonNameEditor) EditorUtil.getActiveEditorPage(
- Page.NAME);
-
- Taxon taxonToBeFiltered = editor.getTaxon();
-
- /* we need to get the activePart before calling TaxonBaseSelectionDialog.selectTaxon(), otherwise the
+ IUndoContext undoContext = null;
+ ConversationHolder conversationHolder = null;
+ Taxon taxon = null;
+ IEditorPart activeEditor = AbstractUtility.getActiveEditor();
+ if(activeEditor instanceof MultiPageTaxonEditor){
+ MultiPageTaxonEditor taxonEditor = (MultiPageTaxonEditor)activeEditor;
+ taxon = taxonEditor.getTaxon();
+ conversationHolder = taxonEditor.getConversationHolder();
+ undoContext = taxonEditor.getUndoContext();
+ }
+ else if(activeEditor instanceof BulkEditor){
+ BulkEditor bulkEditor = (BulkEditor)activeEditor;
+ ISelection selection = bulkEditor.getSelectionProvider().getSelection();
+ taxon = (Taxon) ((IStructuredSelection)selection).getFirstElement();
+ conversationHolder = bulkEditor.getConversationHolder();
+ undoContext = bulkEditor.getUndoContext();
+ }
+
+
+ /* we need to get the activePart before calling TaxonBaseSelectionDialog.selectTaxon(), otherwise the