Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing.tree
Interface TreeModel

All Known Implementing Classes:
  DefaultTreeModel

public abstract interface TreeModel

The interface that defines a suitable data model for a JTree.

Method Summary
`void` | `addTreeModelListener(TreeModelListener l)` Adds a listener for the TreeModelEvent posted after the tree changes.
`java.lang.Object` | `getChild(java.lang.Object parent, int index)` Returns the child of parent at index index in the parent's child array.
`int` | `getChildCount(java.lang.Object parent)` Returns the number of children of parent.
`int` | `getIndexOfChild(java.lang.Object parent, java.lang.Object child)` Returns the index of child in parent.
`java.lang.Object` | `getRoot()` Returns the root of the tree.
`boolean` | `isLeaf(java.lang.Object node)` Returns true if node is a leaf.
`void` | `removeTreeModelListener(TreeModelListener l)` Removes a listener previously added with addTreeModelListener().
`void` | `valueForPathChanged(TreePath path, java.lang.Object newValue)` Messaged when the user has altered the value for the item identified by path to newValue.

Method Detail

### getRoot

    public java.lang.Object getRoot()

  Returns the root of the tree. Returns null only if the tree has no nodes.
  Returns:
    the root of the tree

### getChild

    public java.lang.Object getChild(java.lang.Object parent,
                                     int index)

  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)).
  Parameters:
    `parent` - a node in the tree, obtained from this data source
  Returns:
    the child of parent at index index

### getChildCount

    public int getChildCount(java.lang.Object parent)

  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.
  Parameters:
    `parent` - a node in the tree, obtained from this data source
  Returns:
    the number of children of the node parent

### isLeaf

    public boolean isLeaf(java.lang.Object node)

  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.
  Parameters:
    `node` - a node in the tree, obtained from this data source
  Returns:
    true if node is a leaf

### valueForPathChanged

    public void valueForPathChanged(TreePath path,
                                    java.lang.Object newValue)

  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.
  Parameters:
    `path` - path to the node that the user has altered.
    `newValue` - the new value from the TreeCellEditor.

### getIndexOfChild

    public int getIndexOfChild(java.lang.Object parent,
                               java.lang.Object child)

  Returns the index of child in parent.

### addTreeModelListener

    public void addTreeModelListener(TreeModelListener l)

  Adds a listener for the TreeModelEvent posted after the tree changes.
  Parameters:
    `l` - the listener to add
  See Also:
    `removeTreeModelListener(javax.swing.event.TreeModelListener)`

### removeTreeModelListener

    public void removeTreeModelListener(TreeModelListener l)

  Removes a listener previously added with addTreeModelListener().
  Parameters:
    `l` - the listener to remove
  See Also:
    `addTreeModelListener(javax.swing.event.TreeModelListener)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
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.