[WIP] CFV Refactor
[deliverable/tracecompass.git] / tmf / org.eclipse.tracecompass.tmf.ui / src / org / eclipse / tracecompass / internal / provisional / tmf / ui / views / timegraph2 / swt / SwtTimeGraphView.java
diff --git a/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/internal/provisional/tmf/ui/views/timegraph2/swt/SwtTimeGraphView.java b/tmf/org.eclipse.tracecompass.tmf.ui/src/org/eclipse/tracecompass/internal/provisional/tmf/ui/views/timegraph2/swt/SwtTimeGraphView.java
new file mode 100644 (file)
index 0000000..09f1814
--- /dev/null
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2016 EfficiOS Inc., Alexandre Montplaisir
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+
+package org.eclipse.tracecompass.internal.provisional.tmf.ui.views.timegraph2.swt;
+
+import org.eclipse.jdt.annotation.Nullable;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.tracecompass.internal.provisional.tmf.core.views.timegraph2.ITimeGraphModelRenderProvider;
+import org.eclipse.tracecompass.internal.provisional.tmf.ui.views.timegraph2.TimeGraphModelView;
+import org.eclipse.tracecompass.tmf.ui.signal.TmfTimeViewAlignmentInfo;
+import org.eclipse.tracecompass.tmf.ui.views.ITmfTimeAligned;
+import org.eclipse.tracecompass.tmf.ui.widgets.timegraph.TimeGraphViewer;
+
+/**
+ * @author alexandre
+ *
+ */
+public abstract class SwtTimeGraphView extends TimeGraphModelView implements ITmfTimeAligned {
+
+    private @Nullable TimeGraphViewer fTimeGraphViewer;
+
+    protected SwtTimeGraphView(String viewName, ITimeGraphModelRenderProvider modelRenderProvider) {
+        super(viewName, modelRenderProvider);
+    }
+
+    @Override
+    public void createPartControl(@Nullable Composite parent) {
+        if (parent == null) {
+            return;
+        }
+        TimeGraphViewer viewer = new TimeGraphViewer(parent, SWT.NONE);
+//        viewer.setTimeGraphContentProvider(new SwtTimeGraphContentProvider());
+//        viewer.setTimeGraphProvider(new SwtTimeGraphPresentationProvider());
+
+        fTimeGraphViewer = viewer;
+    }
+
+    @Override
+    public void setFocus() {
+    }
+
+    // ------------------------------------------------------------------------
+    // Time Alignment
+    // ------------------------------------------------------------------------
+
+    @Override
+    public @Nullable TmfTimeViewAlignmentInfo getTimeViewAlignmentInfo() {
+        if (fTimeGraphViewer != null) {
+            return fTimeGraphViewer.getTimeViewAlignmentInfo();
+        }
+        return null;
+    }
+
+    @Override
+    public int getAvailableWidth(int requestedOffset) {
+        if (fTimeGraphViewer != null) {
+            return fTimeGraphViewer.getAvailableWidth(requestedOffset);
+        }
+        return 0;
+    }
+
+    @Override
+    public void performAlign(int offset, int width) {
+        if (fTimeGraphViewer != null) {
+            fTimeGraphViewer.performAlign(offset, width);
+        }
+    }
+
+}
This page took 0.024889 seconds and 5 git commands to generate.