/*******************************************************************************
- * Copyright (c) 2011, 2012 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
import java.text.ParseException;
-import org.eclipse.linuxtools.tmf.core.event.ITmfTimestamp;
-import org.eclipse.linuxtools.tmf.core.event.TmfTimeRange;
-import org.eclipse.linuxtools.tmf.core.event.TmfTimestamp;
-import org.eclipse.linuxtools.tmf.core.event.TmfTimestampFormat;
import org.eclipse.linuxtools.tmf.core.signal.TmfSignalHandler;
import org.eclipse.linuxtools.tmf.core.signal.TmfSignalManager;
import org.eclipse.linuxtools.tmf.core.signal.TmfTimestampFormatUpdateSignal;
-import org.eclipse.linuxtools.tmf.core.signal.TmfTraceUpdatedSignal;
+import org.eclipse.linuxtools.tmf.core.timestamp.ITmfTimestamp;
+import org.eclipse.linuxtools.tmf.core.timestamp.TmfTimeRange;
+import org.eclipse.linuxtools.tmf.core.timestamp.TmfTimestamp;
+import org.eclipse.linuxtools.tmf.core.timestamp.TmfTimestampFormat;
import org.eclipse.linuxtools.tmf.core.trace.ITmfTrace;
import org.eclipse.swt.widgets.Composite;
*/
public class HistogramCurrentTimeControl extends HistogramTextControl {
- // ------------------------------------------------------------------------
- // Attributes
- // ------------------------------------------------------------------------
-
- private long fTraceStartTime;
-
// ------------------------------------------------------------------------
// Construction
// ------------------------------------------------------------------------
@Override
protected void updateValue() {
+ if (getValue() == Long.MIN_VALUE) {
+ fTextValue.setText(""); //$NON-NLS-1$
+ return;
+ }
String string = fTextValue.getText();
long value = 0;
try {
- value = TmfTimestampFormat.getDefaulTimeFormat().parseValue(string, fTraceStartTime);
+ value = TmfTimestampFormat.getDefaulTimeFormat().parseValue(string, getValue());
} catch (ParseException e) {
}
if (getValue() != value) {
@Override
public void setValue(long time) {
- super.setValue(time, new TmfTimestamp(time, ITmfTimestamp.NANOSECOND_SCALE).toString());
- }
-
- // ------------------------------------------------------------------------
- // Signal Handlers
- // ------------------------------------------------------------------------
-
- /**
- * Update the initial time value
- *
- * @param signal the time range signal
- * @since 2.0
- */
- @TmfSignalHandler
- public void traceUpdated(final TmfTraceUpdatedSignal signal) {
- fTraceStartTime = signal.getTrace().getTimeRange().getStartTime().normalize(0, ITmfTimestamp.NANOSECOND_SCALE).getValue();
+ if (time != Long.MIN_VALUE) {
+ super.setValue(time, new TmfTimestamp(time, ITmfTimestamp.NANOSECOND_SCALE).toString());
+ } else {
+ super.setValue(time, ""); //$NON-NLS-1$
+ }
}
// ------------------------------------------------------------------------