// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CommonActivatableWidget.h" #include "CommonInputBaseTypes.h" #include "Widgets/IGameSettingActionInterface.h" #include "LyraBrightnessEditor.generated.h" class UGameSetting; class UCommonButtonBase; class UCommonRichTextBlock; class UWidgetSwitcher; class UGameSettingValueScalar; UCLASS(Abstract) class ULyraBrightnessEditor : public UCommonActivatableWidget, public IGameSettingActionInterface { GENERATED_BODY() public: FSimpleMulticastDelegate OnSafeZoneSet; public: ULyraBrightnessEditor(const FObjectInitializer& Initializer); // Begin IGameSettingActionInterface virtual bool ExecuteActionForSetting_Implementation(FGameplayTag ActionTag, UGameSetting* InSetting) override; // End IGameSettingActionInterface protected: UPROPERTY(EditAnywhere, Category = "Restrictions") bool bCanCancel = true; virtual void NativeOnActivated() override; virtual void NativeOnInitialized() override; virtual FReply NativeOnAnalogValueChanged(const FGeometry& InGeometry, const FAnalogInputEvent& InAnalogEvent) override; virtual FReply NativeOnMouseWheel(const FGeometry& InGeometry, const FPointerEvent& InMouseEvent) override; void HandleInputModeChanged(ECommonInputType InInputType); private: UFUNCTION() void HandleBackClicked(); UFUNCTION() void HandleDoneClicked(); TWeakObjectPtr ValueSetting; UPROPERTY(BlueprintReadOnly, meta = (BindWidget, AllowPrivateAccess = true)) UWidgetSwitcher* Switcher_SafeZoneMessage; UPROPERTY(BlueprintReadOnly, meta = (BindWidget, AllowPrivateAccess = true)) UCommonRichTextBlock* RichText_Default; UPROPERTY(BlueprintReadOnly, meta = (BindWidget, AllowPrivateAccess = true)) UCommonButtonBase* Button_Back; UPROPERTY(BlueprintReadOnly, meta = (BindWidget, AllowPrivateAccess = true)) UCommonButtonBase* Button_Done; };