Add syscall state info in CFV, support of initial time range, bugfixes
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.ui / src / org / eclipse / linuxtools / tmf / ui / widgets / timegraph / TimeGraphViewer.java
index b5feb40abe555c92322c8b8747f9c35bcd481740..0ee90e8c8b21b6ea2dde06cd7b2b1526b4beff1b 100644 (file)
@@ -128,6 +128,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
             setTimeRange(input);\r
             _verticalScrollBar.setEnabled(true);\r
             setTopIndex(0);\r
+            _selectedTime = 0;\r
             refreshAllData(input);\r
         }\r
     }\r
@@ -494,7 +495,16 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
     }\r
 \r
     @Override\r
-    public void setSelectedTimeInt(long time, boolean ensureVisible) {\r
+    public void setSelectedTimeNotify(long time, boolean ensureVisible) {\r
+        setSelectedTimeInt(time, ensureVisible, true);\r
+    }\r
+    \r
+    @Override\r
+    public void setSelectedTime(long time, boolean ensureVisible) {\r
+        setSelectedTimeInt(time, ensureVisible, false);\r
+    }\r
+\r
+    private void setSelectedTimeInt(long time, boolean ensureVisible, boolean doNotify) {\r
         long time0 = _time0;\r
         long time1 = _time1;\r
         if (ensureVisible) {\r
@@ -523,11 +533,16 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
         _stateCtrl.adjustScrolls();\r
         _stateCtrl.redraw();\r
         _timeScaleCtrl.redraw();\r
-        if (time0 != _time0 || time1 != _time1) {\r
+        \r
+        \r
+        boolean notifySelectedTime = (time != _selectedTime);\r
+        _selectedTime = time;\r
+        \r
+        if (doNotify && ((time0 != _time0) || (time1 != _time1))) {\r
             notifyRangeListeners(_time0, _time1);\r
         }\r
-        if (time != _selectedTime) {\r
-            _selectedTime = time;\r
+        \r
+        if (doNotify && notifySelectedTime) {\r
             notifyTimeListeners(_selectedTime);\r
         }\r
     }\r
@@ -647,7 +662,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
             return;\r
         }\r
 \r
-        setSelectedTimeInt(time, ensureVisible);\r
+        setSelectedTimeNotify(time, ensureVisible);\r
     }\r
 \r
     public void setSelectedEvent(ITimeEvent event, Object source) {\r
@@ -657,7 +672,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
         _selectedEntry = event.getEntry();\r
         _stateCtrl.selectItem(_selectedEntry, false);\r
 \r
-        setSelectedTimeInt(event.getTime(), true);\r
+        setSelectedTimeInt(event.getTime(), true, true);\r
         adjustVerticalScrollBar();\r
     }\r
 \r
@@ -668,7 +683,7 @@ public class TimeGraphViewer implements ITimeDataProvider, SelectionListener {
         _selectedEntry = trace;\r
         _stateCtrl.selectItem(trace, false);\r
 \r
-        setSelectedTimeInt(time, true);\r
+        setSelectedTimeInt(time, true, true);\r
     }\r
 \r
     public void setSelection(ITimeGraphEntry trace) {\r
This page took 0.024514 seconds and 5 git commands to generate.