- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.TreeUI
-
- Direct Known Subclasses:
BasicTreeUI
,MultiTreeUI
public abstract class TreeUI extends ComponentUI
Pluggable look and feel interface for JTree.
-
-
Constructor Summary
Constructors Constructor Description TreeUI()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract void
cancelEditing(JTree tree)
Cancels the current editing session.abstract TreePath
getClosestPathForLocation(JTree tree, int x, int y)
Returns the path to the node that is closest to x,y.abstract TreePath
getEditingPath(JTree tree)
Returns the path to the element that is being edited.abstract Rectangle
getPathBounds(JTree tree, TreePath path)
Returns the Rectangle enclosing the label portion that the last item in path will be drawn into.abstract TreePath
getPathForRow(JTree tree, int row)
Returns the path for passed in row.abstract int
getRowCount(JTree tree)
Returns the number of rows that are being displayed.abstract int
getRowForPath(JTree tree, TreePath path)
Returns the row that the last item identified in path is visible at.abstract boolean
isEditing(JTree tree)
Returns true if the tree is being edited.abstract void
startEditingAtPath(JTree tree, TreePath path)
Selects the last item in path and tries to edit it.abstract boolean
stopEditing(JTree tree)
Stops the current editing session.-
Methods inherited from class javax.swing.plaf.ComponentUI
contains, createUI, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, installUI, paint, uninstallUI, update
-
-
-
-
Method Detail
-
getPathBounds
public abstract Rectangle getPathBounds(JTree tree, TreePath path)
Returns the Rectangle enclosing the label portion that the last item in path will be drawn into. Will return null if any component in path is currently valid.- Parameters:
tree
- theJTree
forpath
path
- theTreePath
identifying the node- Returns:
- the
Rectangle
enclosing the label portion that the last item in path will be drawn into,null
if any component in path is currently valid.
-
getPathForRow
public abstract TreePath getPathForRow(JTree tree, int row)
Returns the path for passed in row. If row is not visible null is returned.- Parameters:
tree
- aJTree
objectrow
- an integer specifying a row- Returns:
- the
path
forrow
ornull
ifrow
is not visible
-
getRowForPath
public abstract int getRowForPath(JTree tree, TreePath path)
Returns the row that the last item identified in path is visible at. Will return -1 if any of the elements in path are not currently visible.- Parameters:
tree
- theJTree
forpath
path
- theTreePath
object to look in- Returns:
- an integer specifying the row at which the last item
identified is visible, -1 if any of the elements in
path
are not currently visible
-
getRowCount
public abstract int getRowCount(JTree tree)
Returns the number of rows that are being displayed.- Parameters:
tree
- theJTree
for which to count rows- Returns:
- an integer specifying the number of row being displayed
-
getClosestPathForLocation
public abstract TreePath getClosestPathForLocation(JTree tree, int x, int y)
Returns the path to the node that is closest to x,y. If there is nothing currently visible this will return null, otherwise it'll always return a valid path. If you need to test if the returned object is exactly at x, y you should get the bounds for the returned path and test x, y against that.- Parameters:
tree
- aJTree
objectx
- an integer giving the number of pixels horizontally from the left edge of the display areay
- an integer giving the number of pixels vertically from the top of the display area, minus any top margin- Returns:
- the
TreePath
node closest tox,y
ornull
if there is nothing currently visible
-
isEditing
public abstract boolean isEditing(JTree tree)
Returns true if the tree is being edited. The item that is being edited can be returned by getEditingPath().- Parameters:
tree
- aJTree
object- Returns:
- true if
tree
is being edited
-
stopEditing
public abstract boolean stopEditing(JTree tree)
Stops the current editing session. This has no effect if the tree isn't being edited. Returns true if the editor allows the editing session to stop.- Parameters:
tree
- aJTree
object- Returns:
- true if the editor allows the editing session to stop
-
cancelEditing
public abstract void cancelEditing(JTree tree)
Cancels the current editing session. This has no effect if the tree isn't being edited.- Parameters:
tree
- aJTree
object
-
startEditingAtPath
public abstract void startEditingAtPath(JTree tree, TreePath path)
Selects the last item in path and tries to edit it. Editing will fail if the CellEditor won't allow it for the selected item.- Parameters:
tree
- theJTree
being editedpath
- theTreePath
to be edited
-
-