Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.treetable
Interface TreeTableModel

All Superinterfaces:
  javax.swing.tree.TreeModel

All Known Implementing Classes:
  AbstractTreeTableModel, DefaultTreeTableModel, FileSystemModel, SimpleFileSystemModel

    public interface TreeTableModel

extends javax.swing.tree.TreeModel

The model used by `JXTreeTable`.

This model is a combination of `TreeModel` and `TableModel` for use with the tree table. It does not actually extends `TableModel`, but instead copies method signature as appropriate and alters other to work with the underlying `TreeModel`.

See Also:
  `TreeModel`, `TableModel`

Method Summary
`java.lang.Class<?>` | `getColumnClass(int columnIndex)` Returns the most specific superclass for all the cell values in the column.
`int` | `getColumnCount()` Returns the number of columns in the model.
`java.lang.String` | `getColumnName(int column)` Returns the name of the column at `columnIndex`.
`int` | `getHierarchicalColumn()` Returns the column that is the "tree" column.
`java.lang.Object` | `getValueAt(java.lang.Object node, int column)` Returns the value for the `node` at `columnIndex`.
`boolean` | `isCellEditable(java.lang.Object node, int column)` Returns true if the cell for the `node` at `columnIndex` is editable.
`void` | `setValueAt(java.lang.Object value, java.lang.Object node, int column)` Sets the value for the `node` at `columnIndex` to `value`.

Methods inherited from interface javax.swing.tree.TreeModel
`addTreeModelListener, getChild, getChildCount, getIndexOfChild, getRoot, isLeaf, removeTreeModelListener, valueForPathChanged`

Method Detail

### getColumnClass

    java.lang.Class<?> getColumnClass(int columnIndex)

  Returns the most specific superclass for all the cell values in the column. This is used by the `JXTreeTable` to set up a default renderer and editor for the column.

  Parameters:
    `columnIndex` - the index of the column
  Returns:
    the common ancestor class of the object values in the model.
  See Also:
    `TableModel.getColumnClass(int)`

### getColumnCount

    int getColumnCount()

  Returns the number of columns in the model. A `JXTreeTable` uses this method to determine how many columns it should create and display by default.

  Returns:
    the number of columns in the model
  See Also:
    `TableModel.getColumnCount()`

### getColumnName

    java.lang.String getColumnName(int column)

  Returns the name of the column at `columnIndex`. This is used to initialize the table's column header name. Note: this name does not need to be unique; two columns in a table can have the same name.

  Parameters:
    `column` - the index of the column
  Returns:
    the name of the column
  See Also:
    `TableModel.getColumnName(int)`

### getHierarchicalColumn

    int getHierarchicalColumn()

  Returns the column that is the "tree" column. While it is not required, most implementations will default the first column to be the hierarchical one.

  Returns:
    the index of the hierarchical column or -1 if no column is the hierarchical column.

### getValueAt

    java.lang.Object getValueAt(java.lang.Object node,
                                int column)

  Returns the value for the `node` at `columnIndex`. The `node` must be managed by this model. Unamanaged nodes should throw an `IllegalArgumentException`.

  Parameters:
    `node` - the node whose value is to be queried
    `column` - the column whose value is to be queried
  Returns:
    the value Object at the specified cell
  Throws:
    `java.lang.IllegalArgumentException` - if `node` is not managed by this model.
  See Also:
    `setValueAt(java.lang.Object, java.lang.Object, int)`, `TableModel.getValueAt(int, int)`

### isCellEditable

    boolean isCellEditable(java.lang.Object node,
                           int column)

  Returns true if the cell for the `node` at `columnIndex` is editable. Otherwise, `setValueAt` on the cell will not change the value of that cell. The `node` must be managed by this model. Unamanaged nodes should throw an `IllegalArgumentException`.

  Parameters:
    `node` - the node whose value to be queried
    `column` - the column whose value to be queried
  Returns:
    true if the cell is editable
  Throws:
    `java.lang.IllegalArgumentException` - if `node` is not managed by this model.
  See Also:
    `setValueAt(java.lang.Object, java.lang.Object, int)`, `TableModel.isCellEditable(int, int)`

### setValueAt

    void setValueAt(java.lang.Object value,
                    java.lang.Object node,
                    int column)

  Sets the value for the `node` at `columnIndex` to `value`. The `node` must be managed by this model. Unamanaged nodes should throw an `IllegalArgumentException`.

  Parameters:
    `value` - the new value
    `node` - the node whose value is to be changed
    `column` - the column whose value is to be changed
  Throws:
    `java.lang.IllegalArgumentException` - if `node` is not managed by this model.
  See Also:
    `getValueAt(java.lang.Object, int)`, `isCellEditable(java.lang.Object, int)`, `TableModel.setValueAt(Object, int, int)`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.