# Hierarchy For Package docking.widgets.table

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - javax.swing.AbstractCellEditor (implements javax.swing.CellEditor, java.io.Serializable)
    - javax.swing.DefaultCellEditor (implements javax.swing.table.TableCellEditor, javax.swing.tree.TreeCellEditor)
      - docking.widgets.table.GTableTextCellEditor
    - docking.widgets.table.HexBigIntegerTableCellEditor (implements javax.swing.table.TableCellEditor)
    - docking.widgets.table.IconButtonTableCellEditor<R> (implements java.awt.event.ActionListener, javax.swing.table.TableCellEditor)
  - docking.widgets.table.AbstractDynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE> (implements docking.widgets.table.DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>)
    - docking.widgets.table.AbstractDynamicTableColumnStub<ROW_TYPE,COLUMN_TYPE>
    - docking.widgets.table.DynamicTableColumnExtensionPoint<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE> (implements ghidra.util.classfinder.ExtensionPoint)
    - docking.widgets.table.MappedTableColumn<ROW_TYPE,EXPECTED_ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>
  - javax.swing.table.AbstractTableModel (implements java.io.Serializable, javax.swing.table.TableModel)
    - docking.widgets.table.AbstractGTableModel<T> (implements docking.widgets.table.RowObjectTableModel<T>, docking.widgets.table.SelectionStorage<T>)
      - docking.widgets.table.AbstractSortedTableModel<T> (implements docking.widgets.table.SortedTableModel)
        - docking.widgets.table.DynamicTableModel<T>
        - docking.widgets.table.GDynamicColumnTableModel<ROW_TYPE,DATA_SOURCE> (implements javax.swing.event.ChangeListener, docking.widgets.table.DynamicColumnTableModel<ROW_TYPE>, docking.widgets.table.VariableColumnTableModel)
          - docking.widgets.table.AnyObjectTableModel<T>
          - docking.widgets.table.DefaultEnumeratedColumnTableModel<C,R> (implements docking.widgets.table.EnumeratedColumnTableModel<R>)
            - docking.widgets.table.DefaultEnumeratedColumnProgramTableModel<C,R> (implements docking.widgets.table.EnumeratedColumnProgramTableModel<R>)
            - docking.widgets.table.RowWrappedEnumeratedColumnTableModel<C,K,R,T>
  - docking.widgets.table.AddRemoveListItem<T>
  - docking.widgets.AutoLookup
    - docking.widgets.table.GTableAutoLookup
  - docking.widgets.table.AutoscrollAdapter (implements java.awt.dnd.Autoscroll)
  - docking.widgets.table.ColumnSortState
  - docking.widgets.table.CombinedTableFilter<T> (implements docking.widgets.table.TableFilter<ROW_OBJECT>)
  - java.awt.Component (implements java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable)
    - java.awt.Container
      - javax.swing.JComponent (implements java.io.Serializable)
        - javax.swing.JLabel (implements javax.accessibility.Accessible, javax.swing.SwingConstants)
          - docking.widgets.label.AbstractHtmlLabel (implements docking.widgets.GComponent, java.beans.PropertyChangeListener)
            - docking.widgets.label.GDHtmlLabel
              - docking.widgets.AbstractGCellRenderer (implements generic.theme.laf.FontChangeListener)
                - docking.widgets.table.GTableCellRenderer (implements javax.swing.table.TableCellRenderer)
                  - ghidra.util.table.column.AbstractGColumnRenderer<T> (implements ghidra.util.table.column.GColumnRenderer<T>)
                    - docking.widgets.table.CustomToStringCellRenderer<T>
                    - docking.widgets.table.HexDefaultGColumnRenderer<T>
                    - docking.widgets.table.SpanSetTableCellRenderer<N> (implements docking.widgets.table.SpannedRenderer<N>)
                    - docking.widgets.table.SpanTableCellRenderer<N> (implements docking.widgets.table.SpannedRenderer<N>)
                  - docking.widgets.table.DefaultTableCellRendererWrapper
                  - docking.widgets.table.GBooleanCellRenderer
                  - ghidra.util.table.GhidraTableCellRenderer
                    - ghidra.util.table.column.AbstractGhidraColumnRenderer<T> (implements ghidra.util.table.column.GColumnRenderer<T>)
                      - docking.widgets.table.IconButtonTableCellRenderer
          - javax.swing.table.DefaultTableCellRenderer (implements java.io.Serializable, javax.swing.table.TableCellRenderer)
            - docking.widgets.table.GTableHeaderRenderer
              - docking.widgets.table.RangeCursorTableHeaderRenderer<N> (implements docking.widgets.table.SpannedRenderer<N>)
        - javax.swing.JPanel (implements javax.accessibility.Accessible)
          - docking.widgets.table.GFilterTable<ROW_OBJECT>
          - docking.widgets.table.GTableFilterPanel<ROW_OBJECT>
          - docking.widgets.table.GTableWidget<T>
        - javax.swing.JTable (implements javax.accessibility.Accessible, javax.swing.event.CellEditorListener, javax.swing.event.ListSelectionListener, javax.swing.event.RowSorterListener, javax.swing.Scrollable, javax.swing.event.TableColumnModelListener, javax.swing.event.TableModelListener)
          - docking.widgets.table.GTable
        - javax.swing.table.JTableHeader (implements javax.accessibility.Accessible, javax.swing.event.TableColumnModelListener)
          - docking.widgets.table.GTableHeader
  - javax.swing.DefaultListSelectionModel (implements java.lang.Cloneable, javax.swing.ListSelectionModel, java.io.Serializable)
    - docking.widgets.table.RowObjectSelectionManager<T> (implements docking.widgets.table.SelectionManager)
  - docking.widgets.table.DefaultRowFilterTransformer<ROW_OBJECT> (implements docking.widgets.table.RowFilterTransformer<ROW_OBJECT>)
  - docking.widgets.table.DefaultTableTextFilterFactory<ROW_OBJECT> (implements docking.widgets.table.TableTextFilterFactory<ROW_OBJECT>)
  - docking.DialogComponentProvider (implements docking.action.ActionContextProvider, ghidra.util.StatusListener, ghidra.util.task.TaskListener)
    - docking.widgets.table.ChooseColumnsDialog
    - docking.widgets.table.SelectColumnsDialog
  - docking.widgets.table.DiscoverableTableUtils
  - docking.widgets.table.GTableCellRenderingData
  - docking.widgets.table.GTableColumnModel (implements javax.swing.event.ListSelectionListener, java.beans.PropertyChangeListener, javax.swing.table.TableColumnModel)
  - docking.widgets.table.GTableToCSV
  - docking.widgets.table.InvertedTableFilter<ROW_OBJECT> (implements docking.widgets.table.TableFilter<ROW_OBJECT>)
  - java.awt.event.MouseAdapter (implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener)
    - docking.widgets.table.GTableMouseListener
    - docking.widgets.table.RangeCursorTableHeaderRenderer.ForSeekMouseListener
  - docking.widgets.table.MultiTextFilterTableFilter<ROW_OBJECT> (implements docking.widgets.table.TableFilter<ROW_OBJECT>)
  - docking.widgets.table.RowObject
  - docking.widgets.table.TableColumnDescriptor<ROW_TYPE>
  - docking.widgets.table.TableColumnModelState (implements docking.widgets.table.SortListener)
  - docking.widgets.table.TableComparators
  - docking.widgets.table.TableModelWrapper<ROW_OBJECT> (implements docking.widgets.table.RowObjectFilterModel<ROW_OBJECT>, docking.widgets.table.SelectionStorage<T>, docking.widgets.table.WrappingTableModel)
  - docking.widgets.table.TableRowMapper<ROW_TYPE,EXPECTED_ROW_TYPE,DATA_SOURCE> (implements ghidra.util.classfinder.ExtensionPoint)
  - docking.widgets.table.TableSortingContext<T>
  - docking.widgets.table.TableSortState (implements java.lang.Iterable<T>)
  - docking.widgets.table.TableSortStateEditor
  - docking.widgets.table.TableTextFilter<ROW_OBJECT> (implements docking.widgets.table.TableFilter<ROW_OBJECT>)
  - docking.widgets.table.TableUtils

## Interface Hierarchy

- java.util.function.Consumer<T>
  - docking.widgets.table.RangeCursorTableHeaderRenderer.SeekListener
- docking.widgets.table.DefaultEnumeratedColumnTableModel.EnumeratedTableColumn<C,R>
- docking.widgets.table.DisplayStringProvider
- docking.widgets.table.DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>
  - docking.widgets.table.EnumeratedColumnTableModel.EditableDynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>
- java.util.EventListener
  - javax.swing.event.TableModelListener
    - docking.widgets.table.SelectionManager (also extends javax.swing.ListSelectionModel)
- docking.widgets.table.FilterTypeConverter<COLUMN_TYPE,FILTER_TYPE>
- docking.widgets.table.FocusableEditor
- javax.swing.ListSelectionModel
  - docking.widgets.table.SelectionManager (also extends javax.swing.event.TableModelListener)
- docking.widgets.table.ObjectSelectedListener<T>
- ghidra.util.table.ProgramTableModel
  - docking.widgets.table.EnumeratedColumnProgramTableModel<R> (also extends docking.widgets.table.EnumeratedColumnTableModel<R>)
- docking.widgets.table.RowFilterTransformer<ROW_OBJECT>
- docking.widgets.table.SelectionManagerListener
- docking.widgets.table.SelectionStorage<T>
- docking.widgets.table.SortListener
- docking.widgets.table.SpannedRenderer<N>
- docking.widgets.table.TableFilter<ROW_OBJECT>
- docking.widgets.table.TableItemPickedListener<T>
- javax.swing.table.TableModel
  - docking.widgets.table.ConfigurableColumnTableModel
    - docking.widgets.table.DynamicColumnTableModel<ROW_TYPE> (also extends docking.widgets.table.RowObjectTableModel<T>)
  - docking.widgets.table.RowObjectTableModel<T>
    - docking.widgets.table.DynamicColumnTableModel<ROW_TYPE> (also extends docking.widgets.table.ConfigurableColumnTableModel)
    - docking.widgets.table.EnumeratedColumnTableModel<R>
      - docking.widgets.table.EnumeratedColumnProgramTableModel<R> (also extends ghidra.util.table.ProgramTableModel)
    - docking.widgets.table.RowObjectFilterModel<ROW_OBJECT>
  - docking.widgets.table.SortedTableModel
  - docking.widgets.table.VariableColumnTableModel
  - docking.widgets.table.WrappingTableModel
- docking.widgets.table.TableTextFilterFactory<ROW_OBJECT>

## Annotation Interface Hierarchy

- docking.widgets.table.ColumnAnnotation (implements java.lang.annotation.Annotation)

## Enum Class Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.lang.constant.Constable, java.io.Serializable)
    - docking.widgets.table.AddRemoveListItem.Type
    - docking.widgets.table.CellEditorUtils
    - docking.widgets.table.ColumnSortState.SortDirection
    - docking.widgets.table.CustomToStringCellRenderer.CustomFont

## Record Class Hierarchy

- java.lang.Object
  - java.lang.Record
    - docking.widgets.table.SpannedRenderer.DoubleSpan (implements generic.Span<N,S>)