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

public abstract class AbstractOffsetFieldFactory extends FieldFactory
Generates Offset fields
  • Field Details Link icon

    • COLOR Link icon

      public static final GColor COLOR
    • showName Link icon

      protected boolean showName
    • useHex Link icon

      protected boolean useHex
    • fieldName Link icon

      protected String fieldName
    • groupTitle Link icon

      protected String groupTitle
  • Constructor Details Link icon

    • AbstractOffsetFieldFactory Link icon

      public AbstractOffsetFieldFactory(String offsetDescription)
      Parameters:
      offsetDescription - A description of the offset
    • AbstractOffsetFieldFactory Link icon

      protected AbstractOffsetFieldFactory(String offsetDescription, String nameDescription, FieldFormatModel model, ListingHighlightProvider hlProvider, Options displayOptions, Options fieldOptions)
      Parameters:
      offsetDescription - A description of the field offset
      nameDescription - A description of the name that can get prepended to the field offset
      model - 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 Link icon

    • getOffsetValue Link icon

      public abstract String getOffsetValue(CodeUnit codeUnit)
      Gets the offset value
      Parameters:
      codeUnit - The CodeUnit
      Returns:
      The offset value
    • getOffsetFieldType Link icon

      public abstract OffsetFieldType getOffsetFieldType()
      Gets the offset type
      Returns:
      the offset type
    • getField Link icon

      public ListingField getField(ProxyObj<?> proxy, int varWidth)
      Description copied from class: FieldFactory
      Generates a Field based on the given information.
      Specified by:
      getField in class FieldFactory
      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 Link icon

      public void fieldOptionsChanged(Options options, String optionsName, Object oldValue, Object newValue)
      Description copied from class: FieldFactory
      Notifications that the field options changed.
      Overrides:
      fieldOptionsChanged in class FieldFactory
      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 Link icon

      public FieldLocation getFieldLocation(ListingField lf, 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's FieldFactory.getFieldLocation(ListingField, BigInteger, int, ProgramLocation). Each FieldFactory should generate and process a unique ProgramLocation class.
      Specified by:
      getFieldLocation in class FieldFactory
      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 Link icon

      public ProgramLocation getProgramLocation(int row, int col, ListingField lf)
      Description copied from class: FieldFactory
      Returns the Program location for the given object, row, col, and groupPath
      Specified by:
      getProgramLocation in class FieldFactory
      Parameters:
      row - the row within this field
      col - the col on the given row within this field.
      lf - the ListingField containing the cursor.
      Returns:
      the location.
    • acceptsType Link icon

      public boolean acceptsType(int category, Class<?> proxyObjectClass)
      Description copied from class: FieldFactory
      Used to specify which format models this field can belong to.
      Specified by:
      acceptsType in class FieldFactory
      Parameters:
      category - the category for this field
      proxyObjectClass - the type of proxy object used by this field
      Returns:
      true if this class accepts the given category.