From: Patrick Plitzner Date: Wed, 10 Apr 2019 15:31:23 +0000 (+0200) Subject: ref #8233 Ask for saving before cloning type designation X-Git-Tag: 5.6.0^2~15 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/taxeditor.git/commitdiff_plain/061229902cd06d5630ad54b000d4215e50b16ba6 ref #8233 Ask for saving before cloning type designation --- diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/TypeDesignationSection.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/TypeDesignationSection.java index 1e5d53b57..2b679552c 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/TypeDesignationSection.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/TypeDesignationSection.java @@ -50,6 +50,7 @@ import eu.etaxonomy.taxeditor.ui.section.ITaxonBaseDetailSection; import eu.etaxonomy.taxeditor.ui.section.name.operation.DeleteTypeDesignationOperation; import eu.etaxonomy.taxeditor.ui.section.name.type.CloneTypeWizard; import eu.etaxonomy.taxeditor.view.e4.details.DetailsPartE4; +import eu.etaxonomy.taxeditor.workbench.part.IE4SavablePart; /** * @author n.hoffmann @@ -71,9 +72,15 @@ public class TypeDesignationSection extends AbstractEntityCollectionSectiondesignation instanceof SpecimenTypeDesignation)){ return; } - Action addAction = new Action(Messages.TypeDesignationSection_CREATE_DUPLICATE, IAction.AS_PUSH_BUTTON){ + Action cloneAction = new Action(Messages.TypeDesignationSection_CREATE_DUPLICATE, IAction.AS_PUSH_BUTTON){ @Override public void run() { + DetailsPartE4 detailsView = AbstractUtility.getDetailsView(getFormFactory().getContext().get((EPartService.class))); + if(detailsView!=null + && detailsView.getSelectionProvidingPart().getObject() instanceof IE4SavablePart + && StoreUtil.promptCheckIsDirty(((IE4SavablePart)detailsView.getSelectionProvidingPart().getObject()))){ + return; + } CloneTypeWizard wizard = new CloneTypeWizard(getEntity()); WizardDialog dialog = new WizardDialog(getShell(), wizard); @@ -89,20 +96,20 @@ public class TypeDesignationSection extends AbstractEntityCollectionSection