Package Summary  Overview Summary

class:TreePath [CHANGED]

All Implemented Interfaces:
Serializable

public class TreePath
extends Object
implements Serializable
TreePath represents an array of objects that uniquely identify the path to a node in a tree. The elements of the array are ordered with the root as the first element of the array. For example, a file on the file system is uniquely identified based on the array of parent directories and the name of the file. The path /tmp/foo/bar could be represented by a TreePath as new TreePath(new Object[] {"tmp", "foo", "bar"}) .

TreePath is used extensively by JTree and related classes. For example, JTree represents the selection as an array of TreePaths. When used with JTree, the elements of the path are the objects returned from the TreeModel. When JTree is paired with DefaultTreeModel, the elements of the path are TreeNodes. The following example illustrates extracting the user object from the selection of a JTree:

   DefaultMutableTreeNode root = ...;
   DefaultTreeModel model = new DefaultTreeModel(root);
   JTree tree = new JTree(model);
   ...
   TreePath selectedPath = tree.getSelectionPath();
   DefaultMutableTreeNode selectedNode =
       ((DefaultMutableTreeNode)selectedPath.getLastPathComponent()).
       getUserObject();
 
Subclasses typically need override only getLastPathComponent , and getParentPath. As JTree internally creates TreePaths at various points, it's generally not useful to subclass TreePath and use with JTree.

While TreePath is serializable, a NotSerializableException is thrown if any elements of the path are not serializable.

For further information and examples of using tree paths, see How to Use Trees in The Java Tutorial.

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™JavaBeans has been added to the java.beans package. Please see XMLEncoder.

All Implemented Interfaces:
Serializable

public class TreePath
extends Object
implements Serializable
TreePath represents an array of objects that uniquely identify the path to a node in a tree. The elements of the array are ordered with the root as the first element of the array. For example, a file on the file system is uniquely identified based on the array of parent directories and the name of the file. The path /tmp/foo/bar could be represented by a TreePath as new TreePath(new Object[] {"tmp", "foo", "bar"}) .

TreePath is used extensively by JTree and related classes. For example, JTree represents the selection as an array of TreePaths. When used with JTree, the elements of the path are the objects returned from the TreeModel. When JTree is paired with DefaultTreeModel, the elements of the path are TreeNodes. The following example illustrates extracting the user object from the selection of a JTree:

   DefaultMutableTreeNode root = ...;
   DefaultTreeModel model = new DefaultTreeModel(root);
   JTree tree = new JTree(model);
   ...
   TreePath selectedPath = tree.getSelectionPath();
   DefaultMutableTreeNode selectedNode =
       ((DefaultMutableTreeNode)selectedPath.getLastPathComponent()).
       getUserObject();
 
Subclasses typically need override only getLastPathComponent , and getParentPath. As JTree internally creates TreePaths at various points, it's generally not useful to subclass TreePath and use with JTree.

While TreePath is serializable, a NotSerializableException is thrown if any elements of the path are not serializable.

For further information and examples of using tree paths, see How to Use Trees in The Java Tutorial.

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.

All Implemented Interfaces:
Serializable

public class TreePath
extends Object
implements Serializable
TreePath represents an array of objects that uniquely identify the path to a node in a tree. The elements of the array are ordered with the root as the first element of the array. For example, a file on the file system is uniquely identified based on the array of parent directories and the name of the file. The path /tmp/foo/bar could be represented by a TreePath as new TreePath(new Object[] {"tmp", "foo", "bar"}) .

TreePath is used extensively by JTree and related classes. For example, JTree represents the selection as an array of TreePaths. When used with JTree, the elements of the path are the objects returned from the TreeModel. When JTree is paired with DefaultTreeModel, the elements of the path are TreeNodes. The following example illustrates extracting the user object from the selection of a JTree:

   DefaultMutableTreeNode root = ...;
   DefaultTreeModel model = new DefaultTreeModel(root);
   JTree tree = new JTree(model);
   ...
   TreePath selectedPath = tree.getSelectionPath();
   DefaultMutableTreeNode selectedNode =
       ((DefaultMutableTreeNode)selectedPath.getLastPathComponent()).
       getUserObject();
 
Subclasses typically need override only getLastPathComponent , and getParentPath. As JTree internally creates TreePaths at various points, it's generally not useful to subclass TreePath and use with JTree.

While TreePath is serializable, a NotSerializableException is thrown if any elements of the path are not serializable.

For further information and examples of using tree paths, see How to Use Trees in The Java Tutorial.

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.

constructor:TreePath(java.lang.Object[]) [NONE]

  • TreePath

    @ConstructorProperties("path") public TreePath?(Object[] path)
    Creates a TreePath from an array. The array uniquely identifies the path to a node.
    Parameters:
    path - an array of objects representing the path to a node
    Throws:
    IllegalArgumentException - if path is null, empty, or contains a null value
  • constructor:TreePath(java.lang.Object) [NONE]

    TreePath

    public TreePath?(Object lastPathComponent)
    Creates a TreePath containing a single element. This is used to construct a TreePath identifying the root.
    Parameters:
    lastPathComponent - the root
    Throws:
    IllegalArgumentException - if lastPathComponent is null
    See Also:
    TreePath(Object[])

    constructor:TreePath(javax.swing.tree.TreePath,java.lang.Object) [NONE]

    TreePath

    protected TreePath?(TreePath parent, Object lastPathComponent)
    Creates a TreePath with the specified parent and element.
    Parameters:
    parent - the path to the parent, or null to indicate the root
    lastPathComponent - the last path element
    Throws:
    IllegalArgumentException - if lastPathComponent is null

    constructor:TreePath(java.lang.Object[],int) [NONE]

    TreePath

    protected TreePath?(Object[] path, int length)
    Creates a TreePath from an array. The returned TreePath represents the elements of the array from 0 to length - 1 .

    This constructor is used internally, and generally not useful outside of subclasses.

    Parameters:
    path - the array to create the TreePath from
    length - identifies the number of elements in path to create the TreePath from
    Throws:
    NullPointerException - if path is null
    ArrayIndexOutOfBoundsException - if length - 1 is outside the range of the array
    IllegalArgumentException - if any of the elements from 0 to length - 1 are null

    constructor:TreePath() [NONE]

    TreePath

    protected TreePath()
    Creates an empty TreePath. This is provided for subclasses that represent paths in a different manner. Subclasses that use this constructor must override getLastPathComponent, and getParentPath.

    method:getPath() [NONE]

  • getPath

    public Object[] getPath()
    Returns an ordered array of the elements of this TreePath. The first element is the root.
    Returns:
    an array of the elements in this TreePath
  • method:getLastPathComponent() [NONE]

    getLastPathComponent

    public Object getLastPathComponent()
    Returns the last element of this path.
    Returns:
    the last element in the path

    method:getPathCount() [NONE]

    getPathCount

    public int getPathCount()
    Returns the number of elements in the path.
    Returns:
    the number of elements in the path

    method:getPathComponent(int) [NONE]

    getPathComponent

    public Object getPathComponent?(int index)
    Returns the path element at the specified index.
    Parameters:
    index - the index of the element requested
    Returns:
    the element at the specified index
    Throws:
    IllegalArgumentException - if the index is outside the range of this path

    method:equals(java.lang.Object) [NONE]

    equals

    public boolean equals?(Object o)
    Compares this TreePath to the specified object. This returns true if o is a TreePath with the exact same elements (as determined by using equals on each element of the path).
    Overrides:
    equals in class Object
    Parameters:
    o - the object to compare
    Returns:
    true if this object is the same as the obj argument; false otherwise.
    See Also:
    Object.hashCode(), HashMap

    method:hashCode() [NONE]

    hashCode

    public int hashCode()
    Returns the hash code of this TreePath. The hash code of a TreePath is the hash code of the last element in the path.
    Overrides:
    hashCode in class Object
    Returns:
    the hashCode for the object
    See Also:
    Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

    method:isDescendant(javax.swing.tree.TreePath) [NONE]

    isDescendant

    public boolean isDescendant?(TreePath aTreePath)
    Returns true if aTreePath is a descendant of this TreePath. A TreePathP1 is a descendant of a TreePathP2 if P1 contains all of the elements that make up P2's path. For example, if this object has the path [a, b] , and aTreePath has the path [a, b, c] , then aTreePath is a descendant of this object. However, if aTreePath has the path [a], then it is not a descendant of this object. By this definition a TreePath is always considered a descendant of itself. That is, aTreePath.isDescendant(aTreePath) returns true.
    Parameters:
    aTreePath - the TreePath to check
    Returns:
    true if aTreePath is a descendant of this path

    method:pathByAddingChild(java.lang.Object) [NONE]

    pathByAddingChild

    public TreePath pathByAddingChild?(Object child)
    Returns a new path containing all the elements of this path plus child. child is the last element of the newly created TreePath.
    Parameters:
    child - the path element to add
    Returns:
    a new path containing all the elements of this path plus child
    Throws:
    NullPointerException - if child is null

    method:getParentPath() [NONE]

    getParentPath

    public TreePath getParentPath()
    Returns the TreePath of the parent. A return value of null indicates this is the root node.
    Returns:
    the parent path

    method:toString() [NONE]

    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

    © 2020 Oracle Corporation and/or its affiliates