package eu.etaxonomy.taxeditor.bulkeditor.e4.command;
+import java.util.ArrayList;
import java.util.Collections;
+import java.util.Comparator;
import java.util.List;
import java.util.Map;
editor = (BulkEditor) activePart.getObject();
classLabelPairs = getClassLabelPairs();
+
MMenu menu = MMenuFactory.INSTANCE.createMenu();
menu.setLabel(Messages.DynamicNewObjectMenuE4_NEW);
items.add(menu);
-
- for(final Object key : classLabelPairs.keySet()){
+ List<Object> keys = new ArrayList(classLabelPairs.keySet());
+ Collections.sort(keys, new Comparator<Object>() {
+
+ @Override
+ public int compare(Object o1, Object o2) {
+ if (o1 == o2) {
+ return 0;
+ }
+ if (o1 == null) {
+ return -1;
+ }
+ if (o2 == null) {
+ return 1;
+ }
+ if (o1 instanceof String && o2 instanceof String) {
+ return ((String)o1).compareTo((String)o2);
+ }
+ return 0;
+ }
+ });
+ for(final Object key : keys){
createMenuItem(menu, key);
}
}
+
+
private void createMenuItem(MMenu menu, final Object key){
MHandledMenuItem menuItem = MMenuFactory.INSTANCE.createHandledMenuItem();