summaryrefslogtreecommitdiffstats
path: root/src/datavisualization
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-13 13:43:15 +0300
committerMiikka Heikkinen <miikka.heikkinen@theqtcompany.com>2014-10-13 13:46:33 +0300
commit631d9bead3aac19bcc5bdbd79df54e7aa216ecff (patch)
treeafbf9c06174f0a40d57673cf3f23c389425edd3e /src/datavisualization
parent732c9f39f08d7867c8e127c84d319ae514d682fd (diff)
Reset camera target when setting a preset
Change-Id: I3a1595530a976b73144109cf2eef72a188831a10 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization')
-rw-r--r--src/datavisualization/engine/q3dcamera.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/datavisualization/engine/q3dcamera.cpp b/src/datavisualization/engine/q3dcamera.cpp
index 9c3e4c08..273b8415 100644
--- a/src/datavisualization/engine/q3dcamera.cpp
+++ b/src/datavisualization/engine/q3dcamera.cpp
@@ -421,6 +421,9 @@ void Q3DCamera::setCameraPreset(CameraPreset preset)
break;
}
+ // All presets target the center of the graph
+ setTarget(zeroVector);
+
if (d_ptr->m_activePreset != preset) {
d_ptr->m_activePreset = preset;
setDirty(true);
@@ -604,6 +607,8 @@ void Q3DCamera::setTarget(const QVector3D &target)
newTarget.setZ(1.0f);
if (d_ptr->m_requestedTarget != newTarget) {
+ if (d_ptr->m_activePreset != CameraPresetNone)
+ d_ptr->m_activePreset = CameraPresetNone;
d_ptr->m_requestedTarget = newTarget;
setDirty(true);
emit targetChanged(newTarget);