UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
GameMenuWidgetStyle.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "UObject/NameTypes.h"
8#include "Layout/Margin.h"
9#include "Sound/SlateSound.h"
10#include "Styling/SlateColor.h"
11#include "Styling/SlateBrush.h"
14#include "GameMenuWidgetStyle.generated.h"
15
16UENUM()
18{
19 enum Type : int
20 {
21 /* Single one page menu. */
23 /* Side by side menu. Main menu on left, any sub menu on right. */
25 };
26}
27
28USTRUCT()
30{
32
34 virtual ~FGameMenuStyle();
35
36 // FSlateWidgetStyle
37 virtual void GetResources(TArray<const FSlateBrush*>& OutBrushes) const override;
38 static const FName TypeName;
39 virtual const FName GetTypeName() const override { return TypeName; };
40 static const FGameMenuStyle& GetDefault();
41
45 UPROPERTY(EditAnywhere, Category = Brushes)
46 FSlateBrush MenuTopBrush;
47 FGameMenuStyle& SetMenuTopBrush(const FSlateBrush& InMenuTopBrush) { MenuTopBrush = InMenuTopBrush; return *this; }
48
52 UPROPERTY(EditAnywhere, Category = Brushes)
53 FSlateBrush MenuFrameBrush;
54 FGameMenuStyle& SetMenuFrameBrush(const FSlateBrush& InMenuFrameBrush) { MenuFrameBrush = InMenuFrameBrush; return *this; }
55
59 UPROPERTY(EditAnywhere, Category = Brushes)
60 FSlateBrush MenuBackgroundBrush;
61 FGameMenuStyle& SetMenuBackgroundBrush(const FSlateBrush& InMenuBackgroundBrush) { MenuBackgroundBrush = InMenuBackgroundBrush; return *this; }
62
66 UPROPERTY(EditAnywhere, Category = Brushes)
67 FSlateBrush MenuSelectBrush;
68 FGameMenuStyle& SetMenuSelectBrush(const FSlateBrush& InMenuSelectBrush) { MenuSelectBrush = InMenuSelectBrush; return *this; }
69
73 UPROPERTY(EditAnywhere, Category = Sound)
74 FSlateSound MenuEnterSound;
75 FGameMenuStyle& SetMenuEnterSound(const FSlateSound& InMenuEnterSound) { MenuEnterSound = InMenuEnterSound; return *this; }
76
80 UPROPERTY(EditAnywhere, Category = Sound)
81 FSlateSound MenuBackSound;
82 FGameMenuStyle& SetMenuBackSound(const FSlateSound& InMenuBackSound) { MenuBackSound = InMenuBackSound; return *this; }
83
87 UPROPERTY(EditAnywhere, Category = Sound)
88 FSlateSound OptionChangeSound;
89 FGameMenuStyle& SetOptionChangeSound(const FSlateSound& InOptionChangeSound) { OptionChangeSound = InOptionChangeSound; return *this; }
90
94 UPROPERTY(EditAnywhere, Category = Sound)
95 FSlateSound MenuItemChangeSound;
96 FGameMenuStyle& SetMenuItemChangeSound(const FSlateSound& InMenuItemChangeSound) { MenuItemChangeSound = InMenuItemChangeSound; return *this; }
97
101 UPROPERTY(EditAnywhere, Category = Sound)
102 FSlateSound MenuItemInactiveSound;
103 FGameMenuStyle& SetMenuItemInactiveSound(const FSlateSound& InMenuItemInactiveSound) { MenuItemInactiveSound = InMenuItemInactiveSound; return *this; }
104
108 UPROPERTY(EditAnywhere, Category = Sound)
109 FSlateSound MenuItemChosenSound;
110 FGameMenuStyle& SetMenuItemChosenSound(const FSlateSound& InMenuItemChosenSound) { MenuItemChosenSound = InMenuItemChosenSound; return *this; }
111
115 UPROPERTY(EditAnywhere, Category = Layout)
116 float LeftMarginPercent;
117 FGameMenuStyle& SetMenuLeftMarginPercent(const float InLeftMarginPercent) { LeftMarginPercent = InLeftMarginPercent; return *this; }
118
122 UPROPERTY(EditAnywhere, Category = Layout)
123 float SubMenuMarginPercent;
124 FGameMenuStyle& SetSubMenuMarginPercent(const float InSubMenuMarginPercent) { SubMenuMarginPercent = InSubMenuMarginPercent; return *this; }
125
129 UPROPERTY(EditAnywhere, Category = Layout)
131 FGameMenuStyle& SetMenuTitleColor(const GameMenuLayoutType::Type InLayoutType) { LayoutType = InLayoutType; return *this; }
132
136 UPROPERTY(EditAnywhere, Category = Layout)
137 FMargin TitleBorderMargin;
138 FGameMenuStyle& SetTitleBorderMargin(const FMargin InTitleBorderMargin) { TitleBorderMargin = InTitleBorderMargin; return *this; }
139
143 UPROPERTY(EditAnywhere, Category = Layout)
144 FMargin ItemBorderMargin;
145 FGameMenuStyle& SetItemBorderMargin(const FMargin InItemBorderMargin) { ItemBorderMargin = InItemBorderMargin; return *this; }
146
150 UPROPERTY(EditAnywhere, Category = Layout)
151 TEnumAsByte<EHorizontalAlignment> TitleHorizontalAlignment;
152 FGameMenuStyle& SetTitleHorizontalAlignment(const EHorizontalAlignment InTitleHorizontalAlignment) { TitleHorizontalAlignment = InTitleHorizontalAlignment; return *this; }
153
157 UPROPERTY(EditAnywhere, Category = Layout)
158 TEnumAsByte<EVerticalAlignment> TitleVerticalAlignment;
159 FGameMenuStyle& SetTitleVerticalAlignment(const EVerticalAlignment InTitleVerticalAlignment) { TitleVerticalAlignment = InTitleVerticalAlignment; return *this; }
160
164 UPROPERTY(EditAnywhere, Category = Layout)
165 TEnumAsByte<EVerticalAlignment> PanelsVerticalAlignment;
166 FGameMenuStyle& SetPanelsVerticalAlignment(const EVerticalAlignment InPanelsVerticalAlignment) { PanelsVerticalAlignment = InPanelsVerticalAlignment; return *this; }
167
171 UPROPERTY(EditAnywhere, Category = Animation)
172 float AnimationSpeed;
173 FGameMenuStyle& SetMainAnimDuration(const float InAnimationSpeed) { AnimationSpeed = InAnimationSpeed; return *this; }
174
178 UPROPERTY(EditAnywhere, Category = Color)
179 FSlateColor TextColor;
180 FGameMenuStyle& SetTextColor(const FSlateColor InTextColor) { TextColor = InTextColor; return *this; }
181};
182
183
186UCLASS(hidecategories = Object, MinimalAPI)
188{
190
191public:
193 UPROPERTY(Category = Appearance, EditAnywhere, meta = (ShowOnlyInnerProperties))
194 FGameMenuStyle MenuStyle;
195
196 virtual const struct FSlateWidgetStyle* const GetStyle() const override
197 {
198 return static_cast< const struct FSlateWidgetStyle* >(&MenuStyle);
199 }
200};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
const T * GetDefault()
Definition UObjectGlobals.h:2155
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
USkinnedMeshComponent float
Definition SkinnedMeshComponent.h:60
EHorizontalAlignment
Definition SlateEnums.h:174
EVerticalAlignment
Definition SlateEnums.h:194
Definition NameTypes.h:617
Definition Array.h:670
Definition EnumAsByte.h:22
Definition GameMenuWidgetStyle.h:188
Definition SlateWidgetStyleContainerBase.h:21
Definition GameMenuWidgetStyle.h:18
Type
Definition GameMenuWidgetStyle.h:20
@ SideBySide
Definition GameMenuWidgetStyle.h:24
Definition GameMenuWidgetStyle.h:30
static const FName TypeName
Definition GameMenuWidgetStyle.h:38
virtual const FName GetTypeName() const override
Definition GameMenuWidgetStyle.h:39
Definition Margin.h:17
Definition SlateBrush.h:239
Definition SlateColor.h:42
Definition SlateSound.h:16
Definition SlateWidgetStyle.h:16