Package docking.widgets.table

# Interface VariableColumnTableModel

All Superinterfaces:
  `TableModel`

All Known Implementing Classes:
  `AddressArrayTableModel`, `AddressBasedTableModel`, `AddressPreviewTableModel`, `AddressSetTableModel`, `AlignedObjectBasedPreviewTableModel`, `AnyObjectTableModel`, `CustomLoadingAddressTableModel`, `DbSmallTableModel`, `EmptyThreadedTableModel`, `FunctionXrefsTableModel`, `GDynamicColumnTableModel`, `GhidraProgramTableModel`, `IncomingReferencesTableModel`, `ProgramLocationPreviewTableModel`, `ProjectDataTableModel`, `ReferencesFromTableModel`, `SetEquateTableModel`, `TableChooserTableModel`, `ThemeColorTableModel`, `ThemeFontTableModel`, `ThemeIconTableModel`, `ThreadedTableModel`, `ThreadedTableModelStub`

public interface VariableColumnTableModel extends TableModel
An interface for marking table models whose supported columns are discovered at runtime

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static VariableColumnTableModel`
  `from(TableModel m)`
  Returns a `VariableColumnTableModel` if the given model is an instance of this type or is wraps another table model that is an instance of this type.
  `String`
  `getColumnDescription(int column)`
  `String`
  `getColumnDisplayName(int column)`
  `int`
  `getDefaultColumnCount()`
  Gets the count of the default columns for this model.
  `String`
  `getUniqueIdentifier(int column)`
  Returns a value that is unique for a given table column.
  `boolean`
  `isDefaultColumn(int modelIndex)`
  Returns true if the column denoted by the given model index is default (specified initially by the table model).
  `boolean`
  `isVisibleByDefault(int modelIndex)`
  Returns true if the column denoted by the given model index is specified by the table model as being visible when the table is loaded for the first time.

  ### Methods inherited from interface javax.swing.table.TableModel

  `addTableModelListener, getColumnClass, getColumnCount, getColumnName, getRowCount, getValueAt, isCellEditable, removeTableModelListener, setValueAt`

- ## Method Details

  - ### from

    static VariableColumnTableModel from(TableModel m)
    Returns a `VariableColumnTableModel` if the given model is an instance of this type or is wraps another table model that is an instance of this type. If the given model is not such an instance, then null is returned.
    Returns:
      the variable column model

  - ### getColumnDisplayName

    String getColumnDisplayName(int column)

  - ### getColumnDescription

    String getColumnDescription(int column)

  - ### getUniqueIdentifier

    String getUniqueIdentifier(int column)
    Returns a value that is unique for a given table column. This is different than getting the display name, which may be shared by different columns.
    Parameters:
      `column` - the index (in the model space) of the column for which to get the identifier

  - ### getDefaultColumnCount

    int getDefaultColumnCount()
    Gets the count of the default columns for this model. This model may have non-default columns added. This method will return the count of columns that have been setup specifically by the table model. This method can be used to iterate of the first `n` columns of this model in order to get information for the default columns by calling methods like `TableModel.getColumnName(int)`.
    Returns:
      Gets the count of the default columns for this model.

  - ### isDefaultColumn

    boolean isDefaultColumn(int modelIndex)
    Returns true if the column denoted by the given model index is default (specified initially by the table model).
    Parameters:
      `modelIndex` - The index in the column in the column model.
    Returns:
      true if the column denoted by the given model index is default.

  - ### isVisibleByDefault

    boolean isVisibleByDefault(int modelIndex)
    Returns true if the column denoted by the given model index is specified by the table model as being visible when the table is loaded for the first time.
    Parameters:
      `modelIndex` - The index in the column in the column model.
    Returns:
      true if the column denoted by the given model index is visible default.