summaryrefslogtreecommitdiffstats
path: root/src/datavisualization
diff options
context:
space:
mode:
Diffstat (limited to 'src/datavisualization')
-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