diff options
author | Patrick Tasse | 2013-07-04 22:09:47 +0000 |
---|---|---|
committer | Patrick Tasse | 2013-07-29 20:50:09 +0000 |
commit | 77b04b9c2a3f5b60b49085084cc501b0f31d4e43 (patch) | |
tree | f20157f9979a025d180f6e65efa7d92121f9cf97 /lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui | |
parent | 30d4ef3ae8f3672f196fb10c45bd0dd3b8d87163 (diff) | |
download | org.eclipse.linuxtools-77b04b9c2a3f5b60b49085084cc501b0f31d4e43.tar.gz org.eclipse.linuxtools-77b04b9c2a3f5b60b49085084cc501b0f31d4e43.tar.xz org.eclipse.linuxtools-77b04b9c2a3f5b60b49085084cc501b0f31d4e43.zip |
tmf: Add support for time range selection
Time graph:
- Add time data provider interface extension to set and get selection
range
- Support left-button drag and Shift-left-click to set selection range
- Support middle-button and Ctrl-left-button drag to move the view left
or right
- Update cursors for mouse operations
- Add support for status line display of time coordinates of cursor
position and selection range
- Update time graph time listener event for selection range
- Remove right-mouse-drag support for setting zoom range in time graph
scale
- Add interface between time graph scale and control to display drag
range decorators in scale
Signals:
- Remove current time from TmfRangeSynchSignal
- Replace current time with begin and end time in TmfTimeSynchSignal
Trace Manager:
- Update trace manager for selection range
Views:
- Update statistics viewer to use selection range instead of view range
- Update Call Stack view for selection range
- Update Histogram view for selection range
- Support Shift-click in histogram
- Update Time Chart view for selection range
- Update abstract time graph view for selection range
Change-Id: I30b215f6c6b2ed2623978e83d3b96e117eff586c
Signed-off-by: Patrick Tasse <patrick.tasse@gmail.com>
Reviewed-on: https://git.eclipse.org/r/14292
Tested-by: Hudson CI
Diffstat (limited to 'lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui')
4 files changed, 18 insertions, 12 deletions
diff --git a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/histogram/HistogramDataModelTest.java b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/histogram/HistogramDataModelTest.java index 5a947946a1..e1304d2e3d 100644 --- a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/histogram/HistogramDataModelTest.java +++ b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/histogram/HistogramDataModelTest.java @@ -10,6 +10,7 @@ * Francois Chouinard - Initial API and implementation * Bernd Hufmann - Adapt to junit.framework.TestCase * Alexandre Montplaisir - Port to JUnit4 + * Patrick Tasse - Support selection range *******************************************************************************/ package org.eclipse.linuxtools.tmf.ui.tests.histogram; @@ -463,7 +464,8 @@ public class HistogramDataModelTest { HistogramScaledData result = model.scaleTo(width, maxHeight, barWidth); assertEquals(4 * 26, result.fBucketDuration); - assertEquals(0, result.fCurrentBucket); + assertEquals(0, result.fSelectionBeginBucket); + assertEquals(0, result.fSelectionEndBucket); assertEquals(0, result.fFirstBucketTime); assertEquals(0, result.fFirstEventTime); assertEquals(1, result.fLastBucket); @@ -514,7 +516,8 @@ public class HistogramDataModelTest { HistogramScaledData result = model.scaleTo(width, maxHeight, barWidth); assertEquals(4 * 6, result.fBucketDuration); - assertEquals(0, result.fCurrentBucket); + assertEquals(0, result.fSelectionBeginBucket); + assertEquals(0, result.fSelectionEndBucket); assertEquals(-3, result.fFirstBucketTime); // negative is correct, can happen when reverse assertEquals(0, result.fFirstEventTime); assertEquals(9, result.fLastBucket); @@ -575,7 +578,8 @@ public class HistogramDataModelTest { // For the above number of events, result and revResult are exactly the same. assertEquals(result.fBucketDuration, revResult.fBucketDuration); - assertEquals(result.fCurrentBucket, revResult.fCurrentBucket); + assertEquals(result.fSelectionBeginBucket, revResult.fSelectionBeginBucket); + assertEquals(result.fSelectionEndBucket, revResult.fSelectionEndBucket); assertEquals(result.fFirstBucketTime, revResult.fFirstBucketTime); assertEquals(result.fMaxValue, revResult.fMaxValue); assertEquals(result.fScalingFactor, revResult.fScalingFactor, DELTA); diff --git a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderSignalTest.java b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderSignalTest.java index 8633c543e0..c7910d7cc0 100644 --- a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderSignalTest.java +++ b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderSignalTest.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2011-2013 Ericsson + * Copyright (c) 2011, 2013 Ericsson * * All rights reserved. This program and the accompanying materials are * made available under the terms of the Eclipse Public License v1.0 which @@ -9,6 +9,7 @@ * Contributors: * Bernd Hufmann - Initial API and implementation * Alexandre Montplaisir - Port to JUnit4 + * Patrick Tasse - Support selection range *******************************************************************************/ package org.eclipse.linuxtools.tmf.ui.tests.views.uml2sd.loader; @@ -18,6 +19,7 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.eclipse.linuxtools.tmf.core.signal.TmfRangeSynchSignal; +import org.eclipse.linuxtools.tmf.core.signal.TmfTimeSynchSignal; import org.eclipse.linuxtools.tmf.core.timestamp.TmfTimeRange; import org.eclipse.linuxtools.tmf.core.timestamp.TmfTimestamp; import org.eclipse.linuxtools.tmf.ui.views.uml2sd.core.GraphNode; @@ -52,7 +54,8 @@ public class TmfUml2SDSyncLoaderSignalTest { rangeWindow = (TmfTimestamp) range.getEndTime().getDelta(range.getStartTime()); currentTime = new Uml2SDTestTimestamp(9789773782043L); - fFacility.getTrace().broadcast(new TmfRangeSynchSignal(fFacility, range, currentTime)); + fFacility.getTrace().broadcast(new TmfRangeSynchSignal(fFacility, range)); + fFacility.getTrace().broadcast(new TmfTimeSynchSignal(fFacility, currentTime)); fFacility.delay(IUml2SDTestConstants.BROADCAST_DELAY); fTmfComponent = new Uml2SDSignalValidator(); diff --git a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderTimeTest.java b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderTimeTest.java index deec8dc5f0..829858322d 100644 --- a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderTimeTest.java +++ b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/TmfUml2SDSyncLoaderTimeTest.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2011-2013 Ericsson + * Copyright (c) 2011, 2013 Ericsson * * All rights reserved. This program and the accompanying materials are * made available under the terms of the Eclipse Public License v1.0 which @@ -9,6 +9,7 @@ * Contributors: * Bernd Hufmann - Initial API and implementation * Alexandre Montplaisir - Port to JUnit4 + * Patrick Tasse - Support selection range *******************************************************************************/ package org.eclipse.linuxtools.tmf.ui.tests.views.uml2sd.loader; @@ -277,7 +278,7 @@ public class TmfUml2SDSyncLoaderTimeTest { TmfTimeRange range = new TmfTimeRange(TC_008_START_TIME_VALUE, TC_008_END_TIME_VALUE); fFacility.getLoader().waitForCompletion(); fFacility.delay(IUml2SDTestConstants.GUI_REFESH_DELAY); - fFacility.getTrace().broadcast(new TmfRangeSynchSignal(this, range, TC_008_TIME_VALUE)); + fFacility.getTrace().broadcast(new TmfRangeSynchSignal(this, range)); assertEquals("synchToTimeRange", TC_008_PAGE_VALUE, fFacility.getLoader().currentPage()); assertNotNull("synchToTimeRange", fFacility.getLoader().getCurrentTime()); assertEquals("synchToTimeRange", 0, TC_008_TIME_VALUE.compareTo(fFacility.getLoader().getCurrentTime(), false)); @@ -296,7 +297,7 @@ public class TmfUml2SDSyncLoaderTimeTest { @Test public void verifyTimeRangeDifferentPages() { TmfTimeRange range = new TmfTimeRange(TC_009_START_TIME_VALUE, TC_009_END_TIME_VALUE); - fFacility.getTrace().broadcast(new TmfRangeSynchSignal(this, range, TC_009_TIME_VALUE)); + fFacility.getTrace().broadcast(new TmfRangeSynchSignal(this, range)); fFacility.getLoader().waitForCompletion(); fFacility.delay(IUml2SDTestConstants.GUI_REFESH_DELAY); assertEquals("synchToTimeRange", TC_009_PAGE_VALUE, fFacility.getLoader().currentPage()); diff --git a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/Uml2SDSignalValidator.java b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/Uml2SDSignalValidator.java index 6f6bd81605..d41bc282a0 100644 --- a/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/Uml2SDSignalValidator.java +++ b/lttng/org.eclipse.linuxtools.tmf.ui.tests/src/org/eclipse/linuxtools/tmf/ui/tests/views/uml2sd/loader/Uml2SDSignalValidator.java @@ -8,6 +8,7 @@ * * Contributors: * Bernd Hufmann - Initial API and implementation + * Patrick Tasse - Support selection range *******************************************************************************/ package org.eclipse.linuxtools.tmf.ui.tests.views.uml2sd.loader; @@ -62,7 +63,7 @@ public class Uml2SDSignalValidator extends TmfComponent implements IUml2SdSignal // Set results so that it can be validated in the test case setSignalReceived(true); setSourceError(getSource() != signal.getSource()); - setCurrentTimeError(!getCurrentTime().equals(signal.getCurrentTime())); + setCurrentTimeError(!getCurrentTime().equals(signal.getBeginTime())); } /** @@ -76,9 +77,6 @@ public class Uml2SDSignalValidator extends TmfComponent implements IUml2SdSignal if (getSource() != null) { setSourceError(getSource() != signal.getSource()); } - if (getCurrentTime() != null) { - setCurrentTimeError(!getCurrentTime().equals(signal.getCurrentTime())); - } if (getCurrentRange() != null) { setRangeError(!getCurrentRange().equals(signal.getCurrentRange())); } |