summaryrefslogtreecommitdiffstats
path: root/src/datavisualizationqml2
diff options
context:
space:
mode:
Diffstat (limited to 'src/datavisualizationqml2')
-rw-r--r--src/datavisualizationqml2/abstractdeclarative.cpp158
-rw-r--r--src/datavisualizationqml2/abstractdeclarative_p.h70
-rw-r--r--src/datavisualizationqml2/datavisualizationqml2_plugin.cpp32
-rw-r--r--src/datavisualizationqml2/datavisualizationqml2_plugin.h11
-rw-r--r--src/datavisualizationqml2/declarativebars.cpp6
-rw-r--r--src/datavisualizationqml2/declarativebars_p.h6
-rw-r--r--src/datavisualizationqml2/declarativerendernode.cpp26
-rw-r--r--src/datavisualizationqml2/declarativerendernode_p.h4
-rw-r--r--src/datavisualizationqml2/declarativescatter.cpp13
-rw-r--r--src/datavisualizationqml2/declarativescatter_p.h3
-rw-r--r--src/datavisualizationqml2/declarativeseries.cpp12
-rw-r--r--src/datavisualizationqml2/declarativesurface.cpp3
-rw-r--r--src/datavisualizationqml2/declarativesurface_p.h3
-rw-r--r--src/datavisualizationqml2/declarativetheme.cpp16
-rw-r--r--src/datavisualizationqml2/declarativetheme_p.h8
-rw-r--r--src/datavisualizationqml2/designer/Bars3DSpecifics.qml23
-rw-r--r--src/datavisualizationqml2/designer/Scatter3DSpecifics.qml37
-rw-r--r--src/datavisualizationqml2/designer/Surface3DSpecifics.qml38
-rw-r--r--src/datavisualizationqml2/enumtostringmap.cpp15
-rw-r--r--src/datavisualizationqml2/glstatestore.cpp47
-rw-r--r--src/datavisualizationqml2/glstatestore_p.h17
-rw-r--r--src/datavisualizationqml2/plugins.qmltypes450
22 files changed, 866 insertions, 132 deletions
diff --git a/src/datavisualizationqml2/abstractdeclarative.cpp b/src/datavisualizationqml2/abstractdeclarative.cpp
index 65e7c6c3..a6dee6eb 100644
--- a/src/datavisualizationqml2/abstractdeclarative.cpp
+++ b/src/datavisualizationqml2/abstractdeclarative.cpp
@@ -17,7 +17,6 @@
****************************************************************************/
#include "abstractdeclarative_p.h"
-#include "qvalue3daxis.h"
#include "declarativetheme_p.h"
#include "declarativerendernode_p.h"
@@ -37,18 +36,18 @@ AbstractDeclarative::AbstractDeclarative(QQuickItem *parent) :
m_controller(0),
m_contextWindow(0),
m_renderMode(RenderIndirect),
-#if defined(QT_OPENGL_ES_2)
+ #if defined(QT_OPENGL_ES_2)
m_samples(0),
-#else
+ #else
m_samples(4),
-#endif
+ #endif
m_windowSamples(0),
m_initialisedSize(0, 0),
-#ifdef USE_SHARED_CONTEXT
+ #ifdef USE_SHARED_CONTEXT
m_context(0),
-#else
+ #else
m_stateStore(0),
-#endif
+ #endif
m_qtContext(0),
m_mainThread(QThread::currentThread()),
m_contextThread(0)
@@ -171,7 +170,7 @@ Declarative3DScene* AbstractDeclarative::scene() const
void AbstractDeclarative::setTheme(Q3DTheme *theme)
{
- m_controller->setActiveTheme(theme);
+ m_controller->setActiveTheme(theme, isComponentComplete());
}
Q3DTheme *AbstractDeclarative::theme() const
@@ -211,6 +210,84 @@ bool AbstractDeclarative::shadowsSupported() const
return m_controller->shadowsSupported();
}
+int AbstractDeclarative::addCustomItem(QCustom3DItem *item)
+{
+ return m_controller->addCustomItem(item);
+}
+
+void AbstractDeclarative::removeCustomItems()
+{
+ m_controller->deleteCustomItems();
+}
+
+void AbstractDeclarative::removeCustomItem(QCustom3DItem *item)
+{
+ m_controller->deleteCustomItem(item);
+}
+
+void AbstractDeclarative::removeCustomItemAt(const QVector3D &position)
+{
+ m_controller->deleteCustomItem(position);
+}
+
+void AbstractDeclarative::releaseCustomItem(QCustom3DItem *item)
+{
+ return m_controller->releaseCustomItem(item);
+}
+
+int AbstractDeclarative::selectedLabelIndex() const
+{
+ return m_controller->selectedLabelIndex();
+}
+
+QAbstract3DAxis *AbstractDeclarative::selectedAxis() const
+{
+ return m_controller->selectedAxis();
+}
+
+int AbstractDeclarative::selectedCustomItemIndex() const
+{
+ return m_controller->selectedCustomItemIndex();
+}
+
+QCustom3DItem *AbstractDeclarative::selectedCustomItem() const
+{
+ return m_controller->selectedCustomItem();
+}
+
+QQmlListProperty<QCustom3DItem> AbstractDeclarative::customItemList()
+{
+ return QQmlListProperty<QCustom3DItem>(this, this,
+ &AbstractDeclarative::appendCustomItemFunc,
+ &AbstractDeclarative::countCustomItemFunc,
+ &AbstractDeclarative::atCustomItemFunc,
+ &AbstractDeclarative::clearCustomItemFunc);
+}
+
+void AbstractDeclarative::appendCustomItemFunc(QQmlListProperty<QCustom3DItem> *list,
+ QCustom3DItem *item)
+{
+ AbstractDeclarative *decl = reinterpret_cast<AbstractDeclarative *>(list->data);
+ decl->addCustomItem(item);
+}
+
+int AbstractDeclarative::countCustomItemFunc(QQmlListProperty<QCustom3DItem> *list)
+{
+ return reinterpret_cast<AbstractDeclarative *>(list->data)->m_controller->m_customItems.size();
+}
+
+QCustom3DItem *AbstractDeclarative::atCustomItemFunc(QQmlListProperty<QCustom3DItem> *list,
+ int index)
+{
+ return reinterpret_cast<AbstractDeclarative *>(list->data)->m_controller->m_customItems.at(index);
+}
+
+void AbstractDeclarative::clearCustomItemFunc(QQmlListProperty<QCustom3DItem> *list)
+{
+ AbstractDeclarative *decl = reinterpret_cast<AbstractDeclarative *>(list->data);
+ decl->removeCustomItems();
+}
+
void AbstractDeclarative::setSharedController(Abstract3DController *controller)
{
Q_ASSERT(controller);
@@ -230,6 +307,8 @@ void AbstractDeclarative::setSharedController(Abstract3DController *controller)
&AbstractDeclarative::themeChanged);
QObject::connect(m_controller.data(), &Abstract3DController::selectionModeChanged, this,
&AbstractDeclarative::handleSelectionModeChange);
+ QObject::connect(m_controller.data(), &Abstract3DController::elementSelected, this,
+ &AbstractDeclarative::selectedElementChanged);
QObject::connect(m_controller.data(), &Abstract3DController::axisXChanged, this,
&AbstractDeclarative::handleAxisXChanged);
@@ -237,6 +316,17 @@ void AbstractDeclarative::setSharedController(Abstract3DController *controller)
&AbstractDeclarative::handleAxisYChanged);
QObject::connect(m_controller.data(), &Abstract3DController::axisZChanged, this,
&AbstractDeclarative::handleAxisZChanged);
+
+ QObject::connect(m_controller.data(), &Abstract3DController::measureFpsChanged, this,
+ &AbstractDeclarative::measureFpsChanged);
+ QObject::connect(m_controller.data(), &Abstract3DController::currentFpsChanged, this,
+ &AbstractDeclarative::currentFpsChanged);
+
+ QObject::connect(m_controller.data(), &Abstract3DController::orthoProjectionChanged, this,
+ &AbstractDeclarative::orthoProjectionChanged);
+
+ QObject::connect(m_controller.data(), &Abstract3DController::aspectRatioChanged, this,
+ &AbstractDeclarative::aspectRatioChanged);
}
void AbstractDeclarative::activateOpenGLContext(QQuickWindow *window)
@@ -569,6 +659,58 @@ void AbstractDeclarative::checkWindowList(QQuickWindow *window)
}
}
+void AbstractDeclarative::setMeasureFps(bool enable)
+{
+ m_controller->setMeasureFps(enable);
+}
+
+bool AbstractDeclarative::measureFps() const
+{
+ return m_controller->measureFps();
+}
+
+qreal AbstractDeclarative::currentFps() const
+{
+ return m_controller->currentFps();
+}
+
+void AbstractDeclarative::setOrthoProjection(bool enable)
+{
+ m_controller->setOrthoProjection(enable);
+}
+
+bool AbstractDeclarative::isOrthoProjection() const
+{
+ return m_controller->isOrthoProjection();
+}
+
+AbstractDeclarative::ElementType AbstractDeclarative::selectedElement() const
+{
+ return ElementType(m_controller->selectedElement());
+}
+
+void AbstractDeclarative::setAspectRatio(qreal ratio)
+{
+ m_controller->setAspectRatio(float(ratio));
+}
+
+qreal AbstractDeclarative::aspectRatio() const
+{
+ return m_controller->aspectRatio();
+}
+
+void AbstractDeclarative::setOptimizationHints(OptimizationHints hints)
+{
+ int intmode = int(hints);
+ m_controller->setOptimizationHints(QAbstract3DGraph::OptimizationHints(intmode));
+}
+
+AbstractDeclarative::OptimizationHints AbstractDeclarative::optimizationHints() const
+{
+ int intmode = int(m_controller->optimizationHints());
+ return OptimizationHints(intmode);
+}
+
void AbstractDeclarative::windowDestroyed(QObject *obj)
{
// Remove destroyed window from window lists
diff --git a/src/datavisualizationqml2/abstractdeclarative_p.h b/src/datavisualizationqml2/abstractdeclarative_p.h
index 87b108db..ebe8b49c 100644
--- a/src/datavisualizationqml2/abstractdeclarative_p.h
+++ b/src/datavisualizationqml2/abstractdeclarative_p.h
@@ -31,12 +31,9 @@
#include "datavisualizationglobal_p.h"
#include "abstract3dcontroller_p.h"
-#include "qabstract3dinputhandler.h"
#include "declarativescene_p.h"
-#include <QtCore/QAbstractItemModel>
#include <QtQuick/QQuickItem>
-#include <QtQuick/QQuickWindow>
#include <QtCore/QPointer>
#include <QtCore/QThread>
@@ -57,7 +54,9 @@ class AbstractDeclarative : public QQuickItem
Q_OBJECT
Q_ENUMS(ShadowQuality)
Q_ENUMS(RenderingMode)
+ Q_ENUMS(ElementType)
Q_FLAGS(SelectionFlag SelectionFlags)
+ Q_FLAGS(OptimizationHint OptimizationHints)
Q_PROPERTY(SelectionFlags selectionMode READ selectionMode WRITE setSelectionMode NOTIFY selectionModeChanged)
Q_PROPERTY(ShadowQuality shadowQuality READ shadowQuality WRITE setShadowQuality NOTIFY shadowQualityChanged)
Q_PROPERTY(bool shadowsSupported READ shadowsSupported NOTIFY shadowsSupportedChanged)
@@ -66,6 +65,13 @@ class AbstractDeclarative : public QQuickItem
Q_PROPERTY(QAbstract3DInputHandler* inputHandler READ inputHandler WRITE setInputHandler NOTIFY inputHandlerChanged)
Q_PROPERTY(Q3DTheme* theme READ theme WRITE setTheme NOTIFY themeChanged)
Q_PROPERTY(RenderingMode renderingMode READ renderingMode WRITE setRenderingMode NOTIFY renderingModeChanged)
+ Q_PROPERTY(bool measureFps READ measureFps WRITE setMeasureFps NOTIFY measureFpsChanged REVISION 1)
+ Q_PROPERTY(qreal currentFps READ currentFps NOTIFY currentFpsChanged REVISION 1)
+ Q_PROPERTY(QQmlListProperty<QCustom3DItem> customItemList READ customItemList REVISION 1)
+ Q_PROPERTY(bool orthoProjection READ isOrthoProjection WRITE setOrthoProjection NOTIFY orthoProjectionChanged REVISION 1)
+ Q_PROPERTY(ElementType selectedElement READ selectedElement NOTIFY selectedElementChanged REVISION 1)
+ Q_PROPERTY(qreal aspectRatio READ aspectRatio WRITE setAspectRatio NOTIFY aspectRatioChanged REVISION 1)
+ Q_PROPERTY(OptimizationHints optimizationHints READ optimizationHints WRITE setOptimizationHints NOTIFY optimizationHintsChanged REVISION 1)
public:
enum SelectionFlag {
@@ -92,12 +98,27 @@ public:
ShadowQualitySoftHigh
};
+ enum ElementType {
+ ElementNone = 0,
+ ElementSeries,
+ ElementAxisXLabel,
+ ElementAxisYLabel,
+ ElementAxisZLabel,
+ ElementCustomItem
+ };
+
enum RenderingMode {
RenderDirectToBackground = 0,
RenderDirectToBackground_NoClear,
RenderIndirect
};
+ enum OptimizationHint {
+ OptimizationDefault = 0,
+ OptimizationStatic = 1
+ };
+ Q_DECLARE_FLAGS(OptimizationHints, OptimizationHint)
+
public:
explicit AbstractDeclarative(QQuickItem *parent = 0);
virtual ~AbstractDeclarative();
@@ -126,7 +147,26 @@ public:
Q_INVOKABLE virtual void clearSelection();
- virtual void geometryChanged(const QRectF & newGeometry, const QRectF & oldGeometry);
+ Q_REVISION(1) Q_INVOKABLE virtual int addCustomItem(QCustom3DItem *item);
+ Q_REVISION(1) Q_INVOKABLE virtual void removeCustomItems();
+ Q_REVISION(1) Q_INVOKABLE virtual void removeCustomItem(QCustom3DItem *item);
+ Q_REVISION(1) Q_INVOKABLE virtual void removeCustomItemAt(const QVector3D &position);
+ Q_REVISION(1) Q_INVOKABLE virtual void releaseCustomItem(QCustom3DItem *item);
+
+ Q_REVISION(1) Q_INVOKABLE virtual int selectedLabelIndex() const;
+ Q_REVISION(1) Q_INVOKABLE virtual QAbstract3DAxis *selectedAxis() const;
+
+ Q_REVISION(1) Q_INVOKABLE virtual int selectedCustomItemIndex() const;
+ Q_REVISION(1) Q_INVOKABLE virtual QCustom3DItem *selectedCustomItem() const;
+
+ QQmlListProperty<QCustom3DItem> customItemList();
+ static void appendCustomItemFunc(QQmlListProperty<QCustom3DItem> *list,
+ QCustom3DItem *item);
+ static int countCustomItemFunc(QQmlListProperty<QCustom3DItem> *list);
+ static QCustom3DItem *atCustomItemFunc(QQmlListProperty<QCustom3DItem> *list, int index);
+ static void clearCustomItemFunc(QQmlListProperty<QCustom3DItem> *list);
+
+ virtual void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry);
void setSharedController(Abstract3DController *controller);
// Used to synch up data model from controller to renderer while main thread is locked
@@ -138,6 +178,21 @@ public:
void checkWindowList(QQuickWindow *window);
+ void setMeasureFps(bool enable);
+ bool measureFps() const;
+ qreal currentFps() const;
+
+ void setOrthoProjection(bool enable);
+ bool isOrthoProjection() const;
+
+ AbstractDeclarative::ElementType selectedElement() const;
+
+ void setAspectRatio(qreal ratio);
+ qreal aspectRatio() const;
+
+ void setOptimizationHints(OptimizationHints hints);
+ OptimizationHints optimizationHints() const;
+
public slots:
virtual void handleAxisXChanged(QAbstract3DAxis *axis) = 0;
virtual void handleAxisYChanged(QAbstract3DAxis *axis) = 0;
@@ -167,6 +222,12 @@ signals:
void inputHandlerChanged(QAbstract3DInputHandler *inputHandler);
void themeChanged(Q3DTheme *theme);
void renderingModeChanged(AbstractDeclarative::RenderingMode mode);
+ Q_REVISION(1) void measureFpsChanged(bool enabled);
+ Q_REVISION(1) void currentFpsChanged(qreal fps);
+ Q_REVISION(1) void selectedElementChanged(QAbstract3DGraph::ElementType type);
+ Q_REVISION(1) void orthoProjectionChanged(bool enabled);
+ Q_REVISION(1) void aspectRatioChanged(qreal ratio);
+ Q_REVISION(1) void optimizationHintsChanged(QAbstract3DGraph::OptimizationHints hints);
private:
QPointer<Abstract3DController> m_controller;
@@ -187,6 +248,7 @@ private:
bool m_runningInDesigner;
};
Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractDeclarative::SelectionFlags)
+Q_DECLARE_OPERATORS_FOR_FLAGS(AbstractDeclarative::OptimizationHints)
QT_END_NAMESPACE_DATAVISUALIZATION
diff --git a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp
index 04e70ecb..09780dc5 100644
--- a/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp
+++ b/src/datavisualizationqml2/datavisualizationqml2_plugin.cpp
@@ -25,8 +25,11 @@ QT_BEGIN_NAMESPACE_DATAVISUALIZATION
void QtDataVisualizationQml2Plugin::registerTypes(const char *uri)
{
// @uri QtDataVisualization
- qmlRegisterUncreatableType<const QAbstractItemModel>(uri, 1, 0, "AbstractItemModel",
- QLatin1String("Trying to create uncreatable: AbstractItemModel."));
+
+ // QtDataVisualization 1.0
+
+ qmlRegisterUncreatableType<QAbstractItemModel>(uri, 1, 0, "AbstractItemModel",
+ QLatin1String("Trying to create uncreatable: AbstractItemModel."));
qmlRegisterUncreatableType<QAbstract3DAxis>(uri, 1, 0, "AbstractAxis3D",
QLatin1String("Trying to create uncreatable: AbstractAxis."));
qmlRegisterUncreatableType<QAbstractDataProxy>(uri, 1, 0, "AbstractDataProxy",
@@ -40,7 +43,7 @@ void QtDataVisualizationQml2Plugin::registerTypes(const char *uri)
qmlRegisterUncreatableType<AbstractDeclarative>(uri, 1, 0, "AbstractGraph3D",
QLatin1String("Trying to create uncreatable: AbstractGraph3D."));
qmlRegisterUncreatableType<Declarative3DScene>(uri, 1, 0, "Scene3D",
- QLatin1String("Trying to create uncreatable: Scene3D."));
+ QLatin1String("Trying to create uncreatable: Scene3D."));
qmlRegisterUncreatableType<QAbstract3DSeries>(uri, 1, 0, "Abstract3DSeries",
QLatin1String("Trying to create uncreatable: Abstract3DSeries."));
qmlRegisterUncreatableType<QBar3DSeries>(uri, 1, 0, "QBar3DSeries",
@@ -80,6 +83,29 @@ void QtDataVisualizationQml2Plugin::registerTypes(const char *uri)
qmlRegisterType<DeclarativeSurface3DSeries>(uri, 1, 0, "Surface3DSeries");
qRegisterMetaType<QAbstract3DGraph::ShadowQuality>("QAbstract3DGraph::ShadowQuality");
+
+ // QtDataVisualization 1.1
+
+ // New revisions
+ qmlRegisterUncreatableType<QAbstract3DAxis, 1>(uri, 1, 1, "AbstractAxis3D",
+ QLatin1String("Trying to create uncreatable: AbstractAxis."));
+ qmlRegisterUncreatableType<QAbstract3DSeries, 1>(uri, 1, 1, "Abstract3DSeries",
+ QLatin1String("Trying to create uncreatable: Abstract3DSeries."));
+ qmlRegisterUncreatableType<AbstractDeclarative, 1>(uri, 1, 1, "AbstractGraph3D",
+ QLatin1String("Trying to create uncreatable: AbstractGraph3D."));
+ qmlRegisterType<QValue3DAxis, 1>(uri, 1, 1, "ValueAxis3D");
+ qmlRegisterType<QItemModelBarDataProxy, 1>(uri, 1, 1, "ItemModelBarDataProxy");
+ qmlRegisterType<QItemModelSurfaceDataProxy, 1>(uri, 1, 1, "ItemModelSurfaceDataProxy");
+ qmlRegisterType<QItemModelScatterDataProxy, 1>(uri, 1, 1, "ItemModelScatterDataProxy");
+
+ // New types
+ qmlRegisterType<QValue3DAxisFormatter>(uri, 1, 1, "ValueAxis3DFormatter");
+ qmlRegisterType<QLogValue3DAxisFormatter>(uri, 1, 1, "LogValueAxis3DFormatter");
+ qmlRegisterType<QCustom3DItem>(uri, 1, 1, "Custom3DItem");
+ qmlRegisterType<QCustom3DLabel>(uri, 1, 1, "Custom3DLabel");
+
+ // New metatypes
+ qRegisterMetaType<QAbstract3DGraph::ElementType>("QAbstract3DGraph::ElementType");
}
QT_END_NAMESPACE_DATAVISUALIZATION
diff --git a/src/datavisualizationqml2/datavisualizationqml2_plugin.h b/src/datavisualizationqml2/datavisualizationqml2_plugin.h
index e39d6b35..21ef85b8 100644
--- a/src/datavisualizationqml2/datavisualizationqml2_plugin.h
+++ b/src/datavisualizationqml2/datavisualizationqml2_plugin.h
@@ -28,6 +28,8 @@
#include "qitemmodelsurfacedataproxy.h"
#include "qheightmapsurfacedataproxy.h"
#include "qvalue3daxis.h"
+#include "qvalue3daxisformatter.h"
+#include "qlogvalue3daxisformatter.h"
#include "qcategory3daxis.h"
#include "q3dobject.h"
#include "q3dcamera.h"
@@ -43,6 +45,8 @@
#include "qabstract3dinputhandler.h"
#include "declarativecolor_p.h"
#include "declarativescene_p.h"
+#include "qcustom3ditem.h"
+#include "qcustom3dlabel.h"
#include <QtQml/QQmlExtensionPlugin>
@@ -53,11 +57,13 @@ QML_DECLARE_TYPE(DeclarativeBars)
QML_DECLARE_TYPE(DeclarativeScatter)
QML_DECLARE_TYPE(DeclarativeSurface)
-QML_DECLARE_TYPE(const QAbstractItemModel)
+QML_DECLARE_TYPE(QAbstractItemModel)
QML_DECLARE_TYPE(QAbstract3DAxis)
QML_DECLARE_TYPE(QCategory3DAxis)
QML_DECLARE_TYPE(QValue3DAxis)
+QML_DECLARE_TYPE(QValue3DAxisFormatter)
+QML_DECLARE_TYPE(QLogValue3DAxisFormatter)
QML_DECLARE_TYPE(Q3DScene)
QML_DECLARE_TYPE(Declarative3DScene)
@@ -92,6 +98,9 @@ QML_DECLARE_TYPE(DeclarativeTheme3D)
QML_DECLARE_TYPE(QAbstract3DInputHandler)
+QML_DECLARE_TYPE(QCustom3DItem)
+QML_DECLARE_TYPE(QCustom3DLabel)
+
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
class QtDataVisualizationQml2Plugin : public QQmlExtensionPlugin
diff --git a/src/datavisualizationqml2/declarativebars.cpp b/src/datavisualizationqml2/declarativebars.cpp
index 4f984c32..9670a7db 100644
--- a/src/datavisualizationqml2/declarativebars.cpp
+++ b/src/datavisualizationqml2/declarativebars.cpp
@@ -17,9 +17,6 @@
****************************************************************************/
#include "declarativebars_p.h"
-#include "qvalue3daxis.h"
-#include "qitemmodelbardataproxy.h"
-#include "declarativescene_p.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
@@ -90,7 +87,8 @@ bool DeclarativeBars::isMultiSeriesUniform() const
void DeclarativeBars::setBarThickness(float thicknessRatio)
{
if (thicknessRatio != barThickness()) {
- m_barsController->setBarSpecs(GLfloat(thicknessRatio), barSpacing(), isBarSpacingRelative());
+ m_barsController->setBarSpecs(GLfloat(thicknessRatio), barSpacing(),
+ isBarSpacingRelative());
emit barThicknessChanged(thicknessRatio);
}
}
diff --git a/src/datavisualizationqml2/declarativebars_p.h b/src/datavisualizationqml2/declarativebars_p.h
index 97f5882a..52690813 100644
--- a/src/datavisualizationqml2/declarativebars_p.h
+++ b/src/datavisualizationqml2/declarativebars_p.h
@@ -32,11 +32,6 @@
#include "datavisualizationglobal_p.h"
#include "abstractdeclarative_p.h"
#include "bars3dcontroller_p.h"
-#include "declarativebars_p.h"
-#include "qvalue3daxis.h"
-#include "qcategory3daxis.h"
-#include "qbardataproxy.h"
-#include "qbar3dseries.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
@@ -88,7 +83,6 @@ public:
Q_INVOKABLE void insertSeries(int index, QBar3DSeries *series);
void setPrimarySeries(QBar3DSeries *series);
QBar3DSeries *primarySeries() const;
-
QBar3DSeries *selectedSeries() const;
public slots:
diff --git a/src/datavisualizationqml2/declarativerendernode.cpp b/src/datavisualizationqml2/declarativerendernode.cpp
index 1f6d4b56..e9bb65fd 100644
--- a/src/datavisualizationqml2/declarativerendernode.cpp
+++ b/src/datavisualizationqml2/declarativerendernode.cpp
@@ -17,24 +17,22 @@
****************************************************************************/
#include "declarativerendernode_p.h"
-#include "abstract3dcontroller_p.h"
#include "abstractdeclarative_p.h"
-#include <QtGui/QOpenGLContext>
#include <QtGui/QOpenGLFramebufferObject>
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
DeclarativeRenderNode::DeclarativeRenderNode(AbstractDeclarative *declarative)
: QSGGeometryNode(),
- m_geometry(QSGGeometry::defaultAttributes_TexturedPoint2D(), 4),
- m_texture(0),
- m_declarative(declarative),
- m_controller(0),
- m_fbo(0),
- m_multisampledFBO(0),
- m_window(0),
- m_samples(0),
- m_dirtyFBO(false)
+ m_geometry(QSGGeometry::defaultAttributes_TexturedPoint2D(), 4),
+ m_texture(0),
+ m_declarative(declarative),
+ m_controller(0),
+ m_fbo(0),
+ m_multisampledFBO(0),
+ m_window(0),
+ m_samples(0),
+ m_dirtyFBO(false)
{
setMaterial(&m_material);
setOpaqueMaterial(&m_materialO);
@@ -92,8 +90,10 @@ void DeclarativeRenderNode::updateFBO()
QSGGeometry::updateTexturedRectGeometry(&m_geometry,
QRectF(0, 0,
- m_size.width() / m_controller->scene()->devicePixelRatio(),
- m_size.height() / m_controller->scene()->devicePixelRatio()),
+ m_size.width()
+ / m_controller->scene()->devicePixelRatio(),
+ m_size.height()
+ / m_controller->scene()->devicePixelRatio()),
QRectF(0, 1, 1, -1));
delete m_texture;
diff --git a/src/datavisualizationqml2/declarativerendernode_p.h b/src/datavisualizationqml2/declarativerendernode_p.h
index e35791d4..a7ede03a 100644
--- a/src/datavisualizationqml2/declarativerendernode_p.h
+++ b/src/datavisualizationqml2/declarativerendernode_p.h
@@ -33,12 +33,8 @@
#include <QtQuick/QSGGeometryNode>
#include <QtQuick/QSGTextureMaterial>
-#include <QtQuick/QSGOpaqueTextureMaterial>
#include <QtQuick/QQuickWindow>
-class QOpenGLContext;
-class QOpenGLFramebufferObject;
-
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
class Abstract3DController;
diff --git a/src/datavisualizationqml2/declarativescatter.cpp b/src/datavisualizationqml2/declarativescatter.cpp
index dcc52a3d..96af6df6 100644
--- a/src/datavisualizationqml2/declarativescatter.cpp
+++ b/src/datavisualizationqml2/declarativescatter.cpp
@@ -17,8 +17,6 @@
****************************************************************************/
#include "declarativescatter_p.h"
-#include "qitemmodelscatterdataproxy.h"
-#include "declarativescene_p.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
@@ -79,13 +77,14 @@ QScatter3DSeries *DeclarativeScatter::selectedSeries() const
QQmlListProperty<QScatter3DSeries> DeclarativeScatter::seriesList()
{
return QQmlListProperty<QScatter3DSeries>(this, this,
- &DeclarativeScatter::appendSeriesFunc,
- &DeclarativeScatter::countSeriesFunc,
- &DeclarativeScatter::atSeriesFunc,
- &DeclarativeScatter::clearSeriesFunc);
+ &DeclarativeScatter::appendSeriesFunc,
+ &DeclarativeScatter::countSeriesFunc,
+ &DeclarativeScatter::atSeriesFunc,
+ &DeclarativeScatter::clearSeriesFunc);
}
-void DeclarativeScatter::appendSeriesFunc(QQmlListProperty<QScatter3DSeries> *list, QScatter3DSeries *series)
+void DeclarativeScatter::appendSeriesFunc(QQmlListProperty<QScatter3DSeries> *list,
+ QScatter3DSeries *series)
{
reinterpret_cast<DeclarativeScatter *>(list->data)->addSeries(series);
}
diff --git a/src/datavisualizationqml2/declarativescatter_p.h b/src/datavisualizationqml2/declarativescatter_p.h
index 79b56e02..370750ea 100644
--- a/src/datavisualizationqml2/declarativescatter_p.h
+++ b/src/datavisualizationqml2/declarativescatter_p.h
@@ -32,9 +32,6 @@
#include "datavisualizationglobal_p.h"
#include "abstractdeclarative_p.h"
#include "scatter3dcontroller_p.h"
-#include "declarativescatter_p.h"
-#include "qvalue3daxis.h"
-#include "qscatterdataproxy.h"
#include "qscatter3dseries.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
diff --git a/src/datavisualizationqml2/declarativeseries.cpp b/src/datavisualizationqml2/declarativeseries.cpp
index 21555f45..661f87ba 100644
--- a/src/datavisualizationqml2/declarativeseries.cpp
+++ b/src/datavisualizationqml2/declarativeseries.cpp
@@ -17,14 +17,12 @@
****************************************************************************/
#include "declarativeseries_p.h"
-#include "qbardataproxy.h"
-#include "qscatterdataproxy.h"
-#include "qsurfacedataproxy.h"
#include <QtCore/QMetaMethod>
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
-static void setSeriesGradient(QAbstract3DSeries *series, const ColorGradient &gradient, GradientType type)
+static void setSeriesGradient(QAbstract3DSeries *series, const ColorGradient &gradient,
+ GradientType type)
{
QLinearGradient newGradient;
QGradientStops stops;
@@ -198,7 +196,8 @@ QQmlListProperty<QObject> DeclarativeScatter3DSeries::seriesChildren()
, 0, 0, 0);
}
-void DeclarativeScatter3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element)
+void DeclarativeScatter3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list,
+ QObject *element)
{
QScatterDataProxy *proxy = qobject_cast<QScatterDataProxy *>(element);
if (proxy)
@@ -293,7 +292,8 @@ QQmlListProperty<QObject> DeclarativeSurface3DSeries::seriesChildren()
, 0, 0, 0);
}
-void DeclarativeSurface3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element)
+void DeclarativeSurface3DSeries::appendSeriesChildren(QQmlListProperty<QObject> *list,
+ QObject *element)
{
QSurfaceDataProxy *proxy = qobject_cast<QSurfaceDataProxy *>(element);
if (proxy)
diff --git a/src/datavisualizationqml2/declarativesurface.cpp b/src/datavisualizationqml2/declarativesurface.cpp
index 78519586..3075d207 100644
--- a/src/datavisualizationqml2/declarativesurface.cpp
+++ b/src/datavisualizationqml2/declarativesurface.cpp
@@ -17,9 +17,6 @@
****************************************************************************/
#include "declarativesurface_p.h"
-#include "qvalue3daxis.h"
-#include "qitemmodelsurfacedataproxy.h"
-#include "declarativescene_p.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
diff --git a/src/datavisualizationqml2/declarativesurface_p.h b/src/datavisualizationqml2/declarativesurface_p.h
index a4747167..6fe800ba 100644
--- a/src/datavisualizationqml2/declarativesurface_p.h
+++ b/src/datavisualizationqml2/declarativesurface_p.h
@@ -32,9 +32,6 @@
#include "datavisualizationglobal_p.h"
#include "abstractdeclarative_p.h"
#include "surface3dcontroller_p.h"
-#include "declarativesurface_p.h"
-#include "qvalue3daxis.h"
-#include "qsurfacedataproxy.h"
#include "qsurface3dseries.h"
QT_BEGIN_NAMESPACE_DATAVISUALIZATION
diff --git a/src/datavisualizationqml2/declarativetheme.cpp b/src/datavisualizationqml2/declarativetheme.cpp
index 5aec2408..ab10155e 100644
--- a/src/datavisualizationqml2/declarativetheme.cpp
+++ b/src/datavisualizationqml2/declarativetheme.cpp
@@ -36,17 +36,17 @@ DeclarativeTheme3D::~DeclarativeTheme3D()
{
}
-QQmlListProperty<QObject> DeclarativeTheme3D::seriesChildren()
+QQmlListProperty<QObject> DeclarativeTheme3D::themeChildren()
{
- return QQmlListProperty<QObject>(this, this, &DeclarativeTheme3D::appendSeriesChildren,
+ return QQmlListProperty<QObject>(this, this, &DeclarativeTheme3D::appendThemeChildren,
0, 0, 0);
}
-void DeclarativeTheme3D::appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element)
+void DeclarativeTheme3D::appendThemeChildren(QQmlListProperty<QObject> *list, QObject *element)
{
Q_UNUSED(list)
Q_UNUSED(element)
- // Nothing to do, seriesChildren is there only to enable scoping gradient items in Theme3D item.
+ // Nothing to do, themeChildren is there only to enable scoping gradient items in Theme3D item.
}
void DeclarativeTheme3D::handleTypeChange(Theme themeType)
@@ -236,6 +236,10 @@ ColorGradient *DeclarativeTheme3D::convertGradient(const QLinearGradient &gradie
void DeclarativeTheme3D::addColor(DeclarativeColor *color)
{
+ if (!color) {
+ qWarning("Color is invalid, use ThemeColor");
+ return;
+ }
clearDummyColors();
m_colors.append(color);
connect(color, &DeclarativeColor::colorChanged,
@@ -283,6 +287,10 @@ void DeclarativeTheme3D::clearDummyColors()
void DeclarativeTheme3D::addGradient(ColorGradient *gradient)
{
+ if (!gradient) {
+ qWarning("Gradient is invalid, use ColorGradient");
+ return;
+ }
clearDummyGradients();
m_gradients.append(gradient);
connect(gradient, &ColorGradient::updated,
diff --git a/src/datavisualizationqml2/declarativetheme_p.h b/src/datavisualizationqml2/declarativetheme_p.h
index a7f40b1e..89b66f8c 100644
--- a/src/datavisualizationqml2/declarativetheme_p.h
+++ b/src/datavisualizationqml2/declarativetheme_p.h
@@ -42,19 +42,19 @@ class DeclarativeTheme3D : public Q3DTheme, public QQmlParserStatus
{
Q_OBJECT
Q_INTERFACES(QQmlParserStatus)
- Q_PROPERTY(QQmlListProperty<QObject> seriesChildren READ seriesChildren)
+ Q_PROPERTY(QQmlListProperty<QObject> themeChildren READ themeChildren)
Q_PROPERTY(QQmlListProperty<DeclarativeColor> baseColors READ baseColors)
Q_PROPERTY(QQmlListProperty<ColorGradient> baseGradients READ baseGradients)
Q_PROPERTY(ColorGradient *singleHighlightGradient READ singleHighlightGradient WRITE setSingleHighlightGradient NOTIFY singleHighlightGradientChanged)
Q_PROPERTY(ColorGradient *multiHighlightGradient READ multiHighlightGradient WRITE setMultiHighlightGradient NOTIFY multiHighlightGradientChanged)
- Q_CLASSINFO("DefaultProperty", "seriesChildren")
+ Q_CLASSINFO("DefaultProperty", "themeChildren")
public:
DeclarativeTheme3D(QObject *parent = 0);
virtual ~DeclarativeTheme3D();
- QQmlListProperty<QObject> seriesChildren();
- static void appendSeriesChildren(QQmlListProperty<QObject> *list, QObject *element);
+ QQmlListProperty<QObject> themeChildren();
+ static void appendThemeChildren(QQmlListProperty<QObject> *list, QObject *element);
QQmlListProperty<DeclarativeColor> baseColors();
static void appendBaseColorsFunc(QQmlListProperty<DeclarativeColor> *list,
diff --git a/src/datavisualizationqml2/designer/Bars3DSpecifics.qml b/src/datavisualizationqml2/designer/Bars3DSpecifics.qml
index e52320ac..cb5fb4a0 100644
--- a/src/datavisualizationqml2/designer/Bars3DSpecifics.qml
+++ b/src/datavisualizationqml2/designer/Bars3DSpecifics.qml
@@ -266,6 +266,29 @@ Column {
}
}
}
+ Label {
+ text: qsTr("measureFps")
+ toolTip: qsTr("Measure Frames Per Second")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.measureFps
+ Layout.fillWidth: true
+ }
+ }
+ Label {
+ text: qsTr("orthoProjection")
+ toolTip: qsTr("Use Orthographic Projection")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.orthoProjection
+ Layout.fillWidth: true
+ }
+ }
+
// Kept for debugging
Label { }
SecondColumnLayout {
diff --git a/src/datavisualizationqml2/designer/Scatter3DSpecifics.qml b/src/datavisualizationqml2/designer/Scatter3DSpecifics.qml
index b9a9ef97..1e2556ec 100644
--- a/src/datavisualizationqml2/designer/Scatter3DSpecifics.qml
+++ b/src/datavisualizationqml2/designer/Scatter3DSpecifics.qml
@@ -84,6 +84,43 @@ Column {
scope: "AbstractGraph3D"
}
}
+ Label {
+ text: qsTr("measureFps")
+ toolTip: qsTr("Measure Frames Per Second")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.measureFps
+ Layout.fillWidth: true
+ }
+ }
+ Label {
+ text: qsTr("orthoProjection")
+ toolTip: qsTr("Use Orthographic Projection")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.orthoProjection
+ Layout.fillWidth: true
+ }
+ }
+ Label {
+ text: qsTr("aspectRatio")
+ toolTip: qsTr("Horizontal to Vertical Aspect Ratio")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.aspectRatio
+ minimumValue: 0.1
+ maximumValue: 10.0
+ stepSize: 0.1
+ decimals: 1
+ Layout.fillWidth: true
+ }
+ }
}
}
}
diff --git a/src/datavisualizationqml2/designer/Surface3DSpecifics.qml b/src/datavisualizationqml2/designer/Surface3DSpecifics.qml
index 74470e4b..65a65d37 100644
--- a/src/datavisualizationqml2/designer/Surface3DSpecifics.qml
+++ b/src/datavisualizationqml2/designer/Surface3DSpecifics.qml
@@ -204,6 +204,44 @@ Column {
}
}
}
+ Label {
+ text: qsTr("measureFps")
+ toolTip: qsTr("Measure Frames Per Second")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.measureFps
+ Layout.fillWidth: true
+ }
+ }
+ Label {
+ text: qsTr("orthoProjection")
+ toolTip: qsTr("Use Orthographic Projection")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.orthoProjection
+ Layout.fillWidth: true
+ }
+ }
+ Label {
+ text: qsTr("aspectRatio")
+ toolTip: qsTr("Horizontal to Vertical Aspect Ratio")
+ Layout.fillWidth: true
+ }
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.aspectRatio
+ minimumValue: 0.1
+ maximumValue: 10.0
+ stepSize: 0.1
+ decimals: 1
+ Layout.fillWidth: true
+ }
+ }
+
// Kept for debugging
Label { }
SecondColumnLayout {
diff --git a/src/datavisualizationqml2/enumtostringmap.cpp b/src/datavisualizationqml2/enumtostringmap.cpp
index 249fbae3..b4b04fc2 100644
--- a/src/datavisualizationqml2/enumtostringmap.cpp
+++ b/src/datavisualizationqml2/enumtostringmap.cpp
@@ -15,12 +15,13 @@
** contact form at http://qt.digia.com
**
****************************************************************************/
+
#include "enumtostringmap_p.h"
-#include <QString>
-#include <QDebug>
#ifdef VERBOSE_STATE_STORE
+#include <QDebug>
+
static EnumToStringMap *theInstance = 0;
static unsigned int theInstanceCount = 0;
@@ -367,7 +368,8 @@ EnumToStringMap::EnumToStringMap() :
m_map[GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE] = "FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE";
m_map[GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME] = "FRAMEBUFFER_ATTACHMENT_OBJECT_NAME";
m_map[GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL] = "FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL";
- m_map[GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE] = "FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE";
+ m_map[GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE] =
+ "FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE";
m_map[GL_COLOR_ATTACHMENT0] = "COLOR_ATTACHMENT0";
m_map[GL_DEPTH_ATTACHMENT] = "DEPTH_ATTACHMENT";
@@ -375,11 +377,16 @@ EnumToStringMap::EnumToStringMap() :
m_map[GL_FRAMEBUFFER_COMPLETE] = "FRAMEBUFFER_COMPLETE";
m_map[GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT] = "FRAMEBUFFER_INCOMPLETE_ATTACHMENT";
- m_map[GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT] = "FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT";
+ m_map[GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT] =
+ "FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT";
m_map[GL_FRAMEBUFFER_UNSUPPORTED] = "FRAMEBUFFER_UNSUPPORTED";
m_map[GL_FRAMEBUFFER_BINDING] = "FRAMEBUFFER_BINDING";
+#if !defined(QT_OPENGL_ES_2)
m_map[GL_RENDERBUFFER_BINDING] = "RENDERBUFFER_BINDING";
+#else
+ m_map[GL_RENDERBUFFER] = "RENDERBUFFER_BINDING";
+#endif
m_map[GL_MAX_RENDERBUFFER_SIZE] = "MAX_RENDERBUFFER_SIZE";
m_map[GL_INVALID_FRAMEBUFFER_OPERATION] = "INVALID_FRAMEBUFFER_OPERATION";
diff --git a/src/datavisualizationqml2/glstatestore.cpp b/src/datavisualizationqml2/glstatestore.cpp
index f053078b..973d5054 100644
--- a/src/datavisualizationqml2/glstatestore.cpp
+++ b/src/datavisualizationqml2/glstatestore.cpp
@@ -15,6 +15,7 @@
** contact form at http://qt.digia.com
**
****************************************************************************/
+
#include "glstatestore_p.h"
#include <QDebug>
#include <QColor>
@@ -50,13 +51,13 @@ GLStateStore::GLStateStore(QOpenGLContext *context, QObject *parent) :
#endif
m_maxVertexAttribs = qMin(maxVertexAttribs, 2); // Datavis only uses 2 attribs max
- m_vertexAttribArrayEnabledStates = new GLint[maxVertexAttribs];
- m_vertexAttribArrayBoundBuffers = new GLint[maxVertexAttribs];
- m_vertexAttribArraySizes = new GLint[maxVertexAttribs];
- m_vertexAttribArrayTypes = new GLint[maxVertexAttribs];
- m_vertexAttribArrayNormalized = new GLint[maxVertexAttribs];
- m_vertexAttribArrayStrides = new GLint[maxVertexAttribs];
- m_vertexAttribArrayOffsets = new GLint[maxVertexAttribs];
+ m_vertexAttribArrayEnabledStates.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArrayBoundBuffers.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArraySizes.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArrayTypes.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArrayNormalized.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArrayStrides.reset(new GLint[maxVertexAttribs]);
+ m_vertexAttribArrayOffsets.reset(new GLint[maxVertexAttribs]);
initGLDefaultState();
}
@@ -67,8 +68,6 @@ GLStateStore::~GLStateStore()
EnumToStringMap::deleteInstance();
m_map = 0;
#endif
- delete m_vertexAttribArrayEnabledStates;
- delete m_vertexAttribArrayBoundBuffers;
}
void GLStateStore::storeGLState()
@@ -80,8 +79,10 @@ void GLStateStore::storeGLState()
#if !defined(QT_OPENGL_ES_2)
glGetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &m_drawFramebuffer);
glGetIntegerv(GL_READ_FRAMEBUFFER_BINDING, &m_readFramebuffer);
-#endif
glGetIntegerv(GL_RENDERBUFFER_BINDING, &m_renderbuffer);
+#else
+ glGetIntegerv(GL_RENDERBUFFER, &m_renderbuffer);
+#endif
glGetFloatv(GL_COLOR_CLEAR_VALUE, m_clearColor);
m_isBlendingEnabled = glIsEnabled(GL_BLEND);
m_isDepthTestEnabled = glIsEnabled(GL_DEPTH_TEST);
@@ -111,11 +112,14 @@ void GLStateStore::storeGLState()
glGetIntegerv(GL_ELEMENT_ARRAY_BUFFER_BINDING, &m_boundElementArrayBuffer);
for (int i = 0; i < m_maxVertexAttribs;i++) {
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_ENABLED, &m_vertexAttribArrayEnabledStates[i]);
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, &m_vertexAttribArrayBoundBuffers[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_ENABLED,
+ &m_vertexAttribArrayEnabledStates[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
+ &m_vertexAttribArrayBoundBuffers[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_SIZE, &m_vertexAttribArraySizes[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_TYPE, &m_vertexAttribArrayTypes[i]);
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, &m_vertexAttribArrayNormalized[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED,
+ &m_vertexAttribArrayNormalized[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_STRIDE, &m_vertexAttribArrayStrides[i]);
}
}
@@ -173,8 +177,10 @@ void GLStateStore::printCurrentState(bool in)
#if !defined(QT_OPENGL_ES_2)
glGetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &drawFramebuffer);
glGetIntegerv(GL_READ_FRAMEBUFFER_BINDING, &readFramebuffer);
-#endif
glGetIntegerv(GL_RENDERBUFFER_BINDING, &renderbuffer);
+#else
+ glGetIntegerv(GL_RENDERBUFFER, &renderbuffer);
+#endif
glGetFloatv(GL_COLOR_CLEAR_VALUE, clearColor);
glGetFloatv(GL_DEPTH_CLEAR_VALUE, &clearDepth);
glGetIntegerv(GL_DEPTH_FUNC, &depthFunc);
@@ -198,11 +204,14 @@ void GLStateStore::printCurrentState(bool in)
glGetIntegerv(GL_ARRAY_BUFFER_BINDING, &arrayBufferBinding);
for (int i = 0; i < m_maxVertexAttribs;i++) {
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_ENABLED, &vertexAttribArrayEnabledStates[i]);
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, &vertexAttribArrayBoundBuffers[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_ENABLED,
+ &vertexAttribArrayEnabledStates[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING,
+ &vertexAttribArrayBoundBuffers[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_SIZE, &vertexAttribArraySizes[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_TYPE, &vertexAttribArrayTypes[i]);
- glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, &vertexAttribArrayNormalized[i]);
+ glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED,
+ &vertexAttribArrayNormalized[i]);
glGetVertexAttribiv(i, GL_VERTEX_ATTRIB_ARRAY_STRIDE, &vertexAttribArrayStrides[i]);
}
@@ -265,8 +274,10 @@ void GLStateStore::restoreGLState()
#if !defined(QT_OPENGL_ES_2)
glBindFramebuffer(GL_READ_FRAMEBUFFER, m_readFramebuffer);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, m_drawFramebuffer);
-#endif
glBindRenderbuffer(GL_RENDERBUFFER_BINDING, m_renderbuffer);
+#else
+ glBindRenderbuffer(GL_RENDERBUFFER, m_renderbuffer);
+#endif
if (m_isScissorTestEnabled)
glEnable(GL_SCISSOR_TEST);
diff --git a/src/datavisualizationqml2/glstatestore_p.h b/src/datavisualizationqml2/glstatestore_p.h
index 14c46c43..4add606b 100644
--- a/src/datavisualizationqml2/glstatestore_p.h
+++ b/src/datavisualizationqml2/glstatestore_p.h
@@ -29,9 +29,8 @@
#ifndef GLSTATESTORE_P_H
#define GLSTATESTORE_P_H
-#include <QObject>
#include <QtGui/QOpenGLFunctions>
-#include <QtGui/QOpenGLContext>
+#include <QtCore/QScopedArrayPointer>
#include "enumtostringmap_p.h"
class GLStateStore : public QObject, protected QOpenGLFunctions
@@ -66,13 +65,13 @@ public:
GLboolean m_isDepthWriteEnabled;
GLint m_currentProgram;
GLint m_maxVertexAttribs;
- GLint *m_vertexAttribArrayEnabledStates;
- GLint *m_vertexAttribArrayBoundBuffers;
- GLint *m_vertexAttribArraySizes;
- GLint *m_vertexAttribArrayTypes;
- GLint *m_vertexAttribArrayNormalized;
- GLint *m_vertexAttribArrayStrides;
- GLint *m_vertexAttribArrayOffsets;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayEnabledStates;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayBoundBuffers;
+ QScopedArrayPointer<GLint> m_vertexAttribArraySizes;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayTypes;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayNormalized;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayStrides;
+ QScopedArrayPointer<GLint> m_vertexAttribArrayOffsets;
GLint m_activeTexture;
GLint m_texBinding2D;
diff --git a/src/datavisualizationqml2/plugins.qmltypes b/src/datavisualizationqml2/plugins.qmltypes
index 48a30665..99fa53de 100644
--- a/src/datavisualizationqml2/plugins.qmltypes
+++ b/src/datavisualizationqml2/plugins.qmltypes
@@ -4,16 +4,19 @@ import QtQuick.tooling 1.1
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable QtDataVisualization 1.0'
+// 'qmlplugindump -nonrelocatable QtDataVisualization 1.1'
Module {
Component {
name: "QtDataVisualization::AbstractDeclarative"
defaultProperty: "data"
prototype: "QQuickItem"
- exports: ["QtDataVisualization/AbstractGraph3D 1.0"]
+ exports: [
+ "QtDataVisualization/AbstractGraph3D 1.0",
+ "QtDataVisualization/AbstractGraph3D 1.1"
+ ]
isCreatable: false
- exportMetaObjectRevisions: [0]
+ exportMetaObjectRevisions: [0, 1]
Enum {
name: "SelectionFlag"
values: {
@@ -57,6 +60,17 @@ Module {
}
}
Enum {
+ name: "ElementType"
+ values: {
+ "ElementNone": 0,
+ "ElementSeries": 1,
+ "ElementAxisXLabel": 2,
+ "ElementAxisYLabel": 3,
+ "ElementAxisZLabel": 4,
+ "ElementCustomItem": 5
+ }
+ }
+ Enum {
name: "RenderingMode"
values: {
"RenderDirectToBackground": 0,
@@ -66,18 +80,35 @@ Module {
}
Property { name: "selectionMode"; type: "SelectionFlags" }
Property { name: "shadowQuality"; type: "ShadowQuality" }
+ Property { name: "shadowsSupported"; type: "bool"; isReadonly: true }
Property { name: "msaaSamples"; type: "int" }
Property { name: "scene"; type: "Declarative3DScene"; isReadonly: true; isPointer: true }
Property { name: "inputHandler"; type: "QAbstract3DInputHandler"; isPointer: true }
Property { name: "theme"; type: "Q3DTheme"; isPointer: true }
Property { name: "renderingMode"; type: "RenderingMode" }
+ Property { name: "measureFps"; revision: 1; type: "bool" }
+ Property { name: "currentFps"; revision: 1; type: "double"; isReadonly: true }
+ Property {
+ name: "customItemList"
+ revision: 1
+ type: "QCustom3DItem"
+ isList: true
+ isReadonly: true
+ }
+ Property { name: "orthoProjection"; revision: 1; type: "bool" }
+ Property { name: "selectedElement"; revision: 1; type: "ElementType"; isReadonly: true }
+ Property { name: "aspectRatio"; revision: 1; type: "double" }
Signal {
name: "selectionModeChanged"
- Parameter { name: "mode"; type: "SelectionFlags" }
+ Parameter { name: "mode"; type: "AbstractDeclarative::SelectionFlags" }
}
Signal {
name: "shadowQualityChanged"
- Parameter { name: "quality"; type: "ShadowQuality" }
+ Parameter { name: "quality"; type: "AbstractDeclarative::ShadowQuality" }
+ }
+ Signal {
+ name: "shadowsSupportedChanged"
+ Parameter { name: "supported"; type: "bool" }
}
Signal {
name: "msaaSamplesChanged"
@@ -97,7 +128,32 @@ Module {
}
Signal {
name: "renderingModeChanged"
- Parameter { name: "mode"; type: "RenderingMode" }
+ Parameter { name: "mode"; type: "AbstractDeclarative::RenderingMode" }
+ }
+ Signal {
+ name: "measureFpsChanged"
+ revision: 1
+ Parameter { name: "enabled"; type: "bool" }
+ }
+ Signal {
+ name: "currentFpsChanged"
+ revision: 1
+ Parameter { name: "fps"; type: "double" }
+ }
+ Signal {
+ name: "selectedElementChanged"
+ revision: 1
+ Parameter { name: "type"; type: "QAbstract3DGraph::ElementType" }
+ }
+ Signal {
+ name: "orthoProjectionChanged"
+ revision: 1
+ Parameter { name: "enabled"; type: "bool" }
+ }
+ Signal {
+ name: "aspectRatioChanged"
+ revision: 1
+ Parameter { name: "ratio"; type: "double" }
}
Method {
name: "handleAxisXChanged"
@@ -116,6 +172,32 @@ Module {
Parameter { name: "obj"; type: "QObject"; isPointer: true }
}
Method { name: "clearSelection" }
+ Method {
+ name: "addCustomItem"
+ revision: 1
+ type: "int"
+ Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
+ }
+ Method { name: "removeCustomItems"; revision: 1 }
+ Method {
+ name: "removeCustomItem"
+ revision: 1
+ Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
+ }
+ Method {
+ name: "removeCustomItemAt"
+ revision: 1
+ Parameter { name: "position"; type: "QVector3D" }
+ }
+ Method {
+ name: "releaseCustomItem"
+ revision: 1
+ Parameter { name: "item"; type: "QCustom3DItem"; isPointer: true }
+ }
+ Method { name: "selectedLabelIndex"; revision: 1; type: "int" }
+ Method { name: "selectedAxis"; revision: 1; type: "QAbstract3DAxis*" }
+ Method { name: "selectedCustomItemIndex"; revision: 1; type: "int" }
+ Method { name: "selectedCustomItem"; revision: 1; type: "QCustom3DItem*" }
}
Component {
name: "QtDataVisualization::ColorGradient"
@@ -437,11 +519,11 @@ Module {
}
Component {
name: "QtDataVisualization::DeclarativeTheme3D"
- defaultProperty: "seriesChildren"
+ defaultProperty: "themeChildren"
prototype: "QtDataVisualization::Q3DTheme"
exports: ["QtDataVisualization/Theme3D 1.0"]
exportMetaObjectRevisions: [0]
- Property { name: "seriesChildren"; type: "QObject"; isList: true; isReadonly: true }
+ Property { name: "themeChildren"; type: "QObject"; isList: true; isReadonly: true }
Property { name: "baseColors"; type: "DeclarativeColor"; isList: true; isReadonly: true }
Property { name: "baseGradients"; type: "ColorGradient"; isList: true; isReadonly: true }
Property { name: "singleHighlightGradient"; type: "ColorGradient"; isPointer: true }
@@ -492,7 +574,7 @@ Module {
}
Property { name: "xRotation"; type: "double" }
Property { name: "yRotation"; type: "double" }
- Property { name: "zoomLevel"; type: "int" }
+ Property { name: "zoomLevel"; type: "double" }
Property { name: "cameraPreset"; type: "CameraPreset" }
Property { name: "wrapXRotation"; type: "bool" }
Property { name: "wrapYRotation"; type: "bool" }
@@ -506,11 +588,11 @@ Module {
}
Signal {
name: "zoomLevelChanged"
- Parameter { name: "zoomLevel"; type: "int" }
+ Parameter { name: "zoomLevel"; type: "double" }
}
Signal {
name: "cameraPresetChanged"
- Parameter { name: "preset"; type: "CameraPreset" }
+ Parameter { name: "preset"; type: "Q3DCamera::CameraPreset" }
}
Signal {
name: "wrapXRotationChanged"
@@ -642,7 +724,7 @@ Module {
Property { name: "colorStyle"; type: "ColorStyle" }
Signal {
name: "typeChanged"
- Parameter { name: "themeType"; type: "Theme" }
+ Parameter { name: "themeType"; type: "Q3DTheme::Theme" }
}
Signal {
name: "baseColorsChanged"
@@ -726,15 +808,18 @@ Module {
}
Signal {
name: "colorStyleChanged"
- Parameter { name: "style"; type: "ColorStyle" }
+ Parameter { name: "style"; type: "Q3DTheme::ColorStyle" }
}
}
Component {
name: "QtDataVisualization::QAbstract3DAxis"
prototype: "QObject"
- exports: ["QtDataVisualization/AbstractAxis3D 1.0"]
+ exports: [
+ "QtDataVisualization/AbstractAxis3D 1.0",
+ "QtDataVisualization/AbstractAxis3D 1.1"
+ ]
isCreatable: false
- exportMetaObjectRevisions: [0]
+ exportMetaObjectRevisions: [0, 1]
Enum {
name: "AxisOrientation"
values: {
@@ -759,13 +844,14 @@ Module {
Property { name: "min"; type: "double" }
Property { name: "max"; type: "double" }
Property { name: "autoAdjustRange"; type: "bool" }
+ Property { name: "labelAutoRotation"; revision: 1; type: "double" }
Signal {
name: "titleChanged"
Parameter { name: "newTitle"; type: "string" }
}
Signal {
name: "orientationChanged"
- Parameter { name: "orientation"; type: "AxisOrientation" }
+ Parameter { name: "orientation"; type: "QAbstract3DAxis::AxisOrientation" }
}
Signal {
name: "minChanged"
@@ -784,6 +870,11 @@ Module {
name: "autoAdjustRangeChanged"
Parameter { name: "autoAdjust"; type: "bool" }
}
+ Signal {
+ name: "labelAutoRotationChanged"
+ revision: 1
+ Parameter { name: "angle"; type: "double" }
+ }
}
Component {
name: "QtDataVisualization::QAbstract3DInputHandler"
@@ -808,7 +899,7 @@ Module {
}
Signal {
name: "inputViewChanged"
- Parameter { name: "view"; type: "InputView" }
+ Parameter { name: "view"; type: "QAbstract3DInputHandler::InputView" }
}
Signal {
name: "sceneChanged"
@@ -818,9 +909,12 @@ Module {
Component {
name: "QtDataVisualization::QAbstract3DSeries"
prototype: "QObject"
- exports: ["QtDataVisualization/Abstract3DSeries 1.0"]
+ exports: [
+ "QtDataVisualization/Abstract3DSeries 1.0",
+ "QtDataVisualization/Abstract3DSeries 1.1"
+ ]
isCreatable: false
- exportMetaObjectRevisions: [0]
+ exportMetaObjectRevisions: [0, 1]
Enum {
name: "SeriesType"
values: {
@@ -862,6 +956,8 @@ Module {
Property { name: "multiHighlightColor"; type: "QColor" }
Property { name: "multiHighlightGradient"; type: "QLinearGradient" }
Property { name: "name"; type: "string" }
+ Property { name: "itemLabel"; revision: 1; type: "string"; isReadonly: true }
+ Property { name: "itemLabelVisible"; revision: 1; type: "bool" }
Signal {
name: "itemLabelFormatChanged"
Parameter { name: "format"; type: "string" }
@@ -872,7 +968,7 @@ Module {
}
Signal {
name: "meshChanged"
- Parameter { name: "mesh"; type: "Mesh" }
+ Parameter { name: "mesh"; type: "QAbstract3DSeries::Mesh" }
}
Signal {
name: "meshSmoothChanged"
@@ -918,6 +1014,16 @@ Module {
name: "nameChanged"
Parameter { name: "name"; type: "string" }
}
+ Signal {
+ name: "itemLabelChanged"
+ revision: 1
+ Parameter { name: "label"; type: "string" }
+ }
+ Signal {
+ name: "itemLabelVisibilityChanged"
+ revision: 1
+ Parameter { name: "visible"; type: "bool" }
+ }
Method {
name: "setMeshAxisAndAngle"
Parameter { name: "axis"; type: "QVector3D" }
@@ -1016,6 +1122,57 @@ Module {
Property { name: "labels"; type: "QStringList" }
}
Component {
+ name: "QtDataVisualization::QCustom3DItem"
+ prototype: "QObject"
+ exports: ["QtDataVisualization/Custom3DItem 1.1"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "meshFile"; type: "string" }
+ Property { name: "textureFile"; type: "string" }
+ Property { name: "position"; type: "QVector3D" }
+ Property { name: "positionAbsolute"; type: "bool" }
+ Property { name: "scaling"; type: "QVector3D" }
+ Property { name: "rotation"; type: "QQuaternion" }
+ Property { name: "visible"; type: "bool" }
+ Property { name: "shadowCasting"; type: "bool" }
+ Signal {
+ name: "meshFileChanged"
+ Parameter { name: "meshFile"; type: "string" }
+ }
+ Signal {
+ name: "textureFileChanged"
+ Parameter { name: "textureFile"; type: "string" }
+ }
+ Signal {
+ name: "positionChanged"
+ Parameter { name: "position"; type: "QVector3D" }
+ }
+ Signal {
+ name: "positionAbsoluteChanged"
+ Parameter { name: "positionAbsolute"; type: "bool" }
+ }
+ Signal {
+ name: "scalingChanged"
+ Parameter { name: "scaling"; type: "QVector3D" }
+ }
+ Signal {
+ name: "rotationChanged"
+ Parameter { name: "rotation"; type: "QQuaternion" }
+ }
+ Signal {
+ name: "visibleChanged"
+ Parameter { name: "visible"; type: "bool" }
+ }
+ Signal {
+ name: "shadowCastingChanged"
+ Parameter { name: "shadowCasting"; type: "bool" }
+ }
+ Method {
+ name: "setRotationAxisAndAngle"
+ Parameter { name: "axis"; type: "QVector3D" }
+ Parameter { name: "angle"; type: "double" }
+ }
+ }
+ Component {
name: "QtDataVisualization::QHeightMapSurfaceDataProxy"
prototype: "QtDataVisualization::QSurfaceDataProxy"
exports: ["QtDataVisualization/HeightMapSurfaceDataProxy 1.0"]
@@ -1054,8 +1211,20 @@ Module {
Component {
name: "QtDataVisualization::QItemModelBarDataProxy"
prototype: "QtDataVisualization::QBarDataProxy"
- exports: ["QtDataVisualization/ItemModelBarDataProxy 1.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtDataVisualization/ItemModelBarDataProxy 1.0",
+ "QtDataVisualization/ItemModelBarDataProxy 1.1"
+ ]
+ exportMetaObjectRevisions: [0, 1]
+ Enum {
+ name: "MultiMatchBehavior"
+ values: {
+ "MMBFirst": 0,
+ "MMBLast": 1,
+ "MMBAverage": 2,
+ "MMBCumulative": 3
+ }
+ }
Property { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
Property { name: "rowRole"; type: "string" }
Property { name: "columnRole"; type: "string" }
@@ -1066,6 +1235,15 @@ Module {
Property { name: "useModelCategories"; type: "bool" }
Property { name: "autoRowCategories"; type: "bool" }
Property { name: "autoColumnCategories"; type: "bool" }
+ Property { name: "rowRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "columnRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "valueRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "rotationRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "rowRoleReplace"; revision: 1; type: "string" }
+ Property { name: "columnRoleReplace"; revision: 1; type: "string" }
+ Property { name: "valueRoleReplace"; revision: 1; type: "string" }
+ Property { name: "rotationRoleReplace"; revision: 1; type: "string" }
+ Property { name: "multiMatchBehavior"; revision: 1; type: "MultiMatchBehavior" }
Signal {
name: "itemModelChanged"
Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
@@ -1098,6 +1276,51 @@ Module {
name: "autoColumnCategoriesChanged"
Parameter { name: "enable"; type: "bool" }
}
+ Signal {
+ name: "rowRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "columnRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "valueRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "rotationRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "rowRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "columnRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "valueRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "rotationRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "multiMatchBehaviorChanged"
+ revision: 1
+ Parameter { name: "behavior"; type: "MultiMatchBehavior" }
+ }
Method {
name: "rowCategoryIndex"
type: "int"
@@ -1112,13 +1335,24 @@ Module {
Component {
name: "QtDataVisualization::QItemModelScatterDataProxy"
prototype: "QtDataVisualization::QScatterDataProxy"
- exports: ["QtDataVisualization/ItemModelScatterDataProxy 1.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtDataVisualization/ItemModelScatterDataProxy 1.0",
+ "QtDataVisualization/ItemModelScatterDataProxy 1.1"
+ ]
+ exportMetaObjectRevisions: [0, 1]
Property { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
Property { name: "xPosRole"; type: "string" }
Property { name: "yPosRole"; type: "string" }
Property { name: "zPosRole"; type: "string" }
Property { name: "rotationRole"; type: "string" }
+ Property { name: "xPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "yPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "zPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "rotationRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "xPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "yPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "zPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "rotationRoleReplace"; revision: 1; type: "string" }
Signal {
name: "itemModelChanged"
Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
@@ -1139,12 +1373,64 @@ Module {
name: "rotationRoleChanged"
Parameter { name: "role"; type: "string" }
}
+ Signal {
+ name: "xPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "yPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "zPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "rotationRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "rotationRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "xPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "yPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "zPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
}
Component {
name: "QtDataVisualization::QItemModelSurfaceDataProxy"
prototype: "QtDataVisualization::QSurfaceDataProxy"
- exports: ["QtDataVisualization/ItemModelSurfaceDataProxy 1.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtDataVisualization/ItemModelSurfaceDataProxy 1.0",
+ "QtDataVisualization/ItemModelSurfaceDataProxy 1.1"
+ ]
+ exportMetaObjectRevisions: [0, 1]
+ Enum {
+ name: "MultiMatchBehavior"
+ values: {
+ "MMBFirst": 0,
+ "MMBLast": 1,
+ "MMBAverage": 2,
+ "MMBCumulativeY": 3
+ }
+ }
Property { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
Property { name: "rowRole"; type: "string" }
Property { name: "columnRole"; type: "string" }
@@ -1156,6 +1442,17 @@ Module {
Property { name: "useModelCategories"; type: "bool" }
Property { name: "autoRowCategories"; type: "bool" }
Property { name: "autoColumnCategories"; type: "bool" }
+ Property { name: "rowRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "columnRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "xPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "yPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "zPosRolePattern"; revision: 1; type: "QRegExp" }
+ Property { name: "rowRoleReplace"; revision: 1; type: "string" }
+ Property { name: "columnRoleReplace"; revision: 1; type: "string" }
+ Property { name: "xPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "yPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "zPosRoleReplace"; revision: 1; type: "string" }
+ Property { name: "multiMatchBehavior"; revision: 1; type: "MultiMatchBehavior" }
Signal {
name: "itemModelChanged"
Parameter { name: "itemModel"; type: "const QAbstractItemModel"; isPointer: true }
@@ -1192,6 +1489,61 @@ Module {
name: "autoColumnCategoriesChanged"
Parameter { name: "enable"; type: "bool" }
}
+ Signal {
+ name: "rowRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "columnRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "xPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "yPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "zPosRolePatternChanged"
+ revision: 1
+ Parameter { name: "pattern"; type: "QRegExp" }
+ }
+ Signal {
+ name: "rowRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "columnRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "xPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "yPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "zPosRoleReplaceChanged"
+ revision: 1
+ Parameter { name: "replace"; type: "string" }
+ }
+ Signal {
+ name: "multiMatchBehaviorChanged"
+ revision: 1
+ Parameter { name: "behavior"; type: "MultiMatchBehavior" }
+ }
Method {
name: "rowCategoryIndex"
type: "int"
@@ -1204,6 +1556,27 @@ Module {
}
}
Component {
+ name: "QtDataVisualization::QLogValue3DAxisFormatter"
+ prototype: "QtDataVisualization::QValue3DAxisFormatter"
+ exports: ["QtDataVisualization/LogValueAxis3DFormatter 1.1"]
+ exportMetaObjectRevisions: [0]
+ Property { name: "base"; type: "double" }
+ Property { name: "autoSubGrid"; type: "bool" }
+ Property { name: "showEdgeLabels"; type: "bool" }
+ Signal {
+ name: "baseChanged"
+ Parameter { name: "base"; type: "double" }
+ }
+ Signal {
+ name: "autoSubGridChanged"
+ Parameter { name: "enabled"; type: "bool" }
+ }
+ Signal {
+ name: "showEdgeLabelsChanged"
+ Parameter { name: "enabled"; type: "bool" }
+ }
+ }
+ Component {
name: "QtDataVisualization::QScatter3DSeries"
prototype: "QtDataVisualization::QAbstract3DSeries"
exports: ["QtDataVisualization/QScatter3DSeries 1.0"]
@@ -1366,11 +1739,16 @@ Module {
Component {
name: "QtDataVisualization::QValue3DAxis"
prototype: "QtDataVisualization::QAbstract3DAxis"
- exports: ["QtDataVisualization/ValueAxis3D 1.0"]
- exportMetaObjectRevisions: [0]
+ exports: [
+ "QtDataVisualization/ValueAxis3D 1.0",
+ "QtDataVisualization/ValueAxis3D 1.1"
+ ]
+ exportMetaObjectRevisions: [0, 1]
Property { name: "segmentCount"; type: "int" }
Property { name: "subSegmentCount"; type: "int" }
Property { name: "labelFormat"; type: "string" }
+ Property { name: "formatter"; revision: 1; type: "QValue3DAxisFormatter"; isPointer: true }
+ Property { name: "reversed"; revision: 1; type: "bool" }
Signal {
name: "segmentCountChanged"
Parameter { name: "count"; type: "int" }
@@ -1383,5 +1761,21 @@ Module {
name: "labelFormatChanged"
Parameter { name: "format"; type: "string" }
}
+ Signal {
+ name: "formatterChanged"
+ revision: 1
+ Parameter { name: "formatter"; type: "QValue3DAxisFormatter"; isPointer: true }
+ }
+ Signal {
+ name: "reversedChanged"
+ revision: 1
+ Parameter { name: "enable"; type: "bool" }
+ }
+ }
+ Component {
+ name: "QtDataVisualization::QValue3DAxisFormatter"
+ prototype: "QObject"
+ exports: ["QtDataVisualization/ValueAxis3DFormatter 1.1"]
+ exportMetaObjectRevisions: [0]
}
}