com.metamatrix.toolbox.ui.widget.tree
Class DefaultTreeModel

java.lang.Object
  extended by com.metamatrix.toolbox.ui.widget.tree.DefaultTreeModel
All Implemented Interfaces:
TreeConstants, javax.swing.tree.TreeModel
Direct Known Subclasses:
ConfigurationTreeModel, RuntimeMgmtModel

public class DefaultTreeModel
extends java.lang.Object
implements TreeConstants, javax.swing.tree.TreeModel

This is the default model used by TreeWidgets. It acts as an wrapper for TreeView.

Since:
2.0

Field Summary
static int MODEL_CHANGED
           
static int NODE_ADDED
           
static int NODE_CHANGED
           
static int NODE_REMOVED
           
static int NODES_CHANGED
           
 
Fields inherited from interface com.metamatrix.toolbox.ui.widget.tree.TreeConstants
NAME_PROPERTY
 
Constructor Summary
DefaultTreeModel()
          Creates an empty model.
DefaultTreeModel(java.lang.Object value)
          Creates a model with a default TreeView containing a default root TreeNode created using the specified value.
DefaultTreeModel(TreeView view)
          Creates a model from the specified TreeView.
DefaultTreeModel(TreeView view, boolean forceHiddenRoot)
          Creates a model from the specified TreeView.
 
Method Summary
 TreeNode addNode(TreeNode parent, java.lang.String childName)
          Remember to add support for view.allowsChild method
 void addTreeModelListener(javax.swing.event.TreeModelListener listener)
           
 void addVetoedChangeListener(VetoedChangeListener listener)
          Adds the specified listener to the list of listeners registered to receive notifications of VetoedChangeEvents, which can occur if a TreeNode's name change is rejected because it is either read-only or the new name is invalid.
protected  TreeView createDefaultTreeView(java.lang.Object value)
           
protected  boolean executeTransaction(com.metamatrix.toolbox.ui.widget.tree.DefaultTreeModel.EditorTask task, java.lang.String context)
           
 void fireChildrenChangedEvent(java.lang.Object source, TreeNode parent)
          Fires a TreeModelEvent to the treeNodesChanged method of all registered listeners indicating that all of the children of the specified parent have changed in some way.
protected  void fireEvent(int type, java.lang.Object source, java.lang.Object[] path, int[] childIndices, java.lang.Object[] children)
           
protected  void fireEvent(int type, java.lang.Object source, TreeNode node)
           
protected  void fireEvent(java.lang.Object source, TreeNode parent, TreeNode child, int childIndex)
           
 void fireModelChangedEvent(java.lang.Object source, TreeNode node)
           
 void fireNodeAddedEvent(java.lang.Object source, TreeNode node)
           
 void fireNodeChangedEvent(java.lang.Object source, TreeNode node)
           
 void fireNodeRemovedEvent(java.lang.Object source, TreeNode parent, TreeNode child, int childIndex)
           
protected  void fireVetoedChangeEvent(javax.swing.tree.TreePath path, java.lang.String property, java.lang.Object name)
          Fires a VetoedChangeEvent containing the specified TreeNode's TreePath and vetoed name to all registered listeners.
 java.lang.Object getChild(java.lang.Object parent, int index)
           
 int getChildCount(java.lang.Object parent)
           
protected  int getChildIndex(java.lang.Object parent, java.lang.Object child)
           
 TreeNodeEditor getEditor()
           
 int getIndexOfChild(java.lang.Object parent, java.lang.Object child)
           
 java.lang.String getName(TreeNode node)
           
 TreeNode[] getPath(TreeNode node)
           
protected  TreeNode[] getPath(TreeNode node, int size)
           
 java.lang.Object getRoot()
           
 java.lang.Object getTransactionSource()
           
 TreeView getTreeView()
           
protected  void initializeDefaultTreeModel()
           
 boolean isLeaf(java.lang.Object node)
           
 boolean isRootHidden()
           
 boolean moveNode(TreeNode node, TreeNode parent)
           
 boolean moveNode(TreeNode node, TreeNode parent, int index)
           
 boolean removeNode(TreeNode node)
           
 void removeTreeModelListener(javax.swing.event.TreeModelListener listener)
           
 void removeVetoedChangeListener(VetoedChangeListener listener)
          Removes the specified listener from the list of listeners registered to receive notifications of VetoedChangeEvents.
 boolean setName(TreeNode node, java.lang.String name)
           
 void setTransactionSource(java.lang.Object source)
          Sets the object that will act as the source of all write transactions.
 void setTreeView(TreeView view)
          Sets the TreeView to which this model applies.
 void setTreeWidget(TreeWidget treeWidget)
           
 void valueForPathChanged(javax.swing.tree.TreePath path, java.lang.Object name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MODEL_CHANGED

public static final int MODEL_CHANGED
See Also:
Constant Field Values

NODE_CHANGED

public static final int NODE_CHANGED
See Also:
Constant Field Values

NODE_ADDED

public static final int NODE_ADDED
See Also:
Constant Field Values

NODE_REMOVED

public static final int NODE_REMOVED
See Also:
Constant Field Values

NODES_CHANGED

public static final int NODES_CHANGED
See Also:
Constant Field Values
Constructor Detail

DefaultTreeModel

public DefaultTreeModel()
Creates an empty model.

Since:
2.0

DefaultTreeModel

public DefaultTreeModel(TreeView view)
Creates a model from the specified TreeView.

Parameters:
view - The TreeView
Since:
2.0

DefaultTreeModel

public DefaultTreeModel(TreeView view,
                        boolean forceHiddenRoot)
Creates a model from the specified TreeView. If specified via the second parameter, the TreeView will be added under a "hidden" root.

Parameters:
view - The TreeView
forceHiddenRoot - Indicates to add a hidden root to the model as a parent to the TreeView's root(s)
Since:
2.0

DefaultTreeModel

public DefaultTreeModel(java.lang.Object value)
Creates a model with a default TreeView containing a default root TreeNode created using the specified value.

Parameters:
value - The value used to create the default TreeNode
Since:
2.0
Method Detail

addNode

public TreeNode addNode(TreeNode parent,
                        java.lang.String childName)
Remember to add support for view.allowsChild method

Returns:
The newly created child node
Since:
2.0

addTreeModelListener

public void addTreeModelListener(javax.swing.event.TreeModelListener listener)
Specified by:
addTreeModelListener in interface javax.swing.tree.TreeModel
Since:
2.0

addVetoedChangeListener

public void addVetoedChangeListener(VetoedChangeListener listener)
Adds the specified listener to the list of listeners registered to receive notifications of VetoedChangeEvents, which can occur if a TreeNode's name change is rejected because it is either read-only or the new name is invalid.

Parameters:
listener - The VetoedChangeListener to be registered
Since:
2.0

createDefaultTreeView

protected TreeView createDefaultTreeView(java.lang.Object value)
Since:
2.0

executeTransaction

protected boolean executeTransaction(com.metamatrix.toolbox.ui.widget.tree.DefaultTreeModel.EditorTask task,
                                     java.lang.String context)
Since:
2.1

fireChildrenChangedEvent

public void fireChildrenChangedEvent(java.lang.Object source,
                                     TreeNode parent)
Fires a TreeModelEvent to the treeNodesChanged method of all registered listeners indicating that all of the children of the specified parent have changed in some way.

Parameters:
source - The source of the event
parent - The parent of the child nodes that have changed
Since:
2.1

fireEvent

protected void fireEvent(int type,
                         java.lang.Object source,
                         TreeNode node)
Since:
2.0

fireEvent

protected void fireEvent(java.lang.Object source,
                         TreeNode parent,
                         TreeNode child,
                         int childIndex)
Since:
2.0

fireEvent

protected void fireEvent(int type,
                         java.lang.Object source,
                         java.lang.Object[] path,
                         int[] childIndices,
                         java.lang.Object[] children)

fireModelChangedEvent

public void fireModelChangedEvent(java.lang.Object source,
                                  TreeNode node)
Since:
2.0

fireNodeAddedEvent

public void fireNodeAddedEvent(java.lang.Object source,
                               TreeNode node)
Since:
2.0

fireNodeChangedEvent

public void fireNodeChangedEvent(java.lang.Object source,
                                 TreeNode node)
Since:
2.0

fireNodeRemovedEvent

public void fireNodeRemovedEvent(java.lang.Object source,
                                 TreeNode parent,
                                 TreeNode child,
                                 int childIndex)
Since:
2.0

fireVetoedChangeEvent

protected void fireVetoedChangeEvent(javax.swing.tree.TreePath path,
                                     java.lang.String property,
                                     java.lang.Object name)
Fires a VetoedChangeEvent containing the specified TreeNode's TreePath and vetoed name to all registered listeners.

Parameters:
path - The TreePath of the TreeNode upon which the name change was attempted
property - The key name of the name property.
name - The name that was vetoed
Since:
2.0

getChild

public java.lang.Object getChild(java.lang.Object parent,
                                 int index)
Specified by:
getChild in interface javax.swing.tree.TreeModel
Since:
2.0

getChildCount

public int getChildCount(java.lang.Object parent)
Specified by:
getChildCount in interface javax.swing.tree.TreeModel
Since:
2.0

getChildIndex

protected int getChildIndex(java.lang.Object parent,
                            java.lang.Object child)
Since:
2.0

getEditor

public TreeNodeEditor getEditor()
Since:
2.0

getIndexOfChild

public int getIndexOfChild(java.lang.Object parent,
                           java.lang.Object child)
Specified by:
getIndexOfChild in interface javax.swing.tree.TreeModel
Since:
2.0

getName

public java.lang.String getName(TreeNode node)
Since:
2.0

getPath

public TreeNode[] getPath(TreeNode node)
Since:
2.0

getPath

protected TreeNode[] getPath(TreeNode node,
                             int size)
Since:
2.0

getRoot

public java.lang.Object getRoot()
Specified by:
getRoot in interface javax.swing.tree.TreeModel
Since:
2.0

getTransactionSource

public java.lang.Object getTransactionSource()
Returns:
The object that is currently acting as the source of all write transactions.
Since:
2.0

getTreeView

public TreeView getTreeView()
Returns:
The TreeView to which this model applies.
Since:
2.0

initializeDefaultTreeModel

protected void initializeDefaultTreeModel()
Since:
2.0

isLeaf

public boolean isLeaf(java.lang.Object node)
Specified by:
isLeaf in interface javax.swing.tree.TreeModel
Since:
2.0

isRootHidden

public boolean isRootHidden()
Since:
2.0

moveNode

public boolean moveNode(TreeNode node,
                        TreeNode parent)
Since:
2.0

moveNode

public boolean moveNode(TreeNode node,
                        TreeNode parent,
                        int index)
Since:
2.0

removeNode

public boolean removeNode(TreeNode node)
Since:
2.0

removeTreeModelListener

public void removeTreeModelListener(javax.swing.event.TreeModelListener listener)
Specified by:
removeTreeModelListener in interface javax.swing.tree.TreeModel
Since:
2.0

removeVetoedChangeListener

public void removeVetoedChangeListener(VetoedChangeListener listener)
Removes the specified listener from the list of listeners registered to receive notifications of VetoedChangeEvents.

Parameters:
listener - The VetoedChangeListener to be unregistered
Since:
2.0

setName

public boolean setName(TreeNode node,
                       java.lang.String name)
Since:
2.0

setTreeWidget

public void setTreeWidget(TreeWidget treeWidget)
Since:
2.0

setTransactionSource

public void setTransactionSource(java.lang.Object source)
Sets the object that will act as the source of all write transactions.

Parameters:
source - The source object
Since:
2.0

setTreeView

public void setTreeView(TreeView view)
Sets the TreeView to which this model applies.

Parameters:
view - The TreeView
Since:
2.0

valueForPathChanged

public void valueForPathChanged(javax.swing.tree.TreePath path,
                                java.lang.Object name)
Specified by:
valueForPathChanged in interface javax.swing.tree.TreeModel
Parameters:
path - The TreePath of the TreeNode upon which the name change was attempted
name - The new name
Since:
2.0


Copyright © 2009. All Rights Reserved.