KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > freemarker > eclipse > outline > OutlineLabelProvider


1 package freemarker.eclipse.outline;
2
3 import org.eclipse.jface.viewers.LabelProvider;
4 import org.eclipse.swt.graphics.Image;
5
6 import freemarker.eclipse.FreemarkerPlugin;
7 import freemarker.eclipse.ImageManager;
8 import freemarker.eclipse.preferences.IPreferenceConstants;
9
10 /**
11  * @version $Id: OutlineLabelProvider.java,v 1.3 2003/08/15 19:49:08 stephanmueller Exp $
12  * @author <a HREF="mailto:stephan@chaquotay.net">Stephan Mueller</a>
13  *
14  * This class provides image and text information for elements of a template tree.
15  */

16 public class OutlineLabelProvider
17     extends LabelProvider
18     implements IPreferenceConstants {
19
20     private Image fMacroImage = null;
21     private Image fFunctionImage = null;
22     private Image fImportImage = null;
23     private Image fImportCollectionImage = null;
24
25     public OutlineLabelProvider() {
26         super();
27         fMacroImage = ImageManager.getImage(ImageManager.IMG_MACRO);
28         fFunctionImage = ImageManager.getImage(ImageManager.IMG_FUNCTION);
29         fImportImage = ImageManager.getImage(ImageManager.IMG_IMPORT);
30         fImportCollectionImage = ImageManager.getImage(ImageManager.IMG_IMPORT_COLLECTION);
31     }
32
33     public Image getImage(Object JavaDoc anElement) {
34         if (null == anElement)
35             return null;
36         boolean bShowIcons =
37             FreemarkerPlugin.getInstance().getPreferenceStore().getBoolean(
38                 SHOW_ICONS);
39         if (bShowIcons) {
40             if (anElement instanceof ImportNode) {
41                 return fImportImage;
42             } else if (anElement instanceof ImportCollectionNode) {
43                 return fImportCollectionImage;
44             } else if (anElement instanceof MacroNode) {
45                 if(((MacroNode)anElement).isFunction()) {
46                     return fFunctionImage;
47                 } else {
48                     return fMacroImage;
49                 }
50             } else {
51                 return null;
52             }
53         } else {
54             return null;
55         }
56     }
57
58     public String JavaDoc getText(Object JavaDoc anElement) {
59         return anElement!=null?anElement.toString():"";
60     }
61
62     public void dispose() {
63         if(fImportCollectionImage!=null) {fImportCollectionImage.dispose();}
64         if(fImportImage!=null) {fImportImage.dispose();}
65         if(fMacroImage!=null) {fMacroImage.dispose();}
66         if(fFunctionImage!=null) {fFunctionImage.dispose();}
67     }
68 }
69
Popular Tags