1 /*******************************************************************************
2 * Copyright (c) 2010 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Patrick Tasse - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.tmf
.ui
.parsers
.custom
;
15 import java
.util
.LinkedList
;
16 import java
.util
.List
;
18 import org
.eclipse
.linuxtools
.tmf
.core
.event
.TmfEvent
;
19 import org
.eclipse
.linuxtools
.tmf
.ui
.parsers
.custom
.CustomTraceDefinition
.OutputColumn
;
20 import org
.eclipse
.linuxtools
.tmf
.ui
.viewers
.events
.TmfEventsTable
;
21 import org
.eclipse
.linuxtools
.tmf
.ui
.widgets
.ColumnData
;
22 import org
.eclipse
.swt
.SWT
;
23 import org
.eclipse
.swt
.widgets
.Composite
;
25 public class CustomEventsTable
extends TmfEventsTable
{
27 private CustomTraceDefinition fDefinition
;
29 public CustomEventsTable(CustomTraceDefinition definition
, Composite parent
, int cacheSize
) {
30 super(parent
, cacheSize
, new ColumnData
[0]);
31 fDefinition
= definition
;
32 createColumnHeaders();
35 protected void createColumnHeaders() {
36 if (fDefinition
== null)
38 List
<ColumnData
> columnData
= new LinkedList
<ColumnData
>();
39 for (OutputColumn outputColumn
: fDefinition
.outputs
) {
40 ColumnData column
= new ColumnData(outputColumn
.name
, 0, SWT
.LEFT
);
41 columnData
.add(column
);
43 setColumnHeaders((ColumnData
[]) columnData
.toArray(new ColumnData
[0]));
47 public String
[] extractItemFields(TmfEvent event
) {
48 if (event
instanceof CustomEvent
) {
49 return ((CustomEvent
) event
).extractItemFields();