5#include "Containers/Array.h"
6#include "Containers/Map.h"
15#include "Misc/Optional.h"
30#include "InteractiveTool.generated.h"
91 template <
typename PropType>
105 template <
typename T>
106 auto Requires(
bool& Result,
const T&
A,
const T&
B) ->
decltype(
117 template<
typename Q = PropType,
typename =
typename TEnableIf<TModels_V<CInequalityComparable, Q>>::Type>
127 template<
typename Q = PropType,
typename =
typename TEnableIf<TModels_V<CInequalityComparable, Q>>::Type>
201 check(i >= 0 && i < PropertyWatchers.Num());
202 PropertyWatchers[i]->SilentUpdate();
206 template <
typename PropType>
213 template <
typename PropType>
221 template <
typename PropType>
229 template <
typename PropType>
270 return bIsPropertySetEnabled;
335 bool bIsPropertySetEnabled =
true;
558 bool bLastShowedAcceptWarning =
false;
621 return DefaultToolInfo;
637 DefaultToolInfo.ToolDisplayName = NewName;
653 DefaultToolInfo.ToolIcon =
NewIcon;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_MULTICAST_DELEGATE_TwoParams(DelegateName, Param1Type, Param2Type)
Definition DelegateCombinations.h:58
return true
Definition ExternalRpcRegistry.cpp:601
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
UE_FORCEINLINE_HINT TUniquePtr< T > MakeUnique(TArgs &&... Args)
Definition UniquePtr.h:918
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition CanvasTypes.h:211
Definition UnrealType.h:174
static CORE_API const FText & GetEmpty()
Definition Text.cpp:252
Definition InteractiveTool.h:84
virtual void CheckAndUpdate()=0
virtual void SilentUpdate()=0
virtual ~FPropertyWatcher()=default
Definition InteractiveTool.h:93
TFunction< bool(const PropType &, const PropType &)> FNotEqualTestFunction
Definition InteractiveTool.h:97
TFunction< PropType(void)> FValueGetter
Definition InteractiveTool.h:95
void CheckAndUpdate() final
Definition InteractiveTool.h:154
TPropertyWatcher(const PropType &Property, FChangedCallback OnChangedIn)
Definition InteractiveTool.h:118
TFunction< void(const PropType &)> FChangedCallback
Definition InteractiveTool.h:96
void SilentUpdate() final
Definition InteractiveTool.h:164
TPropertyWatcher(const PropType &Property, FChangedCallback OnChangedIn, FNotEqualTestFunction NotEqualIn)
Definition InteractiveTool.h:136
TPropertyWatcher(FValueGetter GetValueIn, FChangedCallback OnChangedIn, FNotEqualTestFunction NotEqualIn)
Definition InteractiveTool.h:145
TPropertyWatcher(FValueGetter GetValueIn, FChangedCallback OnChangedIn)
Definition InteractiveTool.h:128
Definition InteractiveTool.h:78
int32 WatchProperty(typename TPropertyWatcher< PropType >::FValueGetter GetValueIn, typename TPropertyWatcher< PropType >::FChangedCallback OnChangedIn)
Definition InteractiveTool.h:214
FWatchablePropertySet & operator=(const FWatchablePropertySet &)=delete
int32 WatchProperty(typename TPropertyWatcher< PropType >::FValueGetter GetValueIn, typename TPropertyWatcher< PropType >::FChangedCallback OnChangedIn, typename TPropertyWatcher< PropType >::FNotEqualTestFunction NotEqualsIn)
Definition InteractiveTool.h:230
int32 WatchProperty(const PropType &ValueIn, typename TPropertyWatcher< PropType >::FChangedCallback OnChangedIn)
Definition InteractiveTool.h:207
int32 WatchProperty(const PropType &ValueIn, typename TPropertyWatcher< PropType >::FChangedCallback OnChangedIn, typename TPropertyWatcher< PropType >::FNotEqualTestFunction NotEqualsIn)
Definition InteractiveTool.h:222
FWatchablePropertySet(const FWatchablePropertySet &)=delete
void CheckAndUpdateWatched()
Definition InteractiveTool.h:180
void SilentUpdateWatcherAtIndex(int32 i)
Definition InteractiveTool.h:199
FWatchablePropertySet()=default
void SilentUpdateWatched()
Definition InteractiveTool.h:187
Definition ToolContextInterfaces.h:427
Definition UnrealString.h.inl:34
Definition InteractionMechanic.h:30
Definition UnrealType.h:6865
Definition SlateBrush.h:239
Definition InteractiveTool.h:104
auto Requires(bool &Result, const T &A, const T &B) -> decltype(Result=A !=B)
Definition ObjectPtr.h:488
Definition Optional.h:131
constexpr OptionalType & GetValue()
Definition Optional.h:443
constexpr bool IsSet() const
Definition Optional.h:69