diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-11-15 10:39:15 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-11-15 12:43:19 +0200 |
commit | 27241b083df419f3a2de928c1d3f5dd8f6459030 (patch) | |
tree | cfe9c73f6b5b35a58a66700f0e4e5187120203ed /src/datavisualizationqml2/declarativeseries.cpp | |
parent | cc22cc40e889b5b2f0e49ce32f660395cef865b7 (diff) |
Enable giving series and proxies as child items in QML
Task-number: QTRD-2359
Change-Id: I37558b169bb60ee90993c1a8703da0c6745a9db0
Reviewed-by: Mika Salmela <mika.salmela@digia.com>
Reviewed-by: Pasi Keränen <pasi.keranen@digia.com>
Diffstat (limited to 'src/datavisualizationqml2/declarativeseries.cpp')
-rw-r--r-- | src/datavisualizationqml2/declarativeseries.cpp | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/src/datavisualizationqml2/declarativeseries.cpp b/src/datavisualizationqml2/declarativeseries.cpp new file mode 100644 index 00000000..81bbb649 --- /dev/null +++ b/src/datavisualizationqml2/declarativeseries.cpp @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc +** All rights reserved. +** For any questions to Digia, please use contact form at http://qt.digia.com +** +** This file is part of the QtDataVisualization module. +** +** Licensees holding valid Qt Enterprise licenses may use this file in +** accordance with the Qt Enterprise License Agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. +** +** If you have questions regarding the use of this file, please use +** contact form at http://qt.digia.com +** +****************************************************************************/ + +#include "declarativeseries_p.h" +#include "qbardataproxy.h" +#include "qscatterdataproxy.h" +#include "qsurfacedataproxy.h" + +QT_DATAVISUALIZATION_BEGIN_NAMESPACE + +DeclarativeBar3DSeries::DeclarativeBar3DSeries(QObject *parent) + : QBar3DSeries(parent) +{ +} + +DeclarativeBar3DSeries::~DeclarativeBar3DSeries() +{ +} + +QQmlListProperty<QObject> DeclarativeBar3DSeries::seriesChildren() +{ + return QQmlListProperty<QObject>(this, this, &DeclarativeBar3DSeries::appendSeriesChildren + , 0, 0, 0); +} + +void DeclarativeBar3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element) +{ + QBarDataProxy *proxy = qobject_cast<QBarDataProxy *>(element); + if (proxy) + reinterpret_cast<DeclarativeBar3DSeries *>(list->data)->setDataProxy(proxy); +} + +DeclarativeScatter3DSeries::DeclarativeScatter3DSeries(QObject *parent) + : QScatter3DSeries(parent) +{ +} + +DeclarativeScatter3DSeries::~DeclarativeScatter3DSeries() +{ +} + +QQmlListProperty<QObject> DeclarativeScatter3DSeries::seriesChildren() +{ + return QQmlListProperty<QObject>(this, this, &DeclarativeScatter3DSeries::appendSeriesChildren + , 0, 0, 0); +} + +void DeclarativeScatter3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element) +{ + QScatterDataProxy *proxy = qobject_cast<QScatterDataProxy *>(element); + if (proxy) + reinterpret_cast<DeclarativeScatter3DSeries *>(list->data)->setDataProxy(proxy); +} + +DeclarativeSurface3DSeries::DeclarativeSurface3DSeries(QObject *parent) + : QSurface3DSeries(parent) +{ +} + +DeclarativeSurface3DSeries::~DeclarativeSurface3DSeries() +{ +} + +QQmlListProperty<QObject> DeclarativeSurface3DSeries::seriesChildren() +{ + return QQmlListProperty<QObject>(this, this, &DeclarativeSurface3DSeries::appendSeriesChildren + , 0, 0, 0); +} + +void DeclarativeSurface3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element) +{ + QSurfaceDataProxy *proxy = qobject_cast<QSurfaceDataProxy *>(element); + if (proxy) + reinterpret_cast<DeclarativeSurface3DSeries *>(list->data)->setDataProxy(proxy); +} + +QT_DATAVISUALIZATION_END_NAMESPACE |