Space Plunder
Loading...
Searching...
No Matches
SingleMenuWithTabsWidget.h
Go to the documentation of this file.
1// Fill out your copyright notice in the Description page of Project Settings.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Data/CommonUIData.h"
8#include "SingleMenuWithTabsWidget.generated.h"
9
10class UWidgetSwitcher;
14UCLASS()
15class MENUSYSTEM_API USingleMenuWithTabsWidget : public UMenuSystemWidget
16{
17 GENERATED_BODY()
18
19public:
20 USingleMenuWithTabsWidget(const FObjectInitializer& ObjectInitializer);
21
22 // virtual void SetFocusToFirstVisibleOption_Implementation() override;
23
24
25 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category="Menu System|Buttons")
26 TArray<FSingleMenu> TabMenus;
27 // TArray<FString> MenuButtonTextList;
28
29 void CreateTabButtons();
30
31protected:
32 virtual bool Initialize() override;
33 virtual void NativePreConstruct() override;
34 virtual void NativeConstruct() override;
35
36 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta=(BindWidget), Category="Menu System|Tab")
37 UWidgetSwitcher* WidgetSwitcher = nullptr;
38 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, meta=(BindWidget), Category="Menu System|Single")
39 class UStackBox* MenuTabButtonsContainer = nullptr;
40
41
42 //- What Page the Main Menu is currently on //
43 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category="Menu System|Tab")
44 int32 MenuPageIndex = 0;
45
46 UFUNCTION(BlueprintImplementableEvent, Category="Menu System|Single")
47 void MenuButtonSelectedEvent(const int32 ButtonIndex, const int32 MenuIndex);
48 UFUNCTION(BlueprintImplementableEvent, Category="Menu System|Single")
49 void TabButtonSelectedEvent(const int32 ButtonIndex);
50
51
52private:
53 UFUNCTION()
54 void MenuButtonSelected(const int32 ButtonIndex, const int32 MenuIndex);
55 UFUNCTION()
56 void TabButtonSelected(const int32 ButtonIndex);
57
58
59 void CreateSingleMenu(const int32 Index);
60 void CreateTabButton(const int32 Index);
61
62 TSubclassOf<class UUserWidget> SingleMenuClass;
63 TSubclassOf<class UUserWidget> SelectionButtonClass;
64
65};
UCLASS(Blueprintable, BlueprintType, ClassGroup=(BucciGames), meta=(BlueprintSpawnableComponent)) class CHATSYSTEM_API UChatSystemComponent
Definition ChatSystemComponent.h:13
Definition MenuSystemWidget.h:19
Definition SingleMenuWithTabsWidget.h:16
Definition CommonUIData.h:21