1 /*****************************************************************************
2 * Copyright (c) 2007, Intel Corporation.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
9 * Intel Corporation - Initial API and implementation
10 * Ruslan A. Scherbakov, Intel - Initial API and implementation
11 * Alvaro Sanchex-Leon - Udpated for TMF
13 * $Id: TraceCtrl.java,v 1.2 2007/02/27 18:37:36 ewchan Exp $
14 *****************************************************************************/
16 package org
.eclipse
.linuxtools
.tmf
.ui
.viewers
.timeAnalysis
.widgets
;
18 import org
.eclipse
.swt
.SWT
;
19 import org
.eclipse
.swt
.events
.PaintEvent
;
20 import org
.eclipse
.swt
.events
.PaintListener
;
21 import org
.eclipse
.swt
.graphics
.Color
;
22 import org
.eclipse
.swt
.graphics
.Rectangle
;
23 import org
.eclipse
.swt
.widgets
.Canvas
;
24 import org
.eclipse
.swt
.widgets
.Composite
;
26 public abstract class TraceCtrl
extends Canvas
implements PaintListener
{
28 static public final int MARGIN
= 4;
29 static public final int RIGHT_MARGIN
= 2; // 2 pixels less to make sure end time is visible
30 static public final int SMALL_ICON_SIZE
= 16;
32 protected TraceColorScheme _colors
;
33 protected int _fontHeight
= 0;
35 public TraceCtrl(Composite parent
, TraceColorScheme colors
) {
36 this(parent
, colors
, SWT
.NO_BACKGROUND
| SWT
.NO_FOCUS
);
39 public TraceCtrl(Composite parent
, TraceColorScheme colors
, int style
) {
42 addPaintListener(this);
46 public void dispose() {
51 public void paintControl(PaintEvent e
) {
54 _fontHeight
= e
.gc
.getFontMetrics().getHeight();
55 Rectangle bound
= getClientArea();
56 if (!bound
.isEmpty()) {
57 Color colBackup
= e
.gc
.getBackground();
59 e
.gc
.setBackground(colBackup
);
63 public int getFontHeight() {
67 abstract void paint(Rectangle bound
, PaintEvent e
);
This page took 0.032877 seconds and 5 git commands to generate.