diff options
author | Mika Salmela <mika.salmela@digia.com> | 2013-12-12 15:02:07 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-12-13 08:18:01 +0200 |
commit | 132502c16e8ccb6d6fc627e2b5f6f89838d88c8e (patch) | |
tree | 03ffd9e3721f435f99ec30cb90b4b77523076aea /tests | |
parent | be2532151087d48802836bea0cb5a5658cf3492a (diff) |
Control for surface visibility features
Task-number: QTRD-2628
Change-Id: Ic03e2a71231665c478a918044ebd3e5b2d22b445
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/surfacetest/graphmodifier.cpp | 20 | ||||
-rw-r--r-- | tests/surfacetest/graphmodifier.h | 2 | ||||
-rw-r--r-- | tests/surfacetest/main.cpp | 7 |
3 files changed, 27 insertions, 2 deletions
diff --git a/tests/surfacetest/graphmodifier.cpp b/tests/surfacetest/graphmodifier.cpp index 6879530b..3474b67f 100644 --- a/tests/surfacetest/graphmodifier.cpp +++ b/tests/surfacetest/graphmodifier.cpp @@ -52,7 +52,8 @@ GraphModifier::GraphModifier(Q3DSurface *graph) m_insertTestZPos(0), m_insertTestIndexPos(1), m_planeArray(0), - m_theSeries(new QSurface3DSeries) + m_theSeries(new QSurface3DSeries), + m_drawMode(QSurface3DSeries::DrawSurfaceAndWireframe) { m_graph->setAxisX(new Q3DValueAxis); m_graph->setAxisY(new Q3DValueAxis); @@ -80,12 +81,27 @@ void GraphModifier::toggleSmooth(bool enabled) void GraphModifier::toggleSurfaceGrid(bool enable) { qDebug() << "GraphModifier::toggleSurfaceGrid" << enable; - m_theSeries->setSurfaceGridEnabled(enable); + if (enable) + m_drawMode |= QSurface3DSeries::DrawWireframe; + else + m_drawMode &= ~QSurface3DSeries::DrawWireframe; + + m_theSeries->setDrawMode(m_drawMode); } void GraphModifier::toggleSurface(bool enable) { qDebug() << "GraphModifier::toggleSurface" << enable; + if (enable) + m_drawMode |= QSurface3DSeries::DrawSurface; + else + m_drawMode &= ~QSurface3DSeries::DrawSurface; + + m_theSeries->setDrawMode(m_drawMode); +} + +void GraphModifier::toggleSeriesVisible(bool enable) +{ m_theSeries->setVisible(enable); } diff --git a/tests/surfacetest/graphmodifier.h b/tests/surfacetest/graphmodifier.h index 8269962a..f0b5cce7 100644 --- a/tests/surfacetest/graphmodifier.h +++ b/tests/surfacetest/graphmodifier.h @@ -44,6 +44,7 @@ public: void toggleSmooth(bool enabled); void toggleSurfaceGrid(bool enable); void toggleSurface(bool enable); + void toggleSeriesVisible(bool enable); void toggleSqrtSin(bool enable); void togglePlane(bool enable); void setHeightMapData(bool enable); @@ -113,6 +114,7 @@ private: QSurfaceDataArray *m_planeArray; QLabel *m_selectionInfoLabel; QSurface3DSeries *m_theSeries; + QSurface3DSeries::DrawFlags m_drawMode; }; #endif diff --git a/tests/surfacetest/main.cpp b/tests/surfacetest/main.cpp index d2cafae9..c25c5b89 100644 --- a/tests/surfacetest/main.cpp +++ b/tests/surfacetest/main.cpp @@ -78,6 +78,10 @@ int main(int argc, char *argv[]) surfaceCB->setText(QStringLiteral("Surface Visible")); surfaceCB->setChecked(true); + QCheckBox *seriesVisibleCB = new QCheckBox(widget); + seriesVisibleCB->setText(QStringLiteral("Series Visible")); + seriesVisibleCB->setChecked(true); + //QCheckBox *sqrtSinCB = new QCheckBox(widget); QRadioButton *sqrtSinCB = new QRadioButton(widget); sqrtSinCB->setText(QStringLiteral("Sqrt & Sin")); @@ -247,6 +251,7 @@ int main(int argc, char *argv[]) vLayout->addWidget(smoothCB); vLayout->addWidget(surfaceGridCB); vLayout->addWidget(surfaceCB); + vLayout->addWidget(seriesVisibleCB); vLayout->addWidget(new QLabel(QStringLiteral("Select surface sample"))); vLayout->addWidget(sqrtSinCB); vLayout->addWidget(planeCB); @@ -298,6 +303,8 @@ int main(int argc, char *argv[]) modifier, &GraphModifier::toggleSurfaceGrid); QObject::connect(surfaceCB, &QCheckBox::stateChanged, modifier, &GraphModifier::toggleSurface); + QObject::connect(seriesVisibleCB, &QCheckBox::stateChanged, + modifier, &GraphModifier::toggleSeriesVisible); QObject::connect(sqrtSinCB, &QRadioButton::toggled, modifier, &GraphModifier::toggleSqrtSin); QObject::connect(planeCB, &QCheckBox::toggled, |