#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: Slate

#include "Basic.hpp"

#include "InputCore_structs.hpp"
#include "CoreUObject_structs.hpp"


SDK_NAMESPACE_START

// Enum Slate.EVirtualKeyboardTrigger
// NumValues: 0x0003
enum class EVirtualKeyboardTrigger : uint8
{
	OnFocusByPointer                         = 0,
	OnAllFocusEvents                         = 1,
	EVirtualKeyboardTrigger_MAX              = 2,
};

// Enum Slate.EVirtualKeyboardDismissAction
// NumValues: 0x0004
enum class EVirtualKeyboardDismissAction : uint8
{
	TextChangeOnDismiss                      = 0,
	TextCommitOnAccept                       = 1,
	TextCommitOnDismiss                      = 2,
	EVirtualKeyboardDismissAction_MAX        = 3,
};

// Enum Slate.ESelectionMode
// NumValues: 0x0005
enum class ESelectionMode : uint8
{
	None                                     = 0,
	Single                                   = 1,
	SingleToggle                             = 2,
	Multi                                    = 3,
	ESelectionMode_MAX                       = 4,
};

// Enum Slate.ETableViewMode
// NumValues: 0x0004
enum class ETableViewMode : uint8
{
	List                                     = 0,
	Tile                                     = 1,
	Tree                                     = 2,
	ETableViewMode_MAX                       = 3,
};

// Enum Slate.EMultiBoxType
// NumValues: 0x000A
enum class EMultiBoxType : uint8
{
	MenuBar                                  = 0,
	ToolBar                                  = 1,
	VerticalToolBar                          = 2,
	SlimHorizontalToolBar                    = 3,
	UniformToolBar                           = 4,
	Menu                                     = 5,
	ButtonRow                                = 6,
	SlimHorizontalUniformToolBar             = 7,
	SlimWrappingToolBar                      = 8,
	EMultiBoxType_MAX                        = 9,
};

// Enum Slate.EMultiBlockType
// NumValues: 0x000A
enum class EMultiBlockType : uint8
{
	None                                     = 0,
	ButtonRow                                = 1,
	EditableText                             = 2,
	Heading                                  = 3,
	MenuEntry                                = 4,
	Separator                                = 5,
	ToolBarButton                            = 6,
	ToolBarComboButton                       = 7,
	Widget                                   = 8,
	EMultiBlockType_MAX                      = 9,
};

// Enum Slate.EInputPreProcessorType
// NumValues: 0x0009
enum class EInputPreProcessorType : uint8
{
	Overlay                                  = 0,
	PreEngine                                = 1,
	Engine                                   = 2,
	PreEditor                                = 3,
	Editor                                   = 4,
	PreGame                                  = 5,
	Game                                     = 6,
	Count                                    = 7,
	EInputPreProcessorType_MAX               = 8,
};

// Enum Slate.EPopupLayoutMode
// NumValues: 0x0003
enum class EPopupLayoutMode : uint8
{
	Menu                                     = 0,
	ToolTip                                  = 1,
	EPopupLayoutMode_MAX                     = 2,
};

// Enum Slate.EDescendantScrollDestination
// NumValues: 0x0005
enum class EDescendantScrollDestination : uint8
{
	IntoView                                 = 0,
	TopOrLeft                                = 1,
	Center                                   = 2,
	BottomOrRight                            = 3,
	EDescendantScrollDestination_MAX         = 4,
};

// Enum Slate.EScrollWhenFocusChanges
// NumValues: 0x0004
enum class EScrollWhenFocusChanges : uint8
{
	NoScroll                                 = 0,
	InstantScroll                            = 1,
	AnimatedScroll                           = 2,
	EScrollWhenFocusChanges_MAX              = 3,
};

// Enum Slate.ECustomizedToolMenuVisibility
// NumValues: 0x0004
enum class ECustomizedToolMenuVisibility : uint32
{
	None                                     = 0,
	Visible                                  = 1,
	Hidden                                   = 2,
	ECustomizedToolMenuVisibility_MAX        = 3,
};

// Enum Slate.EUserInterfaceActionType
// NumValues: 0x0007
enum class EUserInterfaceActionType : uint8
{
	None                                     = 0,
	Button                                   = 1,
	ToggleButton                             = 2,
	RadioButton                              = 3,
	Check                                    = 4,
	CollapsedButton                          = 5,
	EUserInterfaceActionType_MAX             = 6,
};

// Enum Slate.EMultipleKeyBindingIndex
// NumValues: 0x0004
enum class EMultipleKeyBindingIndex : uint8
{
	Primary                                  = 0,
	Secondary                                = 1,
	NumChords                                = 2,
	EMultipleKeyBindingIndex_MAX             = 3,
};

// Enum Slate.ETextJustify
// NumValues: 0x0006
enum class ETextJustify : uint8
{
	Left                                     = 0,
	Center                                   = 1,
	Right                                    = 2,
	InvariantLeft                            = 3,
	InvariantRight                           = 4,
	ETextJustify_MAX                         = 5,
};

// Enum Slate.ETextWrappingPolicy
// NumValues: 0x0003
enum class ETextWrappingPolicy : uint8
{
	DefaultWrapping                          = 0,
	AllowPerCharacterWrapping                = 1,
	ETextWrappingPolicy_MAX                  = 2,
};

// Enum Slate.ETextFlowDirection
// NumValues: 0x0005
enum class ETextFlowDirection : uint8
{
	Auto                                     = 0,
	LeftToRight                              = 1,
	RightToLeft                              = 2,
	Culture                                  = 3,
	ETextFlowDirection_MAX                   = 4,
};

// Enum Slate.EStretchDirection
// NumValues: 0x0004
enum class EStretchDirection : uint8
{
	Both                                     = 0,
	DownOnly                                 = 1,
	UpOnly                                   = 2,
	EStretchDirection_MAX                    = 3,
};

// Enum Slate.EStretch
// NumValues: 0x000A
enum class EStretch : uint8
{
	None                                     = 0,
	Fill                                     = 1,
	ScaleToFit                               = 2,
	ScaleToFitX                              = 3,
	ScaleToFitY                              = 4,
	ScaleToFill                              = 5,
	ScaleBySafeZone                          = 6,
	UserSpecified                            = 7,
	UserSpecifiedWithClipping                = 8,
	EStretch_MAX                             = 9,
};

// Enum Slate.EProgressBarFillType
// NumValues: 0x0008
enum class EProgressBarFillType : uint8
{
	LeftToRight                              = 0,
	RightToLeft                              = 1,
	FillFromCenter                           = 2,
	FillFromCenterHorizontal                 = 3,
	FillFromCenterVertical                   = 4,
	TopToBottom                              = 5,
	BottomToTop                              = 6,
	EProgressBarFillType_MAX                 = 7,
};

// Enum Slate.EProgressBarFillStyle
// NumValues: 0x0003
enum class EProgressBarFillStyle : uint8
{
	Mask                                     = 0,
	Scale                                    = 1,
	EProgressBarFillStyle_MAX                = 2,
};

// Enum Slate.EListItemAlignment
// NumValues: 0x0008
enum class EListItemAlignment : uint8
{
	EvenlyDistributed                        = 0,
	EvenlySize                               = 1,
	EvenlyWide                               = 2,
	LeftAligned                              = 3,
	RightAligned                             = 4,
	CenterAligned                            = 5,
	Fill                                     = 6,
	EListItemAlignment_MAX                   = 7,
};

// Enum Slate.EScrollIntoViewAlignment
// NumValues: 0x0005
enum class EScrollIntoViewAlignment : uint8
{
	IntoView                                 = 0,
	TopOrLeft                                = 1,
	CenterAligned                            = 2,
	BottomOrRight                            = 3,
	EScrollIntoViewAlignment_MAX             = 4,
};

// ScriptStruct Slate.CustomizedToolMenuSection
// 0x0004 (0x0004 - 0x0000)
struct FCustomizedToolMenuSection final
{
public:
	ECustomizedToolMenuVisibility                 Visibility;                                        // 0x0000(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCustomizedToolMenuSection;

// ScriptStruct Slate.VirtualKeyboardOptions
// 0x0001 (0x0001 - 0x0000)
struct FVirtualKeyboardOptions final
{
public:
	bool                                          bEnableAutocorrect;                                // 0x0000(0x0001)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FVirtualKeyboardOptions;

// ScriptStruct Slate.InputChord
// 0x0020 (0x0020 - 0x0000)
struct FInputChord final
{
public:
	struct FKey                                   Key;                                               // 0x0000(0x0018)(Edit, BlueprintVisible, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         bShift : 1;                                        // 0x0018(0x0001)(BitIndex: 0x00, PropSize: 0x0001 (Edit, BlueprintVisible, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         bCtrl : 1;                                         // 0x0018(0x0001)(BitIndex: 0x01, PropSize: 0x0001 (Edit, BlueprintVisible, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         bAlt : 1;                                          // 0x0018(0x0001)(BitIndex: 0x02, PropSize: 0x0001 (Edit, BlueprintVisible, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         bCmd : 1;                                          // 0x0018(0x0001)(BitIndex: 0x03, PropSize: 0x0001 (Edit, BlueprintVisible, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic))
	uint8                                         Pad_19[0x7];                                       // 0x0019(0x0007)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
DUMPER7_ASSERTS_FInputChord;

// ScriptStruct Slate.CustomizedToolMenuEntry
// 0x0004 (0x0004 - 0x0000)
struct FCustomizedToolMenuEntry final
{
public:
	ECustomizedToolMenuVisibility                 Visibility;                                        // 0x0000(0x0004)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCustomizedToolMenuEntry;

// ScriptStruct Slate.Anchors
// 0x0020 (0x0020 - 0x0000)
struct FAnchors final
{
public:
	struct FVector2D                              Minimum;                                           // 0x0000(0x0010)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	struct FVector2D                              Maximum;                                           // 0x0010(0x0010)(Edit, BlueprintVisible, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FAnchors;

// ScriptStruct Slate.CharRange
// 0x0004 (0x0004 - 0x0000)
struct FCharRange final
{
public:
	uint16                                        First;                                             // 0x0000(0x0002)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint16                                        Last;                                              // 0x0002(0x0002)(Edit, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCharRange;

// ScriptStruct Slate.CharRangeList
// 0x0010 (0x0010 - 0x0000)
struct FCharRangeList final
{
public:
	TArray<struct FCharRange>                     Ranges;                                            // 0x0000(0x0010)(Edit, ZeroConstructor, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCharRangeList;

// ScriptStruct Slate.InputPreprocessorRegistrationKey
// 0x0008 (0x0008 - 0x0000)
struct FInputPreprocessorRegistrationKey final
{
public:
	EInputPreProcessorType                        Type;                                              // 0x0000(0x0001)(ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	uint8                                         Pad_1[0x3];                                        // 0x0001(0x0003)(Fixing Size After Last Property [ Dumper-7 ])
	int32                                         Priority;                                          // 0x0004(0x0004)(ZeroConstructor, Config, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FInputPreprocessorRegistrationKey;

// ScriptStruct Slate.CustomizedToolMenuNameArray
// 0x0010 (0x0010 - 0x0000)
struct FCustomizedToolMenuNameArray final
{
public:
	TArray<class FName>                           Names;                                             // 0x0000(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCustomizedToolMenuNameArray;

// ScriptStruct Slate.ToolMenuProfile
// 0x01A0 (0x01A0 - 0x0000)
struct FToolMenuProfile
{
public:
	class FName                                   Name;                                              // 0x0000(0x0008)(ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash, NativeAccessSpecifierPublic)
	TMap<class FName, struct FCustomizedToolMenuEntry> Entries;                                      // 0x0008(0x0050)(NativeAccessSpecifierPublic)
	TMap<class FName, struct FCustomizedToolMenuSection> Sections;                                   // 0x0058(0x0050)(NativeAccessSpecifierPublic)
	TArray<class FName>                           SuppressExtenders;                                 // 0x00A8(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
	uint8                                         Pad_B8[0xE8];                                      // 0x00B8(0x00E8)(Fixing Struct Size After Last Property [ Dumper-7 ])
};
DUMPER7_ASSERTS_FToolMenuProfile;

// ScriptStruct Slate.CustomizedToolMenu
// 0x0060 (0x0200 - 0x01A0)
struct FCustomizedToolMenu final : public FToolMenuProfile
{
public:
	TMap<class FName, struct FCustomizedToolMenuNameArray> EntryOrder;                               // 0x01A0(0x0050)(NativeAccessSpecifierPublic)
	TArray<class FName>                           SectionOrder;                                      // 0x01F0(0x0010)(ZeroConstructor, NativeAccessSpecifierPublic)
};
DUMPER7_ASSERTS_FCustomizedToolMenu;

SDK_NAMESPACE_END
