Package ghidra.app.util.viewer.field
Class SpacerFieldFactory
java.lang.Object
ghidra.app.util.viewer.field.FieldFactory
ghidra.app.util.viewer.field.SpacerFieldFactory
- All Implemented Interfaces:
ExtensionPoint
Generates Spacer Fields.
-
Field Summary
Fields inherited from class ghidra.app.util.viewer.field.FieldFactory
BASE_LISTING_FONT_ID, baseFont, colorOptionName, enabled, FONT_OPTION_NAME, hlProvider, model, name, startX, style, styleOptionName, width
-
Constructor Summary
ConstructorDescriptionConstructorSpacerFieldFactory
(String text, FieldFormatModel model, ListingHighlightProvider hsProvider, Options displayOptions, Options fieldOptions) Constructor -
Method Summary
Modifier and TypeMethodDescriptionboolean
acceptsType
(int category, Class<?> proxyObjectClass) Used to specify which format models this field can belong to.Generates a Field based on the given information.getFieldLocation
(ListingField bf, BigInteger index, int fieldNum, ProgramLocation programLoc) Return a FieldLocation that corresponds to the given index, fieldNum, and ProgramLocation IF and ONLY IF the given programLocation is the type generated by this class'sFieldFactory.getFieldLocation(ListingField, BigInteger, int, ProgramLocation)
.Returns a description of the fields generated by this factory.getProgramLocation
(int row, int col, ListingField bf) Returns the Program location for the given object, row, col, and groupPathgetStringToHighlight
(ListingTextField bf, int row, int col, ProgramLocation loc) Returns the string to highlightgetText()
Returns the spacer field's textnewInstance
(FieldFormatModel formatModel, ListingHighlightProvider provider, ToolOptions options, ToolOptions fieldOptions) Returns a new instance of this FieldFactory that can be used to generate fields instead of being used as a prototype.void
setText()
Sets the literal text to display in this field.void
Sets the text for the spacer fieldMethods inherited from class ghidra.app.util.viewer.field.FieldFactory
displayOptionsChanged, fieldOptionsChanged, getFieldModel, getFieldName, getMetrics, getMetrics, getStartX, getWidth, hasSamePath, initDisplayOptions, initFieldOptions, isEnabled, servicesChanged, setEnabled, setStartX, setWidth, simplifyTemplates, supportsLocation
-
Field Details
-
FIELD_NAME
- See Also:
-
-
Constructor Details
-
SpacerFieldFactory
public SpacerFieldFactory()Constructor -
SpacerFieldFactory
public SpacerFieldFactory(String text, FieldFormatModel model, ListingHighlightProvider hsProvider, Options displayOptions, Options fieldOptions) Constructor- Parameters:
text
- The text to display in the field.model
- The Field model that will use this Address factory.hsProvider
- the HightLightProvider.displayOptions
- the Options for display properties.fieldOptions
- the Options for field specific properties.
-
-
Method Details
-
setText
Sets the text for the spacer field- Parameters:
text
- the text to display in the listing
-
setText
public void setText()Sets the literal text to display in this field. -
getText
Returns the spacer field's text -
getField
Description copied from class:FieldFactory
Generates a Field based on the given information.- Specified by:
getField
in classFieldFactory
- Parameters:
proxy
- The object that the generated field will report some information about.varWidth
- the additional distance along the x axis to place the generated field.- Returns:
- the newly generated FactoryField that shows some property or information about the given object.
-
getFieldText
Description copied from class:FieldFactory
Returns a description of the fields generated by this factory.- Overrides:
getFieldText
in classFieldFactory
- Returns:
- the text.
-
getFieldLocation
public FieldLocation getFieldLocation(ListingField bf, BigInteger index, int fieldNum, ProgramLocation programLoc) Description copied from class:FieldFactory
Return a FieldLocation that corresponds to the given index, fieldNum, and ProgramLocation IF and ONLY IF the given programLocation is the type generated by this class'sFieldFactory.getFieldLocation(ListingField, BigInteger, int, ProgramLocation)
. Each FieldFactory should generate and process a unique ProgramLocation class.- Specified by:
getFieldLocation
in classFieldFactory
- Parameters:
bf
- the ListingField at the current cursor.index
- the line index (corresponds to an address)fieldNum
- the index of field within the layout to try and get a FieldLocation.programLoc
- the ProgramLocation to be converted into a FieldLocation.- Returns:
- the location.
-
getProgramLocation
Description copied from class:FieldFactory
Returns the Program location for the given object, row, col, and groupPath- Specified by:
getProgramLocation
in classFieldFactory
- Parameters:
row
- the row within this fieldcol
- the col on the given row within this field.bf
- the ListingField containing the cursor.- Returns:
- the location.
-
getStringToHighlight
Returns the string to highlight- Parameters:
bf
- the ListingTextFieldrow
- the row in the fieldcol
- the column in the fieldloc
- the programLocation.
-
acceptsType
Description copied from class:FieldFactory
Used to specify which format models this field can belong to.- Specified by:
acceptsType
in classFieldFactory
- Parameters:
category
- the category for this fieldproxyObjectClass
- the type of proxy object used by this field- Returns:
- true if this class accepts the given category.
-
newInstance
public FieldFactory newInstance(FieldFormatModel formatModel, ListingHighlightProvider provider, ToolOptions options, ToolOptions fieldOptions) Description copied from class:FieldFactory
Returns a new instance of this FieldFactory that can be used to generate fields instead of being used as a prototype.- Specified by:
newInstance
in classFieldFactory
- Parameters:
formatModel
- the model that the field belongs to.provider
- the HightLightProvider.options
- the Options for display properties.fieldOptions
- the Options for field specific properties.- Returns:
- the factory
-