49 struct FVectorXArgumentsEmpty {};
50 template<
typename ArgumentType>
51 struct FVectorXArguments : FVectorXArgumentsEmpty
53 using WidgetArgsType = ArgumentType;
99 struct FVectorYArgumentsEmpty {};
100 template<
typename ArgumentType>
101 struct FVectorYArguments : FVectorYArgumentsEmpty
103 using WidgetArgsType = ArgumentType;
149 struct FVectorZArgumentsEmpty {};
150 template<
typename ArgumentType>
151 struct FVectorZArguments : FVectorZArgumentsEmpty
153 using WidgetArgsType = ArgumentType;
199 struct FVectorWArgumentsEmpty {};
200 template<
typename ArgumentType>
201 struct FVectorWArguments : FVectorWArgumentsEmpty
203 using WidgetArgsType = ArgumentType;
248 , std::conditional<NumberOfComponents >= 1, FVectorXArguments<FArguments>, FVectorXArgumentsEmpty>::type
249 , std::conditional<NumberOfComponents >= 2, FVectorYArguments<FArguments>, FVectorYArgumentsEmpty>::type
250 , std::conditional<NumberOfComponents >= 3, FVectorZArguments<FArguments>, FVectorZArgumentsEmpty>::type
251 , std::conditional<NumberOfComponents >= 4, FVectorWArguments<FArguments>, FVectorWArgumentsEmpty>::type
253 typedef FArguments WidgetArgsType;
366 if(
X.IsSet() &&
Y.IsSet())
368 return VectorType(
X.GetValue(),
Y.GetValue());
376 if(
X.IsSet() &&
Y.IsSet() &&
Z.IsSet())
378 return VectorType(
X.GetValue(),
Y.GetValue(),
Z.GetValue());
387 if(
X.IsSet() &&
Y.IsSet() &&
Z.IsSet() && W.
IsSet())
389 return VectorType(
X.GetValue(),
Y.GetValue(),
Z.GetValue(), W.
GetValue());
403 InArgs._OnXChanged.ExecuteIfBound(
Vector.X);
407 InArgs._OnYChanged.ExecuteIfBound(
Vector.Y);
411 InArgs._OnZChanged.ExecuteIfBound(
Vector.Z);
415 InArgs._OnWChanged.ExecuteIfBound(
Vector.W);
478 const FArguments& InArgs,
492 if (InArgs._bColorAxisLabels)
509 HorizontalBox->AddSlot()
512 .AllowSpin(InArgs._AllowSpin)
513 .EditableTextBoxStyle(InArgs._EditableTextBoxStyle)
514 .SpinBoxStyle(InArgs._SpinBoxStyle)
520 .UndeterminedString(
NSLOCTEXT(
"SVectorInputBox",
"MultipleValues",
"Multiple Values"))
522 .TypeInterface(InArgs._TypeInterface)
523 .MinFractionalDigits(InArgs._TypeInterface ? InArgs._TypeInterface->GetMinFractionalDigits() :
TOptional<
int32>())
555 InArgs._XDisplayName,
559 InArgs._OnXCommitted,
560 InArgs._ToggleXChecked,
561 InArgs._OnToggleXChanged,
562 InArgs._ContextMenuExtenderX,
563 InArgs._OnXBeginSliderMovement,
564 InArgs._OnXEndSliderMovement
576 InArgs._YDisplayName,
580 InArgs._OnYCommitted,
581 InArgs._ToggleYChecked,
582 InArgs._OnToggleYChanged,
583 InArgs._ContextMenuExtenderY,
584 InArgs._OnYBeginSliderMovement,
585 InArgs._OnYEndSliderMovement
597 InArgs._ZDisplayName,
601 InArgs._OnZCommitted,
602 InArgs._ToggleZChecked,
603 InArgs._OnToggleZChanged,
604 InArgs._ContextMenuExtenderZ,
605 InArgs._OnZBeginSliderMovement,
606 InArgs._OnZEndSliderMovement
618 InArgs._WDisplayName,
622 InArgs._OnWCommitted,
623 InArgs._ToggleWChecked,
624 InArgs._OnToggleWChanged,
625 InArgs._ContextMenuExtenderW,
626 InArgs._OnWBeginSliderMovement,
627 InArgs._OnWEndSliderMovement
635 int32 ComponentIndex,
647 return OptionalVectorValue.GetValue()[ComponentIndex];
659 int32 ComponentIndex,
665 return FOnNumericValueChanged::CreateLambda(
671 VectorType VectorValue = OptionalVectorValue.GetValue();
672 VectorValue[ComponentIndex] = InValue;
674 ConstrainVector.ExecuteIfBound(ComponentIndex, OptionalVectorValue.GetValue(), VectorValue);
675 OnVectorValueChanged.Execute(VectorValue);
679 OnComponentChanged.ExecuteIfBound(InValue);
690 int32 ComponentIndex,
696 return FOnNumericValueCommitted::CreateLambda(
702 VectorType VectorValue = OptionalVectorValue.GetValue();
703 VectorValue[ComponentIndex] = InValue;
705 if(ConstrainVector.IsBound())
707 ConstrainVector.Execute(ComponentIndex, OptionalVectorValue.GetValue(), VectorValue);
724 template<
typename EventType,
typename...
ArgsType>
725 EventType CreatePerComponentSliderMovementEvent(
731 return EventType::CreateLambda(
734 OnSliderMovement.ExecuteIfBound(Args...);
735 OnComponentSliderMovement.ExecuteIfBound(Args...);
static CORE_API FText FromString(const ANSICHAR *String)
Definition Text.cpp:1081
static CORE_API FText Format(FTextFormat Fmt, const FFormatNamedArguments &InArguments)
Definition Text.cpp:469
CORE_API const FString & ToString() const
Definition Text.cpp:1263
Definition SNumericEntryBox.h:37
static TSharedRef< SWidget > BuildNarrowColorLabel(FLinearColor LabelColor)
Definition SNumericEntryBox.h:458
Type
Definition SlateEnums.h:291
Definition SlateTypes.h:1019