Open 3D Engine AzToolsFramework API Reference 25.05.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AzToolsFramework::Prefab::PrefabUndoInstanceLink Class Reference

handles link changes on instances More...

#include <PrefabUndo.h>

Inherits AzToolsFramework::Prefab::PrefabUndoBase.

Public Types

enum class  LinkStatus { ADD , REMOVE , LINKSTATUS }
 
- Public Types inherited from AzToolsFramework::UndoSystem::URSequencePoint
typedef AZStd::vector< URSequencePoint * > ChildVec
 
typedef AZStd::function< void(URSequencePoint *) > ApplyOperationCB
 

Public Member Functions

 PrefabUndoInstanceLink (const AZStd::string &undoOperationName)
 
void Capture (TemplateId targetId, TemplateId sourceId, const InstanceAlias &instanceAlias, PrefabDom linkPatches=PrefabDom(), const LinkId linkId=InvalidLinkId)
 
void Undo () override
 
void Redo () override
 
void Redo (InstanceOptionalConstReference instanceToExclude) override
 Overload to allow to apply the change, but prevent instanceToExclude from being refreshed.
 
LinkId GetLinkId ()
 
- Public Member Functions inherited from AzToolsFramework::Prefab::PrefabUndoBase
 AZ_RTTI (PrefabUndoBase, "{C86BFA2B-E042-40FC-B5C6-1838030B34BF}", UndoSystem::URSequencePoint)
 
 AZ_CLASS_ALLOCATOR (PrefabUndoBase, AZ::SystemAllocator)
 
 PrefabUndoBase (const AZStd::string &undoOperationName)
 
bool Changed () const override
 
- Public Member Functions inherited from AzToolsFramework::UndoSystem::URSequencePoint
 URSequencePoint (const AZStd::string &friendlyName, URCommandID id=0)
 
 URSequencePoint (URCommandID id)
 
virtual ~URSequencePoint ()
 
void RunUndo ()
 
void RunRedo ()
 
URSequencePointFind (URCommandID id, const AZ::Uuid &typeOfCommand)
 
void SetName (const AZStd::string &friendlyName)
 
AZStd::string & GetName ()
 
void SetParent (URSequencePoint *parent)
 
URSequencePointGetParent () const
 
const ChildVec & GetChildren () const
 
bool HasRealChildren () const
 
void ApplyToTree (const ApplyOperationCB &applyCB)
 
bool IsPosted () const
 
bool operator== (const URCommandID id) const
 
bool operator== (const URSequencePoint *com) const
 

Additional Inherited Members

- Public Attributes inherited from AzToolsFramework::UndoSystem::URSequencePoint
friend UndoStack
 
- Protected Member Functions inherited from AzToolsFramework::UndoSystem::URSequencePoint
void AddChild (URSequencePoint *)
 
void RemoveChild (URSequencePoint *)
 
- Protected Attributes inherited from AzToolsFramework::Prefab::PrefabUndoBase
PrefabDom m_redoPatch
 
PrefabDom m_undoPatch
 
TemplateId m_templateId
 
InstanceToTemplateInterfacem_instanceToTemplateInterface = nullptr
 
InstanceDomGeneratorInterfacem_instanceDomGeneratorInterface = nullptr
 
PrefabSystemComponentInterfacem_prefabSystemComponentInterface = nullptr
 
bool m_changed
 
- Protected Attributes inherited from AzToolsFramework::UndoSystem::URSequencePoint
AZStd::string m_friendlyName
 
URCommandID m_id
 
ChildVec m_children
 
URSequencePointm_parent
 
bool m_isPosted
 

Detailed Description

handles link changes on instances

Member Function Documentation

◆ Redo() [1/2]

void AzToolsFramework::Prefab::PrefabUndoInstanceLink::Redo ( )
overridevirtual

◆ Redo() [2/2]

void AzToolsFramework::Prefab::PrefabUndoInstanceLink::Redo ( InstanceOptionalConstReference  instanceToExclude)
overridevirtual

Overload to allow to apply the change, but prevent instanceToExclude from being refreshed.

Reimplemented from AzToolsFramework::Prefab::PrefabUndoBase.

◆ Undo()

void AzToolsFramework::Prefab::PrefabUndoInstanceLink::Undo ( )
overridevirtual

Usage: override with class specific actions

Reimplemented from AzToolsFramework::Prefab::PrefabUndoBase.


The documentation for this class was generated from the following file: