Class java.awt.swing.tree.DefaultTreeModel
java.lang.Object
|
+----java.awt.swing.tree.DefaultTreeModel
- public class DefaultTreeModel
- extends Object
- implements Serializable, TreeModel
A simple tree data model that uses TreeNodes.
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 Swing1.0 applications. It will
not be possible to load serialized Swing1.0 objects with future releases
of Swing. The JDK1.2 release of Swing will be the compatibility
baseline for the serialized form of Swing objects.
Method Summary
|
void
|
addTreeModelListener(TreeModelListener l)
|
boolean
|
asksAllowsChildren()
Tells how leaf nodes are determined.
|
void
|
fireTreeNodesChanged(Object source,
Object[] path,
int[] childIndices,
Object[] children)
|
void
|
fireTreeNodesInserted(Object source,
Object[] path,
int[] childIndices,
Object[] children)
|
void
|
fireTreeNodesRemoved(Object source,
Object[] path,
int[] childIndices,
Object[] children)
|
void
|
fireTreeStructureChanged(Object source,
Object[] path,
int[] childIndices,
Object[] children)
|
Object
|
getChild(Object parent,
int index)
|
int
|
getChildCount(Object parent)
|
int
|
getIndexOfChild(Object parent,
Object child)
|
TreeNode[]
|
getPathToRoot(TreeNode child)
Builds the parents of child up to, and including, the root node.
|
TreeNode[]
|
getPathToRoot(TreeNode aNode,
int depth)
|
Object
|
getRoot()
|
void
|
insertNodeInto(MutableTreeNode newChild,
MutableTreeNode parent,
int index)
Invoked this to insert newChild at location index in parents children.
|
boolean
|
isLeaf(Object node)
Returns whether the specified node is a leaf node.
|
void
|
nodeChanged(TreeNode node)
Invoke this method after you've changed how node is to be
represented in the tree.
|
void
|
nodesChanged(TreeNode node,
int[] childIndices)
Invoke this method after you've changed how the children identified by
childIndicies are to be represented in the tree.
|
void
|
nodeStructureChanged(TreeNode node)
Invoke this method if you've totally changed the children of
node and its childrens children...
|
void
|
nodesWereInserted(TreeNode node,
int[] childIndices)
Invoke this method after you've inserted some TreeNodes into
node.
|
void
|
nodesWereRemoved(TreeNode node,
int[] childIndices,
Object[] removedChildren)
Invoke this method after you've removed some TreeNodes from
node.
|
void
|
reload()
Invoke this method if you've modified the TreeNodes upon which this
model depends.
|
void
|
reload(TreeNode node)
Invoke this method if you've modified the TreeNodes upon which this
model depends.
|
void
|
removeNodeFromParent(MutableTreeNode node)
Message this to remove node from its parent.
|
void
|
removeTreeModelListener(TreeModelListener l)
|
void
|
setAsksAllowsChildren(boolean newValue)
Sets whether or not to test leafness by asking getAllowsChildren()
or isLeaf() to the TreeNodes.
|
void
|
valueForPathChanged(TreePath path,
Object newValue)
This sets the user object of the TreeNode identified by path
and posts a node changed.
|
Methods inherited from class java.lang.Object
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
root
protected TreeNode root
- Root of the tree.
listenerList
protected EventListenerList listenerList
- Listeners.
asksAllowsChildren
protected boolean asksAllowsChildren
- Determines how the
isLeaf
determines if
a node is a leaf node. If true, a node is a leaf
node if it does not allow children. (If it allows
children, it is not a leaf node, even if no children
are present.) If this value is false, then any node
which has no children is a leaf node.
- See Also:
- getAllowsChildren, isLeaf, setAsksAllowsChildren
DefaultTreeModel
public DefaultTreeModel(TreeNode root)
DefaultTreeModel
public DefaultTreeModel(TreeNode root,
boolean asksAllowsChildren)
setAsksAllowsChildren
public void setAsksAllowsChildren(boolean newValue)
- Sets whether or not to test leafness by asking getAllowsChildren()
or isLeaf() to the TreeNodes. If newvalue is true, getAllowsChildren()
is messaged, otherwise isLeaf() is messaged.
asksAllowsChildren
public boolean asksAllowsChildren()
- Tells how leaf nodes are determined.
- Returns:
- true if only nodes which do not allow children are
leaf nodes, false if nodes which have no children
(even if allowed) are leaf nodes
- See Also:
- #askAllowsChildren
getRoot
public Object getRoot()
- Implements:
- getRoot in interface TreeModel
getIndexOfChild
public int getIndexOfChild(Object parent,
Object child)
- Implements:
- getIndexOfChild in interface TreeModel
getChild
public Object getChild(Object parent,
int index)
- Implements:
- getChild in interface TreeModel
getChildCount
public int getChildCount(Object parent)
- Implements:
- getChildCount in interface TreeModel
isLeaf
public boolean isLeaf(Object node)
- Returns whether the specified node is a leaf node.
The way the test is performed depends on the
askAllowsChildren
setting.
- Implements:
- isLeaf in interface TreeModel
- Parameters:
node
- the node to check
- Returns:
- true if the node is a leaf node
- See Also:
- askAllowsChildren, isLeaf
reload
public void reload()
- Invoke this method if you've modified the TreeNodes upon which this
model depends. The model will notify all of its listeners that the
model has changed.
valueForPathChanged
public void valueForPathChanged(TreePath path,
Object newValue)
- This sets the user object of the TreeNode identified by path
and posts a node changed. If you use custom user objects in
the TreeModel you're going to need to subclass this and
set the user object of the changed node to something meaningful.
- Implements:
- valueForPathChanged in interface TreeModel
insertNodeInto
public void insertNodeInto(MutableTreeNode newChild,
MutableTreeNode parent,
int index)
- Invoked this to insert newChild at location index in parents children.
This will then message nodesWereInserted to create the appropriate
event. This is the preferred way to add children as it will create
the appropriate event.
removeNodeFromParent
public void removeNodeFromParent(MutableTreeNode node)
- Message this to remove node from its parent. This will message
nodesWereRemoved to create the appropriate event. This is the
preferred way to remove a node as it handles the event creation
for you.
nodeChanged
public void nodeChanged(TreeNode node)
- Invoke this method after you've changed how node is to be
represented in the tree.
reload
public void reload(TreeNode node)
- Invoke this method if you've modified the TreeNodes upon which this
model depends. The model will notify all of its listeners that the
model has changed below the node
node
(PENDING).
nodesWereInserted
public void nodesWereInserted(TreeNode node,
int[] childIndices)
- Invoke this method after you've inserted some TreeNodes into
node. childIndices should be the index of the new elements and
must be sorted in ascending order.
nodesWereRemoved
public void nodesWereRemoved(TreeNode node,
int[] childIndices,
Object[] removedChildren)
- Invoke this method after you've removed some TreeNodes from
node. childIndices should be the index of the removed elements and
must be sorted in ascending order. And removedChildren should be
the array of the children objects that were removed.
nodesChanged
public void nodesChanged(TreeNode node,
int[] childIndices)
- Invoke this method after you've changed how the children identified by
childIndicies are to be represented in the tree.
nodeStructureChanged
public void nodeStructureChanged(TreeNode node)
- Invoke this method if you've totally changed the children of
node and its childrens children... This will post a
treeStructureChanged event.
getPathToRoot
public TreeNode[] getPathToRoot(TreeNode child)
- Builds the parents of child up to, and including, the root node.
child will be the last element in the returned array.
getPathToRoot
protected TreeNode[] getPathToRoot(TreeNode aNode,
int depth)
addTreeModelListener
public void addTreeModelListener(TreeModelListener l)
- Implements:
- addTreeModelListener in interface TreeModel
removeTreeModelListener
public void removeTreeModelListener(TreeModelListener l)
- Implements:
- removeTreeModelListener in interface TreeModel
fireTreeNodesChanged
protected void fireTreeNodesChanged(Object source,
Object[] path,
int[] childIndices,
Object[] children)
fireTreeNodesInserted
protected void fireTreeNodesInserted(Object source,
Object[] path,
int[] childIndices,
Object[] children)
fireTreeNodesRemoved
protected void fireTreeNodesRemoved(Object source,
Object[] path,
int[] childIndices,
Object[] children)
fireTreeStructureChanged
protected void fireTreeStructureChanged(Object source,
Object[] path,
int[] childIndices,
Object[] children)
Submit a bug or feature
Submit comments/suggestions about new javadoc look.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.