interface org.aswing.tree.TreeModel
Implementors | ||||
DefaultTreeModel |
|
The interface that defines a suitable data model for a JTree
.
For further information on tree models,
including an example of a custom implementation,
see <a
href="http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html">How to Use Trees
in The Java Tutorial.
JTree
and its related classes make extensive use of
TreePath
s for indentifying nodes in the TreeModel
.
If a TreeModel
returns the same object, as compared by
equals
, at two different indices under the same parent
than the resulting TreePath
objects will be considered equal
as well. Some implementations may assume that if two
TreePath
s are equal, they identify the same node. If this
condition is not met, painting problems and other oddities may result.
In other words, if getChild
for a given parent returns
the same Object (as determined by equals
) problems may
result, and it is recommended you avoid doing this.
(Fully quoted from java swing's tree doc)
@see TreePath
@author paling
Instance Fields
function addTreeModelListener(l:TreeModelListener): Void
Adds a listener for the TreeModelEvent
posted after the tree changes.
@see #removeTreeModelListener()
l | the listener to add |
function getChild(parent:TreeNode, index:Int): Dynamic
Returns the child of parent
at index index
in the parent's
child array. parent
must be a node previously obtained
from this data source. This should not return null
if index
is a valid index for parent
(that is index >= 0 &&
index < getChildCount(parent
)).
parent | a node in the tree, obtained from this data source |
returns | the child of |
function getChildCount(parent:TreeNode): Int
Returns the number of children of parent
.
Returns 0 if the node
is a leaf or if it has no children. parent
must be a node
previously obtained from this data source.
parent | a node in the tree, obtained from this data source |
returns | the number of children of the node |
function getIndexOfChild(parent:TreeNode, child:Dynamic): Int
Returns the index of child in parent. If either parent
or child
is null
, returns -1.
If either parent
or child
don't
belong to this tree model, returns -1.
parent | a note in the tree, obtained from this data source |
child | the node we are interested in |
returns | the index of the child in the parent, or -1 if either
|
Returns the root of the tree. Returns null
only if the tree has no nodes.
returns | the root of the tree |
function isLeaf(node:TreeNode): Bool
Returns true
if node
is a leaf.
It is possible for this method to return false
even if node
has no children.
A directory in a filesystem, for example,
may contain no files; the node representing
the directory is not a leaf, but it also has no children.
node | a node in the tree, obtained from this data source |
returns | true if |
function removeTreeModelListener(l:TreeModelListener): Void
Removes a listener previously added with
addTreeModelListener
.
@see #addTreeModelListener()
l | the listener to remove |
function valueForPathChanged(path:TreePath, newValue:Dynamic): Void
Messaged when the user has altered the value for the item identified
by path
to newValue
.
If newValue
signifies a truly new value
the model should post a treeNodesChanged
event.
path | path to the node that the user has altered |
newValue | the new value from the TreeCellEditor |