Class CustomLoadingAddressTableModel
java.lang.Object
javax.swing.table.AbstractTableModel
docking.widgets.table.AbstractGTableModel<Address>
docking.widgets.table.AbstractSortedTableModel<Address>
docking.widgets.table.GDynamicColumnTableModel<Address,Program>
docking.widgets.table.threaded.ThreadedTableModel<Address,Program>
ghidra.util.table.GhidraProgramTableModel<Address>
ghidra.util.table.AddressBasedTableModel<Address>
ghidra.util.table.AddressPreviewTableModel
ghidra.util.table.CustomLoadingAddressTableModel
- All Implemented Interfaces:
ConfigurableColumnTableModel, DynamicColumnTableModel<Address>, RowObjectFilterModel<Address>, RowObjectTableModel<Address>, SelectionStorage<Address>, SortedTableModel, VariableColumnTableModel, ProgramTableModel, Serializable, EventListener, ChangeListener, TableModel
An
Address based table model that allows clients to load their data via
the TableModelLoader callback provided at construction time.
Why? Well, this allows clients to use the existing table model framework without having to create a new table model. In other words, some of the boilerplate code of creating a model is removed--clients need only implement one method in order to get full thread table functionality, which is a lot.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class ThreadedTableModel
ThreadedTableModel.IncrementalLoadJobListener -
Field Summary
Fields inherited from class GhidraProgramTableModel
programFields inherited from class ThreadedTableModel
allData, filteredDataFields inherited from class GDynamicColumnTableModel
columnSettings, serviceProvider, tableColumnsFields inherited from class AbstractSortedTableModel
hasEverSortedFields inherited from class AbstractGTableModel
isDisposed, WIDTH_UNDEFINEDFields inherited from class AbstractTableModel
listenerListFields inherited from interface RowObjectFilterModel
SUB_FILTERING_DISABLED_PROPERTYFields inherited from interface SortedTableModel
ASCENDING_ORDER, DESCENDING_ORDER -
Constructor Summary
ConstructorsConstructorDescriptionCustomLoadingAddressTableModel(String modelName, ServiceProvider serviceProvider, Program program, TableModelLoader<Address> loader, TaskMonitor monitor) CustomLoadingAddressTableModel(String modelName, ServiceProvider serviceProvider, Program program, TableModelLoader<Address> loader, TaskMonitor monitor, boolean loadIncrementally) -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoLoad(Accumulator<Address> accumulator, TaskMonitor monitor) The basic method that all children must implement.Methods inherited from class AddressPreviewTableModel
getAddress, getProgramSelection, setSelectionSizeMethods inherited from class GhidraProgramTableModel
createTableColumnDescriptor, dispose, getAddress, getDataSource, getProgram, getProgramForRow, getProgramLocation, setProgramMethods inherited from class ThreadedTableModel
addInitialLoadListener, addInitialLoadListener, addObject, addThreadedTableModelListener, backgroundWorkCancelled, cancelAllUpdates, clearData, createAccumulator, createIncrementalLoadJob, createSortComparator, doFilter, fireTableChanged, getAddRemoveStrategy, getAllData, getModelData, getModelIndex, getModelRow, getName, getRowCount, getRowObjects, getTableFilter, getUnfilteredData, getUnfilteredIndexForRowObject, getUnfilteredRowCount, getUnfilteredRowObjectForIndex, getValueAt, getViewIndex, getViewRow, hasFilter, initializeSorting, isBusy, isFiltered, isLoadIncrementally, reFilter, reload, removeObject, removeThreadedTableModelListener, reSort, setIncrementalTaskMonitor, setModelState, setTableFilter, sort, startInitialLoad, updateNow, updateObjectMethods inherited from class GDynamicColumnTableModel
addTableColumn, addTableColumn, addTableColumns, addTableColumns, createSortComparatorForColumn, disposeDynamicColumnData, getColumn, getColumnClass, getColumnCount, getColumnDescription, getColumnDisplayName, getColumnIndex, getColumnIndex, getColumnName, getColumnSettings, getColumnSettingsDefinitions, getColumnValueForRow, getDefaultColumnCount, getHeaderRenderer, getMaxLines, getPreferredColumnWidth, getRenderer, getTableColumnDescriptor, getUniqueIdentifier, isDefaultColumn, isSortable, isVisibleByDefault, loadDiscoveredTableColumns, reloadColumns, removeTableColumn, removeTableColumns, setAllColumnSettings, stateChangedMethods inherited from class AbstractSortedTableModel
addSortListener, cleanupTableSortState, createSortingContext, getIndexForRowObject, getIndexForRowObject, getPendingSortState, getPrimarySortColumnIndex, getRowIndex, getRowObject, getTableSortState, isSorted, isSortPending, notifyModelSorted, setDefaultTableSortState, setTableSortState, sortCompletedMethods inherited from class AbstractGTableModel
getLastSelectedObjects, isDisposed, refresh, setLastSelectedObjectsMethods inherited from class AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAtMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface RowObjectTableModel
fireTableDataChanged, getColumnValueForRow, getRowIndex, getRowObjectMethods inherited from interface TableModel
addTableModelListener, getColumnClass, getColumnCount, getColumnName, isCellEditable, removeTableModelListener, setValueAt
-
Constructor Details
-
CustomLoadingAddressTableModel
public CustomLoadingAddressTableModel(String modelName, ServiceProvider serviceProvider, Program program, TableModelLoader<Address> loader, TaskMonitor monitor) -
CustomLoadingAddressTableModel
public CustomLoadingAddressTableModel(String modelName, ServiceProvider serviceProvider, Program program, TableModelLoader<Address> loader, TaskMonitor monitor, boolean loadIncrementally)
-
-
Method Details
-
doLoad
protected void doLoad(Accumulator<Address> accumulator, TaskMonitor monitor) throws CancelledException Description copied from class:ThreadedTableModelThe basic method that all children must implement. This is where children load their data.- Specified by:
doLoadin classThreadedTableModel<Address,Program> - Parameters:
accumulator- the datastructure into which you should incrementally place you table row datamonitor- the task monitor to check for cancellations and to update progress- Throws:
CancelledException- if the task monitor has been cancelled and a call is made tomonitor.checkCancelled();.
-