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
FieldsFields inherited from class ghidra.util.table.GhidraProgramTableModel
programFields inherited from class docking.widgets.table.threaded.ThreadedTableModel
allData, filteredDataFields inherited from class docking.widgets.table.GDynamicColumnTableModel
columnSettings, serviceProvider, tableColumnsFields inherited from class docking.widgets.table.AbstractSortedTableModel
hasEverSortedFields inherited from class docking.widgets.table.AbstractGTableModel
isDisposed, WIDTH_UNDEFINEDFields inherited from class javax.swing.table.AbstractTableModel
listenerListFields inherited from interface docking.widgets.table.RowObjectFilterModel
SUB_FILTERING_DISABLED_PROPERTYFields inherited from interface docking.widgets.table.SortedTableModel
ASCENDING_ORDER, DESCENDING_ORDER -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAlignedObjectBasedPreviewTableModel(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor) protectedAlignedObjectBasedPreviewTableModel(String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor, boolean loadIncrementally) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddAlignmentListener(AddressAlignmentListener alignmentListener) doFilter(List<ROW_TYPE> data, TableSortingContext<ROW_TYPE> sortingContext, TaskMonitor monitor) Override this to change how filtering is performed.protected voiddoLoad(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) The basic method that all children must implement.intprotected abstract AddressgetAlignmentAddress(List<ROW_TYPE> localList, int index) protected abstract voidinitializeUnalignedList(Accumulator<ROW_TYPE> accumulator, TaskMonitor monitor) voidremoveAlignmentListener(AddressAlignmentListener alignmentListener) voidsetAlignment(int alignment) Methods inherited from class ghidra.util.table.GhidraProgramTableModel
createTableColumnDescriptor, dispose, getAddress, getAddress, getDataSource, getProgram, getProgramForRow, getProgramLocation, getProgramSelection, setProgramMethods 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, updateObjectMethods 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, stateChangedMethods inherited from class docking.widgets.table.AbstractSortedTableModel
addSortListener, cleanupTableSortState, createSortingContext, getIndexForRowObject, getIndexForRowObject, getPendingSortState, getPrimarySortColumnIndex, getRowIndex, getRowObject, getTableSortState, isSorted, isSortPending, notifyModelSorted, setDefaultTableSortState, setTableSortState, sortCompletedMethods inherited from class docking.widgets.table.AbstractGTableModel
getLastSelectedObjects, isDisposed, refresh, setLastSelectedObjectsMethods inherited from class javax.swing.table.AbstractTableModel
addTableModelListener, findColumn, fireTableCellUpdated, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAtMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface docking.widgets.table.RowObjectTableModel
fireTableDataChanged, getColumnValueForRow, getRowIndex, getRowObjectMethods 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:ThreadedTableModelOverride this to change how filtering is performed. This implementation will do nothing if aTableFilterhas not been set via a call toThreadedTableModel.setTableFilter(TableFilter).- Overrides:
doFilterin 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:ThreadedTableModelThe basic method that all children must implement. This is where children load their data.- Specified by:
doLoadin 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
-