summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2013-09-06 12:24:41 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-09-06 12:41:57 +0300
commit48ec1d061bfd202f68f8c6771917fa22f9e45733 (patch)
treeb3a0b33dfaca99ba693b4e1fc3c69faf73ac98cf
parent1ff7a47fe0f2a016e7b61adf3b99ca750347ec13 (diff)
Expose data proxy in QML
Change-Id: I1102520678f2c8ae2932ddb396b41655cfd538e9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
-rw-r--r--examples/qmlbarchart/qml/qmlbarchart/data.qml7
-rw-r--r--examples/qmlbarchart/qml/qmlbarchart/main.qml18
-rw-r--r--examples/qmlscatter/qml/qmlscatter/data.qml7
-rw-r--r--examples/qmlscatter/qml/qmlscatter/main.qml6
-rw-r--r--src/datavis3d/data/qabstractdataproxy.h1
-rw-r--r--src/datavis3d/data/qbardataproxy.h1
-rw-r--r--src/datavis3d/data/qscatterdataproxy.h1
-rw-r--r--src/datavis3d/engine/bars3dcontroller.cpp21
-rw-r--r--src/datavis3dqml2/datavis3dqml2_plugin.cpp9
-rw-r--r--src/datavis3dqml2/datavis3dqml2_plugin.h8
-rw-r--r--src/datavis3dqml2/declarativebars.cpp33
-rw-r--r--src/datavis3dqml2/declarativebars_p.h18
-rw-r--r--src/datavis3dqml2/declarativescatter.cpp28
-rw-r--r--src/datavis3dqml2/declarativescatter_p.h16
14 files changed, 69 insertions, 105 deletions
diff --git a/examples/qmlbarchart/qml/qmlbarchart/data.qml b/examples/qmlbarchart/qml/qmlbarchart/data.qml
index f7fef334..29d26183 100644
--- a/examples/qmlbarchart/qml/qmlbarchart/data.qml
+++ b/examples/qmlbarchart/qml/qmlbarchart/data.qml
@@ -22,6 +22,7 @@ import com.digia.QtDataVis3D 1.0
Item {
property alias mapping: valueMapping
property alias model: dataModel
+ property alias proxy: modelProxy
BarDataMapping {
id: valueMapping
@@ -33,6 +34,12 @@ Item {
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
}
+ ItemModelBarDataProxy {
+ id: modelProxy
+ activeMapping: valueMapping
+ itemModel: dataModel
+ }
+
ListModel {
id: dataModel
ListElement{ year: "2000"; month: "Jan"; expenses: "3"; income: "8" }
diff --git a/examples/qmlbarchart/qml/qmlbarchart/main.qml b/examples/qmlbarchart/qml/qmlbarchart/main.qml
index ea28d90a..e3536ce4 100644
--- a/examples/qmlbarchart/qml/qmlbarchart/main.qml
+++ b/examples/qmlbarchart/qml/qmlbarchart/main.qml
@@ -41,8 +41,6 @@ Item {
height: parent.height
anchors.right: parent.right;
- property point storedSelection: Qt.point(-1, -1)
-
Bars3D {
id: testchart
width: dataView.width
@@ -53,7 +51,7 @@ Item {
theme: Bars3D.ThemeBrownSand
rows: 4
columns: 12
- mapping: chartData.mapping
+ dataProxy: chartData.proxy
barThickness: 0.5
barSpacing: Qt.size(0.5, 0.5)
barSpacingRelative: false
@@ -62,18 +60,9 @@ Item {
columnAxis: chartAxes.column
valueAxis: chartAxes.expenses
itemLabelFormat: "@valueTitle for @colLabel, @rowLabel: @valueLabel"
-
- onDataResolved: {
- // Can't select a bar until data has been resolved from model to proxy
- selectedBarPos = dataView.storedSelection
- }
}
}
- Component.onCompleted: {
- testchart.data = chartData.model
- }
-
TableView {
id: tableView
x: 0
@@ -87,8 +76,8 @@ Item {
model: chartData.model
onCurrentRowChanged: {
- var rowIndex = testchart.mapping.rowCategoryIndex(chartData.model.get(currentRow).year)
- var colIndex = testchart.mapping.columnCategoryIndex(chartData.model.get(currentRow).month)
+ var rowIndex = chartData.proxy.activeMapping.rowCategoryIndex(chartData.model.get(currentRow).year)
+ var colIndex = chartData.proxy.activeMapping.columnCategoryIndex(chartData.model.get(currentRow).month)
testchart.selectedBarPos = Qt.point(rowIndex, colIndex)
}
}
@@ -108,7 +97,6 @@ Item {
text = "Show Income"
testchart.valueAxis = chartAxes.expenses
}
- dataView.storedSelection = testchart.selectedBarPos
}
}
diff --git a/examples/qmlscatter/qml/qmlscatter/data.qml b/examples/qmlscatter/qml/qmlscatter/data.qml
index 93352713..30fce67a 100644
--- a/examples/qmlscatter/qml/qmlscatter/data.qml
+++ b/examples/qmlscatter/qml/qmlscatter/data.qml
@@ -22,6 +22,7 @@ import com.digia.QtDataVis3D 1.0
Item {
property alias mapping: scatterMapping
property alias model: dataModel
+ property alias proxy: modelProxy
ScatterDataMapping {
id: scatterMapping
@@ -30,6 +31,12 @@ Item {
zPosRole: "zPos"
}
+ ItemModelScatterDataProxy {
+ id: modelProxy
+ activeMapping: scatterMapping
+ itemModel: dataModel
+ }
+
ListModel {
id: dataModel
ListElement{ xPos: -10.0; yPos: 5.0; zPos: -5.0 }
diff --git a/examples/qmlscatter/qml/qmlscatter/main.qml b/examples/qmlscatter/qml/qmlscatter/main.qml
index 9645341b..9fcce132 100644
--- a/examples/qmlscatter/qml/qmlscatter/main.qml
+++ b/examples/qmlscatter/qml/qmlscatter/main.qml
@@ -40,7 +40,7 @@ Item {
height: dataView.height
font.family: "Lucida Handwriting"
font.pointSize: 40
- mapping: chartData.mapping
+ dataProxy: chartData.proxy
theme: Scatter3D.ThemeHighContrast
shadowQuality: Scatter3D.ShadowSoftLow
selectionMode: Scatter3D.ModeItem
@@ -54,10 +54,6 @@ Item {
axisY.segmentCount: 2
axisY.subSegmentCount: 2
axisY.labelFormat: "%.2f"
-
- Component.onCompleted: {
- data = chartData.model
- }
}
}
diff --git a/src/datavis3d/data/qabstractdataproxy.h b/src/datavis3d/data/qabstractdataproxy.h
index ccf66b20..6cd2386d 100644
--- a/src/datavis3d/data/qabstractdataproxy.h
+++ b/src/datavis3d/data/qabstractdataproxy.h
@@ -32,6 +32,7 @@ class QT_DATAVIS3D_EXPORT QAbstractDataProxy : public QObject
Q_OBJECT
Q_ENUMS(DataType)
Q_PROPERTY(DataType type READ type)
+ Q_PROPERTY(QString itemLabelFormat READ itemLabelFormat WRITE setItemLabelFormat NOTIFY itemLabelFormatChanged)
public:
enum DataType {
diff --git a/src/datavis3d/data/qbardataproxy.h b/src/datavis3d/data/qbardataproxy.h
index 51191739..3338bc75 100644
--- a/src/datavis3d/data/qbardataproxy.h
+++ b/src/datavis3d/data/qbardataproxy.h
@@ -34,6 +34,7 @@ class QT_DATAVIS3D_EXPORT QBarDataProxy : public QAbstractDataProxy
{
Q_OBJECT
+ Q_PROPERTY(int rowCount READ rowCount)
public:
explicit QBarDataProxy(QObject *parent = 0);
virtual ~QBarDataProxy();
diff --git a/src/datavis3d/data/qscatterdataproxy.h b/src/datavis3d/data/qscatterdataproxy.h
index b8f505f9..d5897631 100644
--- a/src/datavis3d/data/qscatterdataproxy.h
+++ b/src/datavis3d/data/qscatterdataproxy.h
@@ -32,6 +32,7 @@ class QT_DATAVIS3D_EXPORT QScatterDataProxy : public QAbstractDataProxy
{
Q_OBJECT
+ Q_PROPERTY(int itemCount READ itemCount)
public:
explicit QScatterDataProxy(QObject *parent = 0);
virtual ~QScatterDataProxy();
diff --git a/src/datavis3d/engine/bars3dcontroller.cpp b/src/datavis3d/engine/bars3dcontroller.cpp
index e8b5fe30..1591eb46 100644
--- a/src/datavis3d/engine/bars3dcontroller.cpp
+++ b/src/datavis3d/engine/bars3dcontroller.cpp
@@ -290,6 +290,8 @@ void Bars3DController::setActiveDataProxy(QAbstractDataProxy *proxy)
&Bars3DController::handleItemChanged);
adjustValueAxisRange();
+
+ // Always clear selection on proxy change
setSelectedBarPos(noSelectionPoint());
}
@@ -298,7 +300,8 @@ void Bars3DController::handleArrayReset()
setSlicingActive(false);
adjustValueAxisRange();
m_isDataDirty = true;
- setSelectedBarPos(noSelectionPoint());
+ // Clear selection unless still valid
+ setSelectedBarPos(m_selectedBarPos);
emitNeedRender();
}
@@ -335,9 +338,10 @@ void Bars3DController::handleRowsRemoved(int startIndex, int count)
setSlicingActive(false);
adjustValueAxisRange();
m_isDataDirty = true;
- // TODO this will break once data window offset is implemented
- if (startIndex >= static_cast<QBarDataProxy *>(m_data)->rowCount())
- setSelectedBarPos(noSelectionPoint());
+
+ // Clear selection unless still valid
+ setSelectedBarPos(m_selectedBarPos);
+
emitNeedRender();
}
@@ -447,8 +451,8 @@ void Bars3DController::setDataWindow(int rowCount, int columnCount)
adjustValueAxisRange();
- if (m_selectedBarPos.x() >= rowCount || m_selectedBarPos.y() >= columnCount)
- setSelectedBarPos(noSelectionPoint());
+ // Clear selection unless still valid
+ setSelectedBarPos(m_selectedBarPos);
m_changeTracker.sampleSpaceChanged = true;
m_isDataDirty = true; // Render item array is recreated in renderer
@@ -464,11 +468,14 @@ void Bars3DController::setSelectionMode(QDataVis::SelectionMode mode)
void Bars3DController::setSelectedBarPos(const QPoint &position)
{
+ // If the selection is outside data window or targets non-existent
+ // bar, clear selection instead.
// TODO this will break once data window offset is implemented
QPoint pos = position;
if (pos.x() < 0 || pos.y() < 0
|| pos.x() >= static_cast<QBarDataProxy *>(m_data)->rowCount()
- || pos.y() >= static_cast<QBarDataProxy *>(m_data)->rowAt(pos.x())->size()) {
+ || pos.y() >= static_cast<QBarDataProxy *>(m_data)->rowAt(pos.x())->size()
+ || pos.x() >= m_rowCount || pos.y() >= m_columnCount) {
pos = noSelectionPoint();
}
diff --git a/src/datavis3dqml2/datavis3dqml2_plugin.cpp b/src/datavis3dqml2/datavis3dqml2_plugin.cpp
index 48f39cf4..8c73e318 100644
--- a/src/datavis3dqml2/datavis3dqml2_plugin.cpp
+++ b/src/datavis3dqml2/datavis3dqml2_plugin.cpp
@@ -31,6 +31,12 @@ void Datavis3Dqml2Plugin::registerTypes(const char *uri)
QLatin1String("Trying to create uncreatable: DataVis."));
qmlRegisterUncreatableType<Q3DAbstractAxis>(uri, 1, 0, "AbstractAxis3D",
QLatin1String("Trying to create uncreatable: AbstractAxis."));
+ qmlRegisterUncreatableType<QAbstractDataProxy>(uri, 1, 0, "AbstractDataProxy",
+ QLatin1String("Trying to create uncreatable: AbstractDataProxy."));
+ qmlRegisterUncreatableType<QBarDataProxy>(uri, 1, 0, "BarDataProxy",
+ QLatin1String("Trying to create uncreatable: BarDataProxy."));
+ qmlRegisterUncreatableType<QScatterDataProxy>(uri, 1, 0, "ScatterDataProxy",
+ QLatin1String("Trying to create uncreatable: ScatterDataProxy."));
qmlRegisterType<QItemModelBarDataMapping>(uri, 1, 0, "BarDataMapping");
qmlRegisterType<QItemModelScatterDataMapping>(uri, 1, 0, "ScatterDataMapping");
@@ -40,6 +46,9 @@ void Datavis3Dqml2Plugin::registerTypes(const char *uri)
qmlRegisterType<Q3DValueAxis>(uri, 1, 0, "ValueAxis3D");
qmlRegisterType<Q3DCategoryAxis>(uri, 1, 0, "CategoryAxis3D");
+
+ qmlRegisterType<QItemModelBarDataProxy>(uri, 1, 0, "ItemModelBarDataProxy");
+ qmlRegisterType<QItemModelScatterDataProxy>(uri, 1, 0, "ItemModelScatterDataProxy");
}
QT_DATAVIS3D_END_NAMESPACE
diff --git a/src/datavis3dqml2/datavis3dqml2_plugin.h b/src/datavis3dqml2/datavis3dqml2_plugin.h
index 35bd8840..cc9894ba 100644
--- a/src/datavis3dqml2/datavis3dqml2_plugin.h
+++ b/src/datavis3dqml2/datavis3dqml2_plugin.h
@@ -26,6 +26,8 @@
#include "qitemmodelscatterdatamapping.h"
#include "q3dvalueaxis.h"
#include "q3dcategoryaxis.h"
+#include "qitemmodelbardataproxy.h"
+#include "qitemmodelscatterdataproxy.h"
#include <QQmlExtensionPlugin>
@@ -43,6 +45,12 @@ Q_DECLARE_METATYPE(Q3DAbstractAxis *)
Q_DECLARE_METATYPE(Q3DCategoryAxis *)
Q_DECLARE_METATYPE(Q3DValueAxis *)
+Q_DECLARE_METATYPE(QAbstractDataProxy *)
+Q_DECLARE_METATYPE(QBarDataProxy *)
+Q_DECLARE_METATYPE(QItemModelBarDataProxy *)
+Q_DECLARE_METATYPE(QScatterDataProxy *)
+Q_DECLARE_METATYPE(QItemModelScatterDataProxy *)
+
QT_DATAVIS3D_BEGIN_NAMESPACE
class Datavis3Dqml2Plugin : public QQmlExtensionPlugin
diff --git a/src/datavis3dqml2/declarativebars.cpp b/src/datavis3dqml2/declarativebars.cpp
index f94487bc..30ee0257 100644
--- a/src/datavis3dqml2/declarativebars.cpp
+++ b/src/datavis3dqml2/declarativebars.cpp
@@ -18,8 +18,8 @@
#include "declarativebars_p.h"
#include "declarativebarsrenderer_p.h"
-#include "qitemmodelbardataproxy.h"
#include "q3dvalueaxis.h"
+#include "qitemmodelbardataproxy.h"
QT_DATAVIS3D_BEGIN_NAMESPACE
@@ -46,9 +46,6 @@ DeclarativeBars::DeclarativeBars(QQuickItem *parent)
QItemModelBarDataProxy *proxy = new QItemModelBarDataProxy;
m_shared->setActiveDataProxy(proxy);
-
- QObject::connect(proxy, &QBarDataProxy::arrayReset, this,
- &DeclarativeBars::dataResolved);
}
DeclarativeBars::~DeclarativeBars()
@@ -61,16 +58,6 @@ void DeclarativeBars::handleShadowQualityUpdate(QDataVis::ShadowQuality quality)
emit shadowQualityChanged(quality);
}
-void DeclarativeBars::classBegin()
-{
- //qDebug() << "classBegin";
-}
-
-void DeclarativeBars::componentComplete()
-{
- //qDebug() << "componentComplete";
-}
-
QSGNode *DeclarativeBars::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *)
{
// If old node exists and has right size, reuse it.
@@ -110,19 +97,14 @@ void DeclarativeBars::setCameraPosition(qreal horizontal, qreal vertical, int di
m_shared->setCameraPosition(GLfloat(horizontal), GLfloat(vertical), GLint(distance));
}
-void DeclarativeBars::setData(const QAbstractItemModel *data)
-{
- static_cast<QItemModelBarDataProxy *>(m_shared->activeDataProxy())->setItemModel(data);
-}
-
-const QAbstractItemModel *DeclarativeBars::data() const
+void DeclarativeBars::setDataProxy(QBarDataProxy *dataProxy)
{
- return static_cast<const QItemModelBarDataProxy *>(m_shared->activeDataProxy())->itemModel();
+ m_shared->setActiveDataProxy(dataProxy);
}
-void DeclarativeBars::setMapping(QItemModelBarDataMapping *mapping)
+QBarDataProxy *DeclarativeBars::dataProxy() const
{
- static_cast<QItemModelBarDataProxy *>(m_shared->activeDataProxy())->setActiveMapping(mapping);
+ return static_cast<QBarDataProxy *>(m_shared->activeDataProxy());
}
Q3DCategoryAxis *DeclarativeBars::rowAxis() const
@@ -155,11 +137,6 @@ void DeclarativeBars::setColumnAxis(Q3DCategoryAxis *axis)
m_shared->setAxisZ(axis);
}
-QItemModelBarDataMapping *DeclarativeBars::mapping() const
-{
- return static_cast<QItemModelBarDataProxy *>(m_shared->activeDataProxy())->activeMapping();
-}
-
void DeclarativeBars::setBarThickness(qreal thicknessRatio)
{
m_shared->setBarSpecs(GLfloat(thicknessRatio), barSpacing(), isBarSpacingRelative());
diff --git a/src/datavis3dqml2/declarativebars_p.h b/src/datavis3dqml2/declarativebars_p.h
index 283afdfb..a5d2ee05 100644
--- a/src/datavis3dqml2/declarativebars_p.h
+++ b/src/datavis3dqml2/declarativebars_p.h
@@ -32,9 +32,9 @@
#include "datavis3dglobal_p.h"
#include "bars3dcontroller_p.h"
#include "declarativebars_p.h"
-#include "qitemmodelbardatamapping.h"
#include "q3dvalueaxis.h"
#include "q3dcategoryaxis.h"
+#include "qbardataproxy.h"
#include <QAbstractItemModel>
#include <QQuickItem>
@@ -46,8 +46,7 @@ QT_DATAVIS3D_BEGIN_NAMESPACE
class DeclarativeBars : public QQuickItem
{
Q_OBJECT
- Q_PROPERTY(const QAbstractItemModel *data READ data WRITE setData)
- Q_PROPERTY(QItemModelBarDataMapping *mapping READ mapping WRITE setMapping)
+ Q_PROPERTY(QBarDataProxy *dataProxy READ dataProxy WRITE setDataProxy)
Q_PROPERTY(Q3DCategoryAxis *rowAxis READ rowAxis WRITE setRowAxis)
Q_PROPERTY(Q3DValueAxis *valueAxis READ valueAxis WRITE setValueAxis)
Q_PROPERTY(Q3DCategoryAxis *columnAxis READ columnAxis WRITE setColumnAxis)
@@ -80,9 +79,6 @@ public:
explicit DeclarativeBars(QQuickItem *parent = 0);
~DeclarativeBars();
- void classBegin();
- void componentComplete();
-
// how many samples per row and column
Q_INVOKABLE void setDataWindow(int rowCount, int columnCount);
@@ -96,12 +92,8 @@ public:
// percentage (10...500))
Q_INVOKABLE void setCameraPosition(qreal horizontal, qreal vertical, int distance);
- // Add whole data set.
- void setData(const QAbstractItemModel *data);
- const QAbstractItemModel *data() const;
-
- QItemModelBarDataMapping *mapping() const;
- void setMapping(QItemModelBarDataMapping *mapping);
+ QBarDataProxy *dataProxy() const;
+ void setDataProxy(QBarDataProxy *dataProxy);
Q3DCategoryAxis *rowAxis() const;
void setRowAxis(Q3DCategoryAxis *axis);
@@ -183,8 +175,6 @@ public:
signals:
// Signals shadow quality changes.
void shadowQualityChanged(QDataVis::ShadowQuality quality);
- // Signals data has been resolved
- void dataResolved();
protected:
Bars3DController *m_shared;
diff --git a/src/datavis3dqml2/declarativescatter.cpp b/src/datavis3dqml2/declarativescatter.cpp
index c38dc9d0..79f91265 100644
--- a/src/datavis3dqml2/declarativescatter.cpp
+++ b/src/datavis3dqml2/declarativescatter.cpp
@@ -56,16 +56,6 @@ void DeclarativeScatter::handleShadowQualityUpdate(QDataVis::ShadowQuality quali
emit shadowQualityChanged(quality);
}
-void DeclarativeScatter::classBegin()
-{
- //qDebug() << "classBegin";
-}
-
-void DeclarativeScatter::componentComplete()
-{
- //qDebug() << "componentComplete";
-}
-
QSGNode *DeclarativeScatter::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *)
{
// If old node exists and has right size, reuse it.
@@ -100,24 +90,14 @@ void DeclarativeScatter::setObjectColor(const QColor &baseColor, const QColor &h
m_shared->setObjectColor(baseColor, heightColor, depthColor, uniform);
}
-void DeclarativeScatter::setData(const QAbstractItemModel *data)
-{
- static_cast<QItemModelScatterDataProxy *>(m_shared->activeDataProxy())->setItemModel(data);
-}
-
-const QAbstractItemModel *DeclarativeScatter::data() const
-{
- return static_cast<const QItemModelScatterDataProxy *>(m_shared->activeDataProxy())->itemModel();
-}
-
-void DeclarativeScatter::setMapping(QItemModelScatterDataMapping *mapping)
+QScatterDataProxy *DeclarativeScatter::dataProxy() const
{
- static_cast<QItemModelScatterDataProxy *>(m_shared->activeDataProxy())->setActiveMapping(mapping);
+ return static_cast<QScatterDataProxy *>(m_shared->activeDataProxy());
}
-QItemModelScatterDataMapping *DeclarativeScatter::mapping() const
+void DeclarativeScatter::setDataProxy(QScatterDataProxy *dataProxy)
{
- return static_cast<QItemModelScatterDataProxy *>(m_shared->activeDataProxy())->activeMapping();
+ m_shared->setActiveDataProxy(dataProxy);
}
Q3DValueAxis *DeclarativeScatter::axisX() const
diff --git a/src/datavis3dqml2/declarativescatter_p.h b/src/datavis3dqml2/declarativescatter_p.h
index 187d1b89..60a751be 100644
--- a/src/datavis3dqml2/declarativescatter_p.h
+++ b/src/datavis3dqml2/declarativescatter_p.h
@@ -32,8 +32,8 @@
#include "datavis3dglobal_p.h"
#include "scatter3dcontroller_p.h"
#include "declarativescatter_p.h"
-#include "qitemmodelscatterdatamapping.h"
#include "q3dvalueaxis.h"
+#include "qscatterdataproxy.h"
#include <QAbstractItemModel>
#include <QQuickItem>
@@ -44,8 +44,7 @@ QT_DATAVIS3D_BEGIN_NAMESPACE
class DeclarativeScatter : public QQuickItem
{
Q_OBJECT
- Q_PROPERTY(const QAbstractItemModel *data READ data WRITE setData)
- Q_PROPERTY(QItemModelScatterDataMapping *mapping READ mapping WRITE setMapping)
+ Q_PROPERTY(QScatterDataProxy *dataProxy READ dataProxy WRITE setDataProxy)
Q_PROPERTY(Q3DValueAxis *axisX READ axisX WRITE setAxisX)
Q_PROPERTY(Q3DValueAxis *axisY READ axisY WRITE setAxisY)
Q_PROPERTY(Q3DValueAxis *axisZ READ axisZ WRITE setAxisZ)
@@ -72,9 +71,6 @@ public:
explicit DeclarativeScatter(QQuickItem *parent = 0);
~DeclarativeScatter();
- void classBegin();
- void componentComplete();
-
// Set camera rotation if you don't want to use the presets (in horizontal (-180...180) and
// vertical (-90...90) angles and distance in percentage (10...500))
Q_INVOKABLE void setCameraPosition(qreal horizontal, qreal vertical, int distance);
@@ -84,12 +80,8 @@ public:
Q_INVOKABLE void setObjectColor(const QColor &baseColor, const QColor &heightColor,
const QColor &depthColor, bool uniform = true);
- // Add whole data set.
- void setData(const QAbstractItemModel *data);
- const QAbstractItemModel *data() const;
-
- QItemModelScatterDataMapping *mapping() const;
- void setMapping(QItemModelScatterDataMapping *mapping);
+ QScatterDataProxy *dataProxy() const;
+ void setDataProxy(QScatterDataProxy *dataProxy);
Q3DValueAxis *axisX() const;
void setAxisX(Q3DValueAxis *axis);