diff options
author | Lillian Angel <langel@redhat.com> | 2005-07-12 15:23:10 +0000 |
---|---|---|
committer | Lillian Angel <langel@redhat.com> | 2005-07-12 15:23:10 +0000 |
commit | 118439a5407f3c703d08601fd2ad9b6ec079aa00 (patch) | |
tree | 0ecc9eba3013a95f7b52cfe2ea091aea16086896 | |
parent | 319878ce22203e747176e3174e9bd373b8b0a1ad (diff) | |
download | classpath-118439a5407f3c703d08601fd2ad9b6ec079aa00.tar.gz |
2005-07-11 Lillian Angel <langel@redhat.com>
* examples/gnu/classpath/examples/swing/Demo.java
(mkTreeWorld): Implemented
(mkTabbedPane): added in tab for TreeWorld
* javax/swing/plaf/basic/BasicLookAndFeel.java
Changed default color of text non selection background.
* javax/swing/plaf/basic/BasicTreeUI.java
Removed irrelevant comment
* javax/swing/tree/DefaultTreeCellRenderer.java
(getTreeCellRendererComponent): changed to use background's non
selection default color instead
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | examples/gnu/classpath/examples/swing/Demo.java | 105 | ||||
-rw-r--r-- | javax/swing/plaf/basic/BasicLookAndFeel.java | 1 | ||||
-rw-r--r-- | javax/swing/plaf/basic/BasicTreeUI.java | 1 | ||||
-rw-r--r-- | javax/swing/tree/DefaultTreeCellRenderer.java | 4 |
5 files changed, 120 insertions, 3 deletions
@@ -1,3 +1,15 @@ +2005-07-12 Lillian Angel <langel@redhat.com> + * examples/gnu/classpath/examples/swing/Demo.java + (mkTreeWorld): Implemented + (mkTabbedPane): added in tab for TreeWorld + * javax/swing/plaf/basic/BasicLookAndFeel.java + Changed default color of text non selection background. + * javax/swing/plaf/basic/BasicTreeUI.java + Removed irrelevant comment + * javax/swing/tree/DefaultTreeCellRenderer.java + (getTreeCellRendererComponent): changed to use background's non + selection default color instead + 2005-07-12 Roman Kennke <roman@kennke.org> * javax/swing/plaf/basic/BasicInternalFrameTitlePane.java diff --git a/examples/gnu/classpath/examples/swing/Demo.java b/examples/gnu/classpath/examples/swing/Demo.java index 5abee7dcb..5c8498dd5 100644 --- a/examples/gnu/classpath/examples/swing/Demo.java +++ b/examples/gnu/classpath/examples/swing/Demo.java @@ -429,6 +429,110 @@ public class Demo return jsp; } + private static JPanel mkTreeWorld() + { + // non-leafs + DefaultMutableTreeNode root = new DefaultMutableTreeNode("Exotic Subsistence"); + DefaultMutableTreeNode fruit = new DefaultMutableTreeNode("Interesting Fruit"); + DefaultMutableTreeNode veg = new DefaultMutableTreeNode("Extraordinary Vegetables"); + DefaultMutableTreeNode liq = new DefaultMutableTreeNode("Peculiar Liquids"); + + // leafs + DefaultMutableTreeNode f1 = new DefaultMutableTreeNode("Abiu"); + DefaultMutableTreeNode f2 = new DefaultMutableTreeNode("Bamboo Shoots"); + DefaultMutableTreeNode f3 = new DefaultMutableTreeNode("Breadfruit"); + DefaultMutableTreeNode f4 = new DefaultMutableTreeNode("Canistel"); + DefaultMutableTreeNode f5 = new DefaultMutableTreeNode("Duku"); + DefaultMutableTreeNode f6 = new DefaultMutableTreeNode("Guava"); + DefaultMutableTreeNode f7 = new DefaultMutableTreeNode("Jakfruit"); + DefaultMutableTreeNode f8 = new DefaultMutableTreeNode("Quaribea"); + + DefaultMutableTreeNode v1 = new DefaultMutableTreeNode("Amaranth"); + DefaultMutableTreeNode v2 = new DefaultMutableTreeNode("Kiwano"); + DefaultMutableTreeNode v3 = new DefaultMutableTreeNode("Leeks"); + DefaultMutableTreeNode v4 = new DefaultMutableTreeNode("Luffa"); + DefaultMutableTreeNode v5 = new DefaultMutableTreeNode("Chayote"); + DefaultMutableTreeNode v6 = new DefaultMutableTreeNode("Jicama"); + DefaultMutableTreeNode v7 = new DefaultMutableTreeNode("Okra"); + + DefaultMutableTreeNode l1 = new DefaultMutableTreeNode("Alcoholic"); + DefaultMutableTreeNode l11 = new DefaultMutableTreeNode("Caipirinha"); + DefaultMutableTreeNode l21 = new DefaultMutableTreeNode("Mojito"); + DefaultMutableTreeNode l31 = new DefaultMutableTreeNode("Margarita"); + DefaultMutableTreeNode l41 = new DefaultMutableTreeNode("Martini"); + DefaultMutableTreeNode l5 = new DefaultMutableTreeNode("Non Alcoholic"); + DefaultMutableTreeNode l55 = new DefaultMutableTreeNode("Babaji"); + DefaultMutableTreeNode l65 = new DefaultMutableTreeNode("Chikita"); + + root.add(fruit); + root.add(veg); + root.add(liq); + fruit.add(f1); + fruit.add(f2); + fruit.add(f3); + fruit.add(f4); + fruit.add(f5); + fruit.add(f6); + fruit.add(f7); + fruit.add(f8); + veg.add(v1); + veg.add(v2); + veg.add(v3); + veg.add(v4); + veg.add(v5); + veg.add(v6); + veg.add(v7); + liq.add(l1); + l1.add(l11); + l1.add(l21); + l1.add(l31); + l1.add(l41); + liq.add(l5); + l5.add(l55); + l5.add(l65); + + final JTree tree = new JTree(root); + tree.setRootVisible(true); + tree.setLargeModel(true); + DefaultTreeSelectionModel dtsm = new DefaultTreeSelectionModel(); + dtsm.setSelectionMode(DefaultTreeSelectionModel.SINGLE_TREE_SELECTION); + tree.setSelectionModel(dtsm); + + // buttons to add and delete + JButton add = mkButton("add element"); + add.addActionListener(new ActionListener() + { + int i = 0; + public void actionPerformed(ActionEvent e) + { + for (int i = 0; i < tree.getRowCount(); i++) + { + if (tree.isRowSelected(i)) + { + TreePath p = tree.getPathForRow(i); + DefaultMutableTreeNode n = (DefaultMutableTreeNode) p. + getLastPathComponent(); + n.add(new DefaultMutableTreeNode("New Element")); + tree.repaint(); + break; + } + } + } + }); + + + JPanel p1 = new JPanel(); + p1.setLayout(new BorderLayout()); + + JPanel p2 = new JPanel(); + p2.add(add); + + p1.add(p2, BorderLayout.NORTH); + p1.add(mkScrollPane(tree), BorderLayout.CENTER); + + return p1; + } + public static JPanel mkListWorld() { @@ -545,6 +649,7 @@ public class Demo tabs.add("Button world!", mkButtonWorld()); tabs.add("List world!", mkListWorld()); tabs.add("Desktop world!", mkDesktopWorld()); + tabs.add("Tree world!", mkTreeWorld()); return tabs; } diff --git a/javax/swing/plaf/basic/BasicLookAndFeel.java b/javax/swing/plaf/basic/BasicLookAndFeel.java index 74db84a74..f84d04692 100644 --- a/javax/swing/plaf/basic/BasicLookAndFeel.java +++ b/javax/swing/plaf/basic/BasicLookAndFeel.java @@ -1035,6 +1035,7 @@ public abstract class BasicLookAndFeel extends LookAndFeel "Tree.rowHeight", new Integer(19), "Tree.scrollsOnExpand", Boolean.TRUE, "Tree.selectionBackground", new ColorUIResource(Color.black), + "Tree.nonSelectionBackground", new ColorUIResource(light), "Tree.selectionBorderColor", new ColorUIResource(Color.black), "Tree.selectionForeground", new ColorUIResource(Color.white), "Tree.textBackground", new ColorUIResource(Color.white), diff --git a/javax/swing/plaf/basic/BasicTreeUI.java b/javax/swing/plaf/basic/BasicTreeUI.java index 11e120cae..1ff93011b 100644 --- a/javax/swing/plaf/basic/BasicTreeUI.java +++ b/javax/swing/plaf/basic/BasicTreeUI.java @@ -2489,7 +2489,6 @@ public class BasicTreeUI Font f = tree.getFont(); FontMetrics fm = tree.getToolkit().getFontMetrics(tree.getFont()); - // add 22 to width for icon, FIXME later return new Rectangle(x, y, SwingUtilities.computeStringWidth(fm, s) + 22, fm.getHeight()); } diff --git a/javax/swing/tree/DefaultTreeCellRenderer.java b/javax/swing/tree/DefaultTreeCellRenderer.java index 30a30bf99..38101034e 100644 --- a/javax/swing/tree/DefaultTreeCellRenderer.java +++ b/javax/swing/tree/DefaultTreeCellRenderer.java @@ -136,7 +136,7 @@ public class DefaultTreeCellRenderer setTextNonSelectionColor(defaults.getColor("Tree.textForeground")); setTextSelectionColor(defaults.getColor("Tree.selectionForeground")); setBackgroundNonSelectionColor(defaults - .getColor("Tree.textBackground")); + .getColor("Tree.nonSelectionBackground")); setBackgroundSelectionColor(defaults .getColor("Tree.selectionBackground")); setBorderSelectionColor(defaults @@ -401,7 +401,7 @@ public class DefaultTreeCellRenderer } else { - super.setBackground((tree.getParent()).getBackground()); + super.setBackground(getBackgroundNonSelectionColor()); setForeground(getTextNonSelectionColor()); } |