Package ghidra.app.util.query
Class AlignedObjectBasedPreviewTableModel<ROW_TYPE>
java.lang.Object
javax.swing.table.AbstractTableModel
docking.widgets.table.AbstractGTableModel<ROW_TYPE>
docking.widgets.table.AbstractSortedTableModel<ROW_TYPE>
docking.widgets.table.GDynamicColumnTableModel<ROW_TYPE,Program>
docking.widgets.table.threaded.ThreadedTableModel<ROW_TYPE,Program>
ghidra.util.table.GhidraProgramTableModel<ROW_TYPE>
ghidra.util.table.AddressBasedTableModel<ROW_TYPE>
ghidra.app.util.query.AlignedObjectBasedPreviewTableModel<ROW_TYPE>
- All Implemented Interfaces:
ConfigurableColumnTableModel
,DynamicColumnTableModel<ROW_TYPE>
,RowObjectFilterModel<ROW_TYPE>
,RowObjectTableModel<ROW_TYPE>
,SelectionStorage<ROW_TYPE>
,SortedTableModel
,VariableColumnTableModel
,ProgramTableModel
,Serializable
,EventListener
,ChangeListener
,TableModel
public abstract class AlignedObjectBasedPreviewTableModel<ROW_TYPE>
extends AddressBasedTableModel<ROW_TYPE>
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class docking.widgets.table.threaded.ThreadedTableModel
ThreadedTableModel.IncrementalLoadJobListener
-
Field Summary
Fields inherited from class ghidra.util.table.GhidraProgramTableModel
program
Fields inherited from class docking.widgets.table.threaded.ThreadedTableModel
allData, filteredData
Fields inherited from class docking.widgets.table.GDynamicColumnTableModel
columnSettings, serviceProvider, tableColumns
Fields inherited from class docking.widgets.table.AbstractSortedTableModel
hasEverSorted
Fields inherited from class docking.widgets.table.AbstractGTableModel
isDisposed, WIDTH_UNDEFINED
Fields inherited from class javax.swing.table.AbstractTableModel
listenerList
Fields inherited from interface docking.widgets.table.RowObjectFilterModel
SUB_FILTERING_DISABLED_PROPERTY
Fields inherited from interface docking.widgets.table.SortedTableModel
ASCENDING_ORDER, DESCENDING_ORDER
-
Constructor Summary
ModifierConstructorDescriptionprotected
AlignedObjectBasedPreviewTableModel
(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor) protected
AlignedObjectBasedPreviewTableModel
(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor, boolean loadIncrementally) -
Method Summary
Modifier and TypeMethodDescriptionvoid
addAlignmentListener
(AddressAlignmentListener alignmentListener) doFilter
(List<ROW_TYPE> data, TableSortingContext<ROW_TYPE> sortingContext, TaskMonitor monitor) Override this to change how filtering is performed.protected void
doLoad
(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) The basic method that all children must implement.int
protected abstract Address
getAlignmentAddress
(List<ROW_TYPE> localList, int index) protected abstract void
initializeUnalignedList
(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) void
removeAlignmentListener
(AddressAlignmentListener alignmentListener) void
setAlignment
(int alignment) Methods inherited from class ghidra.util.table.AddressBasedTableModel
createTableColumnDescriptor, getAddress, getProgramLocation, getProgramSelection
Methods inherited from class ghidra.util.table.GhidraProgramTableModel
dispose, getDataSource, getProgram, getProgramForRow, setProgram
Methods inherited from class docking.widgets.table.threaded.ThreadedTableModel
addInitialLoadListener, addInitialLoadListener, addObject, addThreadedTableModelListener, backgroundWorkCancelled, cancelAllUpdates, clearData, createAccumulator, createIncrementalLoadJob, createSortComparator, 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, updateObject
Methods inherited from class docking.widgets.table.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, stateChanged
Methods inherited from class docking.widgets.table.AbstractSortedTableModel
addSortListener, cleanupTableSortState, createSortingContext, getIndexForRowObject, getIndexForRowObject, getPendingSortState, getPrimarySortColumnIndex, getRowIndex, getRowObject, getTableSortState, isSorted, isSortPending, notifyModelSorted, setDefaultTableSortState, setTableSortState, sortCompleted
Methods inherited from class docking.widgets.table.AbstractGTableModel
getLastSelectedObjects, isDisposed, refresh, setLastSelectedObjects
Methods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface docking.widgets.table.RowObjectTableModel
fireTableDataChanged, getColumnValueForRow, getRowIndex, getRowObject
Methods inherited from interface javax.swing.table.TableModel
addTableModelListener, getColumnClass, getColumnCount, getColumnName, isCellEditable, removeTableModelListener, setValueAt
-
Field Details
-
alignment
protected int alignment -
filteredIndices
protected int[] filteredIndices
-
-
Constructor Details
-
AlignedObjectBasedPreviewTableModel
protected AlignedObjectBasedPreviewTableModel(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor) -
AlignedObjectBasedPreviewTableModel
protected AlignedObjectBasedPreviewTableModel(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor, boolean loadIncrementally)
-
-
Method Details
-
addAlignmentListener
-
removeAlignmentListener
-
getAlignment
public int getAlignment() -
setAlignment
public void setAlignment(int alignment) -
doFilter
public List<ROW_TYPE> doFilter(List<ROW_TYPE> data, TableSortingContext<ROW_TYPE> sortingContext, TaskMonitor monitor) throws CancelledException Description copied from class:ThreadedTableModel
Override this to change how filtering is performed. This implementation will do nothing if aTableFilter
has not been set via a call toThreadedTableModel.setTableFilter(TableFilter)
.- Overrides:
doFilter
in classThreadedTableModel<ROW_TYPE,
Program> - Parameters:
data
- The list of data to be filtered.sortingContext
- the comparator used to sort data. This can be used by overridden filter methods that need to query data about how the table is sorted.monitor
- the progress monitor to check for cancellation.- Returns:
- The new filtered list of data. If no filtering takes place, then the original list should be returned.
- Throws:
CancelledException
- If the filter operation is cancelled.
-
doLoad
protected void doLoad(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) throws CancelledException Description copied from class:ThreadedTableModel
The basic method that all children must implement. This is where children load their data.- Specified by:
doLoad
in classThreadedTableModel<ROW_TYPE,
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();
.
-
initializeUnalignedList
protected abstract void initializeUnalignedList(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) throws CancelledException - Throws:
CancelledException
-
getAlignmentAddress
-