Navigation
Unreal Engine C++ API Reference > Editor > UnrealEd > Editor
Inheritance Hierarchy
- ITransaction
- FTransaction
References
Module | UnrealEd |
Header | /Engine/Source/Editor/UnrealEd/Classes/Editor/Transactor.h |
Include | #include "Editor/Transactor.h" |
Syntax
class FTransaction : public ITransaction
Remarks
Base class for tracking transactions for undo/redo. A single transaction, representing a set of serialized, undo-able changes to a set of objects.
warning: The undo buffer cannot be made persistent because of its dependence on offsets of arrays from their owning UObjects.
warning: UObject::Serialize implicitly assumes that class properties do not change in between transaction resets.
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
bool | bFlip | If true, on apply flip the direction of iteration over object records. |
![]() |
TMap< UObject *, FChangedObjectValue > | ChangedObjects | Objects that will be changed directly by the transaction, empty when not transacting |
![]() |
FString | Context | A text string describing the context for the transaction. |
![]() |
FGuid | Id | Unique identifier for this transaction, used to track it during its lifetime |
![]() |
int32 | Inc | Used to track direction to iterate over transaction's object records. |
![]() |
TMap< UE::Transaction::FPersistentObjectRef, FObjectRecords > | ObjectRecordsMap | Map of object records (non-array), for optimized look-up and to prevent an object being serialized to a transaction more than once. |
![]() |
FGuid | OperationId | Unique identifier for the active operation on this transaction (if any). |
![]() |
TMap< UE::Transaction::FPersistentObjectRef, FPackageRecord > | PackageRecordMap | Map of package records for tracking and restoring the dirty state of packages on undo/redo. |
![]() |
UObject * | PrimaryObject | The key object being edited in this transaction. For example the blueprint object. Can be NULL |
![]() |
TIndirectArray< FObjectRecord > | Records | Transaction variables. |
![]() |
FText | Title | Description of the transaction. Can be used by UI |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
FTransaction
(
const TCHAR* InContext, |
Constructor. |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
void | AddReferencedObjects
(
FReferenceCollector& Collector |
Used by GC to collect referenced objects. |
![]() ![]() |
SIZE_T | DataSize () |
|
![]() ![]() |
void | DumpObjectMap
(
FOutputDevice& Ar |
Outputs the contents of the ObjectMap to the specified output device. |
![]() ![]() |
FTransactionDiff | GenerateDiff () |
Create a map that holds information about objects of a given transaction. |
![]() ![]() |
FText | Returns the description of each contained Object Record | |
![]() ![]() |
FGuid | GetId () |
Returns the unique identifier for this transaction, used to track it during its lifetime |
![]() ![]() |
FGuid | Returns the unique identifier for the active operation on this transaction (if any) | |
![]() ![]() |
const UObject * | ||
![]() ![]() |
int32 | ||
![]() ![]() |
FText | GetTitle () |
Returns the descriptive text for the transaction |
![]() ![]() |
void | GetTransactionObjects
(
TArray< UObject* >& Objects |
Get all the objects that are part of this transaction. |
![]() ![]() ![]() |
const TCHAR * | Returns a unique string to serve as a type ID for the FTranscationBase-derived type. | |
![]() ![]() ![]() |
bool | HasExpired () |
|
![]() ![]() |
bool | IsObjectTransacting
(
const UObject* Object |
Checks if a specific object is in the transaction currently underway |
Overridden from ITransaction
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | Apply () |
Enacts the transaction. |
![]() ![]() |
void | BeginOperation should be called when a transaction or undo/redo starts | |
![]() ![]() ![]() |
bool | ContainsObject
(
const UObject* Object |
Does the transaction know that the object is being modified. |
![]() ![]() ![]() |
bool | ||
![]() ![]() |
void | EndOperation () |
EndOperation should be called when a transaction is finalized or canceled or undo/redo ends |
![]() ![]() |
void | Finalize () |
Finalize the transaction (try and work out what's changed). |
![]() ![]() ![]() |
FTransactionContext | GetContext () |
Gets the full context for the transaction. |
![]() ![]() ![]() |
bool | IsTransient () |
Report if a transaction should be put in the undo buffer. |
![]() ![]() |
void | SaveArray
(
UObject* Object, |
Saves an array to the transaction. |
![]() ![]() |
void | SaveObject
(
UObject* Object |
Saves an UObject to the transaction. |
![]() ![]() |
void | SetPrimaryObject
(
UObject* Object |
Sets the transaction's primary object. |
![]() ![]() |
void | SnapshotObject
(
UObject* Object, |
Snapshots a UObject within the transaction. |
![]() ![]() |
void | StoreUndo
(
UObject* Object, |
Stores a command that can be used to undo a change to the specified object. |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FChangedObjectValue | ||
![]() |
FObjectRecord | Record of an object. | |
![]() |
FObjectRecords | ||
![]() |
FPackageRecord |