Interface TreeTableModel

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

public interface TreeTableModel extends 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:
  • Method Details

    • getColumnClass

      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:
    • 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:
    • getColumnName

      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:
    • 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

      Object getValueAt(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:
      IllegalArgumentException - if node is not managed by this model.
      See Also:
    • isCellEditable

      boolean isCellEditable(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:
      IllegalArgumentException - if node is not managed by this model.
      See Also:
    • setValueAt

      void setValueAt(Object value, 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:
      IllegalArgumentException - if node is not managed by this model.
      See Also: