From 563c74354af334e318a442b28a690d64003a9a85 Mon Sep 17 00:00:00 2001 From: Matthew Khouzam Date: Mon, 30 May 2016 09:44:01 -0400 Subject: [PATCH] tmf: add sorter to put analysis in a more user-friendly order fixes bug 494923 Change-Id: I484a731662143591a6e2bddd31c400ea6d0244b7 Signed-off-by: Matthew Khouzam Reviewed-on: https://git.eclipse.org/r/73940 Reviewed-by: Patrick Tasse Tested-by: Patrick Tasse Reviewed-by: Hudson CI --- .../tmf/ui/project/model/TmfViewerSorter.java | 39 ++++++++++++------- 1 file changed, 25 insertions(+), 14 deletions(-) diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfViewerSorter.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfViewerSorter.java index b2db4e6586..a58ade3703 100644 --- a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfViewerSorter.java +++ b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/tmf/ui/project/model/TmfViewerSorter.java @@ -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; } - - } -- 2.34.1