From fb9ff83a83a75094bd0eaea6e9953fb591b488c5 Mon Sep 17 00:00:00 2001
From: Patrick Plitzner
Date: Tue, 11 Jul 2017 14:28:43 +0200
Subject: [PATCH] ref #6786 Save before opening new feature tree
---
.../taxeditor/featuretree/e4/FeatureTreeEditor.java | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/FeatureTreeEditor.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/FeatureTreeEditor.java
index ef3289854..2822f1b8a 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/FeatureTreeEditor.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/FeatureTreeEditor.java
@@ -49,6 +49,7 @@ import eu.etaxonomy.cdm.model.description.FeatureNode;
import eu.etaxonomy.cdm.model.description.FeatureTree;
import eu.etaxonomy.taxeditor.featuretree.AvailableFeaturesWizard;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.model.MessagingUtils;
import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
import eu.etaxonomy.taxeditor.store.CdmStore;
@@ -98,6 +99,15 @@ public class FeatureTreeEditor implements ICdmEntitySessionEnabled,
new FeatureNodeDropAdapter(this, composite.getViewer()), this, new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
+ if(isDirty()){
+ if(MessagingUtils.confirmDialog("Editor has to be saved", "You have to save before loading another feature tree. Save now?")){
+ save();
+ }
+ else{
+ return;
+ }
+
+ }
FeatureTree tree = FeatureTreeSelectionDialog.select(shell, conversation, null);
if (tree != null) {
composite.setSelectedTree(tree, FeatureTreeEditor.this);
--
2.34.1