Package ghidra.app.util.query
Class AlignedObjectBasedPreviewTableModel<ROW_TYPE>
- java.lang.Object
-
- javax.swing.table.AbstractTableModel
-
- docking.widgets.table.AbstractGTableModel<T>
-
- docking.widgets.table.AbstractSortedTableModel<ROW_TYPE>
-
- docking.widgets.table.GDynamicColumnTableModel<ROW_OBJECT,DATA_SOURCE>
-
- 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
,java.io.Serializable
,java.util.EventListener
,javax.swing.event.ChangeListener
,javax.swing.table.TableModel
public abstract class AlignedObjectBasedPreviewTableModel<ROW_TYPE> extends AddressBasedTableModel<ROW_TYPE>
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class docking.widgets.table.threaded.ThreadedTableModel
ThreadedTableModel.IncrementalLoadJobListener
-
-
Field Summary
Fields Modifier and Type Field Description protected int
alignment
protected int[]
filteredIndices
-
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
WIDTH_UNDEFINED
-
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
Constructors Modifier Constructor Description protected
AlignedObjectBasedPreviewTableModel(java.lang.String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor)
protected
AlignedObjectBasedPreviewTableModel(java.lang.String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor, boolean loadIncrementally)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addAlignmentListener(AddressAlignmentListener alignmentListener)
java.util.List<ROW_TYPE>
doFilter(java.util.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
getAlignment()
protected abstract Address
getAlignmentAddress(java.util.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
getDataSource, getProgram, getProgramForRow, setProgram
-
Methods inherited from class docking.widgets.table.threaded.ThreadedTableModel
addInitialLoadListener, addObject, addThreadedTableModelListener, cancelAllUpdates, clearData, createIncrementalLoadJob, createSortComparator, dispose, fireTableChanged, getAllData, getModelData, getModelIndex, getModelRow, getName, getRowCount, getRowObjects, getSortedColumnClass, getTableFilter, getUnfilteredData, getUnfilteredIndexForRowObject, getUnfilteredRowCount, getUnfilteredRowObjectForIndex, getValueAt, getViewIndex, getViewRow, hasFitler, initializeSorting, isBusy, isFiltered, isLoadIncrementally, reFilter, reload, removeObject, removeThreadedTableModelListener, reSort, setIncrementalTaskMonitor, setModelState, setTableFilter, sort, updateNow, updateObject
-
Methods inherited from class docking.widgets.table.GDynamicColumnTableModel
addTableColumn, addTableColumn, addTableColumns, createSortComparatorForColumn, getColumn, getColumnClass, getColumnCount, getColumnDescription, getColumnDisplayName, getColumnIndex, getColumnIndex, getColumnName, getColumnSettings, getColumnSettingsDefinitions, getColumnValueForRow, getDefaultColumnCount, getMaxLines, getPreferredColumnWidth, getRenderer, getUniqueIdentifier, isDefaultColumn, isSortable, isVisibleByDefault, loadDiscoveredTableColumns, removeTableColumn, removeTableColumns, setAllColumnSettings, setColumnSettings, stateChanged
-
Methods inherited from class docking.widgets.table.AbstractSortedTableModel
addSortListener, createSortingContext, getIndexForRowObject, getIndexForRowObject, getPendingSortState, getPrimarySortColumnIndex, getRowIndex, getRowObject, getTableSortState, isSorted, isSortPending, notifyModelSorted, setDefaultTableSortState, setTableSortState, sortCompleted
-
Methods inherited from class docking.widgets.table.AbstractGTableModel
getLastSelectedObjects, 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
-
-
-
-
Constructor Detail
-
AlignedObjectBasedPreviewTableModel
protected AlignedObjectBasedPreviewTableModel(java.lang.String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor)
-
AlignedObjectBasedPreviewTableModel
protected AlignedObjectBasedPreviewTableModel(java.lang.String modelName, ServiceProvider provider, Program prog, TaskMonitor monitor, boolean loadIncrementally)
-
-
Method Detail
-
addAlignmentListener
public void addAlignmentListener(AddressAlignmentListener alignmentListener)
-
removeAlignmentListener
public void removeAlignmentListener(AddressAlignmentListener alignmentListener)
-
getAlignment
public int getAlignment()
-
setAlignment
public void setAlignment(int alignment)
-
doFilter
public java.util.List<ROW_TYPE> doFilter(java.util.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 a TableFilter 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
-
-