class="eu.etaxonomy.taxeditor.editor.view.derivate.contextMenu.DerivateViewContextMenu"
id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateContextMenu">
</dynamic>
+ <command
+ commandId="eu.etaxonomy.taxeditor.editor.derivative.toggleLinkWithTaxonSelection"
+ label="Link with taxon selection"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ <not>
+ <reference
+ definitionId="isDerivativeEditorLinkedToTaxonSelection">
+ </reference>
+ </not>
+ </visibleWhen>
+ </command>
+ <command
+ commandId="eu.etaxonomy.taxeditor.editor.derivative.toggleLinkWithTaxonSelection"
+ label="Unlink from taxon selection"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ <reference
+ definitionId="isDerivativeEditorLinkedToTaxonSelection">
+ </reference>
+ </visibleWhen>
+ </command>
<separator
name="eu.etaxonomy.taxeditor.editor.separator3"
visible="true">
id="eu.etaxonomy.taxeditor.editor.derivative.removeSingleReadFromSequence"
name="Remove SingleRead from sequence">
</command>
+ <command
+ defaultHandler="eu.etaxonomy.taxeditor.editor.view.derivate.handler.ToggleLinkWithTaxonSelectionHandler"
+ id="eu.etaxonomy.taxeditor.editor.derivative.toggleLinkWithTaxonSelection"
+ name="Toggle link with taxon selection">
+ </command>
</extension>
<extension
</test>
</with>
</definition>
+ <definition
+ id="isDerivativeEditorLinkedToTaxonSelection">
+ <with
+ variable="activeEditor">
+ <test
+ property="eu.etaxonomy.taxeditor.editor.view.derivate.DerivativeEditorPropertyTester.isLinkedWithTaxonSelection">
+ </test>
+ </with>
+ </definition>
</extension>
<extension
point="org.eclipse.core.expressions.propertyTesters">
properties="isSequence,isSingleRead,isSingleReadReusableHere,isSingleReadReused"
type="org.eclipse.jface.viewers.IStructuredSelection">
</propertyTester>
+ <propertyTester
+ class="eu.etaxonomy.taxeditor.editor.view.derivate.DerivativeEditorPropertyTester"
+ id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivativeEditorPropertyTester"
+ namespace="eu.etaxonomy.taxeditor.editor.view.derivate.DerivativeEditorPropertyTester"
+ properties="isLinkedWithTaxonSelection"
+ type="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView">
+ </propertyTester>
</extension>
<extension
point="org.eclipse.ui.bindings">
--- /dev/null
+package eu.etaxonomy.taxeditor.editor.view.derivate;
+
+import org.eclipse.core.expressions.PropertyTester;
+
+public class DerivativeEditorPropertyTester extends PropertyTester {
+
+ public DerivativeEditorPropertyTester() {
+ // TODO Auto-generated constructor stub
+ }
+
+ @Override
+ public boolean test(Object receiver, String property, Object[] args, Object expectedValue) {
+ DerivateView derivateView = (DerivateView)receiver;
+ if(property.equals("isLinkedWithTaxonSelection")){
+ return derivateView.isListenToSelectionChange();
+ }
+ return false;
+ }
+
+}
--- /dev/null
+package eu.etaxonomy.taxeditor.editor.view.derivate.handler;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
+
+public class ToggleLinkWithTaxonSelectionHandler extends AbstractHandler {
+
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ DerivateView derivateView = (DerivateView) HandlerUtil.getActiveEditor(event);
+ derivateView.toggleListenToSelectionChange();
+ return null;
+ }
+
+}