Revert term combo initialization changes
authorPatrick Plitzner <p.plitzner@bgbm.org>
Tue, 7 Nov 2017 10:00:12 +0000 (11:00 +0100)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Tue, 7 Nov 2017 10:00:39 +0000 (11:00 +0100)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/combo/TermComboElement.java

index 7bd6f3b71497dd9de4618b301d626ad173d26147..e90bca0492fb602e45782635a6b5ed7efc99436a 100644 (file)
@@ -172,12 +172,15 @@ public class TermComboElement<T extends DefinedTermBase>
                int i = 1;
                int index = 0;
 
+               if(addEmptyElement){
+                   // Add an empty element for when nothing was selected yet
+                   combo.add(EMPTY_ELEMENT_LABEL);
+                   terms.add(emptyElement);
+               }
+
                if (termComparator != null) {
                        Collections.sort(preferredTerms, termComparator);
                }
-               terms.addAll(preferredTerms);
-
-               List<String> labels = new ArrayList<>();
                for (T term : preferredTerms) {
                        String label = getLabel(term);
                        if (label == null) {
@@ -195,7 +198,8 @@ public class TermComboElement<T extends DefinedTermBase>
 
                        }
 
-                       labels.add(label);
+                       combo.add(label);
+                       terms.add(term);
 
                        i++;
                        if (selection != null) {
@@ -205,15 +209,6 @@ public class TermComboElement<T extends DefinedTermBase>
                        }
                }
 
-               String[] items = labels.toArray(new String[0]);
-        combo.setItems(items);
-
-        if(addEmptyElement){
-            // Add an empty element for when nothing was selected yet
-            combo.add(EMPTY_ELEMENT_LABEL, 0);
-            terms.add(0, emptyElement);
-        }
-
         if (selection != null && index == 0) {
                        createTermNotInPreferredTerms(selection);
                }