Commit | Line | Data |
---|---|---|
12c155f5 | 1 | /******************************************************************************* |
60ae41e1 | 2 | * Copyright (c) 2011, 2014 Ericsson |
013a5f1c | 3 | * |
12c155f5 FC |
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 | |
013a5f1c | 8 | * |
12c155f5 FC |
9 | * Contributors: |
10 | * Francois Chouinard - Initial API and implementation | |
ab37ff41 | 11 | * Patrick Tasse - Add support for unknown trace type icon |
12c155f5 FC |
12 | *******************************************************************************/ |
13 | ||
2bdf0193 | 14 | package org.eclipse.tracecompass.tmf.ui.project.model; |
12c155f5 | 15 | |
d5278aa5 | 16 | import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider; |
12c155f5 | 17 | import org.eclipse.jface.viewers.ILabelProviderListener; |
d5278aa5 GB |
18 | import org.eclipse.jface.viewers.StyledString; |
19 | import org.eclipse.jface.viewers.StyledString.Styler; | |
12c155f5 FC |
20 | import org.eclipse.swt.graphics.Image; |
21 | import org.eclipse.ui.IMemento; | |
12c155f5 FC |
22 | import org.eclipse.ui.navigator.ICommonContentExtensionSite; |
23 | import org.eclipse.ui.navigator.ICommonLabelProvider; | |
12c155f5 FC |
24 | |
25 | /** | |
013a5f1c | 26 | * The TMF project label provider for the tree viewer in the project explorer view. |
12c155f5 | 27 | * <p> |
b544077e BH |
28 | * @version 1.0 |
29 | * @author Francois Chouinard | |
12c155f5 | 30 | */ |
d5278aa5 | 31 | public class TmfNavigatorLabelProvider implements ICommonLabelProvider, IStyledLabelProvider { |
12c155f5 | 32 | |
12c155f5 FC |
33 | // ------------------------------------------------------------------------ |
34 | // ICommonLabelProvider | |
35 | // ------------------------------------------------------------------------ | |
11252342 | 36 | |
12c155f5 FC |
37 | @Override |
38 | public Image getImage(Object element) { | |
dff70ccd AM |
39 | if (element instanceof ITmfProjectModelElement) { |
40 | return ((ITmfProjectModelElement) element).getIcon(); | |
c068a752 | 41 | } |
12c155f5 FC |
42 | return null; |
43 | } | |
44 | ||
45 | @Override | |
46 | public String getText(Object element) { | |
12c155f5 | 47 | if (element instanceof ITmfProjectModelElement) { |
dff70ccd | 48 | return ((ITmfProjectModelElement) element).getLabelText(); |
12c155f5 | 49 | } |
12c155f5 FC |
50 | return null; |
51 | } | |
52 | ||
53 | @Override | |
54 | public void addListener(ILabelProviderListener listener) { | |
55 | } | |
56 | ||
57 | @Override | |
58 | public void dispose() { | |
59 | } | |
60 | ||
61 | @Override | |
62 | public boolean isLabelProperty(Object element, String property) { | |
63 | return false; | |
64 | } | |
65 | ||
66 | @Override | |
67 | public void removeListener(ILabelProviderListener listener) { | |
68 | } | |
69 | ||
70 | @Override | |
71 | public void restoreState(IMemento aMemento) { | |
72 | } | |
73 | ||
74 | @Override | |
75 | public void saveState(IMemento aMemento) { | |
76 | } | |
77 | ||
78 | @Override | |
79 | public String getDescription(Object anElement) { | |
80 | return getText(anElement); | |
81 | } | |
82 | ||
83 | @Override | |
84 | public void init(ICommonContentExtensionSite aConfig) { | |
85 | } | |
86 | ||
d5278aa5 GB |
87 | @Override |
88 | public StyledString getStyledText(Object element) { | |
89 | String text = getText(element); | |
90 | if (text != null) { | |
91 | if (element instanceof ITmfStyledProjectModelElement) { | |
92 | Styler styler = ((ITmfStyledProjectModelElement) element).getStyler(); | |
93 | if (styler != null) { | |
94 | return new StyledString(text, styler); | |
95 | } | |
96 | } | |
97 | return new StyledString(text); | |
98 | } | |
99 | return null; | |
100 | } | |
101 | ||
12c155f5 | 102 | } |