Package ghidra.program.model.data

# Interface DataTypeManagerChangeListener

All Known Implementing Classes:
  `DataTypeManagerChangeListenerAdapter`, `DataTypeManagerChangeListenerHandler`

public interface DataTypeManagerChangeListener
The listener interface for notification of changes to a DataTypeManager

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `categoryAdded(DataTypeManager dtm, CategoryPath path)`
  Notification when category is added.
  `void`
  `categoryMoved(DataTypeManager dtm, CategoryPath oldPath, CategoryPath newPath)`
  Notification when a category is reparented to new category.
  `void`
  `categoryRemoved(DataTypeManager dtm, CategoryPath path)`
  Notification when a category is removed.
  `void`
  `categoryRenamed(DataTypeManager dtm, CategoryPath oldPath, CategoryPath newPath)`
  Notification when category is renamed.
  `void`
  `dataTypeAdded(DataTypeManager dtm, DataTypePath path)`
  Notification when a data type is added to a category
  `void`
  `dataTypeChanged(DataTypeManager dtm, DataTypePath path)`
  Notification when data type is changed.
  `void`
  `dataTypeMoved(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath)`
  Notification when a data type is moved.
  `void`
  `dataTypeRemoved(DataTypeManager dtm, DataTypePath path)`
  Notification when data type is removed.
  `void`
  `dataTypeRenamed(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath)`
  Notification when data type is renamed.
  `void`
  `dataTypeReplaced(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath, DataType newDataType)`
  Notification when a data type has been replaced.
  `void`
  `favoritesChanged(DataTypeManager dtm, DataTypePath path, boolean isFavorite)`
  Notification the favorite status of a datatype has changed
  `void`
  `programArchitectureChanged(DataTypeManager dataTypeManager)`
  Notification that the program architecture associated with the specified dataTypeManager has changed.
  `void`
  `restored(DataTypeManager dataTypeManager)`
  Notification that the specified datatype manager has been restored to a previous state.
  `void`
  `sourceArchiveAdded(DataTypeManager dataTypeManager, SourceArchive sourceArchive)`
  Notification that the information for a source archive has been added.
  `void`
  `sourceArchiveChanged(DataTypeManager dataTypeManager, SourceArchive sourceArchive)`
  Notification that the information for a particular source archive has changed.

- ## Method Details

  - ### categoryAdded

    void categoryAdded(DataTypeManager dtm, CategoryPath path)
    Notification when category is added.
    Parameters:
      `dtm` - the dataType manager
      `path` - the categoryPath of the newly added category.

  - ### categoryRemoved

    void categoryRemoved(DataTypeManager dtm, CategoryPath path)
    Notification when a category is removed.
    Parameters:
      `dtm` - data type manager associated with the category
      `path` - the categoryPath of the category that was removed.

  - ### categoryRenamed

    void categoryRenamed(DataTypeManager dtm, CategoryPath oldPath, CategoryPath newPath)
    Notification when category is renamed.
    Parameters:
      `dtm` - data type manager associated with the category
      `oldPath` - the path of the category before it was renamed.
      `newPath` - the path of the category after it was renamed. This path will only differ in the last segment of the path.

  - ### categoryMoved

    void categoryMoved(DataTypeManager dtm, CategoryPath oldPath, CategoryPath newPath)
    Notification when a category is reparented to new category.
    Parameters:
      `dtm` - data type manager associated with the category
      `oldPath` - the path of the category before it was moved.
      `newPath` - the path of the category after it was moved.

  - ### dataTypeAdded

    void dataTypeAdded(DataTypeManager dtm, DataTypePath path)
    Notification when a data type is added to a category
    Parameters:
      `dtm` - data type manager for the given category paths.
      `path` - the DataTypePath of the newly added datatype.

  - ### dataTypeRemoved

    void dataTypeRemoved(DataTypeManager dtm, DataTypePath path)
    Notification when data type is removed.
    Parameters:
      `dtm` - data type manager for the given category paths.
      `path` - the DataTypePath of the removed datatype.

  - ### dataTypeRenamed

    void dataTypeRenamed(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath)
    Notification when data type is renamed.
    Parameters:
      `dtm` - data type manager for the given category paths.
      `oldPath` - the path of the datatype before it was renamed.
      `newPath` - the path of the datatype after it was renamed.

  - ### dataTypeMoved

    void dataTypeMoved(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath)
    Notification when a data type is moved.
    Parameters:
      `dtm` - data type manager for the given category paths.
      `oldPath` - the path of the datatype before it was moved.
      `newPath` - the path of the datatype after it was moved.

  - ### dataTypeChanged

    void dataTypeChanged(DataTypeManager dtm, DataTypePath path)
    Notification when data type is changed.
    Parameters:
      `dtm` - data type manager for the given category paths.
      `path` - the path of the datatype that changed.

  - ### dataTypeReplaced

    void dataTypeReplaced(DataTypeManager dtm, DataTypePath oldPath, DataTypePath newPath, DataType newDataType)
    Notification when a data type has been replaced.
    Parameters:
      `dtm` - data type manager for the given category paths.
      `oldPath` - the path of the datatype that was replaced.
      `newPath` - the path of the datatype that replaced the existing datatype.
      `newDataType` - the new dataType that replaced the old dataType

  - ### favoritesChanged

    void favoritesChanged(DataTypeManager dtm, DataTypePath path, boolean isFavorite)
    Notification the favorite status of a datatype has changed
    Parameters:
      `dtm` - data type manager for the given category paths.
      `path` - the DataTypePath of the datatype had its favorite status changed.
      `isFavorite` - reflects the current favorite status of the datatype.

  - ### sourceArchiveChanged

    void sourceArchiveChanged(DataTypeManager dataTypeManager, SourceArchive sourceArchive)
    Notification that the information for a particular source archive has changed. Typically, this would be because it was renamed or moved.
    Parameters:
      `dataTypeManager` - data type manager referring to the given source information.
      `sourceArchive` - the changed data type source information

  - ### sourceArchiveAdded

    void sourceArchiveAdded(DataTypeManager dataTypeManager, SourceArchive sourceArchive)
    Notification that the information for a source archive has been added. This happens when a data type from the indicated source archive is added to this data type manager.
    Parameters:
      `dataTypeManager` - data type manager referring to the given source information.
      `sourceArchive` - the new data type source information

  - ### programArchitectureChanged

    void programArchitectureChanged(DataTypeManager dataTypeManager)
    Notification that the program architecture associated with the specified dataTypeManager has changed.
    Parameters:
      `dataTypeManager` - data type manager referring to the given source information.

  - ### restored

    void restored(DataTypeManager dataTypeManager)
    Notification that the specified datatype manager has been restored to a previous state. NOTE: this notification may duplicate the `DomainObjectEvent.RESTORED` employed by `DataTypeManagerDomainObject` cases.
    Parameters:
      `dataTypeManager` - data type manager that has been restored