diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-09-25 15:04:44 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-09-26 10:06:52 +0300 |
commit | 0ab45b018fa98e9ef6cffd70178f208eb4f16550 (patch) | |
tree | 77d324f47ccb52cc543df9e8990153b82ead2688 /tests/barstest | |
parent | 36bc54f5720bddb9899e64d665117ac1e1b5bc94 (diff) |
Implement zooming to cursor
Zooming to cursor is now default operating mode of
the default input handler.
Task-number: QTRD-3263
Change-Id: I5699fc0ce7393059538972cd52f31f06d87e3d8d
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'tests/barstest')
-rw-r--r-- | tests/barstest/chart.cpp | 6 | ||||
-rw-r--r-- | tests/barstest/chart.h | 1 | ||||
-rw-r--r-- | tests/barstest/main.cpp | 7 |
3 files changed, 14 insertions, 0 deletions
diff --git a/tests/barstest/chart.cpp b/tests/barstest/chart.cpp index 9a81fc86..d7b23719 100644 --- a/tests/barstest/chart.cpp +++ b/tests/barstest/chart.cpp @@ -203,6 +203,7 @@ GraphModifier::GraphModifier(Q3DBars *barchart, QColorDialog *colorDialog) m_graph->activeTheme()->setFont(QFont("Times Roman", 20)); + // Release and store the default input handler. m_defaultInputHandler = static_cast<Q3DInputHandler *>(m_graph->activeInputHandler()); m_graph->releaseInputHandler(m_defaultInputHandler); @@ -1421,6 +1422,11 @@ void GraphModifier::setInputHandlerSelectionEnabled(int enabled) m_defaultInputHandler->setSelectionEnabled(enabled); } +void GraphModifier::setInputHandlerZoomAtTargetEnabled(int enabled) +{ + m_defaultInputHandler->setZoomAtTargetEnabled(enabled); +} + void GraphModifier::changeValueAxisSegments(int value) { qDebug() << __FUNCTION__ << value; diff --git a/tests/barstest/chart.h b/tests/barstest/chart.h index eac6d3f1..93abbfa4 100644 --- a/tests/barstest/chart.h +++ b/tests/barstest/chart.h @@ -97,6 +97,7 @@ public: void setInputHandlerRotationEnabled(int enabled); void setInputHandlerZoomEnabled(int enabled); void setInputHandlerSelectionEnabled(int enabled); + void setInputHandlerZoomAtTargetEnabled(int enabled); void setReflection(bool enabled); void setReflectivity(int value); void toggleCustomItem(); diff --git a/tests/barstest/main.cpp b/tests/barstest/main.cpp index 1cc47859..cffbf4b4 100644 --- a/tests/barstest/main.cpp +++ b/tests/barstest/main.cpp @@ -234,6 +234,10 @@ int main(int argc, char **argv) inputHandlerSelectionCheckBox->setText("IH: Allow selection"); inputHandlerSelectionCheckBox->setChecked(true); + QCheckBox *inputHandlerZoomAtTargetCheckBox = new QCheckBox(widget); + inputHandlerZoomAtTargetCheckBox->setText("IH: setZoomAtTarget"); + inputHandlerZoomAtTargetCheckBox->setChecked(false); + QSlider *rotationSliderX = new QSlider(Qt::Horizontal, widget); rotationSliderX->setTickInterval(1); rotationSliderX->setMinimum(-180); @@ -422,6 +426,7 @@ int main(int argc, char **argv) vLayout3->addWidget(inputHandlerRotationCheckBox, 0, Qt::AlignTop); vLayout3->addWidget(inputHandlerZoomCheckBox, 0, Qt::AlignTop); vLayout3->addWidget(inputHandlerSelectionCheckBox, 0, Qt::AlignTop); + vLayout3->addWidget(inputHandlerZoomAtTargetCheckBox, 0, Qt::AlignTop); vLayout3->addWidget(new QLabel(QStringLiteral("Adjust shadow quality")), 0, Qt::AlignTop); vLayout3->addWidget(shadowQuality, 0, Qt::AlignTop); vLayout3->addWidget(new QLabel(QStringLiteral("Change font")), 0, Qt::AlignTop); @@ -559,6 +564,8 @@ int main(int argc, char **argv) &GraphModifier::setInputHandlerZoomEnabled); QObject::connect(inputHandlerSelectionCheckBox, &QCheckBox::stateChanged, modifier, &GraphModifier::setInputHandlerSelectionEnabled); + QObject::connect(inputHandlerZoomAtTargetCheckBox, &QCheckBox::stateChanged, modifier, + &GraphModifier::setInputHandlerZoomAtTargetEnabled); QObject::connect(rotationCheckBox, &QCheckBox::stateChanged, modifier, &GraphModifier::setUseNullInputHandler); |