public class VariableHeightLayoutCache extends AbstractLayoutCache
AbstractLayoutCache.NodeDimensions
nodeDimensions, rootVisible, rowHeight, treeModel, treeSelectionModel
Constructor and Description |
---|
VariableHeightLayoutCache()
Creates the unitialised instance.
|
Modifier and Type | Method and Description |
---|---|
Rectangle |
getBounds(TreePath path,
Rectangle rect)
Get bounds for the given tree path.
|
boolean |
getExpandedState(TreePath path)
Return the expansion state of the given tree path.
|
TreePath |
getPathClosestTo(int x,
int y)
Get the path, closest to the given point.
|
TreePath |
getPathForRow(int row)
Get the path, the last element of that is displayed in the given row.
|
int |
getPreferredHeight()
Get the sum of heights for all rows.
|
int |
getPreferredWidth(Rectangle value)
Get the maximal width.
|
int |
getRowCount()
Get the total number of rows in the tree.
|
int |
getRowForPath(TreePath path)
Get the row, displaying the last node of the given path.
|
int |
getVisibleChildCount(TreePath path)
Get the number of the visible childs for the given tree path.
|
Enumeration<TreePath> |
getVisiblePathsFrom(TreePath parentPath)
Get the enumeration over all visible paths that start from the given
parent path.
|
void |
invalidatePathBounds(TreePath path)
Discard the bound information for the given path.
|
void |
invalidateSizes()
Mark all cached information as invalid.
|
boolean |
isExpanded(TreePath path)
Get the expanded state for the given tree path.
|
void |
setExpandedState(TreePath path,
boolean isExpanded)
Set the expanded state of the given path.
|
void |
setModel(TreeModel newModel)
Set the tree model that will provide the data.
|
void |
setNodeDimensions(AbstractLayoutCache.NodeDimensions dim)
Sets the node dimensions and invalidates the cached layout.
|
void |
setRootVisible(boolean visible)
Inform the instance if the tree root node is visible.
|
void |
setRowHeight(int height)
Sets the row height and marks the layout as invalid.
|
void |
treeNodesChanged(TreeModelEvent event)
The listener method, called when the tree nodes are changed.
|
void |
treeNodesInserted(TreeModelEvent event)
The listener method, called when the tree nodes are inserted.
|
void |
treeNodesRemoved(TreeModelEvent event)
The listener method, called when the tree nodes are removed.
|
void |
treeStructureChanged(TreeModelEvent event)
Called when the tree structure has been changed.
|
getModel, getNodeDimensions, getNodeDimensions, getRowHeight, getRowsForPaths, getSelectionModel, isFixedRowHeight, isRootVisible, setSelectionModel
public VariableHeightLayoutCache()
setRowHeight(int)
and the model must be set
with setModel(TreeModel)
. The node dimensions may not be set.public int getRowCount()
getRowCount
in class AbstractLayoutCache
public void invalidatePathBounds(TreePath path)
invalidatePathBounds
in class AbstractLayoutCache
path
- the path, for that the bound information must be recomputed.public void invalidateSizes()
invalidateSizes
in class AbstractLayoutCache
public void setExpandedState(TreePath path, boolean isExpanded)
setExpandedState
in class AbstractLayoutCache
path
- the tree path, for that the state is being set.isExpanded
- the expanded state of the given path.public boolean isExpanded(TreePath path)
isExpanded
in class AbstractLayoutCache
path
- TODOpublic Rectangle getBounds(TreePath path, Rectangle rect)
getBounds
in class AbstractLayoutCache
path
- the tree pathrect
- the rectangle that will be reused to return the result.public TreePath getPathForRow(int row)
getPathForRow
in class AbstractLayoutCache
row
- the rowpublic int getRowForPath(TreePath path)
getRowForPath
in class AbstractLayoutCache
path
- the pathpublic TreePath getPathClosestTo(int x, int y)
getPathClosestTo
in class AbstractLayoutCache
x
- the point x coordinatey
- the point y coordinatepublic int getVisibleChildCount(TreePath path)
getVisibleChildCount
in class AbstractLayoutCache
path
- the tree pathpublic Enumeration<TreePath> getVisiblePathsFrom(TreePath parentPath)
getVisiblePathsFrom
in class AbstractLayoutCache
parentPath
- the parent pathpublic boolean getExpandedState(TreePath path)
setExpandedState(TreePath, boolean)
getExpandedState
in class AbstractLayoutCache
path
- the path being checkedpublic void treeNodesChanged(TreeModelEvent event)
treeNodesChanged
in class AbstractLayoutCache
event
- the change eventpublic void treeNodesInserted(TreeModelEvent event)
treeNodesInserted
in class AbstractLayoutCache
event
- the change eventpublic void treeNodesRemoved(TreeModelEvent event)
treeNodesRemoved
in class AbstractLayoutCache
event
- the change eventpublic void treeStructureChanged(TreeModelEvent event)
treeStructureChanged
in class AbstractLayoutCache
event
- the change eventpublic void setModel(TreeModel newModel)
setModel
in class AbstractLayoutCache
newModel
- the modelpublic void setRootVisible(boolean visible)
setRootVisible
in class AbstractLayoutCache
visible
- true if the tree root node is visible, false
otherwise.public int getPreferredHeight()
getPreferredHeight
in class AbstractLayoutCache
public int getPreferredWidth(Rectangle value)
getPreferredWidth
in class AbstractLayoutCache
value
- the rectangle that is used during the method workpublic void setNodeDimensions(AbstractLayoutCache.NodeDimensions dim)
setNodeDimensions
in class AbstractLayoutCache
dim
- the dimensions to setpublic void setRowHeight(int height)
setRowHeight
in class AbstractLayoutCache
height
- the row height to set