// Copyright Epic Games, Inc. All Rights Reserved. #include "LyraSettingAction_SafeZoneEditor.h" #include "Settings/LyraGameSettingRegistry.h" #include "Settings/LyraSettingsLocal.h" #include "Player/LyraLocalPlayer.h" #include "Widgets/Layout/SSafeZone.h" #define LOCTEXT_NAMESPACE "LyraSettings" ULyraSettingAction_SafeZoneEditor::ULyraSettingAction_SafeZoneEditor() { SafeZoneValueSetting = NewObject(); SafeZoneValueSetting->SetDevName(TEXT("SafeZoneValue")); SafeZoneValueSetting->SetDisplayName(LOCTEXT("SafeZoneValue_Name", "Safe Zone Value")); SafeZoneValueSetting->SetDescriptionRichText(LOCTEXT("SafeZoneValue_Description", "The safezone area percentage.")); SafeZoneValueSetting->SetDefaultValue(0.0f); SafeZoneValueSetting->SetDynamicGetter(GET_LOCAL_SETTINGS_FUNCTION_PATH(GetSafeZone)); SafeZoneValueSetting->SetDynamicSetter(GET_LOCAL_SETTINGS_FUNCTION_PATH(SetSafeZone)); SafeZoneValueSetting->SetDisplayFormat([](double SourceValue, double NormalizedValue){ return FText::AsNumber(SourceValue); }); SafeZoneValueSetting->SetSettingParent(this); } TArray ULyraSettingAction_SafeZoneEditor::GetChildSettings() { return { SafeZoneValueSetting }; } void ULyraSettingValueScalarDynamic_SafeZoneValue::ResetToDefault() { Super::ResetToDefault(); SSafeZone::SetGlobalSafeZoneScale(TOptional(DefaultValue.Get(0.0f))); } void ULyraSettingValueScalarDynamic_SafeZoneValue::RestoreToInitial() { Super::RestoreToInitial(); SSafeZone::SetGlobalSafeZoneScale(TOptional(InitialValue)); } #undef LOCTEXT_NAMESPACE