Class AddressPreviewTableModel
java.lang.Object
javax.swing.table.AbstractTableModel
- All Implemented Interfaces:
ConfigurableColumnTableModel, DynamicColumnTableModel<Address>, RowObjectFilterModel<Address>, RowObjectTableModel<Address>, SelectionStorage<Address>, SortedTableModel, VariableColumnTableModel, ProgramTableModel, Serializable, EventListener, ChangeListener, TableModel
- Direct Known Subclasses:
AddressArrayTableModel, AddressSetTableModel, CustomLoadingAddressTableModel
Table model that shows a location, label, and a preview column to
show a preview of the code unit. The location can be in a memory address,
a stack address, or a register address. The label is the primary symbol
at the address, if one exists. Use this model when you have a list of
addresses to build up dynamically.
- 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
ConstructorsModifierConstructorDescriptionprotectedAddressPreviewTableModel(String modelName, ServiceProvider serviceProvider, Program program, TaskMonitor monitor) Constructor.protectedAddressPreviewTableModel(String modelName, ServiceProvider serviceProvider, Program program, TaskMonitor monitor, boolean loadIncrementally) Constructor. -
Method Summary
Modifier and TypeMethodDescriptiongetAddress(int row) Returns the best Address for the given row.getProgramSelection(int[] rows) Returns a program selection corresponding to the specified row index array.voidsetSelectionSize(int size) Sets the size of the selections generated by this model when asked to create program selections.Methods 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, doLoad, 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
-
AddressPreviewTableModel
protected AddressPreviewTableModel(String modelName, ServiceProvider serviceProvider, Program program, TaskMonitor monitor) Constructor.- Parameters:
modelName- the name of the model (used for the title)serviceProvider- from which to get servicesprogram- the program upon which this model is being usedmonitor- the monitor to use for tracking progress and cancelling; may be null
-
AddressPreviewTableModel
protected AddressPreviewTableModel(String modelName, ServiceProvider serviceProvider, Program program, TaskMonitor monitor, boolean loadIncrementally) Constructor.- Parameters:
modelName- the name of the model (used for the title)serviceProvider- from which to get servicesprogram- the program upon which this model is being usedmonitor- the monitor to use for tracking progress and cancelling; may be nullloadIncrementally- true signals to show table results as they come in
-
-
Method Details
-
setSelectionSize
public void setSelectionSize(int size) Sets the size of the selections generated by this model when asked to create program selections. For example, some clients know that each table row represents a contiguous range of 4 addresses. In this case, when the user makes a selection, that client wants the selection to be 4 addresses, starting at the address in the given table row.- Parameters:
size- the size of the selections generated by this model when asked to create program selections.
-
getAddress
Description copied from class:GhidraProgramTableModelReturns the best Address for the given row.Implementation Note: this class will only return an Address if this model's row type is Address. Clients that know how to get an Address for a given row should override this method.
- Overrides:
getAddressin classGhidraProgramTableModel<Address>- Parameters:
row- the row- Returns:
- the Address or null
-
getProgramSelection
Description copied from interface:ProgramTableModelReturns a program selection corresponding to the specified row index array. This array will contain the currently selected rows.- Specified by:
getProgramSelectionin interfaceProgramTableModel- Overrides:
getProgramSelectionin classGhidraProgramTableModel<Address>- Parameters:
rows- the currently selected rows.- Returns:
- a program selection
-