Merge pull request #441 from aws-lumberyard-dev/cgalvan/OldVIMLogicRemovalSecondPass

[LYN-3419] Removed remaining references to checking if the new viewport interaction model is enabled.
This commit is contained in:
cgalvan
2021-04-30 09:55:08 -05:00
committed by GitHub
24 changed files with 140 additions and 1498 deletions
+95 -349
View File
@@ -470,61 +470,40 @@ void CRenderViewport::OnLButtonDown(Qt::KeyboardModifiers modifiers, const QPoin
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
bool manipulatorInteraction = false;
EditorInteractionSystemViewportSelectionRequestBus::EventResult(
manipulatorInteraction, AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseManipulatorInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
if (!manipulatorInteraction)
{
bool manipulatorInteraction = false;
EditorInteractionSystemViewportSelectionRequestBus::EventResult(
manipulatorInteraction, AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseManipulatorInteraction,
if (RenderViewportUtil::AllowOrbit(modifiers))
{
m_bInOrbitMode = true;
m_orbitTarget =
GetViewTM().GetTranslation() + GetViewTM().TransformVector(FORWARD_DIRECTION) * m_orbitDistance;
// mouse buttons are treated as keys as well
if (m_pressedKeyState == KeyPressedState::AllUp)
{
m_pressedKeyState = KeyPressedState::PressedThisFrame;
}
m_mousePos = scaledPoint;
m_prevMousePos = scaledPoint;
HideCursor();
CaptureMouse();
// no further handling of left mouse button down
return;
}
EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
if (!manipulatorInteraction)
{
if (RenderViewportUtil::AllowOrbit(modifiers))
{
m_bInOrbitMode = true;
m_orbitTarget =
GetViewTM().GetTranslation() + GetViewTM().TransformVector(FORWARD_DIRECTION) * m_orbitDistance;
// mouse buttons are treated as keys as well
if (m_pressedKeyState == KeyPressedState::AllUp)
{
m_pressedKeyState = KeyPressedState::PressedThisFrame;
}
m_mousePos = scaledPoint;
m_prevMousePos = scaledPoint;
HideCursor();
CaptureMouse();
// no further handling of left mouse button down
return;
}
EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
}
}
else
{
// first try interaction with manipulator
if (m_manipulatorManager == nullptr || !m_manipulatorManager->ConsumeViewportMousePress(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
}
else
{
QtViewport::OnLButtonDown(modifiers, scaledPoint);
}
}
}
}
@@ -555,39 +534,18 @@ void CRenderViewport::OnLButtonUp(Qt::KeyboardModifiers modifiers, const QPoint&
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
if (m_bInOrbitMode)
{
if (m_bInOrbitMode)
{
m_bInOrbitMode = false;
m_bInOrbitMode = false;
ReleaseMouse();
ShowCursor();
}
ReleaseMouse();
ShowCursor();
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
if (m_manipulatorManager == nullptr
|| !m_manipulatorManager->ConsumeViewportMouseRelease(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
QtViewport::OnLButtonUp(modifiers, scaledPoint);
}
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
//////////////////////////////////////////////////////////////////////////
@@ -607,27 +565,10 @@ void CRenderViewport::OnLButtonDblClk(Qt::KeyboardModifiers modifiers, const QPo
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::DoubleClick));
}
else
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::DoubleClick));
}
else
{
QtViewport::OnLButtonDblClk(modifiers, scaledPoint);
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::DoubleClick));
}
//////////////////////////////////////////////////////////////////////////
@@ -649,48 +590,18 @@ void CRenderViewport::OnRButtonDown(Qt::KeyboardModifiers modifiers, const QPoin
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
if (RenderViewportUtil::AllowDolly(modifiers))
{
m_bInZoomMode = true;
}
else
{
m_bInRotateMode = true;
}
if (RenderViewportUtil::AllowDolly(modifiers))
{
m_bInZoomMode = true;
}
else
{
if (m_manipulatorManager == nullptr
|| !m_manipulatorManager->ConsumeViewportMousePress(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
}
else
{
QtViewport::OnRButtonDown(modifiers, scaledPoint);
}
}
if (Qt::AltModifier & QApplication::queryKeyboardModifiers())
{
m_bInZoomMode = true;
}
else
{
m_bInRotateMode = true;
}
m_bInRotateMode = true;
}
// mouse buttons are treated as keys as well
@@ -725,31 +636,10 @@ void CRenderViewport::OnRButtonUp(Qt::KeyboardModifiers modifiers, const QPoint&
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
if (m_manipulatorManager == nullptr
|| !m_manipulatorManager->ConsumeViewportMouseRelease(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
QtViewport::OnRButtonUp(modifiers, scaledPoint);
}
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
m_bInRotateMode = false;
m_bInZoomMode = false;
@@ -779,73 +669,27 @@ void CRenderViewport::OnMButtonDown(Qt::KeyboardModifiers modifiers, const QPoin
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
if (RenderViewportUtil::AllowPan(modifiers))
{
if (RenderViewportUtil::AllowPan(modifiers))
m_bInMoveMode = true;
// mouse buttons are treated as keys as well
if (m_pressedKeyState == KeyPressedState::AllUp)
{
m_bInMoveMode = true;
// mouse buttons are treated as keys as well
if (m_pressedKeyState == KeyPressedState::AllUp)
{
m_pressedKeyState = KeyPressedState::PressedThisFrame;
}
m_mousePos = scaledPoint;
m_prevMousePos = scaledPoint;
HideCursor();
CaptureMouse();
m_pressedKeyState = KeyPressedState::PressedThisFrame;
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
m_mousePos = scaledPoint;
m_prevMousePos = scaledPoint;
HideCursor();
CaptureMouse();
}
else
{
if (!(modifiers & Qt::ControlModifier) && !(modifiers & Qt::ShiftModifier))
{
if (modifiers & Qt::AltModifier)
{
m_bInOrbitMode = true;
m_orbitTarget = GetViewTM().GetTranslation() + GetViewTM().TransformVector(FORWARD_DIRECTION) * m_orbitDistance;
}
else
{
m_bInMoveMode = true;
}
// mouse buttons are treated as keys as well
if (m_pressedKeyState == KeyPressedState::AllUp)
{
m_pressedKeyState = KeyPressedState::PressedThisFrame;
}
m_mousePos = scaledPoint;
m_prevMousePos = scaledPoint;
HideCursor();
CaptureMouse();
}
if (m_manipulatorManager == nullptr
|| !m_manipulatorManager->ConsumeViewportMousePress(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
}
else
{
QtViewport::OnMButtonDown(modifiers, scaledPoint);
}
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Down));
}
//////////////////////////////////////////////////////////////////////////
@@ -873,18 +717,9 @@ void CRenderViewport::OnMButtonUp(Qt::KeyboardModifiers modifiers, const QPoint&
}
};
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
if (m_bInMoveMode)
{
m_bInMoveMode = false;
tryRestoreMouse();
}
}
else
if (m_bInMoveMode)
{
m_bInMoveMode = false;
m_bInOrbitMode = false;
tryRestoreMouse();
}
@@ -893,31 +728,10 @@ void CRenderViewport::OnMButtonUp(Qt::KeyboardModifiers modifiers, const QPoint&
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
if (m_manipulatorManager == nullptr
|| !m_manipulatorManager->ConsumeViewportMouseRelease(mouseInteraction))
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
else
{
QtViewport::OnMButtonUp(modifiers, scaledPoint);
}
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Up));
}
void CRenderViewport::OnMouseMove(Qt::KeyboardModifiers modifiers, Qt::MouseButtons buttons, const QPoint& point)
@@ -932,43 +746,15 @@ void CRenderViewport::OnMouseMove(Qt::KeyboardModifiers modifiers, Qt::MouseButt
const auto scaledPoint = WidgetToViewport(point);
AzToolsFramework::ManipulatorManager::ConsumeMouseMoveResult mouseMoveResult =
AzToolsFramework::ManipulatorManager::ConsumeMouseMoveResult::None;
const auto mouseInteraction = BuildMouseInteractionInternal(
BuildMouseButtons(buttons),
BuildKeyboardModifiers(modifiers),
BuildMousePick(scaledPoint));
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Move));
}
else
{
if (m_manipulatorManager)
{
mouseMoveResult = m_manipulatorManager->ConsumeViewportMouseMove(mouseInteraction);
}
if (mouseMoveResult != AzToolsFramework::ManipulatorManager::ConsumeMouseMoveResult::Interacting)
{
if (AzToolsFramework::ComponentModeFramework::InComponentMode())
{
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleMouseViewportInteraction,
MouseInteractionEvent(mouseInteraction, MouseEvent::Move));
}
else
{
QtViewport::OnMouseMove(modifiers, buttons, scaledPoint);
}
}
}
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::Event(
AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, MouseEvent::Move));
}
void CRenderViewport::InjectFakeMouseMove(int deltaX, int deltaY, Qt::MouseButtons buttons)
@@ -1081,22 +867,11 @@ void CRenderViewport::ProcessMouse()
Vec3 xdir = m.GetColumn0().GetNormalized();
Vec3 zdir = m.GetColumn2().GetNormalized();
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
const auto modifiers = QGuiApplication::queryKeyboardModifiers();
if (RenderViewportUtil::InvertPan(modifiers))
{
const auto modifiers = QGuiApplication::queryKeyboardModifiers();
if (RenderViewportUtil::InvertPan(modifiers))
{
xdir = -xdir;
zdir = -zdir;
}
}
else
{
if (GetCameraInvertPan())
{
xdir = -xdir;
zdir = -zdir;
}
xdir = -xdir;
zdir = -zdir;
}
Vec3 pos = m.GetTranslation();
@@ -1175,20 +950,10 @@ bool CRenderViewport::event(QEvent* event)
auto keyEvent = static_cast<QKeyEvent*>(event);
bool manipulatorInteracting = false;
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
AzToolsFramework::ManipulatorManagerRequestBus::EventResult(
manipulatorInteracting,
AzToolsFramework::g_mainManipulatorManagerId,
&AzToolsFramework::ManipulatorManagerRequestBus::Events::Interacting);
}
else
{
if (m_manipulatorManager != nullptr)
{
manipulatorInteracting = m_manipulatorManager->Interacting();
}
}
AzToolsFramework::ManipulatorManagerRequestBus::EventResult(
manipulatorInteracting,
AzToolsFramework::g_mainManipulatorManagerId,
&AzToolsFramework::ManipulatorManagerRequestBus::Events::Interacting);
// If a manipulator is active, stop all shortcuts from working, except for the escape key, which cancels in some cases
if ((keyEvent->key() != Qt::Key_Escape) && manipulatorInteracting)
@@ -1752,12 +1517,6 @@ void CRenderViewport::OnRender()
RenderAll();
// Draw Axis arrow in lower left corner.
if (levelIsDisplayable && !GetIEditor()->IsNewViewportInteractionModelEnabled())
{
DrawAxis();
}
// Draw 2D helpers.
TransformationMatrices backupSceneMatrices;
m_renderer->Set2DMode(m_rcClient.right(), m_rcClient.bottom(), backupSceneMatrices);
@@ -1786,11 +1545,6 @@ void CRenderViewport::OnRender()
AzToolsFramework::GetEntityContextId(), &AzFramework::ViewportDebugDisplayEvents::DisplayViewport2d,
AzFramework::ViewportInfo{ GetViewportId() }, *debugDisplay);
if (!GetIEditor()->IsNewViewportInteractionModelEnabled())
{
RenderSelectionRectangle();
}
m_renderer->Unset2DMode(backupSceneMatrices);
PostWidgetRendering();
@@ -1880,11 +1634,6 @@ void CRenderViewport::InitDisplayContext()
displayContext.flags |= DISPLAY_TRACKTICKS;
}
if (m_bAdvancedSelectMode && !GetIEditor()->IsNewViewportInteractionModelEnabled())
{
displayContext.flags |= DISPLAY_SELECTION_HELPERS;
}
if (GetIEditor()->GetReferenceCoordSys() == COORDS_WORLD)
{
displayContext.flags |= DISPLAY_WORLDSPACEAXIS;
@@ -2757,16 +2506,13 @@ void CRenderViewport::OnMouseWheel(Qt::KeyboardModifiers modifiers, short zDelta
BuildMousePick(scaledPoint));
bool handled = false;
if (GetIEditor()->IsNewViewportInteractionModelEnabled())
{
MouseInteractionResult result = MouseInteractionResult::None;
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::EventResult(
result, AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, zDelta));
MouseInteractionResult result = MouseInteractionResult::None;
AzToolsFramework::EditorInteractionSystemViewportSelectionRequestBus::EventResult(
result, AzToolsFramework::GetEntityContextId(),
&EditorInteractionSystemViewportSelectionRequestBus::Events::InternalHandleAllMouseInteractions,
MouseInteractionEvent(mouseInteraction, zDelta));
handled = result != MouseInteractionResult::None;
}
handled = result != MouseInteractionResult::None;
if (!handled)
{