Navigation
API > API/Runtime > API/Runtime/InteractiveToolsFramework > API/Runtime/InteractiveToolsFramework/BaseBehaviors
Inheritance Hierarchy
- UObject
- UInputBehavior
- UAnyButtonInputBehavior
- USingleClickInputBehavior
- UDoubleClickInputBehavior
- ULocalDoubleClickInputBehavior
References
| Module | InteractiveToolsFramework |
| Header | /Engine/Source/Runtime/InteractiveToolsFramework/Public/BaseBehaviors/DoubleClickBehavior.h |
| Include | #include "BaseBehaviors/DoubleClickBehavior.h" |
Syntax
UCLASS (MinimalAPI)
class UDoubleClickInputBehavior : public USingleClickInputBehavior
Remarks
UDoubleClickInputBehavior implements a standard "button-click"-style input behavior. The state machine works as follows: 1) on input-device-button-double-click, hit-test the target. If hit, begin capture 2) on input-device-button-release, hit-test the target. If hit, call Target::OnClicked(). If not hit, ignore click.
The second hit-test is required to allow the click to be "cancelled" by moving away from the target. This is standard GUI behavior. You can disable this second hit test using the .HitTestOnRelease property. This is strongly discouraged.
The hit-test and on-clicked functions are provided by a IClickBehaviorTarget instance.
The expected sequence of mouse events for a double click is: a. MouseDown b. MouseUp c. MouseDoubleClick < State machine starts here. d. MouseUp
Constructors
| Type | Name | Description | |
|---|---|---|---|
Overridden from UInputBehavior
| Type | Name | Description | |
|---|---|---|---|
| FInputCaptureRequest | WantsCapture
(
const FInputDeviceState& Input |
UInputBehavior implementation. |