#include <EditorTransformComponentSelection.h>
Inherits AzToolsFramework::ViewportInteraction::ViewportSelectionRequests, ActionManagerRegistrationNotificationBus::Handler, EditorContextMenuBus::Handler, EditorTransformComponentSelectionRequestBus::Handler, ToolsApplicationNotificationBus::Handler, Camera::EditorCameraNotificationBus::Handler, ViewportEditorModeNotificationsBus::Handler, EditorEntityContextNotificationBus::Handler, EditorEntityVisibilityNotificationBus::Router, EditorEntityLockComponentNotificationBus::Router, EditorManipulatorCommandUndoRedoRequestBus::Handler, AZ::TransformNotificationBus::MultiHandler, ViewportInteraction::ViewportSettingsNotificationBus::Handler, and ReadOnlyEntityPublicNotificationBus::Handler.
Public Member Functions | |
EditorTransformComponentSelection (const EditorVisibleEntityDataCacheInterface *entityDataCache) | |
EditorTransformComponentSelection (const EditorTransformComponentSelection &)=delete | |
EditorTransformComponentSelection & | operator= (const EditorTransformComponentSelection &)=delete |
void | RegisterManipulator () |
void | UnregisterManipulator () |
bool | HandleMouseInteraction (const ViewportInteraction::MouseInteractionEvent &mouseInteraction) override |
void | DisplayViewportSelection (const AzFramework::ViewportInfo &viewportInfo, AzFramework::DebugDisplayRequests &debugDisplay) override |
void | DisplayViewportSelection2d (const AzFramework::ViewportInfo &viewportInfo, AzFramework::DebugDisplayRequests &debugDisplay) override |
void | AddEntityToSelection (AZ::EntityId entityId) |
Add an entity to the current selection. | |
void | RemoveEntityFromSelection (AZ::EntityId entityId) |
Remove an entity from the current selection. | |
virtual void | DisplayViewportSelection (const AzFramework::ViewportInfo &, AzFramework::DebugDisplayRequests &) |
virtual void | DisplayViewportSelection2d (const AzFramework::ViewportInfo &, AzFramework::DebugDisplayRequests &) |
virtual bool | HandleMouseInteraction (const MouseInteractionEvent &) |
Implement this function to handle a particular mouse event. | |
Entity selection/interaction handling. Provide a suite of functionality for manipulating entities, primarily through their TransformComponent.
|
overridevirtual |
Display drawing in world space. DisplayViewportSelection is called from EditorInteractionSystemComponent::DisplayViewport. DisplayViewport exists on the AzFramework::ViewportDebugDisplayEventBus and is called from CRenderViewport. DisplayViewportSelection is called after CalculateVisibleEntityDatas on the EditorVisibleEntityDataCache, this ensures usage of the entity cache will be up to date (do not implement AzFramework::ViewportDebugDisplayEventBus directly if wishing to use the EditorVisibleEntityDataCache).
Reimplemented from AzToolsFramework::ViewportInteraction::ViewportDisplayNotifications.
|
overridevirtual |
Display drawing in screen space. DisplayViewportSelection2d is called after DisplayViewportSelection when the viewport has been configured to be orthographic in CRenderViewport. All screen space drawing can be performed here.
Reimplemented from AzToolsFramework::ViewportInteraction::ViewportDisplayNotifications.
|
overridevirtual |
ViewportInteraction::ViewportSelectionRequests Intercept all viewport mouse events and respond to inputs.
Reimplemented from AzToolsFramework::ViewportInteraction::MouseViewportRequests.
void AzToolsFramework::EditorTransformComponentSelection::RegisterManipulator | ( | ) |
Register entity manipulators with the ManipulatorManager. After being registered, the entity manipulators will draw and check for input.
void AzToolsFramework::EditorTransformComponentSelection::UnregisterManipulator | ( | ) |
Unregister entity manipulators with the ManipulatorManager. No longer draw or respond to input.