Class SpacerFieldFactory

java.lang.Object
ghidra.app.util.viewer.field.FieldFactory
ghidra.app.util.viewer.field.SpacerFieldFactory
All Implemented Interfaces:
ExtensionPoint

public class SpacerFieldFactory extends FieldFactory
Generates Spacer Fields.
  • Field Details

  • 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

      public void setText(String text)
      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

      public String getText()
      Returns the spacer field's text
    • getField

      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.
    • getFieldText

      public String getFieldText()
      Description copied from class: FieldFactory
      Returns a description of the fields generated by this factory.
      Overrides:
      getFieldText in class FieldFactory
      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's FieldFactory.getFieldLocation(ListingField, BigInteger, int, ProgramLocation). Each FieldFactory should generate and process a unique ProgramLocation class.
      Specified by:
      getFieldLocation in class FieldFactory
      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

      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
      Specified by:
      getProgramLocation in class FieldFactory
      Parameters:
      row - the row within this field
      col - the col on the given row within this field.
      bf - the ListingField containing the cursor.
      Returns:
      the location.
    • getStringToHighlight

      public String getStringToHighlight(ListingTextField bf, int row, int col, ProgramLocation loc)
      Returns the string to highlight
      Parameters:
      bf - the ListingTextField
      row - the row in the field
      col - the column in the field
      loc - the programLocation.
    • acceptsType

      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.
    • 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 class FieldFactory
      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