diff options
author | Lillian Angel <langel@redhat.com> | 2005-07-12 20:21:53 +0000 |
---|---|---|
committer | Lillian Angel <langel@redhat.com> | 2005-07-12 20:21:53 +0000 |
commit | c998230f52f27c5b5b89ccead4eb3c435bf0ab1c (patch) | |
tree | bbd679cee915ca32dce581fba504d467e8ec9b20 | |
parent | 1e62468233ce2fab4926e1bad5e459f6d272aaae (diff) | |
download | classpath-c998230f52f27c5b5b89ccead4eb3c435bf0ab1c.tar.gz |
2005-07-12 Lillian Angel <langel@redhat.com>
* javax/swing/plaf/basic/BasicTreeUI.java
(paintLeaf): fixed size of selection background to depend on
if icon exists
(paintNonLeaf): fixed size of selection background to depend on
if icon exists
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | javax/swing/plaf/basic/BasicTreeUI.java | 31 |
2 files changed, 28 insertions, 10 deletions
@@ -1,3 +1,10 @@ +2005-07-12 Lillian Angel <langel@redhat.com> + * javax/swing/plaf/basic/BasicTreeUI.java + (paintLeaf): fixed size of selection background to depend on + if icon exists + (paintNonLeaf): fixed size of selection background to depend on + if icon exists + 2005-07-12 Anthony Balkissoon <abalkiss@redhat.com> * javax/swing/DefaultButtonModel.java: diff --git a/javax/swing/plaf/basic/BasicTreeUI.java b/javax/swing/plaf/basic/BasicTreeUI.java index 9f8872f79..5e60eb529 100644 --- a/javax/swing/plaf/basic/BasicTreeUI.java +++ b/javax/swing/plaf/basic/BasicTreeUI.java @@ -2516,11 +2516,16 @@ public class BasicTreeUI if (tree.isVisible(curr)) if (selected) { - Component comp = tree.getCellRenderer() - .getTreeCellRendererComponent(tree, leaf, true, false, true, - 0, false); - rendererPane.paintComponent(g, comp, tree, - getCellBounds(x, y, leaf)); + DefaultTreeCellRenderer dtcr = (DefaultTreeCellRenderer) + tree.getCellRenderer(); + Component comp = dtcr.getTreeCellRendererComponent(tree, leaf, + true, false, true, 0, false); + + Rectangle cb = getCellBounds(x, y, leaf); + Icon li = dtcr.getLeafIcon(); + if (li != null) + cb.width = ((int) cb.getWidth()) + li.getIconWidth() + 4; + rendererPane.paintComponent(g, comp, tree, cb); } else { @@ -2552,11 +2557,17 @@ public class BasicTreeUI if (tree.isVisible(curr)) if (selected) { - Component comp = tree.getCellRenderer() - .getTreeCellRendererComponent(tree, nonLeaf, true, expanded, - false, 0, false); - rendererPane.paintComponent(g, comp, tree, getCellBounds(x, y, - nonLeaf)); + DefaultTreeCellRenderer dtcr = (DefaultTreeCellRenderer) + tree.getCellRenderer(); + Component comp = dtcr.getTreeCellRendererComponent(tree, nonLeaf, + true, expanded, false, 0, false); + + Rectangle cb = getCellBounds(x, y, + nonLeaf); + Icon oi = dtcr.getOpenIcon(); + if (oi != null) + cb.width = ((int) cb.getWidth()) + oi.getIconWidth() + 4; + rendererPane.paintComponent(g, comp, tree, cb); } else { |