Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: it/rabellino/toska/gui/KeysTreeCellRenderer.java


1   package it.rabellino.toska.gui;
2   
3   import it.rabellino.toska.Key;
4   import it.rabellino.toska.Host;
5   import it.rabellino.toska.User;
6   import java.awt.Component;
7   
8   import javax.swing.ImageIcon;
9   import javax.swing.JTree;
10  import javax.swing.tree.DefaultMutableTreeNode;
11  import javax.swing.tree.DefaultTreeCellRenderer;
12  
13  /**
14   * @author <a href="gianugo@apache.org">Gianugo Rabellino</a>
15   *
16   */
17  public class KeysTreeCellRenderer extends DefaultTreeCellRenderer {
18    
19    private ImageIcon hostIcon;
20    private ImageIcon userIcon;
21    private ImageIcon keysIcon;
22    private ImageIcon keyIcon;
23    private ImageIcon keyDisabledIcon;
24    
25    /**
26     * Constructor for KeysTreeCellRenderer.
27     */
28    public KeysTreeCellRenderer() {
29    
30      super();
31      ClassLoader cl = KeysTreeCellRenderer.class.getClassLoader();
32      hostIcon = new ImageIcon(cl.getResource("resources/host.gif"));
33      userIcon = new ImageIcon(cl.getResource("resources/user.gif"));
34      keysIcon  = new ImageIcon(cl.getResource("resources/users.gif"));
35      keyIcon  = new ImageIcon(cl.getResource("resources/key.gif"));
36      keyDisabledIcon  = new ImageIcon(cl.getResource("resources/disabledkey.gif"));
37  
38    }
39    
40    public Component getTreeCellRendererComponent(
41                          JTree tree,
42                          Object value,
43                          boolean sel,
44                          boolean expanded,
45                          boolean leaf,
46                          int row,
47                          boolean hasFocus) {
48  
49       super.getTreeCellRendererComponent(
50                          tree, value, sel,
51                          expanded, leaf, row,
52                          hasFocus);
53       DefaultMutableTreeNode node = (DefaultMutableTreeNode)value;
54       
55       Object nodeType = node.getUserObject();                   
56       if (nodeType instanceof Key) {
57         if (((Key)nodeType).isDisabled())
58           setIcon(keyDisabledIcon);
59         else
60           setIcon(keyIcon);
61       } else if (nodeType instanceof User) {
62         setIcon(userIcon);
63       } else if (nodeType instanceof String &&
64           ((String)nodeType).equals("Keys")) {
65         setIcon(keysIcon);
66  
67       } else {
68         setIcon(hostIcon);
69       }
70       
71       return this;
72    }
73  
74   
75    
76  
77  }