public static class

JTree.DynamicUtilTreeNode

extends DefaultMutableTreeNode
java.lang.Object
   ↳ javax.swing.tree.DefaultMutableTreeNode
     ↳ javax.swing.JTree.DynamicUtilTreeNode

Class Overview

DynamicUtilTreeNode can wrap vectors/hashtables/arrays/strings and create the appropriate children tree nodes as necessary. It is dynamic in that it will only create the children as necessary.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeansTM has been added to the java.beans package. Please see XMLEncoder.

Summary

Fields
protected Object childValue Value to create children with.
protected boolean hasChildren Does the this JTree have children? This property is currently not implemented.
protected boolean loadedChildren Have the children been loaded yet?
[Expand]
Inherited Fields
From class javax.swing.tree.DefaultMutableTreeNode
Public Constructors
JTree.DynamicUtilTreeNode(Object value, Object children)
Creates a node with the specified object as its value and with the specified children.
Public Methods
Enumeration children()
Subclassed to load the children, if necessary.
static void createChildren(DefaultMutableTreeNode parent, Object children)
Adds to parent all the children in children.
TreeNode getChildAt(int index)
Subclassed to load the children, if necessary.
int getChildCount()
Returns the number of child nodes.
boolean isLeaf()
Returns true if this node allows children.
Protected Methods
void loadChildren()
Loads the children based on childValue.
[Expand]
Inherited Methods
From class javax.swing.tree.DefaultMutableTreeNode
From class java.lang.Object
From interface javax.swing.tree.MutableTreeNode
From interface javax.swing.tree.TreeNode

Fields

protected Object childValue

Value to create children with.

protected boolean hasChildren

Does the this JTree have children? This property is currently not implemented.

protected boolean loadedChildren

Have the children been loaded yet?

Public Constructors

public JTree.DynamicUtilTreeNode (Object value, Object children)

Creates a node with the specified object as its value and with the specified children. For the node to allow children, the children-object must be an array of objects, a Vector, or a Hashtable -- even if empty. Otherwise, the node is not allowed to have children.

Parameters
value the Object that is the value for the new node
children an array of Objects, a Vector, or a Hashtable used to create the child nodes; if any other object is specified, or if the value is null, then the node is not allowed to have children

Public Methods

public Enumeration children ()

Subclassed to load the children, if necessary.

Returns
  • an Enumeration of this node's children

public static void createChildren (DefaultMutableTreeNode parent, Object children)

Adds to parent all the children in children. If children is an array or vector all of its elements are added is children, otherwise if children is a hashtable all the key/value pairs are added in the order Enumeration returns them.

public TreeNode getChildAt (int index)

Subclassed to load the children, if necessary.

Parameters
index an index into this node's child array
Returns
  • the TreeNode in this node's child array at the specified index

public int getChildCount ()

Returns the number of child nodes.

Returns
  • the number of child nodes

public boolean isLeaf ()

Returns true if this node allows children. Whether the node allows children depends on how it was created.

Returns
  • true if this node allows children, false otherwise

Protected Methods

protected void loadChildren ()

Loads the children based on childValue. If childValue is a Vector or array each element is added as a child, if childValue is a Hashtable each key/value pair is added in the order that Enumeration returns the keys.