summaryrefslogtreecommitdiffstats
path: root/src/extras/defaults/qorbitcameracontroller.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/extras/defaults/qorbitcameracontroller.cpp')
-rw-r--r--src/extras/defaults/qorbitcameracontroller.cpp20
1 files changed, 18 insertions, 2 deletions
diff --git a/src/extras/defaults/qorbitcameracontroller.cpp b/src/extras/defaults/qorbitcameracontroller.cpp
index 95b0e19dc..565a75ea1 100644
--- a/src/extras/defaults/qorbitcameracontroller.cpp
+++ b/src/extras/defaults/qorbitcameracontroller.cpp
@@ -34,9 +34,9 @@
**
****************************************************************************/
-#include "qorbitcameracontroller_p.h"
#include "qorbitcameracontroller.h"
-#include <QtGlobal>
+#include "qorbitcameracontroller_p.h"
+
#include <Qt3DRender/QCamera>
#include <Qt3DInput/QAxis>
#include <Qt3DInput/QAnalogAxisInput>
@@ -48,6 +48,7 @@
#include <Qt3DInput/QMouseDevice>
#include <Qt3DInput/QMouseEvent>
#include <Qt3DLogic/QFrameAction>
+#include <QtCore/QtGlobal>
QT_BEGIN_NAMESPACE
@@ -79,6 +80,9 @@ namespace Qt3DExtras {
\li While both the left and the right mouse button are pressed, mouse movement along y-axis
zooms the camera in and out without changing the view center.
\row
+ \li Mouse scroll wheel
+ \li Zooms the camera in and out without changing the view center.
+ \row
\li Arrow keys
\li Move the camera vertically and horizontally relative to camera viewport.
\row
@@ -113,6 +117,8 @@ QOrbitCameraControllerPrivate::QOrbitCameraControllerPrivate()
, m_shiftButtonInput(new Qt3DInput::QActionInput())
, m_mouseRxInput(new Qt3DInput::QAnalogAxisInput())
, m_mouseRyInput(new Qt3DInput::QAnalogAxisInput())
+ , m_mouseTzXInput(new Qt3DInput::QAnalogAxisInput())
+ , m_mouseTzYInput(new Qt3DInput::QAnalogAxisInput())
, m_keyboardTxPosInput(new Qt3DInput::QButtonAxisInput())
, m_keyboardTyPosInput(new Qt3DInput::QButtonAxisInput())
, m_keyboardTzPosInput(new Qt3DInput::QButtonAxisInput())
@@ -165,6 +171,16 @@ void QOrbitCameraControllerPrivate::init()
m_mouseRyInput->setSourceDevice(m_mouseDevice);
m_ryAxis->addInput(m_mouseRyInput);
+ // Mouse Wheel X
+ m_mouseTzXInput->setAxis(Qt3DInput::QMouseDevice::WheelX);
+ m_mouseTzXInput->setSourceDevice(m_mouseDevice);
+ m_tzAxis->addInput(m_mouseTzXInput);
+
+ // Mouse Wheel Y
+ m_mouseTzYInput->setAxis(Qt3DInput::QMouseDevice::WheelY);
+ m_mouseTzYInput->setSourceDevice(m_mouseDevice);
+ m_tzAxis->addInput(m_mouseTzYInput);
+
// Keyboard Pos Tx
m_keyboardTxPosInput->setButtons(QVector<int>() << Qt::Key_Right);
m_keyboardTxPosInput->setScale(1.0f);