diff options
author | Keränen Pasi <pasi.keranen@digia.com> | 2013-12-03 10:39:23 +0200 |
---|---|---|
committer | Pasi Keränen <pasi.keranen@digia.com> | 2013-12-03 14:06:07 +0200 |
commit | 2af35db1a112c49991a80f48e3cd8d8814deb321 (patch) | |
tree | 69c7a37711f851473c87408ac446ae0c6dcff2c9 /src/datavisualizationqml2/declarativescatter.cpp | |
parent | 5a3abb2517126239f1b916b7b0cbaaa624b1cb44 (diff) |
Fixes to QML retina display issues.
Task-id: QTRD-2661
Change-Id: I05fa1d9c3d078a7ed552b2b225f0d9bb1c03a0aa
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualizationqml2/declarativescatter.cpp')
-rw-r--r-- | src/datavisualizationqml2/declarativescatter.cpp | 56 |
1 files changed, 16 insertions, 40 deletions
diff --git a/src/datavisualizationqml2/declarativescatter.cpp b/src/datavisualizationqml2/declarativescatter.cpp index 2848997f..40ef2926 100644 --- a/src/datavisualizationqml2/declarativescatter.cpp +++ b/src/datavisualizationqml2/declarativescatter.cpp @@ -17,15 +17,14 @@ ****************************************************************************/ #include "declarativescatter_p.h" -#include "declarativescatterrenderer_p.h" +#include "declarativerenderer_p.h" #include "qitemmodelscatterdataproxy.h" QT_DATAVISUALIZATION_BEGIN_NAMESPACE DeclarativeScatter::DeclarativeScatter(QQuickItem *parent) : AbstractDeclarative(parent), - m_shared(0), - m_initialisedSize(0, 0) + m_scatterController(0) { setFlags(QQuickItem::ItemHasContents); setAcceptedMouseButtons(Qt::AllButtons); @@ -35,66 +34,43 @@ DeclarativeScatter::DeclarativeScatter(QQuickItem *parent) setSmooth(true); // Create the shared component on the main GUI thread. - m_shared = new Scatter3DController(boundingRect().toRect()); - setSharedController(m_shared); + m_scatterController = new Scatter3DController(boundingRect().toRect()); + setSharedController(m_scatterController); } DeclarativeScatter::~DeclarativeScatter() { - delete m_shared; -} - -QSGNode *DeclarativeScatter::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *) -{ - // If old node exists and has right size, reuse it. - if (oldNode && m_initialisedSize == boundingRect().size().toSize()) { - // Update bounding rectangle (that has same size as before). - static_cast<DeclarativeScatterRenderer *>( oldNode )->setRect(boundingRect()); - return oldNode; - } - - // Create a new render node when size changes or if there is no node yet - m_initialisedSize = boundingRect().size().toSize(); - - // Delete old node - if (oldNode) - delete oldNode; - - // Create a new one and set it's bounding rectangle - DeclarativeScatterRenderer *node = new DeclarativeScatterRenderer(window(), m_shared); - node->setRect(boundingRect()); - m_shared->setBoundingRect(boundingRect().toRect()); - return node; + delete m_scatterController; } Q3DValueAxis *DeclarativeScatter::axisX() const { - return static_cast<Q3DValueAxis *>(m_shared->axisX()); + return static_cast<Q3DValueAxis *>(m_scatterController->axisX()); } void DeclarativeScatter::setAxisX(Q3DValueAxis *axis) { - m_shared->setAxisX(axis); + m_scatterController->setAxisX(axis); } Q3DValueAxis *DeclarativeScatter::axisY() const { - return static_cast<Q3DValueAxis *>(m_shared->axisY()); + return static_cast<Q3DValueAxis *>(m_scatterController->axisY()); } void DeclarativeScatter::setAxisY(Q3DValueAxis *axis) { - m_shared->setAxisY(axis); + m_scatterController->setAxisY(axis); } Q3DValueAxis *DeclarativeScatter::axisZ() const { - return static_cast<Q3DValueAxis *>(m_shared->axisZ()); + return static_cast<Q3DValueAxis *>(m_scatterController->axisZ()); } void DeclarativeScatter::setAxisZ(Q3DValueAxis *axis) { - m_shared->setAxisZ(axis); + m_scatterController->setAxisZ(axis); } QQmlListProperty<QScatter3DSeries> DeclarativeScatter::seriesList() @@ -113,18 +89,18 @@ void DeclarativeScatter::appendSeriesFunc(QQmlListProperty<QScatter3DSeries> *li int DeclarativeScatter::countSeriesFunc(QQmlListProperty<QScatter3DSeries> *list) { - return reinterpret_cast<DeclarativeScatter *>(list->data)->m_shared->scatterSeriesList().size(); + return reinterpret_cast<DeclarativeScatter *>(list->data)->m_scatterController->scatterSeriesList().size(); } QScatter3DSeries *DeclarativeScatter::atSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, int index) { - return reinterpret_cast<DeclarativeScatter *>(list->data)->m_shared->scatterSeriesList().at(index); + return reinterpret_cast<DeclarativeScatter *>(list->data)->m_scatterController->scatterSeriesList().at(index); } void DeclarativeScatter::clearSeriesFunc(QQmlListProperty<QScatter3DSeries> *list) { DeclarativeScatter *declScatter = reinterpret_cast<DeclarativeScatter *>(list->data); - QList<QScatter3DSeries *> realList = declScatter->m_shared->scatterSeriesList(); + QList<QScatter3DSeries *> realList = declScatter->m_scatterController->scatterSeriesList(); int count = realList.size(); for (int i = 0; i < count; i++) declScatter->removeSeries(realList.at(i)); @@ -132,12 +108,12 @@ void DeclarativeScatter::clearSeriesFunc(QQmlListProperty<QScatter3DSeries> *lis void DeclarativeScatter::addSeries(QScatter3DSeries *series) { - m_shared->addSeries(series); + m_scatterController->addSeries(series); } void DeclarativeScatter::removeSeries(QScatter3DSeries *series) { - m_shared->removeSeries(series); + m_scatterController->removeSeries(series); series->setParent(this); // Reparent as removing will leave series parentless } |