Navigation
Unreal Engine C++ API Reference > Runtime > Core > Misc
Inheritance Hierarchy
- FChange
- FCommandChange
- FToolCommandChange
- FActivateToolChange
- FAttributeEditor_AttributeListsChange
- FBeginGroomCardsEditChange
- FBeginToolChange
- FComponentWorldTransformChange
- FCurveControlPointsMechanicInsertionChange
- FCurveControlPointsMechanicModeChange
- FCurveControlPointsMechanicMovementChange
- FCurveControlPointsMechanicSelectionChange
- FDrawPolygonStateChange
- FDrawPolyPathStateChange
- FEditGroomCardsTopologyPostEditChange
- FEditGroomCardsTopologyPreEditChange
- FEditMeshMaterials_MaterialSetChange
- FEditMeshPolygonsToolMeshChange
- FEndGroomCardsEditChange
- FGeometrySelectionDeltaChange
- FGeometrySelectionReplaceChange
- FGroupEdgeInsertionFirstPointChange
- FISMEditorSceneChange
- FISMEditorSelectionChange
- FLatticeControlPointsMechanicMovementChange
- FLatticeControlPointsMechanicSelectionChange
- FLatticeDeformerToolConstrainedPointsChange
- FMeshChange
- FMeshPolygroupChange
- FMeshReplacementChange
- FMeshSelectionChange
- FMeshSkinWeightsChange
- FMeshTopologySelectionMechanicSelectionChange
- FMeshVertexChange
- FPersistentMeshSelectionChange
- FPolyEditActivityStartChange
- FPolyEditCutFacesActivityFirstPointChange
- FRefSkeletonChange
- FSpaceCurveDeformationMechanicMovementChange
- FSpaceCurveDeformationMechanicSelectionChange
- FToolChangeWrapperChange
- FToolCommandChangeSequence
- FTransformProxyChange
- TIndexedValuesChange
- TCustomIndexedValuesChange
- FMeshAttributePaintChange
- FMeshVertexColorPaintChange
- TSimpleValueLambdaChange
- TWrappedToolCommandChange
- UAddPrimitiveTool::FStateChange
- UCollisionPrimitivesMechanic::FCollisionPrimitivesMechanicGeometryChange
- UCollisionPrimitivesMechanic::FCollisionPrimitivesMechanicSelectionChange
- UDrawSplineTool::FSplineChange
- UUVToolSelectionAPI::FSelectionChange
- UUVToolSelectionAPI::FUnsetSelectionChange
- TDataprepBindingCommandChange
- FSwapChange
- FAnimDataBaseAction
- FAddAtributeAction
- FAddAtributeKeyAction
- FAddCurveAction
- FAddFloatCurveAction
- FAddRichCurveKeyAction
- FAddTrackAction
- FAddTransformCurveAction
- FCloseBracketAction
- FOpenBracketAction
- FRemoveAtributeAction
- FRemoveAtributeKeyAction
- FRemoveCurveAction
- FRemoveRichCurveKeyAction
- FRemoveTrackAction
- FRenameCurveAction
- FResizePlayLengthInFramesAction
- FScaleCurveAction
- FSetAtributeKeyAction
- FSetAtributeKeysAction
- FSetCurveColorAction
- FSetCurveFlagsAction
- FSetFrameRateAction
- FSetRichCurveAttributesAction
- FSetRichCurveKeyAction
- FSetRichCurveKeysAction
- FSetTrackKeysAction
- FCompoundChange
References
Module | Core |
Header | /Engine/Source/Runtime/Core/Public/Misc/Change.h |
Include | #include "Misc/Change.h" |
Syntax
class FChange
Remarks
FChange modifies a UObject and is meant to be used to implement undo/redo. The change is embedded in an FTransaction which executes it instead of the standard serialization transaction (cannot be combined - see FTransaction).
The original FChange style (used by MeshEditor) was that calling Execute() would return a new FChange that applies the opposite action, and FTransaction would swap the two at each undo/redo step (eg a "DeleteObject" FChange would return a "CreateObject" FChange)
The alternative "Command Pattern"-style FChange calls Apply() and Revert() on a single FChange.
FChange may eventually be deprecated. You should subclass FSwapChange and FCommandChange to implement these different styles.
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
FChange () |
Protected default constructor |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
~FChange () |
Virtual destructor |
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | AddReferencedObjects
(
FReferenceCollector& Collector |
Used by GC to collect referenced objects. |
![]() |
void | Makes the change to the object | |
![]() |
TUniquePtr< FChange > | Makes the change to the object, returning a new change that can be used to perfectly roll back this change | |
![]() |
EChangeStyle | What style of change is this | |
![]() ![]() ![]() |
bool | HasExpired
(
UObject* Object |
|
![]() ![]() |
void | PrintToLog
(
FFeedbackContext& FeedbackContext, |
Prints this change to the log, including sub-changes if there are any. |
![]() |
void | Reverts change to the object | |
![]() ![]() |
FString | ToString () |
Describes this change (for debugging) |
Enums
Type | Name | Description | |
---|---|---|---|
![]() |
EChangeStyle |