Merge branch 'develop' of wp5.e-taxonomy.eu:/var/git/taxeditor into remoting-4.0
[taxeditor.git] / eu.etaxonomy.taxeditor.navigation / src / main / java / eu / etaxonomy / taxeditor / navigation / navigator / TaxonNavigator.java
index 663a163cac4f1978ce88e44b19798ccbca574a1b..08ad6769300e1bd6db6854d46f1193c04a49d1ef 100644 (file)
@@ -35,8 +35,9 @@ import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.api.service.IClassificationService;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.taxon.Classification;
-import eu.etaxonomy.cdm.model.taxon.TaxonComparatorSearch;
 import eu.etaxonomy.cdm.model.taxon.TaxonNaturalComparator;
+import eu.etaxonomy.cdm.model.taxon.TaxonNode;
+import eu.etaxonomy.cdm.model.taxon.TaxonNodeComparator;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.model.DataChangeBridge;
 import eu.etaxonomy.taxeditor.model.IDataChangeBehavior;
@@ -92,9 +93,9 @@ public class TaxonNavigator extends CommonNavigator implements
                if (PreferencesUtil.getSortNodesNaturally()){
                        comparator = new TaxonNaturalComparator();
                } else{
-                       comparator = new TaxonComparatorSearch();
+                       comparator = new TaxonNodeComparator();
                }
-               TaxonNodeComparator viewerComparator = new TaxonNodeComparator(comparator);
+               TaxonNodeNavigatorComparator viewerComparator = new TaxonNodeNavigatorComparator(comparator);
                this.getCommonViewer().setComparator(viewerComparator);
         setLinkingEnabled(true);
 //             this.getCommonViewer().addSelectionChangedListener(new ISelectionChangedListener() {
@@ -161,9 +162,6 @@ public class TaxonNavigator extends CommonNavigator implements
                            getConversationHolder().commit();
                        }
                }
-               if (cdmEntitySession != null) {
-                   cdmEntitySession.fireNotifications();
-               }
                getCommonViewer().refresh();
        }
 
@@ -171,7 +169,6 @@ public class TaxonNavigator extends CommonNavigator implements
      * Refresh this navigators viewer
      */
     public void refresh(Set objects) {
-
         for(Object obj : objects) {
             getCommonViewer().refresh(obj);
         }
@@ -519,7 +516,13 @@ public class TaxonNavigator extends CommonNavigator implements
      */
     @Override
     public void onChange(CdmChangeEvent event) {
-        // TODO Auto-generated method stub
+        for(CdmBase cb : event.getChangedObjects()) {
+            if(cb instanceof TaxonNode) {
+                getCommonViewer().refresh(cb);
+            } else if (cb instanceof Classification) {
+                getCommonViewer().refresh();
+            }
+        }
 
     }
 }