setTimeRange(input);\r
_verticalScrollBar.setEnabled(true);\r
setTopIndex(0);\r
+ _selectedTime = 0;\r
refreshAllData(input);\r
}\r
}\r
}\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
_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
return;\r
}\r
\r
- setSelectedTimeInt(time, ensureVisible);\r
+ setSelectedTimeNotify(time, ensureVisible);\r
}\r
\r
public void setSelectedEvent(ITimeEvent event, Object source) {\r
_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
_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