Class AbstractReferenceBytesTableColumn

    • Constructor Detail

      • AbstractReferenceBytesTableColumn

        public AbstractReferenceBytesTableColumn()
    • Method Detail

      • getAddress

        protected abstract Address getAddress​(ghidra.app.plugin.core.analysis.ReferenceAddressPair pair)
      • getColumnNamePrefix

        protected abstract java.lang.String getColumnNamePrefix()
      • getValue

        public java.lang.Byte[] getValue​(ghidra.app.plugin.core.analysis.ReferenceAddressPair rowObject,
                                         Settings settings,
                                         Program pgm,
                                         ServiceProvider serviceProvider)
                                  throws java.lang.IllegalArgumentException
        Description copied from interface: DynamicTableColumn
        Creates an object that is appropriate for this field (table column) and for the object that is associated with this row of the table.
        Specified by:
        getValue in interface DynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Specified by:
        getValue in class AbstractDynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Parameters:
        rowObject - the object associated with the row in the table.
        settings - field settings
        pgm - the expected data object, as defined by the DATA_SOURCE type
        serviceProvider - the ServiceProvider associated with the table.
        Returns:
        the object for the model to display in the table cell.
        Throws:
        java.lang.IllegalArgumentException - if the rowObject is not one supported by this class.
      • getProgramLocation

        public ProgramLocation getProgramLocation​(ghidra.app.plugin.core.analysis.ReferenceAddressPair rowObject,
                                                  Settings settings,
                                                  Program program,
                                                  ServiceProvider serviceProvider)
        Description copied from interface: ProgramLocationTableColumn
        Determines an appropriate program location associated with this field for the indicated row object. The most probable use is for navigating from the field.
        Parameters:
        rowObject - the object associated with the table row.
        settings - field settings
        program - the program associated with the table.
        serviceProvider - the plugin tool associated with the table.
        Returns:
        the address associated with the field.
      • getMaxLines

        public int getMaxLines​(Settings settings)
        Description copied from interface: DynamicTableColumn
        Gets the maximum number of text display lines needed for any given cell with the specified settings.
        Specified by:
        getMaxLines in interface DynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Overrides:
        getMaxLines in class AbstractDynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Parameters:
        settings - field settings
        Returns:
        maximum number of lines needed
      • getColumnRenderer

        public GColumnRenderer<java.lang.Byte[]> getColumnRenderer()
        Description copied from interface: DynamicTableColumn
        Returns the optional cell renderer for this column; null if no renderer is used.

        This method allows columns to define custom rendering. The interface returned here ensures that the text used for filtering matches what the users sees (via the GColumnRenderer.getFilterString(Object, Settings) method).

        Note: some types should not make use of the aforementioned filter string. These types include the Number wrapper types, Date and Enums. (This is because the filtering system works naturally with these types.) See GColumnRenderer.

        Specified by:
        getColumnRenderer in interface DynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Overrides:
        getColumnRenderer in class AbstractDynamicTableColumn<ghidra.app.plugin.core.analysis.ReferenceAddressPair,​java.lang.Byte[],​Program>
        Returns:
        the renderer