diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-03-04 14:19:56 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2014-03-05 07:44:43 +0200 |
commit | 2068d98d3f098d152fbec381fb95f8453bc949f1 (patch) | |
tree | 626d57acdaf6e4fa5bd2bd88bea0cac0290b6f2d /src | |
parent | 878a7e4ead91e81ce9796fb7035ca0fdbd54fee8 (diff) |
Make sure we don't draw empty graphs in designer
Change-Id: I90dac0c7c884326875dd4b58d71075fd316e47b8
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/datavisualizationqml2/abstractdeclarative.cpp | 7 | ||||
-rw-r--r-- | src/datavisualizationqml2/abstractdeclarative_p.h | 1 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/datavisualizationqml2/abstractdeclarative.cpp b/src/datavisualizationqml2/abstractdeclarative.cpp index d07ea540..56cad310 100644 --- a/src/datavisualizationqml2/abstractdeclarative.cpp +++ b/src/datavisualizationqml2/abstractdeclarative.cpp @@ -54,7 +54,8 @@ AbstractDeclarative::AbstractDeclarative(QQuickItem *parent) : setAntialiasing(m_samples > 0); // Set contents to false in case we are in qml designer to make component look nice - setFlag(ItemHasContents, QGuiApplication::applicationDisplayName() != "Qml2Puppet"); + m_runningInDesigner = QGuiApplication::applicationDisplayName() == "Qml2Puppet"; + setFlag(ItemHasContents, !m_runningInDesigner); } AbstractDeclarative::~AbstractDeclarative() @@ -113,7 +114,7 @@ void AbstractDeclarative::setRenderingMode(AbstractDeclarative::RenderingMode mo break; case RenderIndirect: m_initialisedSize = QSize(0, 0); - setFlag(ItemHasContents, true); + setFlag(ItemHasContents, !m_runningInDesigner); update(); if (win) { QObject::disconnect(win, &QQuickWindow::beforeRendering, this, @@ -139,7 +140,7 @@ AbstractDeclarative::RenderingMode AbstractDeclarative::renderingMode() const QSGNode *AbstractDeclarative::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *) { QSize boundingSize = boundingRect().size().toSize() * m_controller->scene()->devicePixelRatio(); - if (boundingSize.width() <= 0 || boundingSize.height() <= 0 + if (m_runningInDesigner || boundingSize.width() <= 0 || boundingSize.height() <= 0 || m_controller.isNull() || !window()) { delete oldNode; return 0; diff --git a/src/datavisualizationqml2/abstractdeclarative_p.h b/src/datavisualizationqml2/abstractdeclarative_p.h index 428ca0b5..0a18dc25 100644 --- a/src/datavisualizationqml2/abstractdeclarative_p.h +++ b/src/datavisualizationqml2/abstractdeclarative_p.h @@ -184,6 +184,7 @@ private: QPointer<QOpenGLContext> m_qtContext; QThread *m_mainThread; QThread *m_contextThread; + bool m_runningInDesigner; }; Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractDeclarative::SelectionFlags) |