Replace Events Viewer for the LTTng2 (CTF) Events View
authorFrancois Chouinard <fchouinard@gmail.com>
Mon, 4 Jun 2012 18:18:24 +0000 (14:18 -0400)
committerFrancois Chouinard <fchouinard@gmail.com>
Mon, 4 Jun 2012 18:21:02 +0000 (14:21 -0400)
org.eclipse.linuxtools.lttng2.kernel.ui/META-INF/MANIFEST.MF
org.eclipse.linuxtools.lttng2.kernel.ui/plugin.xml
org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/LTTng2EventsTable.java [new file with mode: 0644]
org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/Messages.java [new file with mode: 0644]
org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/messages.properties [new file with mode: 0644]

index 82638c423cc1936eff4b331d1ff478439c907f67..c1f0e8fcffecdb5400e8d1a86c7239eb5e79902f 100644 (file)
@@ -10,6 +10,7 @@ Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
 Require-Bundle: org.eclipse.ui;bundle-version="3.7.0",
  org.eclipse.ui.ide;bundle-version="3.7.0",
+ org.eclipse.core.resources;bundle-version="3.8.0",
  org.eclipse.core.runtime;bundle-version="3.7.0",
  org.eclipse.linuxtools.tmf.core;bundle-version="1.0.0",
  org.eclipse.linuxtools.tmf.ui;bundle-version="1.0.0",
index 907bdc077bb63628bf379a91061e29b15cadca0d..640455654a63c523e213135742e062481409eab6 100644 (file)
             name="%kernel.perspective.name">
       </perspective>
    </extension>
-   <extension
-         point="org.eclipse.linuxtools.tmf.ui.tracetype">
-      <type
-            category="org.eclipse.linuxtools.tmf.ui.category.ctf"
-            event_type="org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfEvent"
-            icon="icons/obj16/garland16.png"
-            id="org.eclipse.linuxtools.lttng2.kernel.tracetype"
-            name="%tracetype.type.kernel"
-            trace_type="org.eclipse.linuxtools.lttng2.kernel.core.trace.CtfKernelTrace">
-      </type>
-   </extension>
    <extension
          point="org.eclipse.ui.views">
       <view
             restorable="true">
       </view>
    </extension>
+   <extension
+         point="org.eclipse.linuxtools.tmf.ui.tracetype">
+      <type
+            category="org.eclipse.linuxtools.tmf.ui.category.ctf"
+            event_type="org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfEvent"
+            icon="icons/obj16/garland16.png"
+            id="org.eclipse.linuxtools.lttng2.kernel.tracetype"
+            name="%tracetype.type.kernel"
+            trace_type="org.eclipse.linuxtools.lttng2.kernel.core.trace.CtfKernelTrace">
+         <eventsTableType
+               class="org.eclipse.linuxtools.internal.lttng2.kernel.ui.viewers.events.LTTng2EventsTable">
+         </eventsTableType>
+      </type>
+   </extension>
 </plugin>
diff --git a/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/LTTng2EventsTable.java b/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/LTTng2EventsTable.java
new file mode 100644 (file)
index 0000000..47791c7
--- /dev/null
@@ -0,0 +1,78 @@
+/*******************************************************************************\r
+ * Copyright (c) 2012 Ericsson\r
+ *\r
+ * All rights reserved. This program and the accompanying materials are\r
+ * made available under the terms of the Eclipse Public License v1.0 which\r
+ * accompanies this distribution, and is available at\r
+ * http://www.eclipse.org/legal/epl-v10.html\r
+ *\r
+ * Contributors:\r
+ *   Francois Chouinard - Initial API and implementation\r
+ *******************************************************************************/\r
+\r
+package org.eclipse.linuxtools.internal.lttng2.kernel.ui.viewers.events;\r
+\r
+import org.eclipse.linuxtools.tmf.core.event.ITmfEvent;\r
+import org.eclipse.linuxtools.tmf.core.event.ITmfEventField;\r
+import org.eclipse.linuxtools.tmf.core.event.TmfEventField;\r
+import org.eclipse.linuxtools.tmf.ui.viewers.events.TmfEventsTable;\r
+import org.eclipse.linuxtools.tmf.ui.widgets.virtualtable.ColumnData;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.widgets.Composite;\r
+\r
+public class LTTng2EventsTable extends TmfEventsTable {\r
+\r
+    // ------------------------------------------------------------------------\r
+    // Table data\r
+    // ------------------------------------------------------------------------\r
+\r
+    // Table column names\r
+    static private final String TIMESTAMP_COLUMN = Messages.EventsTable_timestampColumn;\r
+    static private final String CHANNEL_COLUMN = Messages.EventsTable_channelColumn;\r
+    static private final String TYPE_COLUMN = Messages.EventsTable_typeColumn;\r
+    static private final String CONTENT_COLUMN = Messages.EventsTable_contentColumn;\r
+    static private final String[] COLUMN_NAMES = new String[] {\r
+            TIMESTAMP_COLUMN,\r
+            CHANNEL_COLUMN,\r
+            TYPE_COLUMN,\r
+            CONTENT_COLUMN\r
+    };\r
+\r
+    static private final ColumnData[] COLUMN_DATA = new ColumnData[] {\r
+            new ColumnData(COLUMN_NAMES[0], 150, SWT.LEFT),\r
+            new ColumnData(COLUMN_NAMES[1], 120, SWT.LEFT),\r
+            new ColumnData(COLUMN_NAMES[2], 200, SWT.LEFT),\r
+            new ColumnData(COLUMN_NAMES[3], 100, SWT.LEFT)\r
+    };\r
+\r
+    // ------------------------------------------------------------------------\r
+    // Constructor\r
+    // ------------------------------------------------------------------------\r
+\r
+    public LTTng2EventsTable(Composite parent, int cacheSize) {\r
+        super(parent, cacheSize, COLUMN_DATA);\r
+        fTable.getColumns()[0].setData(Key.FIELD_ID, ITmfEvent.EVENT_FIELD_TIMESTAMP);\r
+        fTable.getColumns()[1].setData(Key.FIELD_ID, ITmfEvent.EVENT_FIELD_REFERENCE);\r
+        fTable.getColumns()[2].setData(Key.FIELD_ID, ITmfEvent.EVENT_FIELD_TYPE);\r
+        fTable.getColumns()[3].setData(Key.FIELD_ID, ITmfEvent.EVENT_FIELD_CONTENT);\r
+    }\r
+\r
+    /**\r
+     * @param event\r
+     * @return\r
+     */\r
+    @Override\r
+    protected ITmfEventField[] extractItemFields(ITmfEvent event) {\r
+        ITmfEventField[] fields = new TmfEventField[0];\r
+        if (event != null) {\r
+            fields = new TmfEventField[] {\r
+                     new TmfEventField(ITmfEvent.EVENT_FIELD_TIMESTAMP, event.getTimestamp().toString()),\r
+                     new TmfEventField(ITmfEvent.EVENT_FIELD_REFERENCE, event.getReference()),\r
+                     new TmfEventField(ITmfEvent.EVENT_FIELD_TYPE, event.getType().getName()),\r
+                     new TmfEventField(ITmfEvent.EVENT_FIELD_CONTENT, event.getContent().toString())\r
+                    };\r
+        }\r
+        return fields;\r
+    }\r
+\r
+}\r
diff --git a/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/Messages.java b/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/Messages.java
new file mode 100644 (file)
index 0000000..2fa90a0
--- /dev/null
@@ -0,0 +1,18 @@
+package org.eclipse.linuxtools.internal.lttng2.kernel.ui.viewers.events;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+       private static final String BUNDLE_NAME = "org.eclipse.linuxtools.internal.lttng2.kernel.ui.viewers.events.messages"; //$NON-NLS-1$
+       public static String EventsTable_channelColumn;
+       public static String EventsTable_timestampColumn;
+       public static String EventsTable_typeColumn;
+    public static String EventsTable_contentColumn;
+       static {
+               // initialize resource bundle
+               NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+       }
+
+       private Messages() {
+       }
+}
diff --git a/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/messages.properties b/org.eclipse.linuxtools.lttng2.kernel.ui/src/org/eclipse/linuxtools/internal/lttng2/kernel/ui/viewers/events/messages.properties
new file mode 100644 (file)
index 0000000..2a6786d
--- /dev/null
@@ -0,0 +1,4 @@
+EventsTable_channelColumn=Channel
+EventsTable_timestampColumn=Timestamp
+EventsTable_typeColumn=Event Type
+EventsTable_contentColumn=Content
This page took 0.031943 seconds and 5 git commands to generate.