#include <HUDBase.h>
◆ AHUDBase()
15{
17 {
19 }
21}
TSubclassOf< UUserWidget > PrimaryLayoutClass
Definition HUDBase.h:95
TSubclassOf< UUserWidget > RadialMenuClass
Definition HUDBase.h:93
static TSubclassOf< UUserWidget > GetDefaultWidgetBPClass(const FString &Location)
Definition BaseHelpersBPLib.cpp:227
◆ AddNotificationToQueue()
| bool AHUDBase::AddNotificationToQueue |
( |
const FGameplayTag | Type, |
|
|
const FNotificationData & | Data ) |
|
overridevirtual |
Implements IHUDInterface.
199{
200 if(
bDebuggingMode){UE_LOG(LogHUDBase,
Warning, TEXT(
"HUD: Add Notification: %s to %s"), *Data.
Title, *Type.GetTagName().ToString());}
202 if(NotificationWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"NotificationWidgetPtr Null: Add Notification: %s to %s"), *Data.
Title, *Type.GetTagName().ToString());
return false;}
204 if(NotificationWidget ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"NotificationWidget Null: Add Notification: %s to %s"), *Data.
Title, *Type.GetTagName().ToString());
return false;;}
206 return true;
207}
bool bDebuggingMode
Definition HUDBase.h:80
TMap< FGameplayTag, INotificationManagerInterface * > NotificationManagersMap
Definition HUDBase.h:90
Definition NotificationManagerInterface.h:23
virtual void AddNotificationToQueue(const FNotificationData &Data)=0
FString Title
Definition RadialWheelData.h:27
◆ AddWidgetToLayer()
| UUserWidget * AHUDBase::AddWidgetToLayer |
( |
const FGameplayTag & | LayerName, |
|
|
const TSoftClassPtr< UUserWidget > & | WidgetClass ) |
|
overridevirtual |
Implements IHUDInterface.
138{
140 {
141 UE_LOG(LogHUDBase, Log, TEXT("AddWidgetToLayer: %s"), *LayerName.GetTagName().ToString());
142 }
144 if(LayerWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"LayersMap doesn't contain: %s"), *LayerName.GetTagName().ToString());
return nullptr;}
146 if(LayerWidget == nullptr){return nullptr;}
148}
TMap< FGameplayTag, IWidgetLayout * > LayersMap
Definition HUDBase.h:89
◆ AddWidgetToLayerWithSlot()
| UUserWidget * AHUDBase::AddWidgetToLayerWithSlot |
( |
const FGameplayTag & | LayerName, |
|
|
const FGameplayTag & | SlotTag, |
|
|
const TSoftClassPtr< UUserWidget > & | WidgetClass ) |
|
overridevirtual |
Implements IHUDInterface.
152{
154 {
155 UE_LOG(LogHUDBase, Log, TEXT("AddWidgetToLayerWithSlot: %s"), *LayerName.GetTagName().ToString());
156 }
158 if(LayerWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"LayersMap doesn't contain: %s"), *LayerName.GetTagName().ToString());
return nullptr;}
160 if(LayerWidget == nullptr){return nullptr;}
162}
◆ BeginPlay()
| void AHUDBase::BeginPlay |
( |
| ) |
|
|
overrideprotectedvirtual |
24{
25 Super::BeginPlay();
27 if(bSuccess ==
false){UE_LOG(LogHUDBase,
Error, TEXT(
" AHUDBase::BeginPlay FAILED"));
return;}
30}
void PushInitialNotificationManagers()
Definition HUDBase.cpp:164
virtual bool CreateLayoutWidget()
Definition HUDBase.cpp:32
void PushInitialScreens()
Definition HUDBase.cpp:44
◆ ClearLayer()
| bool AHUDBase::ClearLayer |
( |
const FGameplayTag & | LayerName | ) |
|
|
overridevirtual |
Implements IHUDInterface.
111{
113 {
114 UE_LOG(LogHUDBase, Log, TEXT("PushContentToLayer: %s"), *LayerName.GetTagName().ToString());
115 }
117 if(LayerWidgetPtr == nullptr){return false;}
119 if(LayerWidget == nullptr){return false;}
121 return true;
122}
◆ CloseRadialMenu()
| int32 AHUDBase::CloseRadialMenu |
( |
| ) |
|
|
overridevirtual |
- Returns
- the selected Menu Item
Implements IHUDInterface.
238{
239 int32 Index = -1;
242 if(RadialMenu != nullptr)
243 {
244
246 }
249 const FInputModeGameOnly GameOnly;
250 GetOwningPlayerController()->SetInputMode(GameOnly);
252 return Index;
253}
UUserWidget * RadialMenuWidget
Definition HUDBase.h:59
◆ CreateLayoutWidget()
| bool AHUDBase::CreateLayoutWidget |
( |
| ) |
|
|
privatevirtual |
33{
34 if(
PrimaryLayoutClass ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"PrimaryLayoutClass in AHUDBASE"));
return false;}
36 if(
PrimaryLayoutWidget ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"Primary Layout Failed in AHUDBASE"));
return false;}
39 if(bRegistered ==
false){UE_LOG(LogHUDBase,
Error, TEXT(
"bRegistered Failed in CreateLayoutWidget::AHUDBASE"));
return false;}
40 UE_LOG(LogHUDBase, Log, TEXT("bRegistered Passed in CreateLayoutWidget::AHUDBASE"));
41 return true;
42}
class UPrimaryLayoutWidget * PrimaryLayoutWidget
Definition HUDBase.h:71
◆ CreateRadialMenu()
| bool AHUDBase::CreateRadialMenu |
( |
| ) |
|
|
private |
267{
271 return true;
272}
◆ GetContentFromLayer()
| UUserWidget * AHUDBase::GetContentFromLayer |
( |
const FGameplayTag & | LayerName, |
|
|
const TSoftClassPtr< UUserWidget > & | WidgetClass ) |
|
overridevirtual |
Implements IHUDInterface.
84{
86 {
87 UE_LOG(LogHUDBase, Log, TEXT("Get Content From Layer: %s"), *LayerName.GetTagName().ToString());
88 }
90 if(LayerWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"LayersMap doesn't contain: %s"), *LayerName.GetTagName().ToString());
return nullptr;}
92 if(LayerWidget == nullptr){return nullptr;}
94}
◆ GetIsRadialMenuOpen()
| bool AHUDBase::GetIsRadialMenuOpen |
( |
| ) |
const |
|
overridevirtual |
◆ HUDCancel()
| void AHUDBase::HUDCancel |
( |
| ) |
|
|
overridevirtual |
◆ HUDConfirm()
| void AHUDBase::HUDConfirm |
( |
| ) |
|
|
overridevirtual |
◆ HUDSelectionHorizontal()
| void AHUDBase::HUDSelectionHorizontal |
( |
const bool | bMoveRight = true | ) |
|
|
overridevirtual |
Implements IHUDInterface.
280{
281 if(
bDebuggingMode){UE_LOG(LogHUDBase,
Warning, TEXT(
"Hud Selection Vertical %s"), bMoveRight ? *FString(
"Right"): *FString(
"Left"));}
282}
◆ HUDSelectionVertical()
| void AHUDBase::HUDSelectionVertical |
( |
const bool | bMoveUp = true | ) |
|
|
overridevirtual |
◆ OnCloseRadialMenu()
| void AHUDBase::OnCloseRadialMenu |
( |
| ) |
|
|
protected |
◆ OnOpenRadialMenu()
◆ OpenRadialMenu()
Implements IHUDInterface.
210{
212 {
214 if(bCreated == false){return;}
215 }
217 if(GetOwningPlayerController() != nullptr)
218 {
219 FInputModeGameAndUI GameAndUI;
220 GameAndUI.SetLockMouseToViewportBehavior(EMouseLockMode::LockAlways);
222 GetOwningPlayerController()->SetInputMode(GameAndUI);
223 }
231 {
233 }
235}
void OnOpenRadialMenu(const FRadialMenuData &Data)
virtual int32 CloseRadialMenu() override
Definition HUDBase.cpp:237
bool CreateRadialMenu()
Definition HUDBase.cpp:266
◆ PopContentFromLayer()
| bool AHUDBase::PopContentFromLayer |
( |
const FGameplayTag & | LayerName | ) |
|
|
overridevirtual |
Implements IHUDInterface.
97{
99 {
100 UE_LOG(LogHUDBase, Log, TEXT("PushContentToLayer: %s"), *LayerName.GetTagName().ToString());
101 }
103 if(LayerWidgetPtr == nullptr){return false;}
105 if(LayerWidget == nullptr){return false;}
107 return true;
108}
◆ PushContentToLayer()
| UUserWidget * AHUDBase::PushContentToLayer |
( |
const FGameplayTag & | LayerName, |
|
|
const TSoftClassPtr< UUserWidget > & | WidgetClass ) |
|
overridevirtual |
Implements IHUDInterface.
71{
73 {
74 UE_LOG(LogHUDBase, Log, TEXT("PushContentToLayer: %s"), *LayerName.GetTagName().ToString());
75 }
77 if(LayerWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"LayersMap doesn't contain: %s"), *LayerName.GetTagName().ToString());
return nullptr;}
79 if(LayerWidget == nullptr){return nullptr;}
81}
◆ PushInitialNotificationManagers()
| void AHUDBase::PushInitialNotificationManagers |
( |
| ) |
|
|
private |
165{
166
167 TArray<FGameplayTag> GameplayTags;
169 for(auto GameplayTag : GameplayTags)
170 {
172 {
173 UE_LOG(LogHUDBase, Log, TEXT("PushInitialNotificationManagers: %s"), *GameplayTag.GetTagName().ToString());
174
175 }
177 if(WidgetPtr == nullptr){continue;}
178 TSoftClassPtr<UUserWidget> Widget = *WidgetPtr;
179 if(Widget == nullptr){continue;}
181 }
182}
TMap< FGameplayTag, TSoftClassPtr< UUserWidget > > InitialNotificationManagers
Definition HUDBase.h:77
virtual UUserWidget * PushContentToLayer(const FGameplayTag &LayerName, const TSoftClassPtr< UUserWidget > &WidgetClass) override
Definition HUDBase.cpp:70
◆ PushInitialScreens()
| void AHUDBase::PushInitialScreens |
( |
| ) |
|
|
private |
45{
46 TArray<FGameplayTag> GameplayTags;
48 for(auto GameplayTag : GameplayTags)
49 {
50 UE_LOG(LogHUDBase,
Warning, TEXT(
"PushInitialScreens: %s"), *GameplayTag.GetTagName().ToString());
51 const TSoftClassPtr<UUserWidget>* WidgetPtr =
InitialScreens.Find(GameplayTag);
52 if(WidgetPtr->Get() == nullptr){continue;}
53 TSoftClassPtr<UUserWidget> Widget = *WidgetPtr;
54 if(Widget == nullptr){continue;}
56 }
57}
TMap< FGameplayTag, TSoftClassPtr< UUserWidget > > InitialScreens
Definition HUDBase.h:75
◆ RegisterLayer()
| bool AHUDBase::RegisterLayer |
( |
const FGameplayTag & | LayerName, |
|
|
UUserWidget * | LayerWidget ) |
|
overridevirtual |
Implements IHUDInterface.
60{
61 if(LayerWidget ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"LayerWidget NULL: %s"), *LayerName.GetTagName().ToString());
return false;}
62 if(
LayersMap.Contains(LayerName)){UE_LOG(LogHUDBase,
Error, TEXT(
"LayersMap.Contains: %s"), *LayerName.GetTagName().ToString());
return false;}
63 IWidgetLayout* WidgetLayout = Cast<IWidgetLayout>(LayerWidget);
64 if(WidgetLayout ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"%s doesn't implement IWidgetLayout"), *LayerWidget->GetName());
return false;}
66 UE_LOG(LogHUDBase,
Warning, TEXT(
"Layer Registered: %s"), *LayerName.GetTagName().ToString());
67 return true;
68}
◆ RegisterNotificationManager()
| bool AHUDBase::RegisterNotificationManager |
( |
const FGameplayTag | Type, |
|
|
UUserWidget * | ManagerWidget ) |
|
overridevirtual |
Implements IHUDInterface.
185{
187 {
188 UE_LOG(LogHUDBase, Log, TEXT("RegisterNotificationManager: %s"), *Type.GetTagName().ToString());
189 }
190 if(ManagerWidget == nullptr){return false;}
193 if(NotificationManager ==
nullptr){UE_LOG(LogHUDBase,
Error, TEXT(
"%s doesn't implement INotificationInterface"), *ManagerWidget->GetName());
return false;}
195 return true;
196}
◆ ToggleGameLog()
| void AHUDBase::ToggleGameLog |
( |
| ) |
|
|
overridevirtual |
◆ ToggleWidget()
| bool AHUDBase::ToggleWidget |
( |
const FGameplayTag & | LayerName, |
|
|
UUserWidget * | Widget ) |
|
overridevirtual |
Implements IHUDInterface.
125{
127 {
128 UE_LOG(LogHUDBase, Log, TEXT("%s ToggleWidget: %s"), *LayerName.GetTagName().ToString(), *Widget->GetName());
129 }
131 if(LayerWidgetPtr ==
nullptr){UE_LOG(LogHUDBase,
Warning, TEXT(
"AHUDBase::ToggleWidget LayerWidgetPtr Failed: %s"), *LayerName.GetTagName().ToString());
return false;}
133 if(LayerWidget == nullptr){return false;}
135}
◆ bDebuggingMode
| bool AHUDBase::bDebuggingMode = false |
|
protected |
◆ InitialNotificationManagers
| TMap<FGameplayTag, TSoftClassPtr<UUserWidget> > AHUDBase::InitialNotificationManagers |
|
protected |
◆ InitialNotificationTimerHandle
| FTimerHandle AHUDBase::InitialNotificationTimerHandle |
|
private |
◆ InitialScreens
| TMap<FGameplayTag, TSoftClassPtr<UUserWidget> > AHUDBase::InitialScreens |
|
protected |
◆ LayersMap
◆ NotificationManagersMap
◆ NotificationTimerHandle
| FTimerHandle AHUDBase::NotificationTimerHandle |
|
private |
◆ PrimaryLayoutClass
| TSubclassOf<UUserWidget> AHUDBase::PrimaryLayoutClass = nullptr |
|
private |
◆ PrimaryLayoutWidget
◆ RadialMenuClass
| TSubclassOf<UUserWidget> AHUDBase::RadialMenuClass = nullptr |
|
private |
◆ RadialMenuWidget
| UUserWidget* AHUDBase::RadialMenuWidget = nullptr |
The documentation for this class was generated from the following files:
- T:/Unreal/Unreal Projects/SpaceAdventure52/SpaceAdventure/Plugins/BaseHelpers/Source/BaseHelpers/Public/HUD/HUDBase.h
- T:/Unreal/Unreal Projects/SpaceAdventure52/SpaceAdventure/Plugins/BaseHelpers/Source/BaseHelpers/Private/HUD/HUDBase.cpp