Package ghidra.util.table.field
Class CodeUnitTableColumn
java.lang.Object
docking.widgets.table.AbstractDynamicTableColumn<ProgramLocation,CodeUnitTableCellData,Program>
docking.widgets.table.DynamicTableColumnExtensionPoint<ProgramLocation,CodeUnitTableCellData,Program>
ghidra.util.table.field.ProgramLocationTableColumnExtensionPoint<ProgramLocation,CodeUnitTableCellData>
ghidra.util.table.field.CodeUnitTableColumn
- All Implemented Interfaces:
DynamicTableColumn<ProgramLocation,
,CodeUnitTableCellData, Program> ExtensionPoint
,ProgramBasedDynamicTableColumn<ProgramLocation,
,CodeUnitTableCellData> ProgramLocationTableColumn<ProgramLocation,
CodeUnitTableCellData>
public class CodeUnitTableColumn
extends ProgramLocationTableColumnExtensionPoint<ProgramLocation,CodeUnitTableCellData>
Table column to display
CodeUnit
s-
Field Summary
Fields inherited from class docking.widgets.table.AbstractDynamicTableColumn
FLOATING_POINT_PRECISION_SETTING, FLOATING_POINT_SETTINGS_DEFINITIONS, INTEGER_RADIX_SETTING, INTEGER_SETTINGS_DEFINITIONS, INTEGER_SIGNEDNESS_MODE_SETTING, NO_SETTINGS_DEFINITIONS
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetColumnDisplayName
(Settings settings) Determines the column heading that will be displayed.Determines the unique column heading that may be used to identify a column instance.Returns the optional cell renderer for this column; null if no renderer is used.int
getMaxLines
(Settings settings) Gets the maximum number of text display lines needed for any given cell with the specified settings.getProgramLocation
(ProgramLocation rowObject, Settings settings, Program program, ServiceProvider serviceProvider) Determines an appropriate program location associated with this field for the indicated row object.Returns a list of settings definitions for this field.getValue
(ProgramLocation rowObject, Settings settings, Program data, ServiceProvider serviceProvider) Creates an object that is appropriate for this field (table column) and for the object that is associated with this row of the table.Methods inherited from class docking.widgets.table.AbstractDynamicTableColumn
equals, getColumnClass, getColumnDescription, getColumnPreferredWidth, getComparator, getComparator, getHeaderRenderer, getSupportedRowType, getUniqueIdentifier, hashCode, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface docking.widgets.table.DynamicTableColumn
getColumnClass, getColumnDescription, getColumnPreferredWidth, getComparator, getHeaderRenderer, getSupportedRowType, getUniqueIdentifier
-
Constructor Details
-
CodeUnitTableColumn
public CodeUnitTableColumn()
-
-
Method Details
-
getColumnName
Description copied from interface:DynamicTableColumn
Determines the unique column heading that may be used to identify a column instance. This name must be non-changing and is used to save/restore state information.- Specified by:
getColumnName
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Specified by:
getColumnName
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Returns:
- the field instance name.
-
getColumnDisplayName
Description copied from interface:DynamicTableColumn
Determines the column heading that will be displayed.- Specified by:
getColumnDisplayName
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Overrides:
getColumnDisplayName
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Parameters:
settings
- the settings- Returns:
- the field name to display as the column heading.
-
getValue
public CodeUnitTableCellData getValue(ProgramLocation rowObject, Settings settings, Program data, ServiceProvider serviceProvider) throws IllegalArgumentException Description copied from interface:DynamicTableColumn
Creates an object that is appropriate for this field (table column) and for the object that is associated with this row of the table.- Specified by:
getValue
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Specified by:
getValue
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Parameters:
rowObject
- the object associated with the row in the table.settings
- field settingsdata
- the expected data object, as defined by the DATA_SOURCE typeserviceProvider
- theServiceProvider
associated with the table.- Returns:
- the object for the model to display in the table cell.
- Throws:
IllegalArgumentException
- if the rowObject is not one supported by this class.
-
getProgramLocation
public ProgramLocation getProgramLocation(ProgramLocation rowObject, Settings settings, Program program, ServiceProvider serviceProvider) Description copied from interface:ProgramLocationTableColumn
Determines an appropriate program location associated with this field for the indicated row object. The most probable use is for navigating from the field.- Parameters:
rowObject
- the object associated with the table row.settings
- field settingsprogram
- the program associated with the table.serviceProvider
- the plugin tool associated with the table.- Returns:
- the address associated with the field.
-
getColumnRenderer
Description copied from interface:DynamicTableColumn
Returns the optional cell renderer for this column; null if no renderer is used.This method allows columns to define custom rendering. The interface returned here ensures that the text used for filtering matches what the users sees (via the
GColumnRenderer.getFilterString(Object, Settings)
method).Note: some types should not make use of the aforementioned filter string. These types include the
Number
wrapper types,Date
andEnum
s. (This is because the filtering system works naturally with these types.) SeeGColumnRenderer
.- Specified by:
getColumnRenderer
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Overrides:
getColumnRenderer
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Returns:
- the renderer
-
getSettingsDefinitions
Description copied from interface:DynamicTableColumn
Returns a list of settings definitions for this field.- Specified by:
getSettingsDefinitions
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Overrides:
getSettingsDefinitions
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Returns:
- list of settings definitions for this field.
-
getMaxLines
Description copied from interface:DynamicTableColumn
Gets the maximum number of text display lines needed for any given cell with the specified settings.- Specified by:
getMaxLines
in interfaceDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Overrides:
getMaxLines
in classAbstractDynamicTableColumn<ProgramLocation,
CodeUnitTableCellData, Program> - Parameters:
settings
- field settings- Returns:
- maximum number of lines needed
-