class org.aswing.tree.AbstractLayoutCache

@author paling

Instance Fields

function new(): Void

function getBounds(path:TreePath, placeIn:IntRectangle): IntRectangle

Returns a rectangle giving the bounds needed to draw path.

path

a TreePath specifying a node

placeIn

a IntRectangle object giving the available space

returns

a IntRectangle object specifying the space to be used

function getExpandedState(path:TreePath): Bool

Returns true if the path is expanded, and visible.

path

the path being queried

returns

true if the path is expanded and visible, false otherwise

function getModel(): TreeModel

Returns the TreeModel that is providing the data.

returns

the TreeModel that is providing the data

function getNodeDimensions(): NodeDimensions

Returns the object that renders nodes in the tree, and which is responsible for calculating the dimensions of individual nodes.

returns

the NodeDimensions object

function getPathClosestTo(x:Int, y:Int): TreePath

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.

x

the horizontal component of the desired location

y

the vertical component of the desired location

returns

the TreePath closest to the specified point

function getPathForRow(row:Int): TreePath

Returns the path for passed in row. If row is not visible null is returned.

row

the row being queried

returns

the TreePath for the given row

function getPreferredHeight(): Int

Returns the preferred height.

returns

the preferred height

function getPreferredWidth(bounds:IntRectangle): Int

Returns the preferred width for the passed in region. The region is defined by the path closest to (bounds.x, bounds.y) and ends at bounds.height + bounds.y. If bounds is null, the preferred width for all the nodes will be returned (and this may be a VERY expensive computation).

bounds

the region being queried

returns

the preferred width for the passed in region

function getRowContainingYLocation(location:Int): Int

Returns the index of the row containing location. If there are no rows, -1 is returned. If location is beyond the last row index, the last row index is returned.

function getRowCount(): Int

Number of rows being displayed.

returns

the number of rows being displayed

function getRowForPath(path:TreePath): Int

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.

path

the TreePath being queried

returns

the row where the last item in path is visible or -1 if any elements in path aren't currently visible

function getRowHeight(): Int

Returns the height of each row. If the returned value is less than or equal to 0 the height for each row is determined by the renderer.

function getRowsForPaths(paths:Array<Dynamic>): Array<Dynamic>

Returns the rows that the TreePath instances in path are being displayed at. This method should return an array of the same length as that passed in, and if one of the TreePaths in path is not valid its entry in the array should be set to -1.

paths

the array of TreePaths being queried

returns

an array of the same length that is passed in containing the rows that each corresponding where each TreePath is displayed; if paths is null, null is returned

function getSelectionModel(): TreeSelectionModel

Returns the model used to maintain the selection.

returns

the treeSelectionModel

function getVisibleChildCount(path:TreePath): Int

Returns the number of visible children for row.

path

the path being queried

returns

the number of visible children for the specified path

function getVisiblePathsFrom(path:TreePath, totalCount:Int): Array<Dynamic>

Returns an 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. The first element of the returned enumeration will be path, unless it isn't visible, in which case null will be returned.

path

the starting location for the enumeration

totalCount

the total number of path to contains.

returns

the Enumerator starting at the desired location

function invalidatePathBounds(path:TreePath): Void

Instructs the LayoutCache that the bounds for path are invalid, and need to be updated.

path

the path being updated

function invalidateSizes(): Void

Informs the TreeState that it needs to recalculate all the sizes it is referencing.

function isExpanded(path:TreePath): Bool

Returns true if the value identified by row is currently expanded.

function isRootVisible(): Bool

Returns true if the root node of the tree is displayed.

returns

true if the root node of the tree is displayed

function setExpandedState(path:TreePath, isExpanded:Bool): Void

Marks the path path expanded state to isExpanded.

path

the path being expanded or collapsed

isExpanded

true if the path should be expanded, false otherwise

function setModel(newModel:TreeModel): Void

Sets the TreeModel that will provide the data.

newModel

the TreeModel that is to provide the data

function setNodeDimensions(nd:NodeDimensions): Void

Sets the renderer that is responsible for drawing nodes in the tree and which is threfore responsible for calculating the dimensions of individual nodes.

nd

a NodeDimensions object

function setRootVisible(rootVisible:Bool): Void

Determines whether or not the root node from the TreeModel is visible.

rootVisible

true if the root node of the tree is to be displayed

function setRowHeight(rowHeight:Int): Void

Sets the height of each cell. If the specified value is less than or equal to zero the current cell renderer is queried for each row's height.

rowHeight

the height of each cell, in pixels

function setSelectionModel(newLSM:TreeSelectionModel): Void

Sets the TreeSelectionModel used to manage the selection to new LSM.

newLSM

the new TreeSelectionModel

function treeNodesChanged(e:TreeModelEvent): Void

Invoked after a node (or a set of siblings) has changed in some way. The node(s) have not changed locations in the tree or altered their children arrays, but other attributes have changed and may affect presentation. Example: the name of a file has changed, but it is in the same location in the file system.

e.path() returns the path the parent of the changed node(s).

e.childIndices() returns the index(es) of the changed node(s).

e

the TreeModelEvent

function treeNodesInserted(e:TreeModelEvent): Void

Invoked after nodes have been inserted into the tree.

e.path() returns the parent of the new nodes

e.childIndices() returns the indices of the new nodes in ascending order.

e

the TreeModelEvent

function treeNodesRemoved(e:TreeModelEvent): Void

Invoked after nodes have been removed from the tree. Note that if a subtree is removed from the tree, this method may only be invoked once for the root of the removed subtree, not once for each individual set of siblings removed.

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.

e

the TreeModelEvent

function treeStructureChanged(e:TreeModelEvent): Void

Invoked after the tree has drastically changed structure from a given node down. If the path returned by 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.

e

the TreeModelEvent