refactor: Move camera mouse event handling to Camera class
Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
|
||||
Camera::Camera(QObject *parent) : QObject(parent)
|
||||
{
|
||||
m_lastPos = QPoint();
|
||||
// Set initial view to an isometric angle on the XY plane
|
||||
m_xRot = 30 * 16;
|
||||
m_yRot = -45 * 16;
|
||||
@@ -15,10 +16,15 @@ Camera::Camera(QObject *parent) : QObject(parent)
|
||||
m_panY = 0.0f;
|
||||
}
|
||||
|
||||
void Camera::processMouseMovement(QMouseEvent* event, const QPoint& lastPos)
|
||||
void Camera::mousePressEvent(QMouseEvent* event)
|
||||
{
|
||||
int dx = event->pos().x() - lastPos.x();
|
||||
int dy = event->pos().y() - lastPos.y();
|
||||
m_lastPos = event->pos();
|
||||
}
|
||||
|
||||
void Camera::mouseMoveEvent(QMouseEvent* event)
|
||||
{
|
||||
int dx = event->pos().x() - m_lastPos.x();
|
||||
int dy = event->pos().y() - m_lastPos.y();
|
||||
|
||||
if (event->buttons() & Qt::MiddleButton) {
|
||||
if (QApplication::keyboardModifiers() & Qt::ShiftModifier) {
|
||||
@@ -31,9 +37,10 @@ void Camera::processMouseMovement(QMouseEvent* event, const QPoint& lastPos)
|
||||
setYRotation(m_yRot + 8 * dx);
|
||||
}
|
||||
}
|
||||
m_lastPos = event->pos();
|
||||
}
|
||||
|
||||
void Camera::processWheel(QWheelEvent* event)
|
||||
void Camera::wheelEvent(QWheelEvent* event)
|
||||
{
|
||||
QPoint numDegrees = event->angleDelta() / 8;
|
||||
if (!numDegrees.isNull()) {
|
||||
|
||||
Reference in New Issue
Block a user