ref #6475 Make specimen tree editor collapsable and expandable
authorPatrick Plitzner <p.plitzner@bgbm.org>
Tue, 21 Aug 2018 13:13:25 +0000 (15:13 +0200)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Tue, 21 Aug 2018 13:13:25 +0000 (15:13 +0200)
eu.etaxonomy.taxeditor.editor/fragment.e4xmi
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java

index b0aa42ba65ccfaa720e2fd111fba0c0f36302174..c9c0530b5a56472165d25451d68185424d354787 100644 (file)
         <children xsi:type="menu:HandledMenuItem" xmi:id="_XWW6QDulEeeOtqC_3qh40A" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.commandlabel52" label="%command.label.52" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.store/icons/delete.gif" command="_YPp1wDvREeeOtqC_3qh40A"/>
         <children xsi:type="menu:HandledMenuItem" xmi:id="_wg0-oDulEeeOtqC_3qh40A" elementId="eu.etaxonomy.taxeditor.editor.handledmenuitem.commandlabel54" label="%command.label.54" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.editor/icons/deep-delete-16x16-32.png" command="_fKT-wDulEeeOtqC_3qh40A"/>
       </menus>
+      <toolbar xmi:id="_jJiDMKVCEeiOhbiMMblbew" elementId="eu.etaxonomy.taxeditor.editor.toolbar.3">
+        <children xsi:type="menu:HandledToolItem" xmi:id="_lfX5MKVCEeiOhbiMMblbew" elementId="eu.etaxonomy.taxeditor.editor.specimen.handledtoolitem.collapse" label="%handledtoolitem.label.1" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.store/icons/collapseall.gif" command="_0WYQcL2lEeeyWfw0n8-ICQ"/>
+        <children xsi:type="menu:HandledToolItem" xmi:id="_oV6ogKVCEeiOhbiMMblbew" elementId="eu.etaxonomy.taxeditor.editor.specimen.handledtoolitem.expand" label="%handledtoolitem.label.2" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.store/icons/expandAll.jpg" command="_vDKPoL4vEeewU62zpvPllA"/>
+      </toolbar>
     </elements>
     <elements xsi:type="basic:PartDescriptor" xmi:id="_R7vxEECaEeeL5JDzMOYK6g" elementId="eu.etaxonomy.taxeditor.editor.descriptiveDataSet.CharacterEditor" label="%partdescriptor.label.1" closeable="true" dirtyable="true" contributionURI="bundleclass://eu.etaxonomy.taxeditor.editor/eu.etaxonomy.taxeditor.editor.descriptiveDataSet.character.CharacterEditor">
       <tags>nonRestore</tags>
index 11dec7255a1a43763fb7774b9d5c784782f8e1fa..48821903ba31fef4120c7b050db984adfe5e1285 100644 (file)
@@ -29,7 +29,6 @@ import org.eclipse.e4.ui.services.IServiceConstants;
 import org.eclipse.e4.ui.workbench.modeling.EPartService;
 import org.eclipse.e4.ui.workbench.modeling.ESelectionService;
 import org.eclipse.jface.util.LocalSelectionTransfer;
-import org.eclipse.jface.viewers.AbstractTreeViewer;
 import org.eclipse.jface.viewers.ISelectionChangedListener;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.StructuredSelection;
@@ -73,6 +72,7 @@ import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateContentProvider;
 import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
+import eu.etaxonomy.taxeditor.workbench.part.ICollapsableExpandable;
 import eu.etaxonomy.taxeditor.workbench.part.IE4SavablePart;
 
 /**
@@ -81,7 +81,7 @@ import eu.etaxonomy.taxeditor.workbench.part.IE4SavablePart;
  */
 public class DerivateView implements IPartContentHasFactualData, IConversationEnabled,
         ICdmEntitySessionEnabled, IDirtyMarkable, IPostOperationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, IPartContentHasMedia,
-        IContextListener, IE4SavablePart {
+        IContextListener, IE4SavablePart, ICollapsableExpandable {
 
     private static final String SPECIMEN_EDITOR = Messages.DerivateView_SPECIMEN_EDITOR;
 
@@ -218,7 +218,6 @@ public class DerivateView implements IPartContentHasFactualData, IConversationEn
         labelProvider = new DerivateLabelProvider();
         labelProvider.setConversation(conversation);
         viewer.setLabelProvider(labelProvider);
-        viewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS);
         viewer.getTree().setEnabled(CdmStore.isActive());
 
         //propagate selection
@@ -633,4 +632,14 @@ public class DerivateView implements IPartContentHasFactualData, IConversationEn
         return dirty.isDirty();
     }
 
+    @Override
+    public void collapse() {
+        viewer.collapseAll();
+    }
+
+    @Override
+    public void expand() {
+        viewer.expandAll();
+    }
+
 }