12#include "CoreMinimal.h"
14#include "WSModernCard.h"
15#include "Components/EditableText.h"
16#include "Widgets/WSBase.h"
17#include "Components/HorizontalBox.h"
18#include "Components/InvalidationBox.h"
19#include "Widgets/Custom/CustomMultiLineTextBox.h"
20#include "Components/Overlay.h"
21#include "Components/ScaleBox.h"
22#include "Components/ScrollBox.h"
23#include "Components/SizeBox.h"
24#include "Components/VerticalBox.h"
25#include "Components/TextBlock.h"
26#include "Widgets/WSTextFieldBase.h"
27#include "Widgets/Custom/WSEditableText.h"
28#include "WSModernTextField.generated.h"
40 virtual TSharedRef<SWidget> RebuildWidget()
override;
41 virtual int32 NativePaint(
const FPaintArgs& Args,
const FGeometry& AllottedGeometry,
const FSlateRect& MyCullingRect, FSlateWindowElementList& OutDrawElements, int32 LayerId,
const FWidgetStyle& InWidgetStyle,
bool bParentEnabled)
const override;
42 virtual void SynchronizeProperties()
override;
43 virtual void InitializeStyling()
override;
44 virtual void UpdateStyling()
override;
47 EPalette GetColorByState()
const;
50 FSlateBrush ScrollBarBrush;
54 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
55 UInvalidationBox* Retainer =
nullptr;
57 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
58 UVerticalBox* VBox =
nullptr;
60 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
61 UTextBlock* LabelItem =
nullptr;
63 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
64 USizeBox* SizeBox =
nullptr;
66 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
67 UOverlay* Overlay =
nullptr;
69 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
70 UScaleBox* BackgroundScaleBox =
nullptr;
72 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
73 UOverlay* BackgroundOverlay =
nullptr;
75 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
76 UImage* DropShadow =
nullptr;
78 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
79 UImage* Background =
nullptr;
81 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
82 UImage* BackgroundOutline =
nullptr;
84 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
85 UHorizontalBox* HBox =
nullptr;
87 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
88 UScaleBox* LeadingIconScaleBox =
nullptr;
90 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
91 UImage* LeadingIconItem =
nullptr;
93 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
94 UScaleBox* TrailingIconScaleBox =
nullptr;
96 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
97 UImage* TrailingIconItem =
nullptr;
99 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
102 UPROPERTY(BlueprintReadOnly, Category =
"Widgets")
111 UPROPERTY(EditAnywhere, Category =
"Widget Studio", meta = (ClampMin =
"0", UIMin =
"0"), AdvancedDisplay)
112 FVector2D MaxDimensions = FVector2D(0, 0);
115 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Style")
116 ECornerStyle CornerStyle = ECornerStyle::Rounded;
121 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Icon")
122 ETextFieldIconVisibility IconVisibility = ETextFieldIconVisibility::Hidden;
125 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Icon")
126 EIconItem LeadingIcon = EIconItem::LockClose;
129 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Icon")
130 EIconItem TrailingIcon = EIconItem::Heart;
133 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Icon", Meta = (ClampMin =
"12", UIMin =
"12"))
140 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Color")
141 EPalette BackgroundColor = EPalette::TertiaryBackground;
144 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Color")
145 EPalette DefaultOutline = EPalette::Transparent;
148 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Color")
149 EPalette ContentColor = EPalette::PrimaryContent;
152 UPROPERTY(EditAnywhere, Category =
"Widget Studio|Deprecated",Meta=(DeprecatedProperty, DeprecationMessage=
"Per-widget labeling is no longer supported. Place this widget in the Label Widget instead."))
153 EPalette LabelColor = EPalette::PrimaryContent;
160 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
161 bool IsMultiLineSupportEnabled()
const;
164 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
165 ETextFieldIconVisibility GetIconVisibility()
const;
168 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
169 EIconItem GetLeadingIcon()
const;
172 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
173 EIconItem GetTrailingIcon()
const;
176 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
177 EPalette GetBackgroundColor()
const;
180 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
181 EPalette GetContentColor()
const;
184 UFUNCTION(BlueprintPure, Category =
"Widget Studio|Helper")
185 float GetIconSize()
const;
193 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
194 void SetMultiLineSupportEnabled(
bool bNewState);
200 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
201 void SetIconVisibility(ETextFieldIconVisibility NewState);
207 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
208 void SetLeadingIcon(EIconItem NewIcon);
214 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
215 void SetTrailingIcon(EIconItem NewIcon);
221 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
222 void SetBackgroundColor(EPalette NewColor);
228 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
229 void SetContentColor(EPalette NewColor);
235 UFUNCTION(BlueprintCallable, Category =
"Widget Studio|Modifier")
236 void SetIconSize(
float NewSize);
Definition: CustomMultiLineTextBox.h:14
A customized EditableText widget that exposes required functionality.
Definition: WSEditableText.h:14
A modern styled text field.
Definition: WSModernTextField.h:35
A Widget Studio abstract text field without any pre-defined styling or widgets.
Definition: WSTextFieldBase.h:59