summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTomi Korpipää <tomi.korpipaa@digia.com>2014-03-03 13:34:07 +0200
committerTomi Korpipää <tomi.korpipaa@digia.com>2014-03-03 13:36:49 +0200
commit7206dc36f1be77515cf6759795b265c986b2e20b (patch)
treef67c4bbef6382724c8a361805c5318f786aa7f25 /src
parent3347c6537f1c2c6f070a28c1b5d23fa1ceb3a50f (diff)
Disallow clearing all draw flags
Task-number: QTRD-2907 Change-Id: I89a45971bf67c533ecfe477cd685812c46574dd8 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/datavisualization/data/qsurface3dseries.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/datavisualization/data/qsurface3dseries.cpp b/src/datavisualization/data/qsurface3dseries.cpp
index 9518b0c4..c5ac9fe8 100644
--- a/src/datavisualization/data/qsurface3dseries.cpp
+++ b/src/datavisualization/data/qsurface3dseries.cpp
@@ -140,6 +140,13 @@ QT_BEGIN_NAMESPACE_DATAVISUALIZATION
*/
/*!
+ * \qmlproperty DrawFlag Surface3DSeries::drawMode
+ *
+ * Sets the drawing \a mode to one of \l{QSurface3DSeries::DrawFlag}{Surface3DSeries.DrawFlag}.
+ * Clearing all flags is not allowed.
+ */
+
+/*!
* \enum QSurface3DSeries::DrawFlag
*
* Drawing mode of the surface. Values of this enumeration can be combined with OR operator.
@@ -283,7 +290,7 @@ bool QSurface3DSeries::isFlatShadingSupported() const
/*!
* \property QSurface3DSeries::drawMode
*
- * Sets the drawing \a mode to one of DrawFlag.
+ * Sets the drawing \a mode to one of DrawFlag. Clearing all flags is not allowed.
*/
void QSurface3DSeries::setDrawMode(DrawFlags mode)
{
@@ -389,9 +396,14 @@ void QSurface3DSeriesPrivate::setFlatShadingEnabled(bool enabled)
void QSurface3DSeriesPrivate::setDrawMode(QSurface3DSeries::DrawFlags mode)
{
- m_drawMode = mode;
- if (m_controller)
- m_controller->markSeriesVisualsDirty();
+ if (mode.testFlag(QSurface3DSeries::DrawWireframe)
+ || mode.testFlag(QSurface3DSeries::DrawSurface)) {
+ m_drawMode = mode;
+ if (m_controller)
+ m_controller->markSeriesVisualsDirty();
+ } else {
+ qWarning("You may not clear all draw flags. Mode not changed.");
+ }
}
QT_END_NAMESPACE_DATAVISUALIZATION