57 lines
1.7 KiB
C++
57 lines
1.7 KiB
C++
// Oleg Petruny proprietary.
|
|
|
|
#pragma once
|
|
|
|
#include "Widgets/ResolutionResponsiveUserWidget.h"
|
|
|
|
#include "MainMenuWidget.generated.h"
|
|
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FMainMenuOpeningDelegate);
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FMainMenuClosingDelegate);
|
|
DECLARE_DYNAMIC_MULTICAST_DELEGATE(FMainMenuClosedDelegate);
|
|
|
|
UCLASS(Blueprintable, Abstract)
|
|
class UMainMenuWidget : public UUserWidget
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
public:
|
|
virtual bool Initialize() override;
|
|
|
|
UFUNCTION(BlueprintCallable)
|
|
void Show(bool fast = true);
|
|
UFUNCTION(BlueprintCallable)
|
|
void Hide();
|
|
|
|
UPROPERTY(BlueprintAssignable)
|
|
FMainMenuOpeningDelegate OnMainMenuOpeningDelegate;
|
|
UPROPERTY(BlueprintAssignable)
|
|
FMainMenuClosedDelegate OnMainMenuClosingDelegate;
|
|
UPROPERTY(BlueprintAssignable)
|
|
FMainMenuClosedDelegate OnMainMenuClosedDelegate;
|
|
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonContinue;
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonLoadLastSave;
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonNewGame;
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonOptions;
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonCredits;
|
|
UPROPERTY(meta = (BindWidget))
|
|
class UMainMenuButtonWidget* ButtonExit;
|
|
|
|
UPROPERTY(Transient, meta = (BindWidgetAnim))
|
|
class UWidgetAnimation* showFullAnimation;
|
|
UPROPERTY(Transient, meta = (BindWidgetAnim))
|
|
class UWidgetAnimation* showFastAnimation;
|
|
UPROPERTY(Transient, meta = (BindWidgetAnim))
|
|
class UWidgetAnimation* closeAnimation;
|
|
|
|
protected:
|
|
UFUNCTION()
|
|
void Closed();
|
|
};
|