tmf: add sorter to put analysis in a more user-friendly order
authorMatthew Khouzam <matthew.khouzam@ericsson.com>
Mon, 30 May 2016 13:44:01 +0000 (09:44 -0400)
committerMatthew Khouzam <matthew.khouzam@ericsson.com>
Mon, 30 May 2016 19:58:05 +0000 (15:58 -0400)
fixes bug 494923

Change-Id: I484a731662143591a6e2bddd31c400ea6d0244b7
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/73940
Reviewed-by: Patrick Tasse <patrick.tasse@gmail.com>
Tested-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-by: Hudson CI
tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfViewerSorter.java

index b2db4e6586e53c2b64573588794883fff1b0ba32..a58ade370350a6da4e5c1511ea04e44faaf0c15b 100644 (file)
@@ -17,25 +17,36 @@ import org.eclipse.jface.viewers.ViewerSorter;
 /**
  * Viewer sorter for TMF project model elements
  */
-//TODO: Follow-up with Bug 484248
+// TODO: Follow-up with Bug 484248
 public class TmfViewerSorter extends ViewerSorter {
 
+    private static int UNSET_PRIO = Integer.MAX_VALUE;
+    private static int EXPERIMENT_FOLDER_PRIO = 0;
+    private static int TRACE_FOLDER_PRIO = 1;
+    private static int EXPERIMENT_ELEMENT_PRIO = 2;
+    private static int TRACE_ELEMENT_PRIO = 3;
+    private static int VIEWS_PRIO = 4;
+    private static int ON_DEMAND_ANALYSIS_PRIO = 5;
+    private static int REPORTS_PRIO = 6;
+
     @Override
     public int category(Object element) {
+        int prio = UNSET_PRIO;
         if (element instanceof TmfExperimentFolder) {
-            return 0;
-        }
-        if (element instanceof TmfTraceFolder) {
-            return 0;
-        }
-        if (element instanceof TmfExperimentElement) {
-            return 1;
+            prio = EXPERIMENT_FOLDER_PRIO;
+        } else if (element instanceof TmfTraceFolder) {
+            prio = TRACE_FOLDER_PRIO;
+        } else if (element instanceof TmfTraceElement) {
+            prio = TRACE_ELEMENT_PRIO;
+        } else if (element instanceof TmfExperimentElement) {
+            prio = EXPERIMENT_ELEMENT_PRIO;
+        } else if (element instanceof TmfViewsElement) {
+            prio = VIEWS_PRIO;
+        } else if (element instanceof TmfOnDemandAnalysesElement) {
+            prio = ON_DEMAND_ANALYSIS_PRIO;
+        } else if (element instanceof TmfReportsElement) {
+            prio = REPORTS_PRIO;
         }
-        if (element instanceof TmfTraceElement) {
-            return 1;
-        }
-        return 2;
+        return prio;
     }
-
-
 }
This page took 0.026212 seconds and 5 git commands to generate.