From: Katja Luther Date: Thu, 22 Oct 2015 12:22:44 +0000 (+0200) Subject: fix #5342 X-Git-Tag: 3.12.0^2~80 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/commitdiff_plain/b244c10091d971dc49ec28de75fa1a7c9e2cb515?hp=8a103457d477efa509526bd6871af780ec8b30a6 fix #5342 --- diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java index a87cb24d2..c51d0ee05 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/MoveDescriptionToOtherTaxonHandler.java @@ -12,6 +12,7 @@ import org.eclipse.core.commands.AbstractHandler; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.commands.common.NotDefinedException; +import org.eclipse.jface.dialogs.MessageDialog; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.swt.widgets.Display; @@ -26,9 +27,7 @@ import eu.etaxonomy.cdm.model.taxon.Classification; import eu.etaxonomy.cdm.model.taxon.TaxonNode; import eu.etaxonomy.taxeditor.editor.EditorUtil; import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor; -import eu.etaxonomy.taxeditor.editor.Page; import eu.etaxonomy.taxeditor.editor.TaxonEditorInput; -import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor; import eu.etaxonomy.taxeditor.editor.view.descriptive.operation.MoveDescriptionToOtherTaxonOperation; import eu.etaxonomy.taxeditor.model.AbstractUtility; import eu.etaxonomy.taxeditor.model.FeatureNodeContainer; @@ -53,7 +52,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler private MoveDescriptionToOtherTaxonOperation operation; private UUID newAcceptedTaxonNodeUuid; - private TaxonNameEditor editor; + private MultiPageTaxonEditor editor; /* (non-Javadoc) * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent) @@ -63,6 +62,18 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler public Object execute(ExecutionEvent event) throws ExecutionException { ISelection selection = HandlerUtil.getCurrentSelection(event); + editor = EditorUtil.getActiveMultiPageTaxonEditor(); + if (this.editor.isDirty()){ + boolean proceed = MessageDialog.openQuestion(null, + "Save changes", "You have made changes that must be saved before this query can be executed. Would you like to proceed?"); + if (proceed) { + editor.doSave(EditorUtil.getMonitor()); + } else { + return null; + } + + } + if(selection instanceof IStructuredSelection){ @@ -88,7 +99,8 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler // Choose the target taxon List excludeTaxa = new ArrayList(); - editor = (TaxonNameEditor) EditorUtil.getActiveEditorPage(Page.NAME); + + excludeTaxa.add(descriptions.get(0).getTaxon().getUuid()); //get current taxon node @@ -143,7 +155,7 @@ public class MoveDescriptionToOtherTaxonHandler extends AbstractHandler @Override public void run() { - AbstractUtility.close(editor.getMultiPageTaxonEditor()); + AbstractUtility.close(editor); try { MultiPageTaxonEditor possibleOpenEditor = (MultiPageTaxonEditor) EditorUtil.findEditorByTaxonNodeUuid(newAcceptedTaxonNodeUuid);