From d768118cdc3fc6fbd4bf9e752ba141867a99a212 Mon Sep 17 00:00:00 2001 From: Lioncache Date: Tue, 2 Dec 2025 11:21:39 -0500 Subject: [PATCH] CBasicViewport: Map arrow keys to WSAD Just provides straightforward left-handed analogs on the other side of the keyboard for moving the viewport camera. --- src/Editor/CBasicViewport.cpp | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/src/Editor/CBasicViewport.cpp b/src/Editor/CBasicViewport.cpp index d90c9eba..2d0ec89b 100644 --- a/src/Editor/CBasicViewport.cpp +++ b/src/Editor/CBasicViewport.cpp @@ -137,12 +137,24 @@ void CBasicViewport::keyPressEvent(QKeyEvent *pEvent) { switch (pEvent->key()) { + case Qt::Key_PageDown: case Qt::Key_Q: mKeysPressed |= EKeyInput::Q; break; - case Qt::Key_W: mKeysPressed |= EKeyInput::W; break; + + case Qt::Key_PageUp: case Qt::Key_E: mKeysPressed |= EKeyInput::E; break; + + case Qt::Key_Up: + case Qt::Key_W: mKeysPressed |= EKeyInput::W; break; + + case Qt::Key_Left: case Qt::Key_A: mKeysPressed |= EKeyInput::A; break; + + case Qt::Key_Down: case Qt::Key_S: mKeysPressed |= EKeyInput::S; break; + + case Qt::Key_Right: case Qt::Key_D: mKeysPressed |= EKeyInput::D; break; + case Qt::Key_Control: mKeysPressed |= EKeyInput::Ctrl; break; case Qt::Key_Shift: mKeysPressed |= EKeyInput::Shift; break; case Qt::Key_Alt: mKeysPressed |= EKeyInput::Alt; break; @@ -153,12 +165,24 @@ void CBasicViewport::keyReleaseEvent(QKeyEvent *pEvent) { switch (pEvent->key()) { + case Qt::Key_PageDown: case Qt::Key_Q: mKeysPressed &= ~EKeyInput::Q; break; - case Qt::Key_W: mKeysPressed &= ~EKeyInput::W; break; + + case Qt::Key_PageUp: case Qt::Key_E: mKeysPressed &= ~EKeyInput::E; break; + + case Qt::Key_Up: + case Qt::Key_W: mKeysPressed &= ~EKeyInput::W; break; + + case Qt::Key_Left: case Qt::Key_A: mKeysPressed &= ~EKeyInput::A; break; + + case Qt::Key_Down: case Qt::Key_S: mKeysPressed &= ~EKeyInput::S; break; + + case Qt::Key_Right: case Qt::Key_D: mKeysPressed &= ~EKeyInput::D; break; + case Qt::Key_Control: mKeysPressed &= ~EKeyInput::Ctrl; break; case Qt::Key_Shift: mKeysPressed &= ~EKeyInput::Shift; break; case Qt::Key_Alt: mKeysPressed &= ~EKeyInput::Alt; break;