You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#jira UETOOL-3823 #rb lonnie.li #preflight 617b1aea5794a500014f544a #ROBOMERGE-AUTHOR: michael.balzer #ROBOMERGE-SOURCE: CL 17972239 in //UE5/Release-5.0/... via CL 17972248 #ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292) #ROBOMERGE[STARSHIP]: UE5-Main [CL 17972256 by michael balzer in ue5-release-engine-test branch]
33 lines
847 B
C++
33 lines
847 B
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "InteractiveToolChange.h"
|
|
|
|
|
|
/**
|
|
* TSimpleValueLambdaChange is a generic FToolCommandChange that swaps between two (template-type) Values.
|
|
* The swap is applied via a lambda provided by the creator.
|
|
*/
|
|
template<typename ValueType>
|
|
class TSimpleValueLambdaChange : public FToolCommandChange
|
|
{
|
|
public:
|
|
ValueType FromValue;
|
|
ValueType ToValue;
|
|
TUniqueFunction<void(UObject*, const ValueType& From, const ValueType& To, bool bIsRevert)> ValueChangeFunc;
|
|
|
|
/** Makes the change to the object */
|
|
virtual void Apply(UObject* Object) override
|
|
{
|
|
ValueChangeFunc(Object, FromValue, ToValue, false);
|
|
}
|
|
|
|
/** Reverts change to the object */
|
|
virtual void Revert(UObject* Object) override
|
|
{
|
|
ValueChangeFunc(Object, ToValue, FromValue, true);
|
|
}
|
|
};
|