KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > openharmonise > him > swing > resourcetree > TreeCellRenderer


1 /*
2  * The contents of this file are subject to the
3  * Mozilla Public License Version 1.1 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at http://www.mozilla.org/MPL/
6  *
7  * Software distributed under the License is distributed on an "AS IS"
8  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
9  * See the License for the specific language governing rights and
10  * limitations under the License.
11  *
12  * The Initial Developer of the Original Code is Simulacra Media Ltd.
13  * Portions created by Simulacra Media Ltd are Copyright (C) Simulacra Media Ltd, 2004.
14  *
15  * All Rights Reserved.
16  *
17  * Contributor(s):
18  */

19 package org.openharmonise.him.swing.resourcetree;
20
21 import java.awt.*;
22
23 import javax.swing.*;
24 import javax.swing.tree.*;
25
26 import org.openharmonise.swing.FontManager;
27 import org.openharmonise.vfs.gui.*;
28
29
30 /**
31  * Renders a resource in a tree.
32  *
33  * @author Matthew Large
34  * @version $Revision: 1.2 $
35  *
36  */

37 public class TreeCellRenderer extends DefaultTreeCellRenderer {
38
39     /**
40      * The tree.
41      */

42     private ResourceTree m_displayTree = null;
43
44     /**
45      * Constructs a new tree cell renderer.
46      *
47      */

48     public TreeCellRenderer() {
49         super();
50         setOpenIcon( IconManager.getInstance().getIcon("16-section-open.gif") );
51         setClosedIcon( IconManager.getInstance().getIcon("16-section.gif") );
52         setLeafIcon( IconManager.getInstance().getIcon("16-document.gif") );
53     }
54
55     /**
56      * Constructs a new tree cell renderer.
57      *
58      * @param displayTree Tree
59      */

60     public TreeCellRenderer(ResourceTree displayTree) {
61         super();
62         m_displayTree = displayTree;
63         setOpenIcon( IconManager.getInstance().getIcon("16-section-open.gif") );
64         setClosedIcon( IconManager.getInstance().getIcon("16-section.gif") );
65         setLeafIcon( IconManager.getInstance().getIcon("16-document.gif") );
66     }
67     
68     /* (non-Javadoc)
69      * @see javax.swing.tree.TreeCellRenderer#getTreeCellRendererComponent(javax.swing.JTree, java.lang.Object, boolean, boolean, boolean, int, boolean)
70      */

71     public Component getTreeCellRendererComponent(JTree tree, Object JavaDoc value,
72                                                   boolean selected,
73                                                   boolean expanded,
74                                                   boolean leaf, int row,
75                                                   boolean hasFocus) {
76         JLabel rtnLabel = (JLabel) super.getTreeCellRendererComponent(tree,
77                                                                       value,
78                                                                       selected,
79                                                                       expanded,
80                                                                       leaf, row,
81                                                                       hasFocus);
82
83         if( value instanceof TreeNode ) {
84           
85           rtnLabel.setText( ((TreeNode)value).getDisplayName() );
86           rtnLabel.setFont( FontManager.getInstance().getFont( FontManager.FONT_RESOURCE_TITLE ) );
87           rtnLabel.setIcon( ((TreeNode)value).getDisplayIcon(expanded) );
88         }
89         
90         return rtnLabel;
91     }
92
93 }
94
Popular Tags