taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/labels/DefaultLabelStrategy.java -text
taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/labels/ILabelImageStrategy.java -text
taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/labels/LabelImageProvider.java -text
+taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/labels/LabelPropertyTester.java -text
taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/labels/ZoologicalNameLabelStrategy.java -text
taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/AcceptedNameComposite.java -text
taxeditor-editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/BasionymSynonymPropertySource.java -text
id="Set Basionym"
style="push">
<visibleWhen>
- <reference
- definitionId="isSynonym">
- </reference>
+ <and>
+ <reference
+ definitionId="isSynonym">
+ </reference>
+ <not>
+ <reference
+ definitionId="isZoological">
+ </reference>
+ </not>
+ </and>
</visibleWhen>
</command>
<command
id="Remove Basionym"
style="push">
<visibleWhen>
- <reference
- definitionId="isSynonym">
- </reference>
+ <and>
+ <reference
+ definitionId="isSynonym">
+ </reference>
+ <not>
+ <reference
+ definitionId="isZoological">
+ </reference>
+ </not>
+ </and>
+ </visibleWhen>
+ </command>
+ <command
+ commandId="eu.etaxonomy.taxeditor.editor.name.setOriginalCombination"
+ id="Set Original Combination"
+ style="push">
+ <visibleWhen>
+ <and>
+ <reference
+ definitionId="isSynonym">
+ </reference>
+ <reference
+ definitionId="isZoological">
+ </reference>
+ </and>
+ <!--and>
+ <reference
+ definitionId="isSynonym">
+ </reference-->
+ <!--/and-->
+ </visibleWhen>
+ </command>
+ <command
+ commandId="eu.etaxonomy.taxeditor.editor.name.removeOriginalCombination"
+ id="Remove Original Combination"
+ style="push">
+ <visibleWhen>
+ <and>
+ <reference
+ definitionId="isSynonym">
+ </reference>
+ <reference
+ definitionId="isZoological">
+ </reference>
+ </and>
</visibleWhen>
</command>
<command
class="eu.etaxonomy.taxeditor.editor.handler.SaveAllHandler"
commandId="org.eclipse.ui.file.saveAll">
</handler>
+ <handler
+ class="eu.etaxonomy.taxeditor.editor.name.handler.SetBasionymHandler"
+ commandId="eu.etaxonomy.taxeditor.editor.name.setBasionym">
+ <enabledWhen>
+ <not>
+ <reference
+ definitionId="isGroupBasionym">
+ </reference>
+ </not>
+ </enabledWhen>
+ </handler>
<handler
class="eu.etaxonomy.taxeditor.editor.name.handler.RemoveBasionymHandler"
commandId="eu.etaxonomy.taxeditor.editor.name.removeBasionym">
</handler>
<handler
class="eu.etaxonomy.taxeditor.editor.name.handler.SetBasionymHandler"
- commandId="eu.etaxonomy.taxeditor.editor.name.setBasionym">
+ commandId="eu.etaxonomy.taxeditor.editor.name.setOriginalCombination">
<enabledWhen>
<not>
<reference
</not>
</enabledWhen>
</handler>
+ <handler
+ class="eu.etaxonomy.taxeditor.editor.name.handler.RemoveBasionymHandler"
+ commandId="eu.etaxonomy.taxeditor.editor.name.removeOriginalCombination">
+ <enabledWhen>
+ <reference
+ definitionId="isGroupBasionym">
+ </reference>
+ </enabledWhen>
+ </handler>
</extension>
<extension
name="File Menu Commands"
</iterate>
</with>
</definition>
+ <definition
+ id="isZoological">
+ <with
+ variable="activeMenuSelection">
+ <iterate>
+ <test
+ forcePluginActivation="true"
+ property="eu.etaxonomy.taxeditor.label.propertytests.isZoological">
+ </test>
+ </iterate>
+ </with>
+ </definition>
</extension>
<extension
name="Name Commands"
id="eu.etaxonomy.taxeditor.editor.name.removeBasionym"
name="%command.name.18">
</command>
+ <command
+ id="eu.etaxonomy.taxeditor.editor.name.setOriginalCombination"
+ name="Set Original Combination">
+ </command>
+ <command
+ id="eu.etaxonomy.taxeditor.editor.name.removeOriginalCombination"
+ name="Remove Original Combination">
+ </command>
</extension>
<extension
name="Description Commands"
</propertySection>
</propertySections>
</extension>
+ <extension
+ point="org.eclipse.core.expressions.propertyTesters">
+ <propertyTester
+ class="eu.etaxonomy.taxeditor.editor.labels.LabelPropertyTester"
+ id="eu.etaxonomy.taxeditor.propertytests.labelPropertyTester"
+ namespace="eu.etaxonomy.taxeditor.label.propertytests"
+ properties="isZoological"
+ type="eu.etaxonomy.taxeditor.propertysheet.name.SynonymPropertySource">
+ </propertyTester>
+ </extension>
</plugin>
--- /dev/null
+/**\r
+ * \r
+ */\r
+package eu.etaxonomy.taxeditor.editor.labels;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.core.expressions.PropertyTester;\r
+\r
+import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.taxeditor.propertysheet.name.SynonymPropertySource;\r
+\r
+public class LabelPropertyTester extends PropertyTester {\r
+ private static final Logger logger = Logger.getLogger(LabelPropertyTester.class);\r
+ \r
+ private static final Object IS_ZOOLOGICAL = "isZoological";\r
+ \r
+ public boolean test(Object receiver, String property, Object[] args,\r
+ Object expectedValue) {\r
+ \r
+ if (IS_ZOOLOGICAL.equals(property) && receiver instanceof SynonymPropertySource) {\r
+ TaxonNameBase name = ((SynonymPropertySource) receiver).\r
+ getTaxonBase().getName();\r
+ return (name.getNomenclaturalCode().equals(NomenclaturalCode.ICZN)); \r
+ }\r
+ return false;\r
+ }\r
+}\r