Navigation
| Name | EditorInteractiveToolsFramework |
| Type | Editor |
| Location | /Engine/Source/Editor/Experimental/EditorInteractiveToolsFramework/ |
| Module Build Rules | EditorInteractiveToolsFramework.Build.cs |
Classes
| Name | Remarks |
|---|---|
| FEditor2DMouseWheelZoomBehaviorTarget | Allows the mouse wheel to move the camera forwards/backwards relative to the XY plane, in the direction pointed to by the mouse. |
| FEditor2DScrollBehaviorTarget | Allows click-dragging to move the camera in the XY plane. |
| FEditorGizmoSelectionBuilderHelper | |
| FEditorInteractiveToolsFrameworkGlobals | |
| FEditorInteractiveToolsFrameworkModule | |
| FEditorTransformGizmoDataBinder | FEditorTransformGizmoDataBinder is a helper class for binding a UTransformGizmo to a FEditorModeTools |
| FEditorViewportClientProxy | |
| FLevelEditorViewportClientProxy | |
| FRelativeTransformInterfaceRegistry | FRelativeTransformInterfaceRegistry |
| UBoxSelectInteraction | |
| UDragToolInteraction | The base class that all drag tools inherit from. |
| UEditorGizmoRegistryCategoryEntry | |
| UEditorGizmoRegistryCategoryEntry_Accessory | |
| UEditorGizmoRegistryCategoryEntry_ConditionalSelection | |
| UEditorGizmoRegistryCategoryEntry_Primary | |
| UEditorGizmoStateTarget | UEditorGizmoStateTarget |
| UEditorInteractiveGizmoConditionalBuilder | Gizmo builders which should be built once a condition is satisfied in the current scene state implement the IEditorInteractiveGizmoConditionalBuilder interface. |
| UEditorInteractiveGizmoManager | UEditorInteractiveGizmoManager allows users of the Tools framework to register and create selection-based Gizmo instances. |
| UEditorInteractiveGizmoRegistry | Gizmo types should be registered in either UEditorInteractiveGizmoSubsystem or UEditorInteractiveGizmoManager. |
| UEditorInteractiveGizmoSelectionBuilder | |
| UEditorSceneSnappingManager | |
| UEditorTransformGizmo | UEditorTransformGizmo handles Editor-specific functionality for the TransformGizmo, applied to a UEditorTransformProxy target object. |
| UEditorTransformGizmoBuilder | |
| UEditorTransformGizmoContextObject | UEditorTransformGizmoContextObject is a utility object that registers a Gizmo Builder for UTransformGizmo. |
| UEditorTransformGizmoSource | UEditorTransformGizmoSource is an ITransformGizmoSource implementation that provides current state information used to configure the Editor transform gizmo. |
| UEditorTransformProxy | UEditorTransformProxy is a derivation of UTransformProxy that returns the transform that defines the current space of the default Editor transform gizmo for a given mode manager / viewport. |
| UEditorTRSGizmo | |
| UFrustumSelectInteraction | Draws a box in the current viewport and when the mouse button is released, it selects/unselects everything inside of it. |
| UGizmoEdModeInterface | Interface for the new editor TRS gizmos |
| UGizmoElementGimbal | Gimbal rotation group object intended to be used as part of 3D Rotation Gizmos This group expects three rotation sub-elements |
| ULocalSingleClickAndDragBehavior | A version of USingleCLickAndDragBehavior that allows for arbitrary function pointers to handle the ISingleClickAndDragBehaviorTarget callbacks. |
| ULocalViewportClickDragBehavior | An implementation of UViewportClickDragBehavior that also implements IViewportClickDragBehaviorTarget directly, using a set of local lambda functions. |
| UMarqueeSelectInteraction | Base class for tools that use a marquee selection behavior |
| UMeasureToolInteraction | |
| UMultiButtonClickDragBehavior | 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. |
| USingleClickAndDragBehavior | USingleClickAndDragInputBehavior implements a combination of "button-click" and "button-click-drag"-style input behavior. |
| UToolStackContext | Context needed to support tool stacks, add this to your ContextObjectStore if you want to use tool stacks |
| UTransformGizmo | UTransformGizmo provides standard Transformation Gizmo interactions, applied to a UTransformProxy target object. |
| UTransformGizmoEditorSettings | |
| UTransformGizmoSource | |
| UViewportCameraRotateInteraction | A viewport interaction to Rotate the camera using keyboard inputs. |
| UViewportCameraSpeedMouseWheelInteraction | |
| UViewportCameraTranslateInteraction | A viewport interaction used to Translate the camera using keyboard inputs while the camera is being moved using the mouse |
| UViewportChangeInteraction | |
| UViewportClickBehavior | A Click behavior designed to compete alongside UViewportClickDragBehaviors |
| UViewportClickDragBehavior | A behavior dedicated to Viewport Drag Interactions, directly supporting threshold-based capture. |
| UViewportClickInteraction | Provides click-on-up interactions with binding-complexity-based priority compatible with FViewportClick. |
| UViewportCommandsInteraction | A viewport interaction class used to add support for a list of FUICommandInfo Commands to the current viewport |
| UViewportDollyInteraction | |
| UViewportDragInteraction | A base class which can be used to implement interactions based on mouse drag actions |
| UViewportFOVInteraction | A viewport interaction used to change the camera Field of View using either keyboard inputs or the mouse wheel |
| UViewportInteraction | Base class used to implement viewport interactions. |
| UViewportInteractionsBehaviorSource | This class hosts a list of ITF Viewport Interactions and a UBehaviorSet containing the UInteractionBehavior instances required by those Viewport Interactions. |
| UViewportLegacyClickInteraction | An interaction that passes through ITF clicks through to the legacy viewport click handlers. |
| UViewportMovePanInteraction | Implements the LMB + RMB Drag world-space-up Pan interaction |
| UViewportMoveYawInteraction | Implements the LMB + Drag Horizontal plane move + Yaw interaction |
| UViewportOrbitInteraction | Triggers orbiting around current viewport focus |
| UViewportOrthoPanInteraction | Implements panning for orthographic views. Holding Alt or Shift inverts the panning direction. |
| UViewportPanInteraction | Implements the middle mouse pan interaction |
| UViewportQuickToggleInputBehavior | |
| UViewportSnapToggleInteraction | A viewport interaction that handles temporary and permanent snapping toggles |
| UViewportTrackpadPanInteraction | Handles RMB + Trackpad movement for world-space-up Panning |
| UViewportViewAngleInteraction | Implements the RMB + Drag interaction used to change the current Camera View angle |
| UViewportZoomInteraction | Implements a viewport interaction to change the current zoom level, using either keyboard inputs or the mouse wheel |
| UWidgetToolsContext | UWidgetToolsContext extends UModeManagerInteractiveToolsContext with methods needed for tools operating on general widgets that do not have a viewport. |
Structs
| Name | Remarks |
|---|---|
| FActiveEditorGizmo | |
| FActorRelativeTransformInterface | Handles get / set relative transform operations UActorElementWorldInterface & UActorElementEditorWorldInterface |
| FButtonBinding | |
| FButtonBindings | |
| FComponentRelativeTransformInterface | Handles get / set relative transform operations UActorElementWorldInterface & UActorElementEditorWorldInterface |
| FEditorGizmoTypePriority | FEditorGizmoTypePriority is used to establish relative priority between conditional gizmo builders. |
| FGizmoCustomization | FGizmoCustomization is a struct that can be used to make some display overrides (currently material and size) |
| FGizmoDebugSettings | |
| FGizmoElementRotateArcballStyle | Visual style parameters for the arcball (trackball) rotation element. |
| FGizmoElementRotateAxisStyle | Visual style parameters for a single rotation axis element (ring + delta arc + origin marker + value label). |
| FGizmoElementRotateInteraction | Interaction options for rotation gizmo elements, controlling how user input maps to rotation deltas. |
| FGizmoElementRotateStyle | Composite style for the entire rotation gizmo, combining per-axis and arcball sub-styles with screen-space circle settings. |
| FGizmoElementScaleAxisStyle | Visual style parameters for a single scale axis element (cylinder body + arrow head handle + delta visuals). |
| FGizmoElementScaleInteraction | Interaction options for scale gizmo elements, controlling how user input maps to scale deltas. |
| FGizmoElementScalePlanarStyle | Visual style parameters for a planar scale handle (two-axis rectangle). |
| FGizmoElementScaleStyle | Composite style for the entire scale gizmo, combining axis, planar, and uniform sub-styles. |
| FGizmoElementScaleUniformStyle | Visual style parameters for the uniform (screen-space) scale handle. |
| FGizmoElementTranslateAxisStyle | Visual style parameters for a single translation axis element (arrow handle + delta visuals). |
| FGizmoElementTranslateInteraction | Interaction options for translation gizmo elements, controlling how user input maps to translation deltas. |
| FGizmoElementTranslatePlanarStyle | Visual style parameters for a planar translation handle (two-axis rectangle). |
| FGizmoElementTranslateStyle | Composite style for the entire translation gizmo, combining axis, planar, and uniform sub-styles with shared delta visual settings. |
| FGizmoElementTranslateUniformStyle | Visual style parameters for the uniform (screen-space) translation handle. |
| FGizmoInteractionDescription | FGizmoInteractionDescription provides a way to pass some interaction description in and out before/after starting/ending a gizmo manipulation |
| FGizmoMaterialVariant | |
| FGizmoPerStateValueMaterialVariant | Used to store per-state (GizmoMaterialVariant) values for gizmo elements. ie. vertex color. |
| FGizmosParameters | |
| FGizmoState | Gizmo state structure used to pass gizmo data if needed |
| FGizmoStyleBase | Contains Style/Visual properties common to all gizmo elements, ie. PixelHitDistanceThreshold. |
| FInteractiveToolStack | FInteractiveToolStack represents a bundle of tools that may or may not share the same input chord Should some tools share a chord the most recently used tool will be activated by the chord. |
| FRotationContext | FRotationContext is a datastore for rotation data sent to the gizmo |
| FRotationDecomposition | FRotationDecomposition is a data storage structure representing the rotations around the X, Y and Z axis |
| FTransformGizmoInteraction | |
| FTransformGizmoStyle | Contains all styling properties for TransformGizmo. |
| FViewportFrustum | FViewportFrustum calculates a frustum box from 2D start and end positions in a viewport. |
| FViewportInteractionGroup | |
| IRelativeTransformInterface | IRelativeTransformInterface |
| TNudgeDelta |
Interfaces
| Name | Remarks |
|---|---|
| IEditorInteractiveGizmoConditionalBuilder | |
| IEditorInteractiveGizmoSelectionBuilder | |
| IEditorViewportClientProxy | |
| IGizmoEdModeInterface | |
| IQuickToggleBehaviorTarget | |
| ISingleClickAndDragBehaviorTarget | Functions required to apply standard "Click" and "Click-Drag" state machines to a target object. |
| ITransformGizmoSource | ITransformGizmoSource is an interface for providing gizmo mode configuration information. |
| IViewportClickBehaviorTarget | |
| IViewportClickDragBehaviorTarget |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FOnEditorDragToolsToggleDelegate | TMulticastDelegate_NoParams< void > | EditorDragTools/DragToolInteraction.h | |
| FOnEditorViewportInteractionsToggleDelegate | TMulticastDelegate_NoParams< void > | ViewportInteractions/ViewportInteractionsBehaviorSource.h | |
| FOnGizmoInteraction | TMulticastDelegate_OneParam< void, const FGizmoInteractionDescription & > | EditorGizmos/TransformGizmo.h | |
| FOnModifierKeyChanged | TMulticastDelegate_OneParam< void, bool > | ViewportInteractions/ViewportInteractionsBehaviorSource.h | |
| FOnMouseLookingChanged | TMulticastDelegate_OneParam< void, bool > | ViewportInteractions/ViewportInteractionsBehaviorSource.h | |
| FOnOnViewportChangeToolToggleDelegate | TMulticastDelegate_NoParams< void > | EditorDragTools/DragToolInteraction.h |
Enums
Public
| Name | Remarks |
|---|---|
| EAxisRotateMode::Type | |
| EEditorGizmoCategory | Gizmo category used for registering Editor gizmo selection-based builders |
| EGizmoElementRotateShowFlags | Bitflags controlling visibility of rotation delta visual elements during interaction. |
| EGizmoElementScaleDistanceSource | Determines the reference point from which scale distance is measured. |
| EGizmoElementScaleDistanceType | Determines how the scale magnitude is computed from cursor movement. |
| EGizmoElementScaleShowFlags | Bitflags controlling visibility of scale delta visual elements during interaction. |
| EGizmoElementTranslateShowFlags | Bitflags controlling visibility of translation delta visual elements during interaction. |
| EGizmoTransformMode | Interface for the Transform gizmo. |
| EGizmoTransformScaleType | |
| ETransformGizmoPartIdentifier | Interface for the Transform gizmo. |
| ETransformGizmoShowFlags | Controls the (fixed) visibility of various visual elements in the TransformGizmo. |
| EViewportContext | |
| UE::Editor::ViewportInteractions::EInputStage | |
| UE::InteractiveTools::EViewportClickButton |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| UE::Editor::ViewportInteractions::BoxSelect | FName | Drag Tools. | ViewportInteractions/ViewportInteraction.h |
| UE::Editor::ViewportInteractions::CameraDrag | const FName | Interactions that move the camera via mouse motion | ViewportInteractions/ViewportInteraction.h |
| UE::Editor::ViewportInteractions::CameraFly | const FName | Interactions the enable FPS camera movement | ViewportInteractions/ViewportInteraction.h |
| UE::Editor::ViewportInteractions::CameraRotate | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::CameraTranslate | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::CLICK_PRIORITY | int | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::Commands | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::DRAG_CONFIRMED_PRIORITY | int | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::DRAG_PRIORITY | int | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::DragMovesCamera | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::DuplicateDrag | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::FOV | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::FrustumSelect | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::Measure | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::Orbit | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::OrthographicPan | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::PerspectiveDolly | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::PerspectiveMoveYaw | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::PerspectivePan | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::PerspectiveViewAngle | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::VIEWPORT_INTERACTION_PARTIAL_STEP | int | Binding complexity is chosen so that "tool" behaviors win out over viewport interactions on the same complexity footing. | ViewportInteractions/ViewportInteraction.h |
| UE::Editor::ViewportInteractions::VIEWPORT_INTERACTIONS_DEFAULT_PRIORITY | int | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::ViewportChange | FName | ViewportInteractions/ViewportInteraction.h | |
| UE::Editor::ViewportInteractions::ViewportClick | const FName | Groups. | ViewportInteractions/ViewportInteraction.h |
| UE::Editor::ViewportInteractions::Zoom | FName | Camera Movement. | ViewportInteractions/ViewportInteraction.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AltKeyMod | int | ViewportInteractions/ViewportInteraction.h | ||
| CtrlKeyMod | int | ViewportInteractions/ViewportInteraction.h | ||
| LeftMouseButtonMod | int | ViewportInteractions/ViewportInteraction.h | ||
| MiddleMouseButtonMod | int | ViewportInteractions/ViewportInteraction.h | ||
| RightMouseButtonMod | int | ViewportInteractions/ViewportInteraction.h | ||
| ShiftKeyMod | int | ViewportInteractions/ViewportInteraction.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
ENUM_CLASS_FLAGS
(
EGizmoElementTranslateShowFlags |
EditorGizmos/GizmoElementTranslate.h | ||
ENUM_RANGE_BY_COUNT
(
ETransformGizmoPartIdentifier |
EditorGizmos/TransformGizmo.h | ||
EGizmoTransformMode FEditorTransformGizmoUtil::GetGizmoMode
(
UE::Widget::EWidgetMode InWidgetMode |
Convert UE::Widget::EWidgetMode to ETransformGizmoMode | EditorGizmos/EditorTransformGizmoSource.h | |
UE::Widget::EWidgetMode FEditorTransformGizmoUtil::GetWidgetMode
(
EGizmoTransformMode InGizmoMode |
Convert EEditorGizmoMode to UE::Widget::EWidgetMode | EditorGizmos/EditorTransformGizmoSource.h | |
bool operator!
(
EGizmoElementRotateShowFlags E |
EditorGizmos/GizmoElementRotate.h | ||
bool operator!
(
EGizmoElementScaleShowFlags E |
EditorGizmos/GizmoElementScale.h | ||
bool operator!
(
ETransformGizmoShowFlags E |
EditorGizmos/TransformGizmo.h | ||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
| EditorGizmos/GizmoElementRotate.h | |||
| EditorGizmos/GizmoElementScale.h | |||
| EditorGizmos/TransformGizmo.h | |||
UTransformGizmo * UE::EditorTransformGizmoUtil::CreateTransformGizmo
(
UInteractiveToolManager* InToolManager, |
Spawn an editor like Transform Gizmo. | EditorGizmos/EditorTransformGizmoUtil.h | |
UTransformGizmo * UE::EditorTransformGizmoUtil::FindDefaultTransformGizmo
(
UInteractiveToolManager* InToolManager |
Returns the existing default Transform Gizmo if any. | EditorGizmos/EditorTransformGizmoUtil.h | |
UTransformGizmo * UE::EditorTransformGizmoUtil::GetDefaultTransformGizmo
(
UInteractiveToolManager* InToolManager |
Spawn an editor like Transform Gizmo. | EditorGizmos/EditorTransformGizmoUtil.h | |
bool UE::EditorTransformGizmoUtil::RegisterTransformGizmoContextObject
(
FEditorModeTools* InModeTools |
The functions below are helper functions that simplify usage of a UEditorTransformGizmoContextObject that is registered as a ContextStoreObject in an InteractiveToolsContext If one does not already exist, create a new instance of UEditorTransformGizmoContextObject and add it to the ToolsContext's ContextObjectStore | EditorGizmos/EditorTransformGizmoUtil.h | |
void UE::EditorTransformGizmoUtil::RemoveDefaultTransformGizmo
(
UInteractiveToolManager* InToolManager |
Removes the existing default Transform Gizmo if any. | EditorGizmos/EditorTransformGizmoUtil.h | |
bool UE::EditorTransformGizmoUtil::UnregisterTransformGizmoContextObject
(
FEditorModeTools* InModeTools |
Remove any existing UEditorTransformGizmoContextObject from the ToolsContext's ContextObjectStore | EditorGizmos/EditorTransformGizmoUtil.h |