Commit | Line | Data |
---|---|---|
c3c5c786 FC |
1 | /*******************************************************************************\r |
2 | * Copyright (c) 2010 Ericsson\r | |
3 | * \r | |
4 | * All rights reserved. This program and the accompanying materials are\r | |
5 | * made available under the terms of the Eclipse Public License v1.0 which\r | |
6 | * accompanies this distribution, and is available at\r | |
7 | * http://www.eclipse.org/legal/epl-v10.html\r | |
8 | * \r | |
9 | * Contributors:\r | |
10 | * Patrick Tasse - Initial API and implementation\r | |
11 | *******************************************************************************/\r | |
12 | \r | |
13 | package org.eclipse.linuxtools.tmf.ui.parsers.custom;\r | |
14 | \r | |
15 | import java.text.SimpleDateFormat;\r | |
9ccc6d01 FC |
16 | import java.util.LinkedList;\r |
17 | import java.util.List;\r | |
c3c5c786 FC |
18 | import java.util.TimeZone;\r |
19 | \r | |
20 | import org.eclipse.linuxtools.tmf.event.TmfEvent;\r | |
21 | import org.eclipse.linuxtools.tmf.ui.parsers.custom.CustomTraceDefinition.OutputColumn;\r | |
22 | import org.eclipse.linuxtools.tmf.ui.viewers.events.TmfEventsTable;\r | |
9ccc6d01 | 23 | import org.eclipse.linuxtools.tmf.ui.widgets.ColumnData;\r |
c3c5c786 FC |
24 | import org.eclipse.swt.SWT;\r |
25 | import org.eclipse.swt.widgets.Composite;\r | |
c3c5c786 FC |
26 | \r |
27 | public class CustomEventsTable extends TmfEventsTable {\r | |
28 | \r | |
29 | private CustomTraceDefinition fDefinition;\r | |
30 | \r | |
31 | public CustomEventsTable(CustomTraceDefinition definition, Composite parent, int cacheSize) {\r | |
32 | super(parent, cacheSize);\r | |
33 | fDefinition = definition;\r | |
9ccc6d01 | 34 | createColumnHeaders();\r |
c3c5c786 FC |
35 | }\r |
36 | \r | |
37 | public static final String TIMESTAMP_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";\r | |
38 | private static final SimpleDateFormat TIMESTAMP_SIMPLE_DATE_FORMAT = new SimpleDateFormat(TIMESTAMP_FORMAT); \r | |
39 | static {\r | |
40 | TIMESTAMP_SIMPLE_DATE_FORMAT.setTimeZone(TimeZone.getTimeZone("GMT"));\r | |
41 | }\r | |
42 | \r | |
9ccc6d01 FC |
43 | protected void createColumnHeaders() {\r |
44 | if (fDefinition == null)\r | |
45 | return;\r | |
46 | List<ColumnData> columnData = new LinkedList<ColumnData>();\r | |
47 | for (OutputColumn outputColumn : fDefinition.outputs) {\r | |
48 | ColumnData column = new ColumnData(outputColumn.name, 0, SWT.LEFT);\r | |
49 | columnData.add(column);\r | |
50 | }\r | |
51 | setColumnHeaders((ColumnData[]) columnData.toArray());\r | |
c3c5c786 FC |
52 | }\r |
53 | \r | |
9ccc6d01 FC |
54 | // @Override\r |
55 | // public void createColumnHeaders(final Table table) {\r | |
56 | // if (fDefinition == null) return; // ignore when called by the super constructor\r | |
57 | // for (OutputColumn outputColumn : fDefinition.outputs) {\r | |
58 | // TableColumn column = new TableColumn(table, SWT.LEFT);\r | |
59 | // column.setText(outputColumn.name);\r | |
60 | // column.pack();\r | |
61 | // }\r | |
62 | // }\r | |
63 | \r | |
c3c5c786 FC |
64 | @Override\r |
65 | public String[] extractItemFields(TmfEvent event) {\r | |
66 | if (event instanceof CustomEvent) {\r | |
67 | return ((CustomEvent) event).extractItemFields();\r | |
68 | }\r | |
69 | return new String[0];\r | |
70 | }\r | |
71 | }\r |