GNU Classpath (0.95) | |
Prev Class | Next Class | Frames | No Frames |
Summary: Nested | Field | Method | Constr | Detail: Nested | Field | Method | Constr |
java.lang.Object
javax.swing.tree.DefaultTreeModel
Field Summary | |
protected boolean |
|
protected EventListenerList |
|
protected TreeNode |
|
Constructor Summary | |
| |
|
Method Summary | |
void |
|
boolean |
|
|
|
protected void |
|
protected void |
|
protected void |
|
protected void |
|
Object | |
int |
|
int |
|
TreeNode[] |
|
protected TreeNode[] |
|
Object |
|
TreeModelListener[] |
|
void |
|
boolean | |
void |
|
void |
|
void |
|
void |
|
void |
|
void |
|
void | |
void |
|
void |
|
void |
|
void | |
void |
|
Methods inherited from class java.lang.Object | |
clone , equals , extends Object> getClass , finalize , hashCode , notify , notifyAll , toString , wait , wait , wait |
public DefaultTreeModel(TreeNode root)
Constructor DefaultTreeModel where any node can have children.
- Parameters:
root
- the tree root.
public DefaultTreeModel(TreeNode aRoot, boolean asksAllowsChildren)
Create the DefaultTreeModel that may check if the nodes can have children or not.
- Parameters:
aRoot
- the tree root.asksAllowsChildren
- if true, each node is asked if it can have children. If false, the model does not care about this, supposing, that any node can have children.
public void addTreeModelListener(TreeModelListener listener)
Registers a listere to the model.
- Specified by:
- addTreeModelListener in interface TreeModel
- Parameters:
listener
- the listener to add
publicextends EventListener> T[] getListeners (ClasslistenerType)
Returns the registered listeners of a given type.
- Parameters:
listenerType
- the listener type to return
- Returns:
- an array of listeners
- Since:
- 1.3
protected void fireTreeNodesChanged(Object source, Object[] path, int[] childIndices, Object[] children)
Notifies all listeners that have registered interest for notification on this event type. The event instance is lazily created using the parameters passed into the fire method.
- Parameters:
source
- the node being changedpath
- the path to the root nodechildIndices
- the indices of the changed elementschildren
- the changed elements
protected void fireTreeNodesInserted(Object source, Object[] path, int[] childIndices, Object[] children)
fireTreeNodesInserted
- Parameters:
source
- the node where new nodes got insertedpath
- the path to the root nodechildIndices
- the indices of the new elementschildren
- the new elements
protected void fireTreeNodesRemoved(Object source, Object[] path, int[] childIndices, Object[] children)
fireTreeNodesRemoved
- Parameters:
source
- the node where nodes got removed-path
- the path to the root nodechildIndices
- the indices of the removed elementschildren
- the removed elements
protected void fireTreeStructureChanged(Object source, Object[] path, int[] childIndices, Object[] children)
fireTreeStructureChanged
- Parameters:
source
- the node where the model has changedpath
- the path to the root nodechildIndices
- the indices of the affected elementschildren
- the affected elements
public Object getChild(Object node, int idx)
getChild
- Parameters:
node
- TODOidx
- TODO
- Returns:
- Object
public int getChildCount(Object node)
getChildCount
- Specified by:
- getChildCount in interface TreeModel
- Parameters:
node
- TODO
- Returns:
- int
public int getIndexOfChild(Object parent, Object child)
getIndexOfChild
- Specified by:
- getIndexOfChild in interface TreeModel
- Parameters:
parent
- TODOchild
- TODO
- Returns:
- int
public TreeNode[] getPathToRoot(TreeNode node)
Builds the parents of node up to and including the root node, where the original node is the last element in the returned array. The length of the returned array gives the node's depth in the tree.
- Parameters:
node
- - the TreeNode to get the path for
- Returns:
- TreeNode[] - the path from node to the root
protected TreeNode[] getPathToRoot(TreeNode node, int depth)
Builds the parents of node up to and including the root node, where the original node is the last element in the returned array. The length of the returned array gives the node's depth in the tree.
- Parameters:
node
- - the TreeNode to get the path fordepth
- - an int giving the number of steps already taken towards the root (on recursive calls), used to size the returned array
- Returns:
- an array of TreeNodes giving the path from the root to the specified node
public TreeModelListener[] getTreeModelListeners()
Returns all registeredTreeModelListener
listeners.
- Returns:
- an array of listeners.
- Since:
- 1.4
public void insertNodeInto(MutableTreeNode newChild, MutableTreeNode parent, int index)
Invoked this to insert newChild at location index in parents children. This will then message nodesWereInserted to create the appropriate event. This is the preferred way to add children as it will create the appropriate event.
- Parameters:
newChild
- is the node to add to the parent's childrenparent
- is the parent of the newChildindex
- is the index of the newChild
public boolean isLeaf(Object node)
Returns if the specified node is a leaf or not. WhenasksAllowsChildren
is true, then this checks if the TreeNode allows children, otherwise it returns the TreeNode'sleaf
property.
- Parameters:
node
- the node to check
- Returns:
- boolean
true
if the node is a leaf node,false
otherwise
- Throws:
ClassCastException
- if the specified node is not aTreeNode
instance
public void nodeChanged(TreeNode node)
Invoke this method after you've changed how node is to be represented in the tree.
- Parameters:
node
- that was changed
public void nodeStructureChanged(TreeNode node)
Invoke this method if you've totally changed the children of node and its childrens children. This will post a treeStructureChanged event.
- Parameters:
node
- that had its children and grandchildren changed.
public void nodesChanged(TreeNode node, int[] childIndices)
Invoke this method after you've changed how the children identified by childIndices are to be represented in the tree.
- Parameters:
node
- that is the parent of the children that changed in a tree.childIndices
- are the child nodes that changed.
public void nodesWereInserted(TreeNode parent, int[] childIndices)
Invoke this method after you've inserted some TreeNodes into node. childIndices should be the index of the new elements and must be sorted in ascending order.
- Parameters:
parent
- that had a child added tochildIndices
- of the children added
public void nodesWereRemoved(TreeNode parent, int[] childIndices, Object[] removedChildren)
Invoke this method after you've removed some TreeNodes from node. childIndices should be the index of the removed elements and must be sorted in ascending order. And removedChildren should be the array of the children objects that were removed.
- Parameters:
parent
- that had a child added tochildIndices
- of the children addedremovedChildren
- are all the children removed from parent.
public void reload()
Invoke this method if you've modified the TreeNodes upon which this model depends. The model will notify all of its listeners that the model has changed. It will fire the events, necessary to update the layout caches and repaint the tree. The tree will not be properly refreshed if you call the JTree.repaint instead.This method will refresh the information about whole tree from the root. If only part of the tree should be refreshed, it is more effective to call
reload(TreeNode)
.
public void reload(TreeNode node)
Invoke this method if you've modified the TreeNodes upon which this model depends. The model will notify all of its listeners that the model has changed. It will fire the events, necessary to update the layout caches and repaint the tree. The tree will not be properly refreshed if you call the JTree.repaint instead.
- Parameters:
node
- - the tree node, from which the tree nodes have changed (inclusive). If you do not know this node, callreload()
instead.
public void removeNodeFromParent(MutableTreeNode node)
Message this to remove node from its parent. This will message nodesWereRemoved to create the appropriate event. This is the preferred way to remove a node as it handles the event creation for you.
- Parameters:
node
- to be removed
public void removeTreeModelListener(TreeModelListener listener)
Removes a listener from the model.
- Specified by:
- removeTreeModelListener in interface TreeModel
- Parameters:
listener
- the listener to remove
public void setAsksAllowsChildren(boolean value)
setAsksAllowsChildren
- Parameters:
value
- TODO
public void valueForPathChanged(TreePath path, Object newValue)
Messaged when the user has altered the value for the item identified by path to newValue. If newValue signifies a truly new value the model should post a treeNodesChanged event. This sets the user object of the TreeNode identified by path and posts a node changed. If you use custom user objects in the TreeModel you're going to need to subclass this and set the user object of the changed node to something meaningful.
- Specified by:
- valueForPathChanged in interface TreeModel
- Parameters:
path
- - path to the node that the user has alterednewValue
- - the new value from the TreeCellEditor
GNU Classpath (0.95) |