Space Plunder
Loading...
Searching...
No Matches
USingleMenuWithTabsWidget Class Reference

#include <SingleMenuWithTabsWidget.h>

Inheritance diagram for USingleMenuWithTabsWidget:
UMenuSystemWidget UBaseActivatableWidget

Public Member Functions

 USingleMenuWithTabsWidget (const FObjectInitializer &ObjectInitializer)
 
void CreateTabButtons ()
 
- Public Member Functions inherited from UMenuSystemWidget
 UMenuSystemWidget (const FObjectInitializer &ObjectInitializer)
 
virtual bool NativeOnHandleBackAction () override
 
void SetMenuInterface (IMenuSystem *Interface)
 
void Setup ()
 
virtual void OpenConfirmationMessage (const FModalData &ModalData)
 
virtual void SetServerList (const TArray< FServerRow > &ServerInfo)
 
void SetOwnerWidget (UUserWidget *Owner)
 
UUserWidget * GetOwnerWidget () const
 
void WidgetVisibilityChanged (ESlateVisibility SlateVisibility)
 
bool GetIsOnlineGame () const
 
bool GetIsPublicMatch () const
 
virtual bool GetDebuggingMode () const
 
virtual FString GetPlayerUserName () const
 
virtual bool GetIsPlayerLoggedIn () const
 
virtual FString GetCurrentSessionName () const
 
virtual EOnlineSubsystem GetOnlineSubsystem () const
 

Public Attributes

TArray< FSingleMenuTabMenus
 
- Public Attributes inherited from UMenuSystemWidget
FOnMenuBackButtonSelected OnMenuBackButtonSelected
 

Protected Member Functions

virtual bool Initialize () override
 
virtual void NativePreConstruct () override
 
virtual void NativeConstruct () override
 
void MenuButtonSelectedEvent (const int32 ButtonIndex, const int32 MenuIndex)
 
void TabButtonSelectedEvent (const int32 ButtonIndex)
 
- Protected Member Functions inherited from UMenuSystemWidget
virtual void ModalButtonSelected (const int32 Index)
 
void OnModalButtonSelectedEvent (const int32 Index)
 
virtual void ModalClosed ()
 
void OnModalClosedEvent ()
 
class UModalMenuSystemWidgetGetCurrentModal () const
 
void SetModalSlot (UPanelWidget *PanelWidget)
 
void SetNotificationSlot (UPanelWidget *PanelWidget)
 
- Protected Member Functions inherited from UBaseActivatableWidget
void LogDebugError (const FString &Message) const
 
void LogDebugError (const FString &Message, const int32 Value) const
 
void LogDebugError (const FString &Message, const float Value) const
 
void LogDebugWarning (const FString &Message) const
 
void LogDebugWarning (const FString &Message, const int32 Value) const
 
void LogDebugWarning (const FString &Message, const float Value) const
 
void LogDebugMessage (const FString &Message, const bool bWarning=false, const bool bError=false) const
 
void LogDebugMessage (const FString &Message, const int32 Value, const bool bWarning=false, const bool bError=false) const
 
void LogDebugMessage (const FString &Message, const float Value, const bool bWarning=false, const bool bError=false) const
 
void LogDebugMessage (const FString &Message, const bool bValue, const bool bWarning, const bool bError) const
 
void LogOnScreenMessage (const int32 Key, const FString &Message, FColor Color=FColor::Green) const
 
void SetCategoryName (const FLogCategoryBase &Category)
 

Protected Attributes

UWidgetSwitcher * WidgetSwitcher = nullptr
 
class UStackBox * MenuTabButtonsContainer = nullptr
 
int32 MenuPageIndex = 0
 
- Protected Attributes inherited from UMenuSystemWidget
IMenuSystemMenuInterface = nullptr
 
class IModalInterfaceModalInterface = nullptr
 
bool bIsController = false
 
bool bIsKeyboard = false
 
bool bMouse = false
 
- Protected Attributes inherited from UBaseActivatableWidget
bool bDebuggingMode = false
 

Private Member Functions

void MenuButtonSelected (const int32 ButtonIndex, const int32 MenuIndex)
 
void TabButtonSelected (const int32 ButtonIndex)
 
void CreateSingleMenu (const int32 Index)
 
void CreateTabButton (const int32 Index)
 

Private Attributes

TSubclassOf< class UUserWidget > SingleMenuClass
 
TSubclassOf< class UUserWidget > SelectionButtonClass
 

Constructor & Destructor Documentation

◆ USingleMenuWithTabsWidget()

USingleMenuWithTabsWidget::USingleMenuWithTabsWidget ( const FObjectInitializer & ObjectInitializer)
12 : Super(ObjectInitializer)
13{
14 const ConstructorHelpers::FClassFinder<UUserWidget> SingleMenuBP(TEXT("/MenuSystem/Widgets/CommonUI/WBP_SingleMenu"));
15 if (!ensure(SingleMenuBP.Class != nullptr)) return;
16 SingleMenuClass = SingleMenuBP.Class;
17 const ConstructorHelpers::FClassFinder<UUserWidget> SelectionButtonBP(TEXT("/MenuSystem/Widgets/CommonUI/WBP_SelectionButton"));
18 if (!ensure(SelectionButtonBP.Class != nullptr)) return;
19 SelectionButtonClass = SelectionButtonBP.Class;
20}
TSubclassOf< class UUserWidget > SingleMenuClass
Definition SingleMenuWithTabsWidget.h:62
TSubclassOf< class UUserWidget > SelectionButtonClass
Definition SingleMenuWithTabsWidget.h:63

Member Function Documentation

◆ CreateSingleMenu()

void USingleMenuWithTabsWidget::CreateSingleMenu ( const int32 Index)
private
94{
95 USingleMenuSystemWidget* SingleMenu = WidgetTree->ConstructWidget<USingleMenuSystemWidget>(SingleMenuClass);
96 if(SingleMenu == nullptr){return;}
97 SingleMenu->SetFromSingleMenuData(TabMenus[Index]);
98 SingleMenu->SetMenuIndex(Index);
100 WidgetSwitcher->AddChild(SingleMenu);
101}
Definition SingleMenuSystemWidget.h:15
void SetMenuIndex(const int32 Index)
Definition SingleMenuSystemWidget.h:39
FOnMenuButtonWithTabSelected OnMenuButtonWithTabSelected
Definition SingleMenuSystemWidget.h:24
void SetFromSingleMenuData(const FSingleMenu &SingleMenu)
Definition SingleMenuSystemWidget.cpp:162
UWidgetSwitcher * WidgetSwitcher
Definition SingleMenuWithTabsWidget.h:37
TArray< FSingleMenu > TabMenus
Definition SingleMenuWithTabsWidget.h:26
void MenuButtonSelected(const int32 ButtonIndex, const int32 MenuIndex)
Definition SingleMenuWithTabsWidget.cpp:83

◆ CreateTabButton()

void USingleMenuWithTabsWidget::CreateTabButton ( const int32 Index)
private
104{
105 USelectionButtonMenuSystem* SelectionButton = WidgetTree->ConstructWidget<USelectionButtonMenuSystem>(SelectionButtonClass);
106 if(SelectionButton == nullptr){return;}
107 SelectionButton->SetButtonText(TabMenus[Index].MenuTitle);
108 SelectionButton->SetButtonIndex(Index);
110 MenuTabButtonsContainer->AddChild(SelectionButton);
111}
Definition SelectionButtonMenuSystem.h:16
FOnSelectionButtonClicked OnSelectionButtonClicked
Definition SelectionButtonMenuSystem.h:30
void SetButtonIndex(const int32 Index)
Definition SelectionButtonMenuSystem.h:41
void SetButtonText(FString Text) const
Definition SelectionButtonMenuSystem.cpp:107
void TabButtonSelected(const int32 ButtonIndex)
Definition SingleMenuWithTabsWidget.cpp:88
class UStackBox * MenuTabButtonsContainer
Definition SingleMenuWithTabsWidget.h:39

◆ CreateTabButtons()

void USingleMenuWithTabsWidget::CreateTabButtons ( )
63{
64 if(TabMenus.IsEmpty()){return;}
65
66 MenuTabButtonsContainer->ClearChildren();
67 WidgetSwitcher->ClearChildren();
68 for(int32 i = 0; i < TabMenus.Num(); i++)
69 {
70 if(TabMenus[i].MenuTitle.IsEmpty()){continue;}
73 // USingleMenuSystemWidget* SingleMenu = WidgetTree->ConstructWidget<USingleMenuSystemWidget>(SingleMenuClass);
74 // if(SingleMenu == nullptr){continue;}
75 // SingleMenu->SetFromSingleMenuData(TabMenus[i]);
76 // SingleMenu->SetMenuIndex(i);
77 // SingleMenu->OnMenuButtonWithTabSelected.AddDynamic(this, &USingleMenuWithTabsWidget::MenuButtonSelected);
78 // WidgetSwitcher->AddChild(SingleMenu);
79 }
80}
void CreateSingleMenu(const int32 Index)
Definition SingleMenuWithTabsWidget.cpp:93
void CreateTabButton(const int32 Index)
Definition SingleMenuWithTabsWidget.cpp:103

◆ Initialize()

bool USingleMenuWithTabsWidget::Initialize ( )
overrideprotectedvirtual

Reimplemented from UMenuSystemWidget.

40{
41 const bool Success = Super::Initialize();
42 if(!Success) return false;
43 if (!ensure(WidgetSwitcher != nullptr)) return false;
44 if (!ensure(MenuTabButtonsContainer != nullptr)) return false;
45 // WidgetSwitcher.On
46
47 return true;
48}

◆ MenuButtonSelected()

void USingleMenuWithTabsWidget::MenuButtonSelected ( const int32 ButtonIndex,
const int32 MenuIndex )
private
84{
85 MenuButtonSelectedEvent(ButtonIndex, MenuIndex);
86}
void MenuButtonSelectedEvent(const int32 ButtonIndex, const int32 MenuIndex)

◆ MenuButtonSelectedEvent()

void USingleMenuWithTabsWidget::MenuButtonSelectedEvent ( const int32 ButtonIndex,
const int32 MenuIndex )
protected

◆ NativeConstruct()

void USingleMenuWithTabsWidget::NativeConstruct ( )
overrideprotectedvirtual

Reimplemented from UMenuSystemWidget.

57{
58 Super::NativeConstruct();
60}
void CreateTabButtons()
Definition SingleMenuWithTabsWidget.cpp:62

◆ NativePreConstruct()

void USingleMenuWithTabsWidget::NativePreConstruct ( )
overrideprotectedvirtual
51{
52 Super::NativePreConstruct();
54}

◆ TabButtonSelected()

void USingleMenuWithTabsWidget::TabButtonSelected ( const int32 ButtonIndex)
private
89{
90 TabButtonSelectedEvent(ButtonIndex);
91}
void TabButtonSelectedEvent(const int32 ButtonIndex)

◆ TabButtonSelectedEvent()

void USingleMenuWithTabsWidget::TabButtonSelectedEvent ( const int32 ButtonIndex)
protected

Member Data Documentation

◆ MenuPageIndex

int32 USingleMenuWithTabsWidget::MenuPageIndex = 0
protected

◆ MenuTabButtonsContainer

class UStackBox* USingleMenuWithTabsWidget::MenuTabButtonsContainer = nullptr
protected

◆ SelectionButtonClass

TSubclassOf<class UUserWidget> USingleMenuWithTabsWidget::SelectionButtonClass
private

◆ SingleMenuClass

TSubclassOf<class UUserWidget> USingleMenuWithTabsWidget::SingleMenuClass
private

◆ TabMenus

TArray<FSingleMenu> USingleMenuWithTabsWidget::TabMenus

◆ WidgetSwitcher

UWidgetSwitcher* USingleMenuWithTabsWidget::WidgetSwitcher = nullptr
protected

The documentation for this class was generated from the following files: