A Demo Project for the UnrealEngineSDK
Loading...
Searching...
No Matches
BasicWidget.h
Go to the documentation of this file.
1// Copyright(c) Pixo Group. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UIData.h"
7#include "Blueprint/UserWidget.h"
8#include "Components/CanvasPanel.h"
9#include "Components/TimelineComponent.h"
10#include "BasicWidget.generated.h"
11
12class UButtonWidget;
13
15DECLARE_DELEGATE(FOnPlayerWentAway)
16
17
20UCLASS()
21class PIXOCORE_API UBasicWidget : public UUserWidget
22{
24
25public:
26 virtual void NativeOnInitialized() override;
27
32 UFUNCTION(BlueprintCallable)
33 virtual void Init(UBasicWidgetInfo* WidgetInfo);
34
35 UFUNCTION(BlueprintCallable)
36 const FString& GetWidgetInfoName() { return WidgetInfoName; }
37
38 void SetCustomGuid(const FGuid& NewGuid) { WidgetGuid = NewGuid; }
39 const FGuid& GetGuid() const { return WidgetGuid; }
40
45 UFUNCTION(Category = "Buttons")
46 virtual void OnClickExitMenuEvent(FText ButtonName);
53 void ProcessSquaredDistanceToPlayer(const float SquaredDistanceToPlayerCm, const float DeltaSec);
58 virtual void PlayerWentAwayHandler(const float SquaredDistanceToPlayerCm) { PlayerWentAway(); }
59
60 //bool IsForcedToExecuteCloseCallback() const { return bForceExecuteCloseCallback; }
61
62protected:
63 UFUNCTION(BlueprintNativeEvent, meta=(DisplayName="PlayerWentAwayHandler"))
64 void PlayerWentAway();
65
66#pragma region Variables
67
68public:
73 FExitMenuEventDelegate OnExitMenuEventDelegate;
74 FOnPlayerWentAway OnPlayerWentAway;
75
76protected:
77 UPROPERTY(BlueprintReadWrite)
78 FText Heading = FText::FromString(TEXT("Heading"));
79 UPROPERTY(BlueprintReadWrite)
80 float MaxDistanceCalculationDelaySec = 5.0f;
81
82private:
83 FString WidgetInfoName;
84 FGuid WidgetGuid;
85
86 //bool bForceExecuteCloseCallback = false;
87 bool bIsClosingByDistance = false;
88 int32 MaxSquaredClosingDistance = -1;
89 float DistanceCalculationDelay = 0.0f;
90#pragma endregion Variables
91};
DECLARE_DELEGATE_OneParam(FExitMenuEventDelegate, UBasicResponseData *)
UObject class representing basic response data.
Definition UIData.h:24
Base class for user widgets in the PixoCore module.
Definition BasicWidget.h:24
const FGuid & GetGuid() const
Definition BasicWidget.h:47
FExitMenuEventDelegate OnExitMenuEventDelegate
Event delegate for the "ExitMenu" event.
Definition BasicWidget.h:86
const FString & GetWidgetInfoName()
UFUNCTION(BlueprintCallable)
Definition BasicWidget.h:44
virtual void PlayerWentAwayHandler(const float SquaredDistanceToPlayerCm)
Handler for when the player goes away.
Definition BasicWidget.h:68
void SetCustomGuid(const FGuid &NewGuid)
Definition BasicWidget.h:46
void PlayerWentAway()
UFUNCTION(BlueprintNativeEvent, meta=(DisplayName="PlayerWentAwayHandler"))
FString WidgetInfoName
Name of widget info used for creating this widget.
FOnPlayerWentAway OnPlayerWentAway
Event for when the player goes away.
Definition BasicWidget.h:87
UDataAsset class representing basic widget information.
Definition UIData.h:56
Custom widget class representing a button.
virtual void NativeOnInitialized() override
FText ButtonName
UPROPERTY(EditAnywhere, BlueprintReadWrite)