UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
STextComboBox.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 "Misc/Attribute.h"
7#include "Layout/Margin.h"
11#include "Widgets/SWidget.h"
13#include "Styling/SlateTypes.h"
14#include "Styling/CoreStyle.h"
17
22{
23public:
24
27
29 : _ComboBoxStyle(&FCoreStyle::Get().GetWidgetStyle< FComboBoxStyle >("ComboBox"))
30 , _ButtonStyle(nullptr)
31 , _ColorAndOpacity( FSlateColor::UseForeground() )
32 , _ContentPadding(_ComboBoxStyle->ContentPadding)
34 {}
35
37
38
40
41
43
44
45 SLATE_ATTRIBUTE( FSlateColor, ColorAndOpacity )
46
47
49
50
51 SLATE_ATTRIBUTE( FMargin, ContentPadding )
52
53
54 SLATE_EVENT( FOnTextSelectionChanged, OnSelectionChanged)
55
56
57 SLATE_EVENT( FOnComboBoxOpening, OnComboBoxOpening )
58
59
61
62
65
66 SLATE_API void Construct( const FArguments& InArgs );
67
70
72
75 {
76 return SelectedItem;
77 }
78
84
90
93 {
94 StringCombo->ClearItemsSource();
95 }
96
99 {
100 StringCombo->SetStyle(InComboStyle);
101 }
102
104 bool IsOpen() const
105 {
106 return StringCombo->IsOpen();
107 }
108
111
114
115private:
116 TSharedPtr<FString> OnGetSelection() const {return SelectedItem;}
117
119 SLATE_API void OnSelectionChanged (TSharedPtr<FString> Selection, ESelectInfo::Type SelectInfo);
120
122 SLATE_API FText GetSelectedTextLabel() const;
123
124 SLATE_API FText GetItemTextLabel(TSharedPtr<FString> StringItem) const;
125
126private:
127
129 FGetTextComboLabel GetTextLabelForItem;
130
132 TSharedPtr<FString> SelectedItem;
133
136
139
141 FOnTextSelectionChanged SelectionChanged;
142
145};
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define SLATE_STYLE_ARGUMENT(ArgType, ArgName)
Definition DeclarativeSyntaxSupport.h:280
#define SLATE_ATTRIBUTE(AttrType, AttrName)
Definition DeclarativeSyntaxSupport.h:192
#define SLATE_EVENT(DelegateName, EventName)
Definition DeclarativeSyntaxSupport.h:458
#define SLATE_END_ARGS()
Definition DeclarativeSyntaxSupport.h:116
#define SLATE_ARGUMENT(ArgType, ArgName)
Definition DeclarativeSyntaxSupport.h:208
#define SLATE_ITEMS_SOURCE_ARGUMENT(ArgType, ArgName)
Definition IItemsSource.h:20
Definition CoreStyle.h:15
Definition Text.h:385
void SetStyle(const FComboBoxStyle *InStyle)
Definition SComboBox.h:377
void ClearItemsSource()
Definition SComboBox.h:424
void SetItemsSource(const TArray< OptionType > *InListItemsSource)
Definition SComboBox.h:412
Definition SCompoundWidget.h:22
Definition STextComboBox.h:22
void SetItemsSource(const TArray< TSharedPtr< FString > > *InListItemsSource)
Definition STextComboBox.h:80
SLATE_API void RefreshOptions()
Definition STextComboBox.cpp:78
bool IsOpen() const
Definition STextComboBox.h:104
SLATE_API TSharedRef< SWidget > MakeItemWidget(TSharedPtr< FString > StringItem)
Definition STextComboBox.cpp:55
void SetStyle(const FComboBoxStyle *InComboStyle)
Definition STextComboBox.h:98
SLATE_API void ClearSelection()
Definition STextComboBox.cpp:83
void SetItemsSource(TSharedRef<::UE::Slate::Containers::TObservableArray< TSharedPtr< FString > > > InListItemsSource)
Definition STextComboBox.h:86
SLATE_API void SetSelectedItem(TSharedPtr< FString > NewSelection)
Definition STextComboBox.cpp:73
TSlateDelegates< TSharedPtr< FString > >::FOnSelectionChanged FOnTextSelectionChanged
Definition STextComboBox.h:26
void ClearItemsSource()
Definition STextComboBox.h:92
SLATE_API void Construct(const FArguments &InArgs)
Definition STextComboBox.cpp:6
TSharedPtr< FString > GetSelectedItem()
Definition STextComboBox.h:74
SLATE_BEGIN_ARGS(STextComboBox)
Definition STextComboBox.h:28
DECLARE_DELEGATE_RetVal_OneParam(FString, FGetTextComboLabel, TSharedPtr< FString >)
Definition SWidget.h:165
Definition Array.h:670
Definition SharedPointer.h:692
Definition SharedPointer.h:153
Definition SlateDelegates.h:134
Type
Definition SlateEnums.h:311
Definition SlateTypes.h:509
Definition SlateTypes.h:742
Definition Margin.h:17
Definition SlateColor.h:42
Definition SlateFontInfo.h:147
Definition ObservableArray.h:187