Package ghidra.app.util.viewer.field
Class VariableXRefFieldFactory
- java.lang.Object
-
- ghidra.app.util.viewer.field.FieldFactory
-
- ghidra.app.util.viewer.field.XRefFieldFactory
-
- ghidra.app.util.viewer.field.VariableXRefFieldFactory
-
- All Implemented Interfaces:
ExtensionPoint
- Direct Known Subclasses:
VariableXRefHeaderFieldFactory
public class VariableXRefFieldFactory extends XRefFieldFactory
Variable Cross-reference Field Factory
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ghidra.app.util.viewer.field.XRefFieldFactory
XRefFieldFactory.SORT_CHOICE
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
FIELD_NAME
-
Fields inherited from class ghidra.app.util.viewer.field.XRefFieldFactory
delim, displayBlockName, displayLocalNamespace, displayNonLocalNamespace, displayRefType, groupByFunction, localPrefixText, maxXRefs, offcutColor, otherColor, readColor, sortChoice, typeComparator, useLocalPrefixOverride, writeColor
-
Fields inherited from class ghidra.app.util.viewer.field.FieldFactory
baseFont, color, colorOptionName, DEFAULT_FIELD_FONT, displayOptions, enabled, FONT_OPTION_NAME, hlProvider, model, name, startX, style, styleOptionName, underlineColor, width
-
-
Constructor Summary
Constructors Modifier Constructor Description VariableXRefFieldFactory()
ConstructorVariableXRefFieldFactory(FieldFormatModel model, HighlightProvider hlProvider, Options displayOptions, ToolOptions fieldOptions)
Constructorprotected
VariableXRefFieldFactory(java.lang.String name)
protected
VariableXRefFieldFactory(java.lang.String name, FieldFormatModel model, HighlightProvider hlProvider, Options displayOptions, ToolOptions fieldOptions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
acceptsType(int category, java.lang.Class<?> proxyObjectClass)
Used to specify which format models this field can belong to.ListingField
getField(ProxyObj<?> proxy, int varWidth)
Generates a Field based on the given information.FieldLocation
getFieldLocation(ListingField bf, java.math.BigInteger index, int fieldNum, ProgramLocation loc)
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)
.ProgramLocation
getProgramLocation(int row, int col, ListingField bf)
Returns the Program location for the given object, row, col, and groupPathFieldFactory
newInstance(FieldFormatModel formatModel, HighlightProvider 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.-
Methods inherited from class ghidra.app.util.viewer.field.XRefFieldFactory
createFieldLocation, createRefTypeAttributedString, displayOptionsChanged, fieldOptionsChanged, getBlockName, getDefaultColor, getPrefix, getProgram, getXRefLocation
-
Methods inherited from class ghidra.app.util.viewer.field.FieldFactory
getFieldModel, getFieldName, getFieldText, getMetrics, getMetrics, getStartX, getWidth, hasSamePath, initDisplayOptions, isEnabled, optionsChanged, servicesChanged, setEnabled, setStartX, setWidth
-
-
-
-
Field Detail
-
FIELD_NAME
public static final java.lang.String FIELD_NAME
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
VariableXRefFieldFactory
public VariableXRefFieldFactory()
Constructor
-
VariableXRefFieldFactory
protected VariableXRefFieldFactory(java.lang.String name)
-
VariableXRefFieldFactory
public VariableXRefFieldFactory(FieldFormatModel model, HighlightProvider hlProvider, Options displayOptions, ToolOptions fieldOptions)
Constructor- Parameters:
model
- the model that the field belongs to.hlProvider
- the HighlightProvider.displayOptions
- the Options for display properties.fieldOptions
- the Options for field specific properties.
-
VariableXRefFieldFactory
protected VariableXRefFieldFactory(java.lang.String name, FieldFormatModel model, HighlightProvider hlProvider, Options displayOptions, ToolOptions fieldOptions)
-
-
Method Detail
-
getField
public ListingField getField(ProxyObj<?> proxy, int varWidth)
Description copied from class:FieldFactory
Generates a Field based on the given information.- Overrides:
getField
in classXRefFieldFactory
- 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.
-
getFieldLocation
public FieldLocation getFieldLocation(ListingField bf, java.math.BigInteger index, int fieldNum, ProgramLocation loc)
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.- Overrides:
getFieldLocation
in classXRefFieldFactory
- 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.loc
- the ProgramLocation to be converted into a FieldLocation.
-
getProgramLocation
public ProgramLocation getProgramLocation(int row, int col, ListingField bf)
Description copied from class:FieldFactory
Returns the Program location for the given object, row, col, and groupPath- Overrides:
getProgramLocation
in classXRefFieldFactory
- Parameters:
row
- the row within this fieldcol
- the col on the given row within this field.bf
- the ListingField containing the cursor.
-
acceptsType
public boolean acceptsType(int category, java.lang.Class<?> proxyObjectClass)
Description copied from class:FieldFactory
Used to specify which format models this field can belong to.- Overrides:
acceptsType
in classXRefFieldFactory
- 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, HighlightProvider 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.- Overrides:
newInstance
in classXRefFieldFactory
- 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.
-
-