Copyright © 2005 Scientific Applications. All Rights Reserved.

com.sciapp.treetable
Class DefaultMutableTreeTableModel

java.lang.Object
  extended by com.sciapp.treetable.AbstractTreeTableModel
      extended by com.sciapp.treetable.MutableTreeTableModel
          extended by com.sciapp.treetable.ComparableTreeTableModel
              extended by com.sciapp.treetable.DefaultMutableTreeTableModel
All Implemented Interfaces:
ReorderModel, TreeTableModel, Serializable, TreeModel
Direct Known Subclasses:
TreeTableModelMask, UniqueTreeTableModel

public class DefaultMutableTreeTableModel
extends ComparableTreeTableModel

DefaultMutableTreeTableModel is a treetable model whose nodes' cell value depends on the aggregate values of a TreeTableRow. The value at each treetable cell is retrieved with TreeTableRow's getAggregateValue method.

See Also:
Serialized Form

Field Summary
protected  boolean editable
          boolean flag that determines whether the model is editable.
 
Fields inherited from class com.sciapp.treetable.ComparableTreeTableModel
addChildForGroup, comparators, defaultComparatorsByColumnClass
 
Fields inherited from class com.sciapp.treetable.MutableTreeTableModel
classes, columns
 
Fields inherited from class com.sciapp.treetable.AbstractTreeTableModel
listenerList, root
 
Fields inherited from interface com.sciapp.treetable.TreeTableModel
CHANGE_COLUMN_SOURCE
 
Constructor Summary
DefaultMutableTreeTableModel()
          Constructs a DefaultMutableTreeTableModel.
DefaultMutableTreeTableModel(String[] columns)
          Constructs a DefaultMutableTreeTableModel.
DefaultMutableTreeTableModel(String[] columns, Class[] classes, TreeTableRow root)
          Constructs a DefaultMutableTreeTableModel.
DefaultMutableTreeTableModel(String[] columns, TreeTableRow root)
          Constructs a DefaultMutableTreeTableModel.
DefaultMutableTreeTableModel(TreeTableRow root)
          Constructs a DefaultMutableTreeTableModel.
 
Method Summary
protected  DefaultMutableTreeNode createLeafNode(Object o)
          Creates and returns a new instance of a leaf node whose 'column data' is identified by data.
protected  DefaultMutableTreeNode createNonLeafNode(DefaultMutableTreeNode child)
          Creates and returns a new instance of a group (non-leaf) node whose child is identified by child.
 boolean getEditable()
          Determines whether the model is editable.
 Object getValueAt(Object node, int column)
          Returns the value to be displayed for node, at column index column.
 boolean isCellEditable(Object node, int column)
          This method is actually a call to getEditable.
protected  DefaultMutableTreeNode replicateLeafNode(DefaultMutableTreeNode child)
          Creates and returns a new instance of the leaf node identified by child.
 void setEditable(boolean editable)
          Makes the model editable/non-editable.
 void setValueAt(Object value, Object node, int column)
          Sets the value for node at columnIndex to aValue.
 
Methods inherited from class com.sciapp.treetable.ComparableTreeTableModel
add, add, addNode, addRowComparator, clearComparators, comparatorsChanged, createDefaultComparators, findTreeNode, getAddChildForGroup, getDefaultComparator, getRowComparator, getRowComparators, getRowComparatorSize, insertRowComparator, loadComparators, refreshComparators, removeRowComparator, removeRowComparator, saveComparators, setAddChildForGroup, setDefaultComparator, setRowComparator
 
Methods inherited from class com.sciapp.treetable.MutableTreeTableModel
addColumn, addColumn, addReorderListener, clear, fireRowsMapped, fireRowsReordered, getChild, getChildCount, getColumnClass, getColumnCount, getColumnName, getIndexOfChild, getPathToRoot, getPathToRoot, insertNodeInto, isLeaf, moveNode, nodeChanged, nodesChanged, nodeStructureChanged, nodesWereInserted, nodesWereRemoved, removeNodeFromParent, removeReorderListener, setColumnClasses, setColumnNames, valueForPathChanged
 
Methods inherited from class com.sciapp.treetable.AbstractTreeTableModel
addTreeModelListener, fireTreeNodesChanged, fireTreeNodesInserted, fireTreeNodesRemoved, fireTreeStructureChanged, fireTreeTableStructureChanged, fireTreeTableStructureChanged, getRoot, isAggregate, isFooter, isHeader, removeTreeModelListener, setRoot
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

editable

protected boolean editable
boolean flag that determines whether the model is editable.

Constructor Detail

DefaultMutableTreeTableModel

public DefaultMutableTreeTableModel()
Constructs a DefaultMutableTreeTableModel.


DefaultMutableTreeTableModel

public DefaultMutableTreeTableModel(String[] columns)
Constructs a DefaultMutableTreeTableModel.


DefaultMutableTreeTableModel

public DefaultMutableTreeTableModel(String[] columns,
                                    Class[] classes,
                                    TreeTableRow root)
Constructs a DefaultMutableTreeTableModel.


DefaultMutableTreeTableModel

public DefaultMutableTreeTableModel(String[] columns,
                                    TreeTableRow root)
Constructs a DefaultMutableTreeTableModel.


DefaultMutableTreeTableModel

public DefaultMutableTreeTableModel(TreeTableRow root)
Constructs a DefaultMutableTreeTableModel.

Method Detail

createLeafNode

protected DefaultMutableTreeNode createLeafNode(Object o)
Creates and returns a new instance of a leaf node whose 'column data' is identified by data. data in this framework is either DefaultMutableTreeNode's user object attribute or the aggregate values of a TreeTableRow.

Specified by:
createLeafNode in class ComparableTreeTableModel
Parameters:
o - the node's 'column data'.
Returns:
the newly created leaf node.

createNonLeafNode

protected DefaultMutableTreeNode createNonLeafNode(DefaultMutableTreeNode child)
Creates and returns a new instance of a group (non-leaf) node whose child is identified by child.

Specified by:
createNonLeafNode in class ComparableTreeTableModel
Parameters:
child - this node's child (or one of its children)
Returns:
the newly created group (non-leaf) node.

getEditable

public boolean getEditable()
Determines whether the model is editable. If the isCellEditable method is overriden, this method will not truely reflect if the model is editable.

Returns:
true if the model is editable, false otherwise.

getValueAt

public Object getValueAt(Object node,
                         int column)
Returns the value to be displayed for node, at column index column.

Parameters:
node - the node to query
column - the column index
Returns:
the value

isCellEditable

public boolean isCellEditable(Object node,
                              int column)
This method is actually a call to getEditable. Returns true if node at columnIndex is editable.

Specified by:
isCellEditable in interface TreeTableModel
Overrides:
isCellEditable in class MutableTreeTableModel
Parameters:
node - the node to consider
column - the column index
Returns:
true if the node at columnIndex is editable, false otherwise

replicateLeafNode

protected DefaultMutableTreeNode replicateLeafNode(DefaultMutableTreeNode child)
Creates and returns a new instance of the leaf node identified by child. This method is used when the underlying comparators have changed, so that the tree can be restructured.

Specified by:
replicateLeafNode in class ComparableTreeTableModel
Parameters:
child - the leaf we want to create a replica of.
Returns:
the newly created leaf node.

setEditable

public void setEditable(boolean editable)
Makes the model editable/non-editable.

Parameters:
editable - true, should the model be editable, false otherwise.

setValueAt

public void setValueAt(Object value,
                       Object node,
                       int column)
Sets the value for node at columnIndex to aValue.

Specified by:
setValueAt in interface TreeTableModel
Overrides:
setValueAt in class MutableTreeTableModel
Parameters:
value - the new value
node - the node whose value is to be changed
column - the column whose value is to be changed

Copyright © 2005 Scientific Applications. All Rights Reserved.