CreateWidgetStacks
CreateWidgetStacks
#Overview
name: CreateWidgetStacks
The value of this variable can be defined or overridden in .ini config files. 5
.ini config files referencing this setting variable.
It is referenced in 3
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of CreateWidgetStacks is to define and configure a list of widget creation tool stacks in Unreal Engine 5’s widget editor tool palette. This setting variable is used to organize and manage different sets of widget creation tools within the editor interface.
CreateWidgetStacks is primarily used by the WidgetEditorToolPalette plugin, which is an experimental feature in Unreal Engine 5. This plugin enhances the widget editor with additional tool palette functionality.
The value of this variable is set in the UCreateWidgetToolSettings class, which inherits from UDeveloperSettings. This suggests that the variable can be configured through the project settings or engine configuration files.
CreateWidgetStacks interacts with other variables and structures within the plugin, such as FCreateWidgetStackInfo and FCreateWidgetToolInfo. These are used to define the individual stacks and tools within each stack.
Developers should be aware that this is part of an experimental plugin, so its behavior and API may change in future engine versions. They should also understand that modifying these settings will directly affect the available tool stacks in the widget editor.
Best practices when using this variable include:
- Carefully planning the organization of widget creation tools into logical stacks.
- Ensuring that the DisplayName for each stack is clear and descriptive.
- Regularly reviewing and updating the tool stacks to match project requirements.
- Being cautious when modifying these settings, as they affect the editor workflow for all team members.
- Documenting any custom configurations to maintain consistency across the development team.
#Setting Variables
#References In INI files
Location: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Config/BaseWidgetEditorToolPalette.ini:2, section: [/Script/WidgetEditorToolPalette.CreateWidgetToolSettings]
- INI Section:
/Script/WidgetEditorToolPalette.CreateWidgetToolSettings
- Raw value:
(DisplayName="Common",WidgetToolInfos=((WidgetClass=Class'"/Script/UMG.Border"',WidgetHotkey=(Key=One,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Button"',WidgetHotkey=(Key=Two,bAlt=True)),(WidgetClass=Class'"/Script/UMG.CheckBox"',WidgetHotkey=(Key=Three,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Image"',WidgetHotkey=(Key=Four,bAlt=True)),(WidgetClass=Class'"/Script/UMG.NamedSlot"',WidgetHotkey=(Key=Five,bAlt=True)),(WidgetClass=Class'"/Script/UMG.ProgressBar"',WidgetHotkey=(Key=Six,bAlt=True)),(WidgetClass=Class'"/Script/UMG.RichTextBlock"',WidgetHotkey=(Key=Seven,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Slider"',WidgetHotkey=(Key=Eight,bAlt=True)),(WidgetClass=Class'"/Script/UMG.TextBlock"',WidgetHotkey=(Key=Nine,bAlt=True))))
- Is Array:
True
Location: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Config/BaseWidgetEditorToolPalette.ini:3, section: [/Script/WidgetEditorToolPalette.CreateWidgetToolSettings]
- INI Section:
/Script/WidgetEditorToolPalette.CreateWidgetToolSettings
- Raw value:
(DisplayName="Input",WidgetToolInfos=((WidgetClass=Class'"/Script/UMG.ComboBoxString"',WidgetHotkey=(Key=I,bAlt=True)),(WidgetClass=Class'"/Script/UMG.EditableText"',WidgetHotkey=(Key=I,bAlt=True)),(WidgetClass=Class'"/Script/UMG.MultiLineEditableText"',WidgetHotkey=(Key=I,bAlt=True)),(WidgetClass=Class'"/Script/UMG.SpinBox"',WidgetHotkey=(Key=I,bAlt=True)),(WidgetClass=Class'"/Script/UMG.EditableTextBox"',WidgetHotkey=(Key=I,bAlt=True)),(WidgetClass=Class'"/Script/UMG.MultiLineEditableTextBox"',WidgetHotkey=(Key=I,bAlt=True))))
- Is Array:
True
Location: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Config/BaseWidgetEditorToolPalette.ini:4, section: [/Script/WidgetEditorToolPalette.CreateWidgetToolSettings]
- INI Section:
/Script/WidgetEditorToolPalette.CreateWidgetToolSettings
- Raw value:
(DisplayName="Lists",WidgetToolInfos=((WidgetClass=Class'"/Script/UMG.ListView"',WidgetHotkey=(Key=L,bAlt=True)),(WidgetClass=Class'"/Script/UMG.TileView"',WidgetHotkey=(Key=L,bAlt=True)),(WidgetClass=Class'"/Script/UMG.TreeView"',WidgetHotkey=(Key=L,bAlt=True))))
- Is Array:
True
Location: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Config/BaseWidgetEditorToolPalette.ini:5, section: [/Script/WidgetEditorToolPalette.CreateWidgetToolSettings]
- INI Section:
/Script/WidgetEditorToolPalette.CreateWidgetToolSettings
- Raw value:
(DisplayName="Panel",WidgetToolInfos=((WidgetClass=Class'"/Script/UMG.CanvasPanel"',WidgetHotkey=(Key=C,bAlt=True)),(WidgetClass=Class'"/Script/UMG.GridPanel"',WidgetHotkey=(Key=G,bAlt=True)),(WidgetClass=Class'"/Script/UMG.HorizontalBox"',WidgetHotkey=(Key=H,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Overlay"',WidgetHotkey=(Key=O,bAlt=True)),(WidgetClass=Class'"/Script/UMG.SafeZone"',WidgetHotkey=(Key=F,bAlt=True)),(WidgetClass=Class'"/Script/UMG.ScaleBox"',WidgetHotkey=(Key=A,bAlt=True)),(WidgetClass=Class'"/Script/UMG.ScrollBox"',WidgetHotkey=(Key=S,bAlt=True)),(WidgetClass=Class'"/Script/UMG.SizeBox"',WidgetHotkey=(Key=Z,bAlt=True)),(WidgetClass=Class'"/Script/UMG.UniformGridPanel"',WidgetHotkey=(Key=U,bAlt=True)),(WidgetClass=Class'"/Script/UMG.VerticalBox"',WidgetHotkey=(Key=V,bAlt=True)),(WidgetClass=Class'"/Script/UMG.WidgetSwitcher"',WidgetHotkey=(Key=W,bAlt=True)),(WidgetClass=Class'"/Script/UMG.WrapBox"',WidgetHotkey=(Key=R,bAlt=True))))
- Is Array:
True
Location: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Config/BaseWidgetEditorToolPalette.ini:6, section: [/Script/WidgetEditorToolPalette.CreateWidgetToolSettings]
- INI Section:
/Script/WidgetEditorToolPalette.CreateWidgetToolSettings
- Raw value:
(DisplayName="Primitive",WidgetToolInfos=((WidgetClass=Class'"/Script/UMG.CircularThrobber"',WidgetHotkey=(Key=P,bAlt=True)),(WidgetClass=Class'"/Script/UMG.MenuAnchor"',WidgetHotkey=(Key=P,bAlt=True)),(WidgetClass=Class'"/Script/UMG.NativeWidgetHost"',WidgetHotkey=(Key=P,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Spacer"',WidgetHotkey=(Key=P,bAlt=True)),(WidgetClass=Class'"/Script/UMG.Throbber"',WidgetHotkey=(Key=P,bAlt=True))))
- Is Array:
True
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Source/WidgetEditorToolPalette/Private/WidgetEditorToolPaletteCommands.cpp:26
Scope (from outer to inner):
file
function void FWidgetEditorToolPaletteCommands::RegisterCommands
Source code excerpt:
const UCreateWidgetToolSettings* Settings = GetDefault<UCreateWidgetToolSettings>();
for (const FCreateWidgetStackInfo& CreateWidgetStack : Settings->CreateWidgetStacks)
{
TSharedPtr<FUICommandInfo> StackCommand;
FUICommandInfo::MakeCommandInfo(
this->AsShared(),
StackCommand,
#Loc: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Source/WidgetEditorToolPalette/Private/WidgetEditorToolPaletteMode.cpp:49
Scope (from outer to inner):
file
function void UWidgetEditorToolPaletteMode::Enter
Source code excerpt:
// Create tool stacks defined in settings
const UCreateWidgetToolSettings* Settings = GetDefault<UCreateWidgetToolSettings>();
for (const FCreateWidgetStackInfo& CreateWidgetStack : Settings->CreateWidgetStacks)
{
const TSharedPtr<FUICommandInfo>& StackCommand = ToolPaletteCommands.CreateWidgetToolStacks[CreateWidgetStack.DisplayName];
ToolStackContext->RegisterToolStack(StackCommand, CreateWidgetStack.DisplayName);
for (const FCreateWidgetToolInfo& CreateWidgetToolInfo : CreateWidgetStack.WidgetToolInfos)
{
#Loc: <Workspace>/Engine/Plugins/Experimental/WidgetEditorToolPalette/Source/WidgetEditorToolPalette/Public/Settings/CreateWidgetToolSettings.h:78
Scope (from outer to inner):
file
class class UCreateWidgetToolSettings : public UDeveloperSettings
Source code excerpt:
/** List of tool stacks to create */
UPROPERTY(EditAnywhere, config, Category=Startup)
TArray<FCreateWidgetStackInfo> CreateWidgetStacks;
};