KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > jaspersoft > jasperserver > irplugin > gui > RepositoryTreeCellRenderer


1 /*
2  * ProjectExplorerTreeCellRenderer.java
3  *
4  * All rights reserved.
5  * Copyright (C) 2005 JasperSoft Corporation
6  *
7  * JasperSoft Corporation
8  * 303 Second Street, Suite 450 North
9  * San Francisco, CA 94107
10  * http://www.jaspersoft.com
11  *
12  * Created on 1 giugno 2003, 16.04
13  */

14
15 package com.jaspersoft.jasperserver.irplugin.gui;
16 import com.jaspersoft.jasperserver.api.metadata.xml.domain.impl.ResourceDescriptor;
17 import com.jaspersoft.jasperserver.irplugin.JServer;
18 import com.jaspersoft.jasperserver.irplugin.RepositoryFile;
19 import com.jaspersoft.jasperserver.irplugin.RepositoryFolder;
20 import com.jaspersoft.jasperserver.irplugin.RepositoryReportUnit;
21 import javax.swing.tree.*;
22 import javax.swing.*;
23 import java.awt.*;
24 /**
25  *
26  * @author Administrator
27  */

28 public class RepositoryTreeCellRenderer extends DefaultTreeCellRenderer {
29
30     static ImageIcon serverIcon;
31     static ImageIcon folderIcon;
32     static ImageIcon reportUnitIcon;
33     static ImageIcon datasourceJndiIcon;
34     static ImageIcon datasourceJdbcIcon;
35     static ImageIcon datasourceBeanIcon;
36     static ImageIcon imageIcon;
37     static ImageIcon jrxmlIcon;
38     static ImageIcon fontIcon;
39     static ImageIcon jarIcon;
40     static ImageIcon refIcon;
41     static ImageIcon bundleIcon;
42     static ImageIcon inputcontrolIcon;
43     static ImageIcon datatypeIcon;
44     static ImageIcon lovIcon;
45     static ImageIcon unknowIcon;
46     static ImageIcon queryIcon;
47
48
49     static
50     {
51         if (serverIcon == null) serverIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/server.png"));
52         if (folderIcon == null) folderIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/folder.png"));
53         if (reportUnitIcon == null) reportUnitIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/reportunit.png"));
54         
55         if (datasourceJndiIcon == null) datasourceJndiIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/datasource_jndi.png"));
56         if (datasourceJdbcIcon == null) datasourceJdbcIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/datasource_jdbc.png"));
57         if (imageIcon == null) imageIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/picture.png"));
58         if (jrxmlIcon == null) jrxmlIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/jrxml_file.png"));
59         
60         if (refIcon == null) refIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/link.png"));
61         if (bundleIcon == null) bundleIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/bundle.png"));
62         if (fontIcon == null) fontIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/font.png"));
63         if (jarIcon == null) jarIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/jar.png"));
64         if (inputcontrolIcon == null) inputcontrolIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/inputcontrol.png"));
65         if (datatypeIcon == null) datatypeIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/datatype.png"));
66         if (lovIcon == null) lovIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/lov.png"));
67         
68         if (datasourceBeanIcon == null) datasourceBeanIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/datasource_bean.png"));
69         if (unknowIcon == null) unknowIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/unknow.png"));
70         if (queryIcon == null) queryIcon = new javax.swing.ImageIcon JavaDoc(RepositoryTreeCellRenderer.class.getResource("/com/jaspersoft/jasperserver/irplugin/res/query.png"));
71
72     }
73     
74     public RepositoryTreeCellRenderer() {
75         super();
76     }
77
78     public Component getTreeCellRendererComponent(
79                         JTree tree,
80                         Object JavaDoc value,
81                         boolean sel,
82                         boolean expanded,
83                         boolean leaf,
84                         int row,
85                         boolean hasFocus) {
86
87         super.getTreeCellRendererComponent(
88                         tree, value, sel,
89                         expanded, leaf, row,
90                         hasFocus);
91             this.setForeground( Color.BLACK);
92             ImageIcon icon = getElementIcon(value);
93             setIcon(icon);
94
95             setToolTipText(null);
96
97         return this;
98     }
99
100     protected ImageIcon getElementIcon(Object JavaDoc value) {
101         
102         if (!(value instanceof DefaultMutableTreeNode)) return folderIcon;
103         
104         DefaultMutableTreeNode node = (DefaultMutableTreeNode)value;
105         this.setForeground( Color.BLACK);
106
107         if (node.getUserObject() instanceof JServer) return serverIcon;
108         if (node.getUserObject() instanceof RepositoryReportUnit) return reportUnitIcon;
109         if (node.getUserObject() instanceof RepositoryFile)
110         {
111             RepositoryFile file = (RepositoryFile)node.getUserObject();
112             return getResourceIcon( file.getDescriptor() );
113         }
114         if (node.getUserObject() instanceof RepositoryFolder) return folderIcon;
115         
116         return folderIcon;
117     }
118     
119     public static ImageIcon getResourceIcon(ResourceDescriptor resource)
120     {
121         if (resource == null) return serverIcon;
122         else if (resource.getWsType() == null) return serverIcon;
123         else if (resource.getIsReference()) return refIcon;
124         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_FOLDER)) return folderIcon;
125         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_REPORTUNIT)) return reportUnitIcon;
126         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_DATASOURCE_JNDI)) return datasourceJndiIcon;
127         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_DATASOURCE_JDBC)) return datasourceJdbcIcon;
128         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_DATASOURCE_BEAN)) return datasourceBeanIcon;
129         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_IMAGE)) return imageIcon;
130         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_JRXML)) return jrxmlIcon;
131         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_FONT)) return fontIcon;
132         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_CLASS_JAR)) return jarIcon;
133         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_RESOURCE_BUNDLE)) return bundleIcon;
134         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_INPUT_CONTROL)) return inputcontrolIcon;
135         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_DATA_TYPE)) return datatypeIcon;
136         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_LOV)) return lovIcon;
137         else if (resource.getWsType().equals(ResourceDescriptor.TYPE_QUERY)) return queryIcon;
138         return unknowIcon;
139         
140     }
141 }
142
143
Popular Tags