diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-04-16 10:07:13 +0300 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-04-17 10:14:43 +0300 |
commit | f494279b6366b06e3eeeb4f8c006ce76b08f10d7 (patch) | |
tree | 26951efa14e26eb0791d13ea32624e9afcf48851 /plugins | |
parent | 56fd46a395765db6818f890676e42cc59a9f4a81 (diff) |
Add Polar chart support
This commit also heavily refactors things as polar chart needs
separate implementation of various classes that previously
only needed one, such as ChartAxis and ChartLayout.
Task-number: QTRD-1757
Change-Id: I3d3db23920314987ceef3ae92879960b833b7136
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/declarative/declarative.pro | 6 | ||||
-rw-r--r-- | plugins/declarative/declarativeareaseries.cpp | 2 | ||||
-rw-r--r-- | plugins/declarative/declarativeareaseries.h | 8 | ||||
-rw-r--r-- | plugins/declarative/declarativechart.cpp | 20 | ||||
-rw-r--r-- | plugins/declarative/declarativechart.h | 4 | ||||
-rw-r--r-- | plugins/declarative/declarativelineseries.cpp | 2 | ||||
-rw-r--r-- | plugins/declarative/declarativelineseries.h | 8 | ||||
-rw-r--r-- | plugins/declarative/declarativepolarchart.cpp | 64 | ||||
-rw-r--r-- | plugins/declarative/declarativepolarchart.h | 40 | ||||
-rw-r--r-- | plugins/declarative/declarativescatterseries.cpp | 2 | ||||
-rw-r--r-- | plugins/declarative/declarativescatterseries.h | 8 | ||||
-rw-r--r-- | plugins/declarative/declarativesplineseries.cpp | 2 | ||||
-rw-r--r-- | plugins/declarative/declarativesplineseries.h | 8 | ||||
-rw-r--r-- | plugins/declarative/plugin.cpp | 9 |
14 files changed, 179 insertions, 4 deletions
diff --git a/plugins/declarative/declarative.pro b/plugins/declarative/declarative.pro index 7641b2b5..12d48832 100644 --- a/plugins/declarative/declarative.pro +++ b/plugins/declarative/declarative.pro @@ -25,7 +25,8 @@ SOURCES += \ declarativebarseries.cpp \ declarativecategoryaxis.cpp \ declarativemargins.cpp \ - declarativeaxes.cpp + declarativeaxes.cpp \ + declarativepolarchart.cpp HEADERS += \ declarativechart.h \ @@ -39,7 +40,8 @@ HEADERS += \ declarativebarseries.h \ declarativecategoryaxis.h \ declarativemargins.h \ - declarativeaxes.h + declarativeaxes.h \ + declarativepolarchart.h TARGETPATH = QtCommercial/Chart target.path = $$[QT_INSTALL_IMPORTS]/$$TARGETPATH diff --git a/plugins/declarative/declarativeareaseries.cpp b/plugins/declarative/declarativeareaseries.cpp index cda4db60..fabbc612 100644 --- a/plugins/declarative/declarativeareaseries.cpp +++ b/plugins/declarative/declarativeareaseries.cpp @@ -31,6 +31,8 @@ DeclarativeAreaSeries::DeclarativeAreaSeries(QObject *parent) : connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisYChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisXTopChanged(QAbstractAxis*)), this, SIGNAL(axisXTopChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisYRightChanged(QAbstractAxis*)), this, SIGNAL(axisYRightChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisXChanged(QAbstractAxis*)), this, SIGNAL(axisAngularChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisRadialChanged(QAbstractAxis*))); } void DeclarativeAreaSeries::setUpperSeries(DeclarativeLineSeries *series) diff --git a/plugins/declarative/declarativeareaseries.h b/plugins/declarative/declarativeareaseries.h index 3b3fc118..7c1c0abe 100644 --- a/plugins/declarative/declarativeareaseries.h +++ b/plugins/declarative/declarativeareaseries.h @@ -36,6 +36,8 @@ class DeclarativeAreaSeries : public QAreaSeries Q_PROPERTY(QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) Q_PROPERTY(QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) Q_PROPERTY(QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) Q_PROPERTY(qreal borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged REVISION 1) public: @@ -52,6 +54,10 @@ public: Q_REVISION(2) void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } Q_REVISION(2) QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } Q_REVISION(2) void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + Q_REVISION(3) QAbstractAxis *axisAngular() { return m_axes->axisX(); } + Q_REVISION(3) void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + Q_REVISION(3) QAbstractAxis *axisRadial() { return m_axes->axisY(); } + Q_REVISION(3) void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } qreal borderWidth() const; void setBorderWidth(qreal borderWidth); @@ -61,6 +67,8 @@ Q_SIGNALS: Q_REVISION(1) void borderWidthChanged(qreal width); Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); public: DeclarativeAxes *m_axes; diff --git a/plugins/declarative/declarativechart.cpp b/plugins/declarative/declarativechart.cpp index 7e5500b8..344f5e62 100644 --- a/plugins/declarative/declarativechart.cpp +++ b/plugins/declarative/declarativechart.cpp @@ -35,6 +35,7 @@ #include "chartdataset_p.h" #include "declarativeaxes.h" #include "qchart_p.h" +#include "qpolarchart.h" #ifndef QT_ON_ARM #include "qdatetimeaxis.h" @@ -235,9 +236,24 @@ QTCOMMERCIALCHART_BEGIN_NAMESPACE */ DeclarativeChart::DeclarativeChart(QDeclarativeItem *parent) - : QDeclarativeItem(parent), - m_chart(new QChart(this)) + : QDeclarativeItem(parent) { + initChart(QChart::ChartTypeCartesian); +} + +DeclarativeChart::DeclarativeChart(QChart::ChartType type, QDeclarativeItem *parent) + : QDeclarativeItem(parent) +{ + initChart(type); +} + +void DeclarativeChart::initChart(QChart::ChartType type) +{ + if (type == QChart::ChartTypePolar) + m_chart = new QPolarChart(this); + else + m_chart = new QChart(this); + setFlag(QGraphicsItem::ItemHasNoContents, false); m_margins = new DeclarativeMargins(this); m_margins->setTop(m_chart->margins().top()); diff --git a/plugins/declarative/declarativechart.h b/plugins/declarative/declarativechart.h index 69116063..cc6295e7 100644 --- a/plugins/declarative/declarativechart.h +++ b/plugins/declarative/declarativechart.h @@ -170,7 +170,11 @@ private Q_SLOTS: void handleAxisYRightSet(QAbstractAxis *axis); void handleSeriesAdded(QAbstractSeries *series); +protected: + explicit DeclarativeChart(QChart::ChartType type, QDeclarativeItem *parent); + private: + void initChart(QChart::ChartType type); // Extending QChart with DeclarativeChart is not possible because QObject does not support // multi inheritance, so we now have a QChart as a member instead QChart *m_chart; diff --git a/plugins/declarative/declarativelineseries.cpp b/plugins/declarative/declarativelineseries.cpp index aae3eedf..735b2962 100644 --- a/plugins/declarative/declarativelineseries.cpp +++ b/plugins/declarative/declarativelineseries.cpp @@ -30,6 +30,8 @@ DeclarativeLineSeries::DeclarativeLineSeries(QObject *parent) : connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisYChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisXTopChanged(QAbstractAxis*)), this, SIGNAL(axisXTopChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisYRightChanged(QAbstractAxis*)), this, SIGNAL(axisYRightChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisXChanged(QAbstractAxis*)), this, SIGNAL(axisAngularChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisRadialChanged(QAbstractAxis*))); connect(this, SIGNAL(pointAdded(int)), this, SLOT(handleCountChanged(int))); connect(this, SIGNAL(pointRemoved(int)), this, SLOT(handleCountChanged(int))); } diff --git a/plugins/declarative/declarativelineseries.h b/plugins/declarative/declarativelineseries.h index 21e2ac19..05222a6d 100644 --- a/plugins/declarative/declarativelineseries.h +++ b/plugins/declarative/declarativelineseries.h @@ -38,6 +38,8 @@ class DeclarativeLineSeries : public QLineSeries, public DeclarativeXySeries, pu Q_PROPERTY(QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) Q_PROPERTY(QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) Q_PROPERTY(QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged REVISION 1) Q_PROPERTY(Qt::PenStyle style READ style WRITE setStyle NOTIFY styleChanged REVISION 1) Q_PROPERTY(Qt::PenCapStyle capStyle READ capStyle WRITE setCapStyle NOTIFY capStyleChanged REVISION 1) @@ -55,6 +57,10 @@ public: Q_REVISION(2) void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } Q_REVISION(2) QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } Q_REVISION(2) void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + Q_REVISION(3) QAbstractAxis *axisAngular() { return m_axes->axisX(); } + Q_REVISION(3) void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + Q_REVISION(3) QAbstractAxis *axisRadial() { return m_axes->axisY(); } + Q_REVISION(3) void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } qreal width() const; void setWidth(qreal width); Qt::PenStyle style() const; @@ -81,6 +87,8 @@ Q_SIGNALS: Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); Q_REVISION(1) void widthChanged(qreal width); Q_REVISION(1) void styleChanged(Qt::PenStyle style); Q_REVISION(1) void capStyleChanged(Qt::PenCapStyle capStyle); diff --git a/plugins/declarative/declarativepolarchart.cpp b/plugins/declarative/declarativepolarchart.cpp new file mode 100644 index 00000000..3be90d78 --- /dev/null +++ b/plugins/declarative/declarativepolarchart.cpp @@ -0,0 +1,64 @@ +/**************************************************************************** +** +** 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 Qt Commercial Charts Add-on. +** +** $QT_BEGIN_LICENSE$ +** Licensees holding valid Qt Commercial licenses may use this file in +** accordance with the Qt Commercial 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 +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "declarativepolarchart.h" +#include "qchart.h" + +QTCOMMERCIALCHART_BEGIN_NAMESPACE + +/*! + \qmlclass PolarChartView DeclarativePolarChart + + PolarChartView element is the parent that is responsible for showing different chart series types + in a polar chart. + + Polar charts support line, spline, area, and scatter series, and all axis types + supported by those series. + + \note When setting ticks to an angular ValueAxis, keep in mind that the first and last tick + are co-located at 0/360 degree angle. + + \note If the angular distance between two consecutive points in a series is more than 180 degrees, + any line connecting the two points becomes meaningless, so choose the axis ranges accordingly + when displaying line, spline, or area series. + + \note Polar charts do not support multiple axes of same orientation. + + The following QML shows how to create a polar chart with two series: + \snippet ../demos/qmlpolarchart/qml/qmlpolarchart/view1.qml 1 + + \beginfloatleft + \image demos_qmlpolarchart1.png + \endfloat + \clearfloat +*/ + +DeclarativePolarChart::DeclarativePolarChart(QDeclarativeItem *parent) + : DeclarativeChart(QChart::ChartTypePolar, parent) +{ +} + +DeclarativePolarChart::~DeclarativePolarChart() +{ +} + +#include "moc_declarativepolarchart.cpp" + +QTCOMMERCIALCHART_END_NAMESPACE diff --git a/plugins/declarative/declarativepolarchart.h b/plugins/declarative/declarativepolarchart.h new file mode 100644 index 00000000..598de6ea --- /dev/null +++ b/plugins/declarative/declarativepolarchart.h @@ -0,0 +1,40 @@ +/**************************************************************************** +** +** 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 Qt Commercial Charts Add-on. +** +** $QT_BEGIN_LICENSE$ +** Licensees holding valid Qt Commercial licenses may use this file in +** accordance with the Qt Commercial 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 +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef DECLARATIVEPOLARCHART_H +#define DECLARATIVEPOLARCHART_H + +#include <QtCore/QtGlobal> +#include <QtDeclarative/QDeclarativeItem> +#include "declarativechart.h" + +QTCOMMERCIALCHART_BEGIN_NAMESPACE + +class DeclarativePolarChart : public DeclarativeChart +{ + Q_OBJECT +public: + DeclarativePolarChart(QDeclarativeItem *parent = 0); + ~DeclarativePolarChart(); +}; + +QTCOMMERCIALCHART_END_NAMESPACE + +#endif // DECLARATIVEPOLARCHART_H diff --git a/plugins/declarative/declarativescatterseries.cpp b/plugins/declarative/declarativescatterseries.cpp index 209333e5..af7b41a6 100644 --- a/plugins/declarative/declarativescatterseries.cpp +++ b/plugins/declarative/declarativescatterseries.cpp @@ -30,6 +30,8 @@ DeclarativeScatterSeries::DeclarativeScatterSeries(QObject *parent) : connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisYChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisXTopChanged(QAbstractAxis*)), this, SIGNAL(axisXTopChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisYRightChanged(QAbstractAxis*)), this, SIGNAL(axisYRightChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisXChanged(QAbstractAxis*)), this, SIGNAL(axisAngularChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisRadialChanged(QAbstractAxis*))); connect(this, SIGNAL(pointAdded(int)), this, SLOT(handleCountChanged(int))); connect(this, SIGNAL(pointRemoved(int)), this, SLOT(handleCountChanged(int))); } diff --git a/plugins/declarative/declarativescatterseries.h b/plugins/declarative/declarativescatterseries.h index a6b4b1b8..2400242c 100644 --- a/plugins/declarative/declarativescatterseries.h +++ b/plugins/declarative/declarativescatterseries.h @@ -38,6 +38,8 @@ class DeclarativeScatterSeries : public QScatterSeries, public DeclarativeXySeri Q_PROPERTY(QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) Q_PROPERTY(QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) Q_PROPERTY(QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) Q_PROPERTY(qreal borderWidth READ borderWidth WRITE setBorderWidth NOTIFY borderWidthChanged REVISION 1) Q_PROPERTY(QDeclarativeListProperty<QObject> declarativeChildren READ declarativeChildren) Q_CLASSINFO("DefaultProperty", "declarativeChildren") @@ -53,6 +55,10 @@ public: Q_REVISION(2) void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } Q_REVISION(2) QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } Q_REVISION(2) void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + Q_REVISION(3) QAbstractAxis *axisAngular() { return m_axes->axisX(); } + Q_REVISION(3) void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + Q_REVISION(3) QAbstractAxis *axisRadial() { return m_axes->axisY(); } + Q_REVISION(3) void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } qreal borderWidth() const; void setBorderWidth(qreal borderWidth); QDeclarativeListProperty<QObject> declarativeChildren(); @@ -76,6 +82,8 @@ Q_SIGNALS: Q_REVISION(1) void borderWidthChanged(qreal width); Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); public Q_SLOTS: static void appendDeclarativeChildren(QDeclarativeListProperty<QObject> *list, QObject *element); diff --git a/plugins/declarative/declarativesplineseries.cpp b/plugins/declarative/declarativesplineseries.cpp index 7825b59b..f3900413 100644 --- a/plugins/declarative/declarativesplineseries.cpp +++ b/plugins/declarative/declarativesplineseries.cpp @@ -30,6 +30,8 @@ DeclarativeSplineSeries::DeclarativeSplineSeries(QObject *parent) : connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisYChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisXTopChanged(QAbstractAxis*)), this, SIGNAL(axisXTopChanged(QAbstractAxis*))); connect(m_axes, SIGNAL(axisYRightChanged(QAbstractAxis*)), this, SIGNAL(axisYRightChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisXChanged(QAbstractAxis*)), this, SIGNAL(axisAngularChanged(QAbstractAxis*))); + connect(m_axes, SIGNAL(axisYChanged(QAbstractAxis*)), this, SIGNAL(axisRadialChanged(QAbstractAxis*))); connect(this, SIGNAL(pointAdded(int)), this, SLOT(handleCountChanged(int))); connect(this, SIGNAL(pointRemoved(int)), this, SLOT(handleCountChanged(int))); } diff --git a/plugins/declarative/declarativesplineseries.h b/plugins/declarative/declarativesplineseries.h index f9e1a3e7..cfa0a7ee 100644 --- a/plugins/declarative/declarativesplineseries.h +++ b/plugins/declarative/declarativesplineseries.h @@ -38,6 +38,8 @@ class DeclarativeSplineSeries : public QSplineSeries, public DeclarativeXySeries Q_PROPERTY(QAbstractAxis *axisY READ axisY WRITE setAxisY NOTIFY axisYChanged REVISION 1) Q_PROPERTY(QAbstractAxis *axisXTop READ axisXTop WRITE setAxisXTop NOTIFY axisXTopChanged REVISION 2) Q_PROPERTY(QAbstractAxis *axisYRight READ axisYRight WRITE setAxisYRight NOTIFY axisYRightChanged REVISION 2) + Q_PROPERTY(QAbstractAxis *axisAngular READ axisAngular WRITE setAxisAngular NOTIFY axisAngularChanged REVISION 3) + Q_PROPERTY(QAbstractAxis *axisRadial READ axisRadial WRITE setAxisRadial NOTIFY axisRadialChanged REVISION 3) Q_PROPERTY(qreal width READ width WRITE setWidth NOTIFY widthChanged REVISION 1) Q_PROPERTY(Qt::PenStyle style READ style WRITE setStyle NOTIFY styleChanged REVISION 1) Q_PROPERTY(Qt::PenCapStyle capStyle READ capStyle WRITE setCapStyle NOTIFY capStyleChanged REVISION 1) @@ -55,6 +57,10 @@ public: Q_REVISION(2) void setAxisXTop(QAbstractAxis *axis) { m_axes->setAxisXTop(axis); } Q_REVISION(2) QAbstractAxis *axisYRight() { return m_axes->axisYRight(); } Q_REVISION(2) void setAxisYRight(QAbstractAxis *axis) { m_axes->setAxisYRight(axis); } + Q_REVISION(3) QAbstractAxis *axisAngular() { return m_axes->axisX(); } + Q_REVISION(3) void setAxisAngular(QAbstractAxis *axis) { m_axes->setAxisX(axis); } + Q_REVISION(3) QAbstractAxis *axisRadial() { return m_axes->axisY(); } + Q_REVISION(3) void setAxisRadial(QAbstractAxis *axis) { m_axes->setAxisY(axis); } qreal width() const; void setWidth(qreal width); Qt::PenStyle style() const; @@ -81,6 +87,8 @@ Q_SIGNALS: Q_REVISION(1) void axisYChanged(QAbstractAxis *axis); Q_REVISION(2) void axisXTopChanged(QAbstractAxis *axis); Q_REVISION(2) void axisYRightChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisAngularChanged(QAbstractAxis *axis); + Q_REVISION(3) void axisRadialChanged(QAbstractAxis *axis); Q_REVISION(1) void widthChanged(qreal width); Q_REVISION(1) void styleChanged(Qt::PenStyle style); Q_REVISION(1) void capStyleChanged(Qt::PenCapStyle capStyle); diff --git a/plugins/declarative/plugin.cpp b/plugins/declarative/plugin.cpp index 2b4fd0aa..bf560e59 100644 --- a/plugins/declarative/plugin.cpp +++ b/plugins/declarative/plugin.cpp @@ -24,6 +24,7 @@ #include "declarativecategoryaxis.h" #include "qbarcategoryaxis.h" #include "declarativechart.h" +#include "declarativepolarchart.h" #include "declarativexypoint.h" #include "declarativelineseries.h" #include "declarativesplineseries.h" @@ -62,6 +63,7 @@ Q_DECLARE_METATYPE(QList<QAbstractAxis *>) // These should not be needed or at least they are not needed in Qt4. Q_DECLARE_METATYPE(DeclarativeChart *) +Q_DECLARE_METATYPE(DeclarativePolarChart *) Q_DECLARE_METATYPE(DeclarativeMargins *) Q_DECLARE_METATYPE(DeclarativeAreaSeries *) Q_DECLARE_METATYPE(DeclarativeBarSeries *) @@ -213,6 +215,13 @@ public: qmlRegisterType<DeclarativeHorizontalBarSeries, 2>(uri, 1, 2, "HorizontalBarSeries"); qmlRegisterType<DeclarativeHorizontalStackedBarSeries, 2>(uri, 1, 2, "HorizontalStackedBarSeries"); qmlRegisterType<DeclarativeHorizontalPercentBarSeries, 2>(uri, 1, 2, "HorizontalPercentBarSeries"); + + // QtCommercial.Chart 1.3 + qmlRegisterType<DeclarativePolarChart, 1>(uri, 1, 3, "PolarChartView"); + qmlRegisterType<DeclarativeSplineSeries, 3>(uri, 1, 3, "SplineSeries"); + qmlRegisterType<DeclarativeScatterSeries, 3>(uri, 1, 3, "ScatterSeries"); + qmlRegisterType<DeclarativeLineSeries, 3>(uri, 1, 3, "LineSeries"); + qmlRegisterType<DeclarativeAreaSeries, 3>(uri, 1, 3, "AreaSeries"); } }; |