translate some commands
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / name / handler / NameEditorMenuPropertyTester.java
index 85693469820c39d88c4993f5a16f9ef0d5ada961..f8a49eb0102a07649298039f75ce2b6cc38346be 100644 (file)
@@ -36,7 +36,7 @@ public class NameEditorMenuPropertyTester extends org.eclipse.core.expressions.P
        private static final String EMPTY_NAMES = "hasEmptyNames";
        private static final String ACCEPTED_AND_NO_HOMOTYPIC_SYNONYMS = "isAcceptedAndHasNoHomotypicSynonyms";
        private static final String NOT_HOMOTYPIC_SYNONYM_OF_ACCEPTED = "isNotHomotypicSynonymOfAcceptedTaxon";
-
+       private static final String SYNONYM_WITH_HOMOTYPIC_SYNONYMS = "isSynonymInHomotypicalGroupWithMoreSynonyms";
 
        /**
         * <p>Constructor for NameEditorMenuPropertyTester.</p>
@@ -78,9 +78,13 @@ public class NameEditorMenuPropertyTester extends org.eclipse.core.expressions.P
                        }
                        else if(ACCEPTED_AND_NO_HOMOTYPIC_SYNONYMS.equals(property)){
                                return isAcceptedAndHasNoHomotypicSynonyms(selectedElement);
-                       }else if (NOT_HOMOTYPIC_SYNONYM_OF_ACCEPTED.equals(property)){
+                       }
+                       else if (NOT_HOMOTYPIC_SYNONYM_OF_ACCEPTED.equals(property)){
                                return isNotHomotypicSynonymOfAcceptedTaxon(selectedElement);
                        }
+                       else if (SYNONYM_WITH_HOMOTYPIC_SYNONYMS.equals(property)){
+                               return isSynonymInHomotypicalGroupWithMoreSynonyms(selectedElement);
+                       }
 
                }
 
@@ -95,6 +99,15 @@ public class NameEditorMenuPropertyTester extends org.eclipse.core.expressions.P
                }
                return false;
        }
+       
+       private boolean isSynonymInHomotypicalGroupWithMoreSynonyms(Object selectedElement) {
+               if (isSynonym(selectedElement)){
+                       Synonym synonym = (Synonym) selectedElement;
+                       return synonym.getHomotypicGroup().getTypifiedNames().size()>1;
+               }
+               return false;
+       }
+
 
        private boolean isNotHomotypicSynonymOfAcceptedTaxon(Object selectedElement) {
                if (isSynonym(selectedElement)){