Package ghidra.app.util.viewer.field
Class AbstractOffsetFieldFactory
java.lang.Object
ghidra.app.util.viewer.field.FieldFactory
ghidra.app.util.viewer.field.AbstractOffsetFieldFactory
- All Implemented Interfaces:
ExtensionPoint
- Direct Known Subclasses:
FileOffsetFieldFactory,FunctionOffsetFieldFactory,ImagebaseOffsetFieldFactory,MemoryBlockOffsetFieldFactory
Generates Offset fields
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final GColorprotected Stringprotected Stringprotected booleanprotected booleanFields 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
ConstructorsModifierConstructorDescriptionAbstractOffsetFieldFactory(String offsetDescription) Creates a newAbstractOffsetFieldFactoryprotectedAbstractOffsetFieldFactory(String offsetDescription, String nameDescription, FieldFormatModel model, ListingHighlightProvider hlProvider, Options displayOptions, Options fieldOptions) Creates a newAbstractOffsetFieldFactory -
Method Summary
Modifier and TypeMethodDescriptionbooleanacceptsType(int category, Class<?> proxyObjectClass) Used to specify which format models this field can belong to.voidfieldOptionsChanged(Options options, String optionsName, Object oldValue, Object newValue) Notifications that the field options changed.Generates a Field based on the given information.getFieldLocation(ListingField lf, 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).abstract OffsetFieldTypeGets theoffset typeabstract StringgetOffsetValue(CodeUnit codeUnit) Gets the offset valuegetProgramLocation(int row, int col, ListingField lf) Returns the Program location for the given object, row, col, and groupPathMethods inherited from class ghidra.app.util.viewer.field.FieldFactory
displayOptionsChanged, getFieldModel, getFieldName, getFieldText, getMetrics, getMetrics, getStartX, getWidth, hasSamePath, initDisplayOptions, initFieldOptions, isEnabled, newInstance, servicesChanged, setEnabled, setStartX, setWidth, simplifyTemplates, supportsLocation
-
Field Details
-
COLOR
-
showName
protected boolean showName -
useHex
protected boolean useHex -
fieldName
-
groupTitle
-
-
Constructor Details
-
AbstractOffsetFieldFactory
Creates a newAbstractOffsetFieldFactory- Parameters:
offsetDescription- A description of the offset
-
AbstractOffsetFieldFactory
protected AbstractOffsetFieldFactory(String offsetDescription, String nameDescription, FieldFormatModel model, ListingHighlightProvider hlProvider, Options displayOptions, Options fieldOptions) Creates a newAbstractOffsetFieldFactory- Parameters:
offsetDescription- A description of the field offsetnameDescription- A description of the name that can get prepended to the field offsetmodel- the model that the field belongs to.hlProvider- the HightLightStringProvider.displayOptions- the Options for display properties.fieldOptions- the Options for field specific properties.
-
-
Method Details
-
getOffsetValue
Gets the offset value- Parameters:
codeUnit- TheCodeUnit- Returns:
- The offset value
-
getOffsetFieldType
Gets theoffset type- Returns:
- the
offset type
-
getField
Description copied from class:FieldFactoryGenerates a Field based on the given information.- Specified by:
getFieldin 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.
-
fieldOptionsChanged
public void fieldOptionsChanged(Options options, String optionsName, Object oldValue, Object newValue) Description copied from class:FieldFactoryNotifications that the field options changed.- Overrides:
fieldOptionsChangedin classFieldFactory- Parameters:
options- the Field Options object that changed.optionsName- the name of the property that changed.oldValue- the old value of the property.newValue- the new value of the property.
-
getFieldLocation
public FieldLocation getFieldLocation(ListingField lf, BigInteger index, int fieldNum, ProgramLocation loc) Description copied from class:FieldFactoryReturn 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:
getFieldLocationin classFieldFactory- Parameters:
lf- 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.- Returns:
- the location.
-
getProgramLocation
Description copied from class:FieldFactoryReturns the Program location for the given object, row, col, and groupPath- Specified by:
getProgramLocationin classFieldFactory- Parameters:
row- the row within this fieldcol- the col on the given row within this field.lf- the ListingField containing the cursor.- Returns:
- the location.
-
acceptsType
Description copied from class:FieldFactoryUsed to specify which format models this field can belong to.- Specified by:
acceptsTypein 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.
-