analysis: Move plugins to their own sub-directory
[deliverable/tracecompass.git] / org.eclipse.tracecompass.tmf.ui / src / org / eclipse / tracecompass / tmf / ui / views / statesystem / TmfStateSystemExplorer.java
CommitLineData
7692e512 1/*******************************************************************************
17c73d10 2 * Copyright (c) 2013, 2014 École Polytechnique de Montréal, Ericsson
7692e512
AM
3 *
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
8 *
9 * Contributors:
10 * Florian Wininger - Initial API and implementation
11 * Alexandre Montplaisir - Refactoring, performance tweaks
fec1ac0b 12 * Bernd Hufmann - Updated signal handling
c1cd9635 13 * Marc-Andre Laperle - Add time zone preference
17c73d10 14 * Geneviève Bastien - Use a tree viewer instead of a tree
7692e512
AM
15 *******************************************************************************/
16
2bdf0193 17package org.eclipse.tracecompass.tmf.ui.views.statesystem;
7692e512 18
278aa247 19import java.io.File;
7692e512 20
278aa247
FW
21import org.eclipse.jface.action.Action;
22import org.eclipse.jface.action.IToolBarManager;
23import org.eclipse.jface.resource.ImageDescriptor;
278aa247 24import org.eclipse.swt.graphics.Image;
7692e512 25import org.eclipse.swt.widgets.Composite;
2bdf0193
AM
26import org.eclipse.tracecompass.internal.tmf.ui.Activator;
27import org.eclipse.tracecompass.tmf.core.signal.TmfTraceSelectedSignal;
28import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
21852dfa 29import org.eclipse.tracecompass.tmf.core.trace.TmfTraceManager;
2bdf0193 30import org.eclipse.tracecompass.tmf.ui.views.TmfView;
278aa247 31import org.eclipse.ui.IActionBars;
7692e512
AM
32
33/**
34 * Displays the State System at a current time.
35 *
36 * @author Florian Wininger
37 * @author Alexandre Montplaisir
7692e512
AM
38 */
39public class TmfStateSystemExplorer extends TmfView {
40
41 /** The Environment View's ID */
42 public static final String ID = "org.eclipse.linuxtools.tmf.ui.views.ssview"; //$NON-NLS-1$
43
278aa247 44 private static final Image FILTER_IMAGE =
17c73d10 45 Activator.getDefault().getImageFromPath( File.separator + "icons" + File.separator + "elcl16" + File.separator + "filter_items.gif"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
7692e512 46
17c73d10 47 private TmfStateSystemViewer fViewer;
278aa247 48
7692e512
AM
49 /**
50 * Default constructor
51 */
52 public TmfStateSystemExplorer() {
53 super(ID);
54 }
55
56 // ------------------------------------------------------------------------
57 // ViewPart
58 // ------------------------------------------------------------------------
59
60 @Override
61 public void createPartControl(Composite parent) {
7692e512 62
17c73d10 63 fViewer = new TmfStateSystemViewer(parent);
7692e512 64
17c73d10 65 fillToolBar() ;
7692e512 66
21852dfa 67 ITmfTrace trace = TmfTraceManager.getInstance().getActiveTrace();
7692e512 68 if (trace != null) {
17c73d10 69 fViewer.traceSelected(new TmfTraceSelectedSignal(this, trace));
7692e512 70 }
7692e512 71
278aa247
FW
72 }
73
74 // ------------------------------------------------------------------------
75 // Part For Button Action
76 // ------------------------------------------------------------------------
77
278aa247
FW
78 private void fillToolBar() {
79 Action fFilterAction = new FilterAction();
80 fFilterAction.setImageDescriptor(ImageDescriptor.createFromImage(FILTER_IMAGE));
81 fFilterAction.setToolTipText(Messages.FilterButton) ;
82 fFilterAction.setChecked(false);
83
84 IActionBars bars = getViewSite().getActionBars();
85 IToolBarManager manager = bars.getToolBarManager();
86 manager.add(fFilterAction);
87 }
88
89 private class FilterAction extends Action {
90 @Override
91 public void run() {
17c73d10 92 fViewer.changeFilterStatus();
278aa247
FW
93 }
94 }
17c73d10
GB
95
96 @Override
97 public void setFocus() {
98 }
94c51e8a
BH
99
100 @Override
101 public void dispose() {
102 super.dispose();
103 if (fViewer != null) {
104 fViewer.dispose();
105 }
106 }
7692e512 107}
This page took 0.068901 seconds and 5 git commands to generate.