JavaTM 2 Platform
Standard Edition

javax.swing.tree
Class TreePath

java.lang.Object
  |
  +--javax.swing.tree.TreePath

public class TreePath
extends Object
implements Serializable

Represents a path to a node. TreePath is Serializable, but if any components of the path are not serializable, it will not be written out.

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. A future release of Swing will provide support for long term persistence.

See Also:
Serialized Form

Constructor Summary
protected TreePath()
          Primarily provided for subclasses that don't wish to use the path ivar.
  TreePath(Object singlePath)
          Constructs a TreePath when there is only item in the path.
  TreePath(Object[] path)
          Constructs a path from an array of Objects, uniquely identifying the path from the root of the tree to a specific node, as returned by the tree's data model.
protected TreePath(Object[] path, int length)
           
protected TreePath(TreePath parent, Object lastElement)
          Constructs a TreePath this is the combination of all the path elements in parent with a last path component of lastElement.
 
Method Summary
 boolean equals(Object o)
          Tests two TreePaths for equality by checking each element of the paths for equality.
 Object getLastPathComponent()
          Returns the last component of this path.
 TreePath getParentPath()
          Returns a path containing all the elements of the receiver, accept the last path component.
 Object[] getPath()
          Returns an array of Objects containing the components of this TreePath.
 Object getPathComponent(int element)
          Returns the path component at the specified index.
 int getPathCount()
          Returns the number of elements in the path.
 int hashCode()
          Returns the hashCode for the object.
 boolean isDescendant(TreePath aTreePath)
          Returns true if the specified node is a descendant of this TreePath.
 TreePath pathByAddingChild(Object child)
          Returns a new path containing all the elements of this receiver plus child.
 String toString()
          Returns a string that displays and identifies this object's properties.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TreePath

public TreePath(Object[] path)
Constructs a path from an array of Objects, uniquely identifying the path from the root of the tree to a specific node, as returned by the tree's data model.

The model is free to return an array of any Objects it needs to represent the path. The DefaultTreeModel returns an array of TreeNode objects. The first TreeNode in the path is the root of the tree, the last TreeNode is the node identified by the path.

Parameters:
path - an array of Objects representing the path to a node

TreePath

public TreePath(Object singlePath)
Constructs a TreePath when there is only item in the path.

Parameters:
singlePath - an Object representing the path to a node
See Also:
TreePath(Object[])

TreePath

protected TreePath(TreePath parent,
                   Object lastElement)
Constructs a TreePath this is the combination of all the path elements in parent with a last path component of lastElement.

TreePath

protected TreePath(Object[] path,
                   int length)

TreePath

protected TreePath()
Primarily provided for subclasses that don't wish to use the path ivar. If a subclass uses this, it should also subclass getPath(), getPathCount(), getPathComponent() and possibly equals.
Method Detail

getPath

public Object[] getPath()
Returns an array of Objects containing the components of this TreePath.
Returns:
an array of Objects representing the TreePath
See Also:
TreePath(Object[])

getLastPathComponent

public Object getLastPathComponent()
Returns the last component of this path. For a path returned by the DefaultTreeModel, that is the TreeNode object for the node specified by the path.
Returns:
the Object at the end of the path
See Also:
TreePath(Object[])

getPathCount

public int getPathCount()
Returns the number of elements in the path.
Returns:
an int giving a count of items the path

getPathComponent

public Object getPathComponent(int element)
Returns the path component at the specified index.
Parameters:
element - an int specifying an element in the path, where 0 is the first element in the path
Returns:
the Object at that index location
Throws:
IllegalArgumentException - if the index is beyond the length of the path
See Also:
TreePath(Object[])

equals

public boolean equals(Object o)
Tests two TreePaths for equality by checking each element of the paths for equality.
Overrides:
equals in class Object
Parameters:
o - the Object to compare

hashCode

public int hashCode()
Returns the hashCode for the object. The hash code of a TreePath is defined to be the hash code of the last component in the path.
Overrides:
hashCode in class Object
Returns:
the hashCode for the object

isDescendant

public boolean isDescendant(TreePath aTreePath)
Returns true if the specified node is a descendant of this TreePath. A TreePath, child, is a descendent of another TreePath, parent, if child contains all of the components that make up parent's path.
Returns:
true if aTreePath is a descendant of the receiver.

pathByAddingChild

public TreePath pathByAddingChild(Object child)
Returns a new path containing all the elements of this receiver plus child. This will throw a NullPointerException if child is null.

getParentPath

public TreePath getParentPath()
Returns a path containing all the elements of the receiver, accept the last path component.

toString

public String toString()
Returns a string that displays and identifies this object's properties.
Overrides:
toString in class Object
Returns:
a String representation of this object

JavaTM 2 Platform
Standard Edition

Submit a bug or feature
Java, Java 2D, and JDBC are a trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.