java.lang.Object
javax.swing.tree.DefaultMutableTreeNode
javax.swing.JTree.DynamicUtilTreeNode
- All Implemented Interfaces:
Serializable,Cloneable,MutableTreeNode,TreeNode
- Enclosing class:
- JTree
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 JavaBeans
has been added to the java.beans package.
Please see XMLEncoder.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ObjectValue to create children with.protected booleanDoes the thisJTreehave children?protected booleanHave the children been loaded yet?Fields declared in class javax.swing.tree.DefaultMutableTreeNode
allowsChildren, children, EMPTY_ENUMERATION, parent, userObject -
Constructor Summary
ConstructorsConstructorDescriptionDynamicUtilTreeNode(Object value, Object children) Creates a node with the specified object as its value and with the specified children. -
Method Summary
Modifier and TypeMethodDescriptionchildren()Subclassed to load the children, if necessary.static voidcreateChildren(DefaultMutableTreeNode parent, Object children) Adds to parent all the children inchildren.getChildAt(int index) Subclassed to load the children, if necessary.intReturns the number of child nodes.booleanisLeaf()Returns true if this node allows children.protected voidLoads the children based onchildValue.Methods declared in class javax.swing.tree.DefaultMutableTreeNode
add, breadthFirstEnumeration, clone, depthFirstEnumeration, getAllowsChildren, getChildAfter, getChildBefore, getDepth, getFirstChild, getFirstLeaf, getIndex, getLastChild, getLastLeaf, getLeafCount, getLevel, getNextLeaf, getNextNode, getNextSibling, getParent, getPath, getPathToRoot, getPreviousLeaf, getPreviousNode, getPreviousSibling, getRoot, getSharedAncestor, getSiblingCount, getUserObject, getUserObjectPath, insert, isNodeAncestor, isNodeChild, isNodeDescendant, isNodeRelated, isNodeSibling, isRoot, pathFromAncestorEnumeration, postorderEnumeration, preorderEnumeration, remove, remove, removeAllChildren, removeFromParent, setAllowsChildren, setParent, setUserObject, toString
-
Field Details
-
hasChildren
protected boolean hasChildrenDoes the thisJTreehave children? This property is currently not implemented. -
childValue
Value to create children with. -
loadedChildren
protected boolean loadedChildrenHave the children been loaded yet?
-
-
Constructor Details
-
DynamicUtilTreeNode
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, aVector, or aHashtable-- even if empty. Otherwise, the node is not allowed to have children.- Parameters:
value- theObjectthat is the value for the new nodechildren- an array ofObjects, aVector, or aHashtableused to create the child nodes; if any other object is specified, or if the value isnull, then the node is not allowed to have children
-
-
Method Details
-
createChildren
Adds to parent all the children inchildren. Ifchildrenis an array or vector all of its elements are added is children, otherwise ifchildrenis a hashtable all the key/value pairs are added in the orderEnumerationreturns them.- Parameters:
parent- the parent nodechildren- the children
-
isLeaf
public boolean isLeaf()Returns true if this node allows children. Whether the node allows children depends on how it was created.- Specified by:
isLeafin interfaceTreeNode- Overrides:
isLeafin classDefaultMutableTreeNode- Returns:
- true if this node allows children, false otherwise
- See Also:
-
getChildCount
public int getChildCount()Returns the number of child nodes.- Specified by:
getChildCountin interfaceTreeNode- Overrides:
getChildCountin classDefaultMutableTreeNode- Returns:
- the number of child nodes
-
loadChildren
protected void loadChildren()Loads the children based onchildValue. IfchildValueis aVectoror array each element is added as a child, ifchildValueis aHashtableeach key/value pair is added in the order thatEnumerationreturns the keys. -
getChildAt
Subclassed to load the children, if necessary.- Specified by:
getChildAtin interfaceTreeNode- Overrides:
getChildAtin classDefaultMutableTreeNode- Parameters:
index- an index into this node's child array- Returns:
- the TreeNode in this node's child array at the specified index
-
children
Subclassed to load the children, if necessary.- Specified by:
childrenin interfaceTreeNode- Overrides:
childrenin classDefaultMutableTreeNode- Returns:
- an Enumeration of this node's children
-