diff options
author | Mika Salmela <mika.salmela@digia.com> | 2013-09-26 10:46:01 +0300 |
---|---|---|
committer | Mika Salmela <mika.salmela@digia.com> | 2013-09-26 12:22:27 +0300 |
commit | 037d0960a2bde8ad310a9917055c7c0c3488152a (patch) | |
tree | 79996eeaa3396d0e2670a070559fd7674f9db462 /examples/surfacechart | |
parent | 88695159e16bdfb8424de99d482adf332a93740d (diff) |
Slice view implemented
Implemented slice view and fixed selection mechanism.
Task-number: QTRD-2321
Task-number: QTRD-2307
Change-Id: I492bd96678bb1bdb8020448e122931a0deccdc0d
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'examples/surfacechart')
-rw-r--r-- | examples/surfacechart/chartmodifier.cpp | 25 | ||||
-rw-r--r-- | examples/surfacechart/chartmodifier.h | 1 | ||||
-rw-r--r-- | examples/surfacechart/main.cpp | 17 |
3 files changed, 42 insertions, 1 deletions
diff --git a/examples/surfacechart/chartmodifier.cpp b/examples/surfacechart/chartmodifier.cpp index b9ee56d0..67c523ef 100644 --- a/examples/surfacechart/chartmodifier.cpp +++ b/examples/surfacechart/chartmodifier.cpp @@ -263,6 +263,31 @@ void ChartModifier::changeShadowQuality(int quality) m_chart->setShadowQuality(sq); } +void ChartModifier::changeSelectionMode(int mode) +{ + switch (mode) { + case 0: + qDebug() << "QDataVis::ModeNone"; + m_chart->setSelectionMode(QDataVis::ModeNone); + break; + case 1: + qDebug() << "QDataVis::ModeItem"; + m_chart->setSelectionMode(QDataVis::ModeItem); + break; + case 2: + qDebug() << "QDataVis::ModeSliceRow"; + m_chart->setSelectionMode(QDataVis::ModeSliceRow); + break; + case 3: + qDebug() << "QDataVis::ModeSliceColumn"; + m_chart->setSelectionMode(QDataVis::ModeSliceColumn); + break; + default: + qDebug() << __FUNCTION__ << " Unsupported selection mode."; + break; + } +} + void ChartModifier::updateSamples() { switch (m_activeSample) { diff --git a/examples/surfacechart/chartmodifier.h b/examples/surfacechart/chartmodifier.h index bcd71e30..61d97cb0 100644 --- a/examples/surfacechart/chartmodifier.h +++ b/examples/surfacechart/chartmodifier.h @@ -64,6 +64,7 @@ public: public slots: void changeShadowQuality(int quality); void changeTheme(int theme); + void changeSelectionMode(int mode); private: void resetArrayAndSliders(QSurfaceDataArray *array, qreal minZ, qreal maxZ, qreal minX, diff --git a/examples/surfacechart/main.cpp b/examples/surfacechart/main.cpp index 370993df..f0d21b3c 100644 --- a/examples/surfacechart/main.cpp +++ b/examples/surfacechart/main.cpp @@ -34,6 +34,8 @@ using namespace QtDataVisualization; +const int initialTheme = 4; + int main(int argc, char *argv[]) { QApplication app(argc, argv); @@ -46,6 +48,9 @@ int main(int argc, char *argv[]) Q3DSurface *surfaceChart = new Q3DSurface(); QSize screenSize = surfaceChart->screen()->size(); + // Set to default, should be same as the initial on themeList + surfaceChart->setTheme(QDataVis::ColorTheme(initialTheme)); + QWidget *container = QWidget::createWindowContainer(surfaceChart); container->setMinimumSize(QSize(screenSize.width() / 2, screenSize.height() / 2)); container->setMaximumSize(screenSize); @@ -150,7 +155,7 @@ int main(int argc, char *argv[]) themeList->addItem(QStringLiteral("Retro")); themeList->addItem(QStringLiteral("Ebony")); themeList->addItem(QStringLiteral("Isabelle")); - themeList->setCurrentIndex(0); + themeList->setCurrentIndex(initialTheme); // QComboBox *shadowQuality = new QComboBox(widget); // shadowQuality->addItem(QStringLiteral("None")); @@ -161,6 +166,12 @@ int main(int argc, char *argv[]) // shadowQuality->addItem(QStringLiteral("Medium Soft")); // shadowQuality->addItem(QStringLiteral("High Soft")); // shadowQuality->setCurrentIndex(3); + QComboBox *selectionMode = new QComboBox(widget); + selectionMode->addItem(QStringLiteral("ModeNone")); + selectionMode->addItem(QStringLiteral("ModeItem")); + selectionMode->addItem(QStringLiteral("ModeSliceRow")); + selectionMode->addItem(QStringLiteral("ModeSliceColumn")); + selectionMode->setCurrentIndex(1); // Add controls to the layout vLayout->addWidget(smoothCB); @@ -187,6 +198,8 @@ int main(int argc, char *argv[]) vLayout->addWidget(themeList); // vLayout->addWidget(new QLabel(QStringLiteral("Adjust shadow quality"))); // vLayout->addWidget(shadowQuality); + vLayout->addWidget(new QLabel(QStringLiteral("Selection Mode"))); + vLayout->addWidget(selectionMode); widget->show(); @@ -227,6 +240,8 @@ int main(int argc, char *argv[]) modifier, SLOT(changeTheme(int))); // QObject::connect(shadowQuality, SIGNAL(currentIndexChanged(int)), // modifier, SLOT(changeShadowQuality(int))); + QObject::connect(selectionMode, SIGNAL(currentIndexChanged(int)), + modifier, SLOT(changeSelectionMode(int))); modifier->setGridSliderZ(gridSliderZ); modifier->setGridSliderX(gridSliderX); |