51 |
import javax.swing.Icon; |
import javax.swing.Icon; |
52 |
import javax.swing.JLabel; |
import javax.swing.JLabel; |
53 |
import javax.swing.JTree; |
import javax.swing.JTree; |
|
import javax.swing.UIDefaults; |
|
54 |
import javax.swing.UIManager; |
import javax.swing.UIManager; |
55 |
import javax.swing.SwingUtilities; |
import javax.swing.SwingUtilities; |
56 |
import javax.swing.plaf.UIResource; |
import javax.swing.plaf.UIResource; |
132 |
*/ |
*/ |
133 |
public DefaultTreeCellRenderer() |
public DefaultTreeCellRenderer() |
134 |
{ |
{ |
|
UIDefaults defaults = UIManager.getLookAndFeelDefaults(); |
|
|
|
|
135 |
setLeafIcon(getDefaultLeafIcon()); |
setLeafIcon(getDefaultLeafIcon()); |
136 |
setOpenIcon(getDefaultOpenIcon()); |
setOpenIcon(getDefaultOpenIcon()); |
137 |
setClosedIcon(getDefaultClosedIcon()); |
setClosedIcon(getDefaultClosedIcon()); |
138 |
|
|
139 |
setTextNonSelectionColor(defaults.getColor("Tree.textForeground")); |
setTextNonSelectionColor(UIManager.getColor("Tree.textForeground")); |
140 |
setTextSelectionColor(defaults.getColor("Tree.selectionForeground")); |
setTextSelectionColor(UIManager.getColor("Tree.selectionForeground")); |
141 |
setBackgroundNonSelectionColor(defaults.getColor("Tree.nonSelectionBackground")); |
setBackgroundNonSelectionColor(UIManager.getColor("Tree.nonSelectionBackground")); |
142 |
setBackgroundSelectionColor(defaults.getColor("Tree.selectionBackground")); |
setBackgroundSelectionColor(UIManager.getColor("Tree.selectionBackground")); |
143 |
setBorderSelectionColor(defaults.getColor("Tree.selectionBorderColor")); |
setBorderSelectionColor(UIManager.getColor("Tree.selectionBorderColor")); |
144 |
} |
} |
145 |
|
|
146 |
// ------------------------------------------------------------- |
// ------------------------------------------------------------- |
154 |
*/ |
*/ |
155 |
public Icon getDefaultOpenIcon() |
public Icon getDefaultOpenIcon() |
156 |
{ |
{ |
157 |
return UIManager.getLookAndFeelDefaults().getIcon("Tree.openIcon"); |
return UIManager.getIcon("Tree.openIcon"); |
158 |
} |
} |
159 |
|
|
160 |
/** |
/** |
164 |
*/ |
*/ |
165 |
public Icon getDefaultClosedIcon() |
public Icon getDefaultClosedIcon() |
166 |
{ |
{ |
167 |
return UIManager.getLookAndFeelDefaults().getIcon("Tree.closedIcon"); |
return UIManager.getIcon("Tree.closedIcon"); |
168 |
} |
} |
169 |
|
|
170 |
/** |
/** |
174 |
*/ |
*/ |
175 |
public Icon getDefaultLeafIcon() |
public Icon getDefaultLeafIcon() |
176 |
{ |
{ |
177 |
return UIManager.getLookAndFeelDefaults().getIcon("Tree.leafIcon"); |
return UIManager.getIcon("Tree.leafIcon"); |
178 |
} |
} |
179 |
|
|
180 |
/** |
/** |
409 |
setOpaque(false); |
setOpaque(false); |
410 |
setVerticalAlignment(TOP); |
setVerticalAlignment(TOP); |
411 |
setEnabled(true); |
setEnabled(true); |
412 |
super.setFont(UIManager.getLookAndFeelDefaults().getFont("Tree.font")); |
super.setFont(UIManager.getFont("Tree.font")); |
413 |
|
|
414 |
if (selected) |
if (selected) |
415 |
{ |
{ |
416 |
super.setBackground(getBackgroundSelectionColor()); |
super.setBackground(getBackgroundSelectionColor()); |
417 |
setForeground(getTextSelectionColor()); |
setForeground(getTextSelectionColor()); |
418 |
|
|
419 |
if (tree.getLeadSelectionPath() == null || |
if (hasFocus) |
|
(tree.getLeadSelectionPath().getLastPathComponent()).equals(val)) |
|
420 |
setBorderSelectionColor(UIManager.getLookAndFeelDefaults(). |
setBorderSelectionColor(UIManager.getLookAndFeelDefaults(). |
421 |
getColor("Tree.selectionBorderColor")); |
getColor("Tree.selectionBorderColor")); |
422 |
else |
else |
456 |
Rectangle tr = new Rectangle(); |
Rectangle tr = new Rectangle(); |
457 |
|
|
458 |
Insets insets = new Insets(0, 0, 0, 0); |
Insets insets = new Insets(0, 0, 0, 0); |
459 |
Border border = UIManager.getLookAndFeelDefaults().getBorder( |
Border border = UIManager.getBorder("Tree.selectionBorder"); |
|
"Tree.selectionBorder"); |
|
460 |
if (border != null) |
if (border != null) |
461 |
insets = border.getBorderInsets(this); |
insets = border.getBorderInsets(this); |
462 |
|
|