public class VariableHeightLayoutCache extends AbstractLayoutCache
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
.
AbstractLayoutCache.NodeDimensions
nodeDimensions, rootVisible, rowHeight, treeModel, treeSelectionModel
Constructor and Description |
---|
VariableHeightLayoutCache() |
Modifier and Type | Method and Description |
---|---|
Rectangle |
getBounds(TreePath path,
Rectangle placeIn)
Returns the
Rectangle enclosing the label portion
into which the item identified by path will be drawn. |
boolean |
getExpandedState(TreePath path)
Returns true if the path is expanded, and visible.
|
TreePath |
getPathClosestTo(int x,
int y)
Returns the path to the node that is closest to x,y.
|
TreePath |
getPathForRow(int row)
Returns the path for
row . |
int |
getPreferredHeight()
Returns the preferred height.
|
int |
getPreferredWidth(Rectangle bounds)
Returns the preferred width and height for the region in
visibleRegion . |
int |
getRowCount()
Returns the number of visible rows.
|
int |
getRowForPath(TreePath path)
Returns the row where the last item identified in path is visible.
|
int |
getVisibleChildCount(TreePath path)
Returns the number of visible children for
path . |
Enumeration<TreePath> |
getVisiblePathsFrom(TreePath path)
Returns an
Enumerator that increments over the visible paths
starting at the passed in location. |
void |
invalidatePathBounds(TreePath path)
Instructs the
LayoutCache that the bounds for
path are invalid, and need to be updated. |
void |
invalidateSizes()
Informs the
TreeState that it needs to recalculate
all the sizes it is referencing. |
boolean |
isExpanded(TreePath path)
Returns true if the value identified by
path is
currently expanded. |
void |
setExpandedState(TreePath path,
boolean isExpanded)
Marks the path
path expanded state to
isExpanded . |
void |
setModel(TreeModel newModel)
Sets the
TreeModel that will provide the data. |
void |
setNodeDimensions(AbstractLayoutCache.NodeDimensions nd)
Sets the renderer that is responsible for drawing nodes in the tree.
|
void |
setRootVisible(boolean rootVisible)
Determines whether or not the root node from
the
TreeModel is visible. |
void |
setRowHeight(int rowHeight)
Sets the height of each cell.
|
void |
treeNodesChanged(TreeModelEvent e)
Invoked after a node (or a set of siblings) has changed in some
way.
|
void |
treeNodesInserted(TreeModelEvent e)
Invoked after nodes have been inserted into the tree.
|
void |
treeNodesRemoved(TreeModelEvent e)
Invoked after nodes have been removed from the tree.
|
void |
treeStructureChanged(TreeModelEvent e)
Invoked after the tree has drastically changed structure from a
given node down.
|
getModel, getNodeDimensions, getNodeDimensions, getRowHeight, getRowsForPaths, getSelectionModel, isFixedRowHeight, isRootVisible, setSelectionModel
public void setModel(TreeModel newModel)
TreeModel
that will provide the data.setModel
in class AbstractLayoutCache
newModel
- the TreeModel
that is to provide the datapublic void setRootVisible(boolean rootVisible)
TreeModel
is visible.setRootVisible
in class AbstractLayoutCache
rootVisible
- true if the root node of the tree is to be displayedAbstractLayoutCache.rootVisible
public void setRowHeight(int rowHeight)
setRowHeight
in class AbstractLayoutCache
rowHeight
- the height of each cell, in pixelspublic void setNodeDimensions(AbstractLayoutCache.NodeDimensions nd)
setNodeDimensions
in class AbstractLayoutCache
nd
- the rendererpublic void setExpandedState(TreePath path, boolean isExpanded)
path
expanded state to
isExpanded
.setExpandedState
in class AbstractLayoutCache
path
- the TreePath
of interestisExpanded
- true if the path should be expanded, otherwise falsepublic boolean getExpandedState(TreePath path)
getExpandedState
in class AbstractLayoutCache
path
- the path being queriedpublic Rectangle getBounds(TreePath path, Rectangle placeIn)
Rectangle
enclosing the label portion
into which the item identified by path
will be drawn.getBounds
in class AbstractLayoutCache
path
- the path to be drawnplaceIn
- the bounds of the enclosing rectanglenull
if the node could not be ascertainedpublic TreePath getPathForRow(int row)
row
. If row
is not visible, null
is returned.getPathForRow
in class AbstractLayoutCache
row
- the location of interestrow
, or null
if row
is not visiblepublic int getRowForPath(TreePath path)
getRowForPath
in class AbstractLayoutCache
path
- the TreePath
of interestpublic int getRowCount()
getRowCount
in class AbstractLayoutCache
public void invalidatePathBounds(TreePath path)
LayoutCache
that the bounds for
path
are invalid, and need to be updated.invalidatePathBounds
in class AbstractLayoutCache
path
- the TreePath
which is now invalidpublic int getPreferredHeight()
getPreferredHeight
in class AbstractLayoutCache
public int getPreferredWidth(Rectangle bounds)
visibleRegion
.getPreferredWidth
in class AbstractLayoutCache
bounds
- the region being queriedpublic TreePath getPathClosestTo(int x, int y)
null
,
otherwise it will 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.getPathClosestTo
in class AbstractLayoutCache
x
- the x-coordinatey
- the y-coordinatepublic Enumeration<TreePath> getVisiblePathsFrom(TreePath path)
Enumerator
that increments over the visible paths
starting at the passed in location. The ordering of the enumeration
is based on how the paths are displayed.getVisiblePathsFrom
in class AbstractLayoutCache
path
- the location in the TreePath
to startEnumerator
that increments over the visible
pathspublic int getVisibleChildCount(TreePath path)
path
.getVisibleChildCount
in class AbstractLayoutCache
path
- the path being queriedpath
public void invalidateSizes()
TreeState
that it needs to recalculate
all the sizes it is referencing.invalidateSizes
in class AbstractLayoutCache
public boolean isExpanded(TreePath path)
path
is
currently expanded.isExpanded
in class AbstractLayoutCache
path
is
currently expandedpublic void treeNodesChanged(TreeModelEvent e)
e.path
returns the path the parent of the
changed node(s).
e.childIndices
returns the index(es) of the
changed node(s).
treeNodesChanged
in class AbstractLayoutCache
e
- the TreeModelEvent
of interestpublic void treeNodesInserted(TreeModelEvent e)
e.path
returns the parent of the new nodes.
e.childIndices
returns the indices of the new nodes in
ascending order.
treeNodesInserted
in class AbstractLayoutCache
e
- the TreeModelEvent
of interestpublic void treeNodesRemoved(TreeModelEvent e)
e.path
returns the former parent of the deleted nodes.
e.childIndices
returns the indices the nodes had
before they were deleted in ascending order.
treeNodesRemoved
in class AbstractLayoutCache
e
- the TreeModelEvent
of interestpublic void treeStructureChanged(TreeModelEvent e)
e.getPath
is of length one and the first element does not identify the
current root node the first element should become the new root
of the tree.
e.path
holds the path to the node.
e.childIndices
returns null
.
treeStructureChanged
in class AbstractLayoutCache
e
- the TreeModelEvent
of interest Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.