ref #7086 set WS editor dirty when selecting feature tree
authorPatrick Plitzner <p.plitzner@bgbm.org>
Thu, 26 Apr 2018 07:19:12 +0000 (09:19 +0200)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Fri, 27 Apr 2018 09:57:52 +0000 (11:57 +0200)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/WorkingSetEditor.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/e4/FeatureTreeEditorComposite.java

index 3e9d83e57c98b709740f1a168ed2de697fe7cd2a..d84a973ee8936be66260063df3b296c2cddd8aff 100644 (file)
@@ -145,7 +145,7 @@ IPartContentHasDetails, IDirtyMarkable {
             }
         });
 
-        composite.getFeatureTreeEditorComposite().init(null, null, e->selectionService.setSelection(e.getSelection()), null, null);
+        composite.getFeatureTreeEditorComposite().init(null, null, e->selectionService.setSelection(e.getSelection()), this, null);
 
         //add drag'n'drop support
         Transfer[] transfers = new Transfer[] {LocalSelectionTransfer.getTransfer()};
index 52f16787952be125fea6af8c272a37e243d6d834..d249461745c6b966ecb2a7c39a845c623f2bc15a 100644 (file)
@@ -34,6 +34,7 @@ import eu.etaxonomy.taxeditor.featuretree.FeatureNodeTransfer;
 import eu.etaxonomy.taxeditor.featuretree.FeatureTreeContentProvider;
 import eu.etaxonomy.taxeditor.featuretree.FeatureTreeLabelProvider;
 import eu.etaxonomy.taxeditor.l10n.Messages;
+import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.ImageResources;
 import eu.etaxonomy.taxeditor.ui.dialog.selection.FeatureTreeSelectionDialog;
 
@@ -82,10 +83,23 @@ public class FeatureTreeEditorComposite extends Composite{
                 new GridData(SWT.FILL, SWT.FILL, true, true));
     }
 
+    public void init(DragSourceListener dragSourceListener, DropTargetListener dropTargetListener,
+            ISelectionChangedListener viewerSelectionChangedListener, IDirtyMarkable dirtyMarkable,
+            ModifyListener textModifyListener) {
+        this.init(dragSourceListener, dropTargetListener, viewerSelectionChangedListener, null, dirtyMarkable,
+                textModifyListener);
+    }
     public void init(DragSourceListener dragSourceListener, DropTargetListener dropTargetListener,
             ISelectionChangedListener viewerSelectionChangedListener,
             SelectionListener openFeatureTreeSelectionListener,
             ModifyListener textModifyListener) {
+        init(dragSourceListener, dropTargetListener, viewerSelectionChangedListener, openFeatureTreeSelectionListener,
+                null, textModifyListener);
+    }
+    private void init(DragSourceListener dragSourceListener, DropTargetListener dropTargetListener,
+            ISelectionChangedListener viewerSelectionChangedListener,
+            SelectionListener openFeatureTreeSelectionListener, IDirtyMarkable dirtyMarkable,
+            ModifyListener textModifyListener) {
         viewer.setContentProvider(new FeatureTreeContentProvider());
         viewer.setLabelProvider(new FeatureTreeLabelProvider());
 
@@ -121,6 +135,9 @@ public class FeatureTreeEditorComposite extends Composite{
                     if(tree!=null){
                         setSelectedTree(tree);
                         text_title.setEnabled(false);
+                        if(dirtyMarkable!=null){
+                            dirtyMarkable.forceDirty();
+                        }
                     }
                 }
             });