Files
UnrealEngine/Engine/Source/Editor/MovieSceneTools/Private/Channels/BoolChannelKeyProxy.cpp
Brandyn / Techy fcc1b09210 init
2026-04-04 15:40:51 -05:00

44 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "Channels/BoolChannelKeyProxy.h"
#include "Channels/MovieSceneBoolChannel.h"
#include "Channels/MovieSceneChannelHandle.h"
#include "HAL/PlatformCrt.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(BoolChannelKeyProxy)
struct FPropertyChangedEvent;
void UBoolChannelKeyProxy::Initialize(FKeyHandle InKeyHandle, TMovieSceneChannelHandle<FMovieSceneBoolChannel> InChannelHandle, TWeakObjectPtr<UMovieSceneSection> InWeakSection)
{
KeyHandle = InKeyHandle;
ChannelHandle = InChannelHandle;
WeakSection = InWeakSection;
}
void UBoolChannelKeyProxy::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
{
bool bNewValue = bValue;
if (ChannelHandle.GetMetaData() != nullptr && ChannelHandle.GetMetaData()->bInvertValue)
{
bNewValue = !bNewValue;
}
Super::PostEditChangeProperty(PropertyChangedEvent);
OnProxyValueChanged(ChannelHandle, WeakSection.Get(), KeyHandle, bNewValue, Time);
}
void UBoolChannelKeyProxy::UpdateValuesFromRawData()
{
RefreshCurrentValue(ChannelHandle, KeyHandle, bValue, Time);
if (ChannelHandle.GetMetaData() != nullptr && ChannelHandle.GetMetaData()->bInvertValue)
{
bValue = !bValue;
}
}