wangting
2024-09-27 a3e87f78ee262ca9bb7d9b0c997639d5f3295890
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
package com.vci.client.omd.lifecycle.ui;
 
import java.awt.Component;
 
import javax.swing.JTree;
import javax.swing.ToolTipManager;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeCellRenderer;
 
import com.vci.client.ui.swing.VCISwingUtil;
import com.vci.corba.omd.lcm.LifeCycle;
 
public class LifeCycleTreeCellRenderer extends DefaultTreeCellRenderer {
 
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
 
    public Component getTreeCellRendererComponent(JTree tree, Object value,
            boolean sel, boolean expanded, boolean leaf, int row,
            boolean hasFocus) {
        super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);    
 
        try {
            ToolTipManager.sharedInstance().registerComponent(tree);
            DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
            
            String icon = "";
            if(node == null || (node != null && node.getUserObject() == null)) {
                icon = "house.png";
            } else {
                if (node.isRoot())
                    icon = "folder.png";
                else if (node.getUserObject() != null){
                    Object obj = node.getUserObject();
                    if (obj instanceof LifeCycleWrapper){
                        LifeCycle lc = ((LifeCycleWrapper)node.getUserObject()).getLC();
                        if (lc == null)
                            icon = "object.png";
                        else
                            icon = "lifeCycle.png";
                    } else if (obj instanceof LifeCycle){
                        LifeCycle lc = ((LifeCycle)node.getUserObject());
                        if (lc == null)
                            icon = "object.png";
                        else
                            icon = "lifeCycle.png";
                    } else {
                        if (node.isLeaf()){
                            icon = "file.png";
                        }else{
                            icon = "lifeCycle.png";
                        }
                    } 
                }
                else
                    icon = "house.png";
            }
 
            setIcon(VCISwingUtil.createImageIcon(icon));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return this;
    }
}