Package docking.widgets.table
Interface DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>
- Type Parameters:
ROW_TYPE
- The row object class supported by this columnCOLUMN_TYPE
- The column object class supported by this columnDATA_SOURCE
- The object class type that will be passed to seegetValue(ROW_TYPE, Settings, DATA_SOURCE, ServiceProvider)
- All Known Subinterfaces:
ProgramBasedDynamicTableColumn<ROW_TYPE,
,COLUMN_TYPE> ProgramLocationTableColumn<ROW_TYPE,
COLUMN_TYPE>
- All Known Implementing Classes:
AbstractDynamicTableColumn
,AbstractDynamicTableColumnStub
,AbstractProgramBasedDynamicTableColumn
,AbstractProgramLocationTableColumn
,AbstractReferenceBytesTableColumn
,AbstractReferencePreviewTableColumn
,AddressSizeProjectDataColumn
,AddressTableColumn
,AddressTableDataTableColumn
,AddressTableLengthTableColumn
,BinaryColumnAdapter
,BooleanColumnAdapter
,ByteColumnAdapter
,ByteCountProgramLocationBasedTableColumn
,BytesTableColumn
,CodeUnitTableColumn
,ColumnDisplayDynamicTableColumnAdapter
,CompilerProjectDataColumn
,CreatedWithProjectDataColumn
,CreationDateProjectDataColumn
,DomainFileSizeProjectDataColumn
,DynamicTableColumnExtensionPoint
,EndianProjectDataColumn
,EOLCommentTableColumn
,ExecutablePathProjectDataColumn
,FormatProjectDataColumn
,FunctionBodySizeTableColumn
,FunctionCallingConventionTableColumn
,FunctionNameTableColumn
,FunctionParameterCountTableColumn
,FunctionPurgeTableColumn
,FunctionSignatureTableColumn
,FunctionTagTableColumn
,IntegerColumnAdapter
,IsFunctionCustomStorageTableColumn
,IsFunctionInlineTableColumn
,IsFunctionNonReturningTableColumn
,IsFunctionVarargsTableColumn
,LabelTableColumn
,LanguageProjectDataColumn
,LongColumnAdapter
,MappedProgramLocationTableColumn
,MappedTableColumn
,Md5ProjectDataColumn
,MemoryMatchTableModel.MatchBytesColumn
,MemoryMatchTableModel.MatchValueColumn
,MemorySectionProgramLocationBasedTableColumn
,MemoryTypeProgramLocationBasedTableColumn
,NamespaceTableColumn
,OffcutReferenceCountToAddressTableColumn
,PreviewTableColumn
,ProcessorProjectDataColumn
,ProgramBasedDynamicTableColumnExtensionPoint
,ProgramLocationTableColumnExtensionPoint
,ProgramMappedTableColumn
,ProjectDataColumn
,ReferenceCountToAddressTableColumn
,ReferenceFromAddressTableColumn
,ReferenceFromBytesTableColumn
,ReferenceFromFunctionTableColumn
,ReferenceFromLabelTableColumn
,ReferenceFromPreviewTableColumn
,ReferenceToAddressTableColumn
,ReferenceToBytesTableColumn
,ReferenceToPreviewTableColumn
,ReferenceTypeTableColumn
,ShortColumnAdapter
,SourceTypeTableColumn
,StringColumnAdapter
,SymbolTypeTableColumn
public interface DynamicTableColumn<ROW_TYPE,COLUMN_TYPE,DATA_SOURCE>
The root interface for defining columns for
DynamicColumnTableModel
s. The class allows
you to create objects for tables that know how to give a column value for a given row.-
Method Summary
Modifier and TypeMethodDescriptionDetermines the class of object that is associated with this field (column).Returns a description of this column.getColumnDisplayName
(Settings settings) Determines the column heading that will be displayed.Determines the unique column heading that may be used to identify a column instance.int
Returns the preferred width for this column.Returns the optional cell renderer for this column; null if no renderer is used.getComparator
(DynamicColumnTableModel<?> model, int columnIndex) If implemented, will return a comparator that knows how to sort values for this column.Returns the optional header 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.Returns a list of settings definitions for this field.Returns the single class type of the data that this table field can use to generate columnar data.Returns a value that is unique for this table column.getValue
(ROW_TYPE rowObject, Settings settings, DATA_SOURCE 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.
-
Method Details
-
getColumnName
String getColumnName()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.- Returns:
- the field instance name.
-
getColumnClass
Class<COLUMN_TYPE> getColumnClass()Determines the class of object that is associated with this field (column).- Returns:
- the column class
-
getColumnPreferredWidth
int getColumnPreferredWidth()Returns the preferred width for this column. Column should either return a valid positive preferred size or -1.- Returns:
- the preferred width for this column.
-
getSupportedRowType
Returns the single class type of the data that this table field can use to generate columnar data.- Returns:
- the single class type of the data that this table field can use to generate columnar data.
-
getValue
COLUMN_TYPE getValue(ROW_TYPE rowObject, Settings settings, DATA_SOURCE data, ServiceProvider serviceProvider) throws IllegalArgumentException Creates an object that is appropriate for this field (table column) and for the object that is associated with this row of the table.- 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.
-
getColumnRenderer
GColumnRenderer<COLUMN_TYPE> getColumnRenderer()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
.- Returns:
- the renderer
-
getHeaderRenderer
GTableHeaderRenderer getHeaderRenderer()Returns the optional header renderer for this column; null if no renderer is used.This method allows columns to define custom header rendering.
- Returns:
- the renderer
-
getSettingsDefinitions
SettingsDefinition[] getSettingsDefinitions()Returns a list of settings definitions for this field.- Returns:
- list of settings definitions for this field.
-
getMaxLines
Gets the maximum number of text display lines needed for any given cell with the specified settings.- Parameters:
settings
- field settings- Returns:
- maximum number of lines needed
-
getColumnDisplayName
Determines the column heading that will be displayed.- Parameters:
settings
- the settings- Returns:
- the field name to display as the column heading.
-
getColumnDescription
String getColumnDescription()Returns a description of this column. This may be used as a tooltip for the column header- Returns:
- a description of this column. This may be used as a tooltip for the column header.
-
getUniqueIdentifier
String getUniqueIdentifier()Returns a value that is unique for this table column. This is different than getting the display name, which may be shared by different columns.- Returns:
- the identifier
-
getComparator
If implemented, will return a comparator that knows how to sort values for this column. Implementors should returnnull
if they do not wish to provider a comparator- Returns:
- the comparator
-