1 package net.logAnalyzer.gui.config;
2 import java.awt.Color;
3 import java.awt.Component;
4 import java.awt.Font;
5
6 import javax.swing.ImageIcon;
7 import javax.swing.JTree;
8 import javax.swing.tree.DefaultTreeCellRenderer;
9
10 import net.logAnalyzer.resources.LAResourceBundle;
11 import net.logAnalyzer.utils.gui.GraphicsAttributes;
12
13 import org.w3c.dom.Node;
14
15 public class XMLTreeCellRenderer extends DefaultTreeCellRenderer {
16 private static final long serialVersionUID = 1L;
17
18 public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected,
19 boolean expanded, boolean leaf, int row, boolean hasFocus) {
20 Component comp = super.getTreeCellRendererComponent(tree, value, selected, expanded,
21 leaf, row, hasFocus);
22
23 XMLNode node = (XMLNode) value;
24 int type = node.getNodeType();
25 switch(type) {
26 case Node.ELEMENT_NODE:
27 setIcon(LAResourceBundle.getIcon("XMLConfigView.icon.tree.element"));
28 break;
29 case Node.CDATA_SECTION_NODE:
30 setIcon(LAResourceBundle.getIcon("XMLConfigView.icon.tree.cdata"));
31 break;
32 case Node.COMMENT_NODE:
33 setIcon(LAResourceBundle.getIcon("XMLConfigView.icon.tree.comment"));
34 break;
35 case Node.ATTRIBUTE_NODE:
36 setIcon(LAResourceBundle.getIcon("XMLConfigView.icon.tree.attribute"));
37 break;
38 default:
39 break;
40 }
41 comp.setFont(getFont().deriveFont(Font.BOLD));
42
43
44 return comp;
45 }
46
47 public Color getTextSelectionColor() {
48 return GraphicsAttributes.TEXTSELECTED_COLOR;
49 }
50
51 public Color getTextNonSelectionColor() {
52 return GraphicsAttributes.TEXTNORMAL_COLOR;
53 }
54
55
56
57
58
59
60
61
62 }