Navigation
API > API/Editor > API/Editor/EditorInteractiveToolsFramework
MultiButtonClickDragBehavior is an implementation of UClickDragInputBehavior that can manage several mouse buttons at once and also implements IClickDragBehaviorTarget directly, via a set of local lambda functions. To use/customize this class the client replaces the lambda functions with their own and enables/disables the buttons to capture.
| Name | UMultiButtonClickDragBehavior |
| Type | class |
| Header File | /Engine/Source/Editor/Experimental/EditorInteractiveToolsFramework/Public/Behaviors/MultiButtonClickDragBehavior.h |
| Include Path | #include "Behaviors/MultiButtonClickDragBehavior.h" |
Syntax
UCLASS (MinimalAPI)
class UMultiButtonClickDragBehavior :
public UClickDragInputBehavior,
public IClickDragBehaviorTarget
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UInputBehavior → UAnyButtonInputBehavior → UClickDragInputBehavior → UMultiButtonClickDragBehavior
Implements Interfaces
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| CanBeginClickDragFunc | TUniqueFunction< FInputRayHit(const FInputDeviceRay &PressPos)> | Lambda implementation of CanBeginClickDragSequence | Behaviors/MultiButtonClickDragBehavior.h | |
| OnClickDragFunc | TUniqueFunction< void(const FInputDeviceRay &PressPos)> | Lambda implementation of OnClickDrag | Behaviors/MultiButtonClickDragBehavior.h | |
| OnClickPressFunc | TUniqueFunction< void(const FInputDeviceRay &PressPos)> | Lambda implementation of OnClickPress | Behaviors/MultiButtonClickDragBehavior.h | |
| OnClickReleaseFunc | TUniqueFunction< void(const FInputDeviceRay &ReleasePos)> | Lambda implementation of OnClickRelease | Behaviors/MultiButtonClickDragBehavior.h | |
| OnStateUpdated | TUniqueFunction< void(const FInputDeviceState &Input)> | Lambda implementation of OnStateUpdated | Behaviors/MultiButtonClickDragBehavior.h | |
| OnTerminateFunc | TUniqueFunction< void()> | Lambda implementation of OnTerminateDragSequence | Behaviors/MultiButtonClickDragBehavior.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FInputCaptureUpdate BeginCapture
(
const FInputDeviceState& Input, |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual FInputRayHit CanBeginClickDragSequence
(
const FInputDeviceRay& InPressPos |
Behaviors/MultiButtonClickDragBehavior.h | ||
void DisableButton
(
const FKey& InButton |
Disable InButton so that it's not captured | Behaviors/MultiButtonClickDragBehavior.h | |
void EnableButton
(
const FKey& InButton |
Enable InButton so that in can be captured | Behaviors/MultiButtonClickDragBehavior.h | |
void Initialize() |
UClickDragInputBehavior implementation. | Behaviors/MultiButtonClickDragBehavior.h | |
virtual void OnClickDrag
(
const FInputDeviceRay& InDragPos |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual void OnClickPress
(
const FInputDeviceRay& InPressPos |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual void OnClickRelease
(
const FInputDeviceRay& InReleasePos |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual void OnTerminateDragSequence() |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual FInputCaptureUpdate UpdateCapture
(
const FInputDeviceState& Input, |
Behaviors/MultiButtonClickDragBehavior.h | ||
virtual FInputCaptureRequest WantsCapture
(
const FInputDeviceState& Input |
Behaviors/MultiButtonClickDragBehavior.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool DidAnyButtonChangeState
(
const FInputDeviceState& InInput |
Behaviors/MultiButtonClickDragBehavior.h | ||
bool HandlesLeftMouseButton() |
Behaviors/MultiButtonClickDragBehavior.h | ||
bool HandlesMiddleMouseButton() |
Behaviors/MultiButtonClickDragBehavior.h | ||
bool HandlesRightMouseButton() |
Behaviors/MultiButtonClickDragBehavior.h | ||
bool IsAnyButtonDown
(
const FInputDeviceState& InInput |
Behaviors/MultiButtonClickDragBehavior.h |