5#include "CoreMinimal.h"
7#include "Styling/SlateBrush.h"
8#include "KnobLogic.generated.h"
29class TOUCHINTERFACE_API
UKnobLogic : public UComponentLogic
39 virtual void InitSwitch();
42 virtual void OnPress_Implementation(
const FGeometry& ComponentGeometry,
const FPointerEvent& PointerEvent)
override;
43 virtual void OnMove_Implementation(
const FGeometry& ComponentGeometry,
const FPointerEvent& PointerEvent)
override;
44 virtual void OnRelease_Implementation(
const FGeometry& ComponentGeometry,
const FPointerEvent& PointerEvent)
override;
54 float GetKnobInput(
const bool bMapTo360)
const;
69 virtual void SendFreeInputValue(
const FVector2D&
Offset);
95 uint8 bBackToCenter:1;
108 uint8 bAbsoluteValue:1;
111 uint8 bMapRangeTo360:1;
116 float MinDeltaToSendEvent;
125 float MinRotationAngle;
129 float MaxRotationAngle;
141 uint8 bContinuousInput:1;
145 uint8 bCenterOrigin:1;
152 uint8 bCustomLocation:1;
164 uint8 bCenterSwitch:1;
170 TArray<
float> SwitchLocations;
180 FSlateBrush KnobBrush;
197 float CurrentKnobArtRotation;
200 float CurrentKnobLogicRotation;
202 FVector2D CurrentOffset;
203 FVector2D PreviousOffset;
205 TArray<
float> SwitchDesiredPositions;
207 float StartKnobRotation;
209 FVector2D PressOffset;
BlueprintType
Definition ComponentDecorator_Animation.h:40
EKnobMode
Definition KnobLogic.h:14
@ InRange
Definition KnobLogic.h:19
@ Free
Definition KnobLogic.h:16
@ Switch
Definition KnobLogic.h:22
Definition ComponentDecorator.h:36
BlueprintReadOnly FVector2D Offset
Definition ComponentDecorator.h:183
Category
Definition ComponentDecorator.h:80
BlueprintCallable
Definition ComponentDecorator.h:80
BlueprintReadOnly TObjectPtr< UInputAction > InputAction
Definition KnobLogic.h:73
EditAnywhere
Definition KnobLogic.h:72
meta
Definition KnobLogic.h:77
BlueprintReadOnly
Definition KnobLogic.h:77
BlueprintReadOnly uint8 bSnapOnPress
Definition KnobLogic.h:86
TWeakObjectPtr< UComponentDecorator > KnobLayerRef
Definition KnobLogic.h:193
Category
Definition KnobLogic.h:49
UKnobLogic()
Definition KnobLogic.cpp:9
BlueprintReadOnly EKnobMode Mode
Definition KnobLogic.h:82
BlueprintPure float GetCurrentKnobRotation() const
Definition KnobLogic.h:50
virtual void OnMove_Implementation(const FGeometry &ComponentGeometry, const FPointerEvent &PointerEvent) override
Definition KnobLogic.cpp:292
BlueprintCallable
Definition KnobLogic.h:49
virtual void OnPress_Implementation(const FGeometry &ComponentGeometry, const FPointerEvent &PointerEvent) override
Definition KnobLogic.cpp:159
BlueprintReadOnly uint8 bSendInputOnPress
Definition KnobLogic.h:91
virtual void OnRelease_Implementation(const FGeometry &ComponentGeometry, const FPointerEvent &PointerEvent) override
Definition KnobLogic.cpp:496
virtual void SetInputAction_Implementation(UInputAction *NewInputAction) override
Definition KnobLogic.cpp:532
virtual void Initialize_Implementation() override
Definition KnobLogic.cpp:37