Navigation
API > API/Plugins > API/Plugins/ModelingComponents
Mechanic for a rectangle "marquee" selection. It creates and maintains the 2D rectangle associated with a mouse drag. It does not test against any scene geometry, nor does it maintain any sort of list of selected objects.
When using this mechanic, you should call Render() on it in the tool's Render() call so that it can cache necessary camera state, and DrawHUD() in the tool's DrawHUD() call so that it can draw the box.
Attach to the mechanic's delegates and use the passed rectangle to test against your geometry.
| Name | URectangleMarqueeMechanic |
| Type | class |
| Header File | /Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Mechanics/RectangleMarqueeMechanic.h |
| Include Path | #include "Mechanics/RectangleMarqueeMechanic.h" |
Syntax
UCLASS (MinimalAPI)
class URectangleMarqueeMechanic :
public UInteractionMechanic ,
public IClickDragBehaviorTarget
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UInteractionMechanic → URectangleMarqueeMechanic
Implements Interfaces
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| OnDragRectangleChangedEvent | TMulticastDelegate_OneParam< void, const FCameraRectangle & > | Called as the user drags the other corner of the rectangle around. | Mechanics/RectangleMarqueeMechanic.h |
| OnDragRectangleFinishedEvent | TMulticastDelegate_TwoParams< void, const FCameraRectangle &, bool bCancelled > | Called once the user lets go of the mouse button after dragging out a rectangle. | Mechanics/RectangleMarqueeMechanic.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bUseExternalClickDragBehavior | bool | If true, then the URectangleMarqueeMechanic will not create an internal UClickDragInputBehavior in Setup(), allowing the client to control the marquee with an external InputBehavior that uses the marquee mechanic as it's IClickDragBehaviorTarget. | Mechanics/RectangleMarqueeMechanic.h | |
| bUseExternalUpdateCameraState | bool | If true, then the URectangleMarqueeMechanic will not query the tool manager for the current camera view state, but instead call the custom provided function, UpdateCameraStateFunc, to recieve the correct camera state for the CameraRectangle. | Mechanics/RectangleMarqueeMechanic.h | |
| OnDragRectangleChanged | OnDragRectangleChangedEvent | Mechanics/RectangleMarqueeMechanic.h | ||
| OnDragRectangleChangedDeferredThreshold | double | If the computation time for a single call to OnDragRectangleChanged ever exceeds this threshold then future calls to this function (in the current drag sequence) will be deferred until the mouse button is released. | Mechanics/RectangleMarqueeMechanic.h | |
| OnDragRectangleFinished | OnDragRectangleFinishedEvent | Mechanics/RectangleMarqueeMechanic.h | ||
| OnDragRectangleStarted | FSimpleMulticastDelegate | Called when user starts dragging a new rectangle. | Mechanics/RectangleMarqueeMechanic.h | |
| UpdateCameraStateFunc | TUniqueFunction< FViewCameraState() > | Mechanics/RectangleMarqueeMechanic.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bIsDragging | bool | Mechanics/RectangleMarqueeMechanic.h | ||
| bIsEnabled | bool | Mechanics/RectangleMarqueeMechanic.h | ||
| bIsOnDragRectangleChangedDeferred | bool | Mechanics/RectangleMarqueeMechanic.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void DrawHUD
(
FCanvas* Canvas, |
Mechanics/RectangleMarqueeMechanic.h | ||
TPair< FInputCapturePriority, FInputCapturePriority > GetPriorityRange () |
Gets the current priority range used by behaviors in the mechanic, higher priority to lower. | Mechanics/RectangleMarqueeMechanic.h | |
bool IsEnabled() |
Mechanics/RectangleMarqueeMechanic.h | ||
void SetBasePriority
(
const FInputCapturePriority& Priority |
Sets the base priority so that users can make sure that their own behaviors are higher priority. | Mechanics/RectangleMarqueeMechanic.h | |
void SetIsEnabled
(
bool bOn |
Mechanics/RectangleMarqueeMechanic.h |
Overridden from UInteractionMechanic
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void Render
(
IToolsContextRenderAPI* RenderAPI |
Mechanics/RectangleMarqueeMechanic.h | ||
virtual void Setup
(
UInteractiveTool* ParentTool |
UInteractionMechanic. | Mechanics/RectangleMarqueeMechanic.h |