From 9d53d740fd25da9aa78ae5ffb121dc8c4c8fedfa Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Wed, 30 Jan 2013 16:31:27 +0100 Subject: Fixed DynamicTreeBuilder not receiving double-clicks and loading more nodes. Fixes #97 --- src/main/java/com/c2kernel/gui/DynamicTreeBuilder.java | 8 +++++++- src/main/java/com/c2kernel/gui/TreeBrowser.java | 12 ++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/com/c2kernel/gui/DynamicTreeBuilder.java b/src/main/java/com/c2kernel/gui/DynamicTreeBuilder.java index 3be1b60..ba73121 100644 --- a/src/main/java/com/c2kernel/gui/DynamicTreeBuilder.java +++ b/src/main/java/com/c2kernel/gui/DynamicTreeBuilder.java @@ -22,7 +22,7 @@ import com.c2kernel.utils.Logger; * @author $Author: abranson $ */ -public class DynamicTreeBuilder implements NodeSubscriber { +public class DynamicTreeBuilder extends Node implements NodeSubscriber { private DefaultTreeModel treeModel; private final DefaultMutableTreeNode parent; public short state = IDLE; @@ -179,4 +179,10 @@ public class DynamicTreeBuilder implements NodeSubscriber { } } } + + @Override + public void loadChildren() { + // No children in the loader + + } } diff --git a/src/main/java/com/c2kernel/gui/TreeBrowser.java b/src/main/java/com/c2kernel/gui/TreeBrowser.java index 5a5d3ff..b812686 100644 --- a/src/main/java/com/c2kernel/gui/TreeBrowser.java +++ b/src/main/java/com/c2kernel/gui/TreeBrowser.java @@ -177,18 +177,18 @@ public class TreeBrowser extends JPanel implements DomainKeyConsumer int row, boolean hasFocus) { super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus); Object thisLeaf = ((DefaultMutableTreeNode)value).getUserObject(); - if (thisLeaf instanceof Node) { - Node thisNode = (Node)thisLeaf; - if (thisNode.getIcon() !=null) setIcon(thisNode.getIcon()); - setToolTipText(thisNode.getToolTip()); - } - else if (thisLeaf instanceof DynamicTreeBuilder) { + if (thisLeaf instanceof DynamicTreeBuilder) { DynamicTreeBuilder thisLoader = (DynamicTreeBuilder)thisLeaf; ImageIcon loadGif = thisLoader.getIcon(); setIcon(loadGif); loadGif.setImageObserver(tree); setToolTipText("Tree Content Loader"); } + else if (thisLeaf instanceof Node) { + Node thisNode = (Node)thisLeaf; + if (thisNode.getIcon() !=null) setIcon(thisNode.getIcon()); + setToolTipText(thisNode.getToolTip()); + } return this; } } -- cgit v1.2.3