AT: commiting latest changes to the Palm Use data extension
authora.theys <a.theys@localhost>
Fri, 27 Jan 2012 16:49:08 +0000 (16:49 +0000)
committera.theys <a.theys@localhost>
Fri, 27 Jan 2012 16:49:08 +0000 (16:49 +0000)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/userecords/UseRecordDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/userecords/UseRecordsViewer.java

index b385976cf963ce3bff217380d2433f3ad6a7bb85..d84982f9513af372cbbebde8becd49e59f60b245 100644 (file)
@@ -24,7 +24,9 @@ import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
 import eu.etaxonomy.cdm.model.description.Modifier;\r
 import eu.etaxonomy.cdm.model.description.State;\r
 import eu.etaxonomy.cdm.model.description.StateData;\r
+import eu.etaxonomy.cdm.remote.controller.VocabularyController;\r
 import eu.etaxonomy.taxeditor.store.CdmStore;\r
+import eu.etaxonomy.taxeditor.store.TermManager;\r
 import eu.etaxonomy.taxeditor.store.TermStore;\r
 import eu.etaxonomy.taxeditor.ui.combo.TermComboElement;\r
 import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;\r
@@ -47,7 +49,9 @@ public class UseRecordDetailElement extends
        private TermComboElement<State> combo_UseCategory;\r
        private TermComboElement<State> combo_UseSubCategory;\r
        private TermComboElement<Modifier> combo_PlantPart;\r
-\r
+       private TermComboElement<Modifier> combo_Country;\r
+       private TermComboElement<Modifier> combo_HumanGroup;\r
+       private TermComboElement<Modifier> combo_EthnicGroup;\r
        // private AbstractDetailedDescriptionDetailElement detailElement;\r
 \r
        /*\r
@@ -74,20 +78,16 @@ public class UseRecordDetailElement extends
                // "Order Relevant", entity.getOrderRelevant(), style);\r
                combo_UseCategory = formFactory.createTermComboElement(State.class,     this, "Use Category", null, style);\r
                combo_UseCategory.addSelectionListener(this);\r
-               combo_UseSubCategory = formFactory.createTermComboElement(State.class, this, "Use Sub Category", null, style);\r
+               combo_UseSubCategory = formFactory.createTermComboElement(State.class, this, "Use SubCategory", null, style);\r
+               combo_Country   = formFactory.createTermComboElement(Modifier.class, this, "Country", null, style);\r
                combo_PlantPart = formFactory.createTermComboElement(Modifier.class, this, "Plant Part", null, style);\r
-               // List<State> listOfTerms = TermStore.getTerms(State.class,null ,\r
-               // false);\r
-\r
-               // UUID uuidUseCategory =\r
-               // UUID.fromString("2bb365af-ce6c-4196-a30b-e69b05099ed0");\r
-               // TermVocabulary termVoc =\r
-               // CdmStore.getService(IVocabularyService.class).find(uuidUseCategory);\r
-               List<State> termsToAdd = setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false));\r
+               combo_HumanGroup = formFactory.createTermComboElement(Modifier.class, this, "Human Group", null, style);\r
+               combo_HumanGroup.addSelectionListener(this);\r
+               combo_EthnicGroup = formFactory.createTermComboElement(Modifier.class, this, "Ethnic Group", null, style);\r
                \r
-               List<Modifier> plantPartsToAdd = setPlantPartsComboTerms(TermStore.getTerms(Modifier.class, null, false));\r
-               // combo_UseCategory.setTerms(setUseCategoryComboTerms(listOfTerms));\r
-               combo_UseCategory.setTerms(termsToAdd);\r
+\r
+               List<State> termsUseCategory = setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false));\r
+               combo_UseCategory.setTerms(termsUseCategory);\r
                combo_UseCategory.setSelection(useCategorySelection());\r
                \r
                List<State> termsSubCategory = setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false), combo_UseCategory.getSelection());\r
@@ -101,9 +101,26 @@ public class UseRecordDetailElement extends
                else {\r
                        combo_UseSubCategory.setEnabled(false);\r
                }\r
+               List<Modifier> plantPartsToAdd = setPlantPartsComboTerms(TermStore.getTerms(Modifier.class, null, false));\r
                combo_PlantPart.setTerms(plantPartsToAdd);\r
                combo_PlantPart.setSelection(plantPartSelection());\r
                \r
+               List<Modifier> countriesToAdd = setCountryComboTerms(TermStore.getTerms(Modifier.class, null, false));\r
+               combo_Country.setTerms(countriesToAdd);\r
+               combo_Country.setSelection(countrySelection());\r
+               \r
+               List<Modifier> humanGroupToAdd = setHumanGroupComboTerms(TermStore.getTerms(Modifier.class, null, false));\r
+               combo_HumanGroup.setTerms(humanGroupToAdd);\r
+               combo_HumanGroup.setSelection(humanGroupSelection());\r
+               \r
+               List<Modifier> ethnicGroupToAdd = setEthnicGroupComboTerms(TermStore.getTerms(Modifier.class, null, false), combo_HumanGroup.getSelection());\r
+               if (ethnicGroupToAdd != null) {\r
+                       combo_EthnicGroup.setTerms(ethnicGroupToAdd);\r
+                       combo_EthnicGroup.setSelection(ethnicGroupSelection());\r
+                       combo_EthnicGroup.setEnabled(true);\r
+               } else {\r
+                       combo_EthnicGroup.setEnabled(false);\r
+               }\r
 \r
                // getPreferredTerms(State.class));\r
                // UseSubCategory_stateData =\r
@@ -123,8 +140,8 @@ public class UseRecordDetailElement extends
 \r
        }\r
 \r
-\r
-\r
+       \r
+       \r
        private Modifier plantPartSelection() {\r
                /*if(!getEntity().getModifiers().isEmpty()) {\r
                        for (Modifier modifier : getEntity().getModifiers()) {\r
@@ -148,17 +165,131 @@ public class UseRecordDetailElement extends
                }\r
                return null;*/\r
                //for testing purposes\r
-               \r
+               int countMods = 0;\r
                Modifier modiftoreturn = Modifier.NewInstance();\r
                if (!getEntity().getModifiers().isEmpty()) {\r
                        for (Modifier modifier : getEntity().getModifiers()){\r
-                               modiftoreturn = modifier;\r
+                               if(countMods == 0) {\r
+                                       modiftoreturn = modifier;\r
+                               }\r
+                               countMods++;\r
                        }\r
                        return modiftoreturn;\r
                }\r
                return null;\r
                \r
        }\r
+       \r
+       private Modifier countrySelection() {\r
+               /*if(!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()) {\r
+                       if (modifier.getMarkers() != null) {\r
+                               for (Marker marker : modifier.getMarkers()) {\r
+                                       if(marker.getMarkerType().getTitleCache().equals("Country")) {\r
+                                               return modifier;\r
+                                       }\r
+                                       else {\r
+                                               return null;\r
+                                       }\r
+                               }\r
+                       }\r
+                       else {\r
+                               return null;\r
+                       }\r
+                               \r
+               }\r
+       } else {\r
+               return null;\r
+       }\r
+       return null;*/\r
+       //for testing purposes\r
+       int countMods = 0;\r
+       Modifier modiftoreturn = Modifier.NewInstance();\r
+       if (!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()){\r
+                       if(countMods == 1) {\r
+                               modiftoreturn = modifier;\r
+                       }\r
+                       countMods++;\r
+               }\r
+               return modiftoreturn;\r
+       }\r
+       return null;\r
+       }\r
+       \r
+       private Modifier humanGroupSelection() {\r
+               /*if(!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()) {\r
+                       if (modifier.getMarkers() != null) {\r
+                               for (Marker marker : modifier.getMarkers()) {\r
+                                       if(marker.getMarkerType().getTitleCache().equals("Human Group")) {\r
+                                               return modifier;\r
+                                       }\r
+                                       else {\r
+                                               return null;\r
+                                       }\r
+                               }\r
+                       }\r
+                       else {\r
+                               return null;\r
+                       }\r
+                               \r
+               }\r
+       } else {\r
+               return null;\r
+       }\r
+       return null;*/\r
+       //for testing purposes\r
+       int countMods =0;\r
+       Modifier modiftoreturn = Modifier.NewInstance();\r
+       if (!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()){\r
+                       if (countMods == 2) {\r
+                               modiftoreturn = modifier;\r
+                       }\r
+                       countMods++;\r
+               }\r
+               return modiftoreturn;\r
+       }\r
+       return null;\r
+       }\r
+       \r
+       private Modifier ethnicGroupSelection() {\r
+               /*if(!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()) {\r
+                       if (modifier.getMarkers() != null) {\r
+                               for (Marker marker : modifier.getMarkers()) {\r
+                                       if(marker.getMarkerType().getTitleCache().equals("Human Group")) {\r
+                                               return modifier;\r
+                                       }\r
+                                       else {\r
+                                               return null;\r
+                                       }\r
+                               }\r
+                       }\r
+                       else {\r
+                               return null;\r
+                       }\r
+                               \r
+               }\r
+       } else {\r
+               return null;\r
+       }\r
+       return null;*/\r
+       //for testing purposes\r
+       int countMods =0;\r
+       Modifier modiftoreturn = Modifier.NewInstance();\r
+       if (!getEntity().getModifiers().isEmpty()) {\r
+               for (Modifier modifier : getEntity().getModifiers()){\r
+                       if (countMods == 3) {\r
+                               modiftoreturn = modifier;\r
+                       }\r
+                       countMods++;\r
+               }\r
+               return modiftoreturn;\r
+       }\r
+       return null;\r
+       }\r
 \r
        private State useCategorySelection() {\r
                /*if (!getEntity().getStates().isEmpty()) {\r
@@ -187,6 +318,8 @@ public class UseRecordDetailElement extends
                return null;\r
        }\r
        \r
+\r
+       \r
        private State useSubCategorySelection() {\r
                /*if (!getEntity().getStates().isEmpty() && combo_UseCategory.getSelection() != null) {\r
                        for (StateData statedata : getEntity().getStates()) {\r
@@ -204,6 +337,7 @@ public class UseRecordDetailElement extends
                        return null;\r
                }\r
                return null;*/\r
+               //for testing purposes\r
                int countStates =0;\r
                for (StateData state : getEntity().getStates()) {\r
                        if ((countStates == 1)) {\r
@@ -219,8 +353,25 @@ public class UseRecordDetailElement extends
                List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
                for (Modifier term : listOfTerms) {\r
 \r
-                       if ((term.getPartOf() != null)\r
-                                       && (term.getPartOf().getTitleCache().equals("Plant Part"))) {\r
+                       if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals("Plant Part"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+                       else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals("Plant Part"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+               }\r
+               \r
+               return termsToAdd;\r
+       }\r
+       \r
+       private List<Modifier> setCountryComboTerms(List <Modifier> listOfTerms) {\r
+               List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
+               for (Modifier term : listOfTerms) {\r
+\r
+                       if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals("Country"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+                       else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals("Country"))) {\r
                                termsToAdd.add(term);\r
                        }\r
                }\r
@@ -228,12 +379,15 @@ public class UseRecordDetailElement extends
                return termsToAdd;\r
        }\r
 \r
+\r
        private List<State> setUseCategoryComboTerms(List<State> listOfTerms) {\r
                List<State> termsToAdd = new ArrayList<State>();\r
                for (State term : listOfTerms) {\r
 \r
-                       if ((term.getPartOf() != null)\r
-                                       && (term.getPartOf().getTitleCache().equals("Use Category"))) {\r
+                       if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals("Use Category"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+                       else if ((term.getVocabulary() !=null) && (term.getPartOf() == null) && (term.getVocabulary().getTitleCache().equals("Use Category"))) {\r
                                termsToAdd.add(term);\r
                        }\r
                }\r
@@ -247,9 +401,10 @@ public class UseRecordDetailElement extends
                if (combo_UseCategory.getSelection() != null) {\r
                        \r
                        for (State term : listOfTerms) {\r
-                               if ((term.getPartOf() != null)\r
-                                               && (term.getPartOf().getTitleCache()\r
-                                                               .equals(selectedUseCategory.getTitleCache()))) {\r
+                               if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(selectedUseCategory.getTitleCache()))) {\r
+                                       termsToAdd.add(term);\r
+                               }\r
+                               else if ((term.getVocabulary() !=null) && (term.getVocabulary().getTitleCache().equals(selectedUseCategory.getTitleCache()))) {\r
                                        termsToAdd.add(term);\r
                                }\r
        \r
@@ -260,9 +415,9 @@ public class UseRecordDetailElement extends
                                if (stateData.getModifyingText().get(CdmStore.getDefaultLanguage()) != null) {\r
                                        if ((stateData.getState() != null) && (stateData.getModifyingText().get(CdmStore.getDefaultLanguage()).getText() == "Use Category")) {\r
                                                for (State term : listOfTerms) {\r
-                                                       if ((term.getPartOf() != null)\r
-                                                                       && (term.getPartOf().getTitleCache()\r
-                                                                                       .equals(stateData.getState().getTitleCache()))) {\r
+                                                       if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(stateData.getState().getTitleCache()))) {\r
+                                                               termsToAdd.add(term);\r
+                                                       } else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals(stateData.getState().getTitleCache()))) {\r
                                                                termsToAdd.add(term);\r
                                                        }\r
                                                }\r
@@ -280,6 +435,61 @@ public class UseRecordDetailElement extends
                // TODO Auto-generated method stub\r
                return termsToAdd;\r
        }\r
+       \r
+       private List<Modifier> setEthnicGroupComboTerms(List<Modifier> listOfTerms,\r
+                       Modifier selectedHumangroup) {\r
+               List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
+               if (combo_HumanGroup.getSelection() != null) {\r
+                       for (Modifier term : listOfTerms) {\r
+       \r
+                               if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(selectedHumangroup.getTitleCache()))) {\r
+                                       termsToAdd.add(term);\r
+                               }\r
+                               else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals(selectedHumangroup.getTitleCache()))) {\r
+                                       termsToAdd.add(term);\r
+                               }\r
+                       }\r
+               }\r
+               else if (!getEntity().getModifiers().isEmpty()) {\r
+                       for (Modifier modifier : getEntity().getModifiers()) {\r
+                               if (modifier.getMarkers() != null) {\r
+                                       for (Marker marker : modifier.getMarkers()) {\r
+                                               if(marker.getMarkerType().getTitleCache().equals("Human Group")) {\r
+                                                       for (Modifier term : listOfTerms) {\r
+                                                               if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals(modifier.getTitleCache()))) {\r
+                                                                       termsToAdd.add(modifier);\r
+                                                               } else if ((term.getVocabulary() != null) && (term.getVocabulary().getTitleCache().equals(modifier.getTitleCache()))) {\r
+                                                                       termsToAdd.add(modifier);\r
+                                                               }\r
+                                                       }\r
+                                                       \r
+                                               }\r
+                                       }\r
+                               }\r
+                       }\r
+               } else {\r
+                       return null;\r
+               }\r
+               \r
+               return termsToAdd;\r
+       }\r
+\r
+       \r
+       private List<Modifier> setHumanGroupComboTerms(List<Modifier> listOfTerms) {\r
+               List<Modifier> termsToAdd = new ArrayList<Modifier>();\r
+               for (Modifier term : listOfTerms) {\r
+\r
+                       if ((term.getPartOf() != null) && (term.getPartOf().getTitleCache().equals("Human Group"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+                       else if ((term.getVocabulary() != null) && (term.getPartOf() == null) && (term.getVocabulary().getTitleCache().equals("Human Group"))) {\r
+                               termsToAdd.add(term);\r
+                       }\r
+               }\r
+               \r
+               return termsToAdd;\r
+       }\r
+\r
 \r
        /** {@inheritDoc} */\r
        @Override\r
@@ -436,8 +646,154 @@ public class UseRecordDetailElement extends
                                }\r
                        }\r
                }\r
+               if (eventSource == combo_Country) {\r
+                       if (combo_Country.getSelection() != null) {\r
+                               Set<Modifier> modifiers = getEntity().getModifiers();\r
+                               if(!modifiers.isEmpty()) {\r
+                                       for (Modifier modifier : modifiers) {\r
+                                               if (modifier.getMarkers() != null) {\r
+                                                       for (Marker marker : modifier.getMarkers()) {\r
+                                                               if (marker.getMarkerType().getTitleCache().equals("Country")) {\r
+                                                                       /*getEntity().removeModifier(modifier);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(marker);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_Country.getSelection());\r
+                                                               } \r
+                                                               else {\r
+                                                                       /*MarkerType markerType = MarkerType.NewInstance("Country", "Country", null);\r
+                                                                       Marker markerPlantPart = Marker.NewInstance(markerType, false);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(markerPlantPart);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_Country.getSelection());\r
+                                                               }\r
+                                                                       \r
+                                                                       \r
+                                                       }\r
+                                                               \r
+                                               }\r
+                                               else {\r
+                                                       /*MarkerType markerType = MarkerType.NewInstance("Country", "Country", null);\r
+                                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                       plantPart.addMarker(marker);\r
+                                                       getEntity().addModifier(plantPart);*/\r
+                                                       getEntity().addModifier(combo_Country.getSelection());\r
+                                               }\r
+                                                       \r
+                                       }       \r
+                               }\r
+                               else {\r
+                                       /*MarkerType markerType = MarkerType.NewInstance("Country", "Country", null);\r
+                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                       plantPart.addMarker(marker);\r
+                                       getEntity().addModifier(plantPart);*/\r
+                                       getEntity().addModifier(combo_Country.getSelection());\r
+                               }\r
+                       }\r
+               }\r
+               if (eventSource == combo_HumanGroup) {\r
+                       if (combo_HumanGroup.getSelection() != null) {\r
+                               Set<Modifier> modifiers = getEntity().getModifiers();\r
+                               if(!modifiers.isEmpty()) {\r
+                                       for (Modifier modifier : modifiers) {\r
+                                               if (modifier.getMarkers() != null) {\r
+                                                       for (Marker marker : modifier.getMarkers()) {\r
+                                                               if (marker.getMarkerType().getTitleCache().equals("Human Group")) {\r
+                                                                       /*getEntity().removeModifier(modifier);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(marker);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_HumanGroup.getSelection());\r
+                                                               } \r
+                                                               else {\r
+                                                                       /*MarkerType markerType = MarkerType.NewInstance("Human Group", "Human Group", null);\r
+                                                                       Marker markerPlantPart = Marker.NewInstance(markerType, false);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(markerPlantPart);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_HumanGroup.getSelection());\r
+                                                               }\r
+                                                                       \r
+                                                                       \r
+                                                       }\r
+                                                               \r
+                                               }\r
+                                               else {\r
+                                                       /*MarkerType markerType = MarkerType.NewInstance("Human Group", "Human Group", null);\r
+                                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                       plantPart.addMarker(marker);\r
+                                                       getEntity().addModifier(plantPart);*/\r
+                                                       getEntity().addModifier(combo_HumanGroup.getSelection());\r
+                                               }\r
+                                                       \r
+                                       }       \r
+                               }\r
+                               else {\r
+                                       /*MarkerType markerType = MarkerType.NewInstance("Human Group", "Human Group", null);\r
+                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                       plantPart.addMarker(marker);\r
+                                       getEntity().addModifier(plantPart);*/\r
+                                       getEntity().addModifier(combo_HumanGroup.getSelection());\r
+                               }\r
+                       }\r
+                       combo_EthnicGroup.setEnabled(true);\r
+               }\r
+               if (eventSource == combo_EthnicGroup) {\r
+                       if (combo_EthnicGroup.getSelection() != null) {\r
+                               Set<Modifier> modifiers = getEntity().getModifiers();\r
+                               if(!modifiers.isEmpty()) {\r
+                                       for (Modifier modifier : modifiers) {\r
+                                               if (modifier.getMarkers() != null) {\r
+                                                       for (Marker marker : modifier.getMarkers()) {\r
+                                                               if (marker.getMarkerType().getTitleCache().equals("Ethnic Group")) {\r
+                                                                       /*getEntity().removeModifier(modifier);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(marker);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_EthnicGroup.getSelection());\r
+                                                               } \r
+                                                               else {\r
+                                                                       /*MarkerType markerType = MarkerType.NewInstance("Ethnic Group", "Ethnic Group", null);\r
+                                                                       Marker markerPlantPart = Marker.NewInstance(markerType, false);\r
+                                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                                       plantPart.addMarker(markerPlantPart);\r
+                                                                       getEntity().addModifier(plantPart);*/\r
+                                                                       getEntity().addModifier(combo_EthnicGroup.getSelection());\r
+                                                               }\r
+                                                                       \r
+                                                                       \r
+                                                       }\r
+                                                               \r
+                                               }\r
+                                               else {\r
+                                                       /*MarkerType markerType = MarkerType.NewInstance("Ethnic Group", "Ethnic Group", null);\r
+                                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                                       plantPart.addMarker(marker);\r
+                                                       getEntity().addModifier(plantPart);*/\r
+                                                       getEntity().addModifier(combo_EthnicGroup.getSelection());\r
+                                               }\r
+                                                       \r
+                                       }       \r
+                               }\r
+                               else {\r
+                                       /*MarkerType markerType = MarkerType.NewInstance("Ethnic Group", "Ethnic Group", null);\r
+                                       Marker marker = Marker.NewInstance(markerType, false);\r
+                                       Modifier plantPart = combo_PlantPart.getSelection();\r
+                                       plantPart.addMarker(marker);\r
+                                       getEntity().addModifier(plantPart);*/\r
+                                       getEntity().addModifier(combo_EthnicGroup.getSelection());\r
+                               }\r
+                       }\r
+               }\r
        }\r
        \r
+       \r
 \r
        /** {@inheritDoc} */\r
        @Override\r
@@ -448,17 +804,25 @@ public class UseRecordDetailElement extends
 \r
        @Override\r
        public void widgetSelected(SelectionEvent e) {\r
-               State selectedUseCategory = combo_UseCategory.getSelection();\r
-               if (selectedUseCategory != null) {\r
-                       combo_UseSubCategory.setTerms(setUseCategoryComboTerms(\r
-                                       TermStore.getTerms(State.class, null, false),\r
-                                       selectedUseCategory));\r
+               Object eventSource = e.getSource();\r
+               This is causing an error on purpose fix the if statement below\r
+               if(eventSource == combo_UseCategory) {\r
+                       State selectedUseCategory = combo_UseCategory.getSelection();\r
+                       if (selectedUseCategory != null) {\r
+                       combo_UseSubCategory.setTerms(setUseCategoryComboTerms(TermStore.getTerms(State.class, null, false),selectedUseCategory));\r
                        /*\r
                         * selectedLanguageString = getMultilanguageText().get(\r
                         * selectedLanguage);\r
                         * \r
                         * element_languageString.setLanguageString(selectedLanguageString);\r
                         */\r
+                       }\r
+               }\r
+               if (eventSource == combo_HumanGroup) {\r
+                       Modifier selectedHumanGroup = combo_HumanGroup.getSelection();\r
+                       if (selectedHumanGroup != null) {\r
+                               combo_EthnicGroup.setTerms(setEthnicGroupComboTerms(TermStore.getTerms(Modifier.class, null, false), selectedHumanGroup));\r
+                       }\r
                }\r
 \r
        }\r
index d587b3fc21052016f156607566b0c31618a57fb7..1c4485e98ed0c52ea4f03c660ac4a12a09a9e83f 100644 (file)
@@ -6,6 +6,7 @@ import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Composite;\r
 import org.eclipse.ui.forms.widgets.Section;\r
 \r
+import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
 import eu.etaxonomy.cdm.model.description.DescriptionBase;\r
 import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
 import eu.etaxonomy.cdm.model.reference.Reference;\r
@@ -31,6 +32,7 @@ import eu.etaxonomy.taxeditor.ui.section.reference.ReferenceDetailSection;
 import eu.etaxonomy.taxeditor.ui.section.taxon.ParsingMessagesSection;\r
 import eu.etaxonomy.taxeditor.ui.section.taxon.TaxonBaseDetailSection;\r
 import eu.etaxonomy.taxeditor.ui.section.userecords.UseRecordDetailSection;\r
+import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermVocabularyDetailSection;\r
 import eu.etaxonomy.taxeditor.view.AbstractCdmDataViewer;\r
 import eu.etaxonomy.taxeditor.view.AbstractCdmViewPart;\r
 \r
@@ -61,7 +63,10 @@ public class UseRecordsViewer extends AbstractCdmDataViewer {
                } else if (getInput() instanceof DescriptionElementBase) {\r
                        createUseRecordSection(rootElement);\r
 \r
-               } \r
+               } else if (getInput() instanceof TermVocabulary) {\r
+                       createTermVocabularySection(rootElement);\r
+\r
+               }\r
                \r
                /*if (getInput() instanceof TaxonBase) {\r
                        if (currentViewPart != VIEW_PART.TAXON) {\r
@@ -158,6 +163,15 @@ public class UseRecordsViewer extends AbstractCdmDataViewer {
                addPart(parsingMessagesSection);\r
        }\r
        \r
+       private void createTermVocabularySection(RootElement parent) {\r
+               destroySections();\r
+\r
+               TermVocabularyDetailSection termVocabularyDetailSection = (TermVocabularyDetailSection) formFactory\r
+                               .createCdmDetailSection(DetailType.TERM_VOCABULARY,\r
+                                               getConversationHolder(), parent, this, Section.TWISTIE\r
+                                                               | Section.EXPANDED);\r
+               addPart(termVocabularyDetailSection);\r
+       }\r
        \r
        private void createUseRecordSection(RootElement parent) {\r
                destroySections();\r