summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTitta Heikkala <titta.heikkala@digia.com>2014-05-28 08:01:29 +0300
committerTitta Heikkala <titta.heikkala@digia.com>2014-05-30 07:46:10 +0300
commit0f386f5dd65404f6fdaf0f49ab66e203976130c0 (patch)
treebd5b90541da7ef508900cdea4595fafed2a05122
parent6c409268c150552c11dcbd22e11600f61203da3a (diff)
Add invokable clear() for QML bar category axis
Changed clear() method to invokable for QBarCategoryAxis. Task-number: QTRD-2631 Change-Id: I0aa00a44ae5c6bd5b59ecf630d938b5cc484f62e Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
-rw-r--r--doc/docconf/qcharts.qdocconf3
-rw-r--r--plugins/quick2/plugins.qmltypes1
-rw-r--r--src/axis/barcategoryaxis/qbarcategoryaxis.cpp7
-rw-r--r--src/axis/barcategoryaxis/qbarcategoryaxis.h2
-rw-r--r--tests/auto/qml-qtquicktest/tst_barcategoryaxis.qml11
5 files changed, 21 insertions, 3 deletions
diff --git a/doc/docconf/qcharts.qdocconf b/doc/docconf/qcharts.qdocconf
index 520301df..ade24c7b 100644
--- a/doc/docconf/qcharts.qdocconf
+++ b/doc/docconf/qcharts.qdocconf
@@ -22,7 +22,8 @@ headers.fileextensions = *.h *.ch *.h++ *.hh *.hpp *.hxx
examples.fileextensions = *.cpp *.h *.js *.xq *.svg *.xml *.ui *.qhp *.qhcp *.qml
examples.imageextensions = *.png *.jpeg *.jpg *.gif *.mng
-Cpp.ignoretokens = QTCOMMERCIALCHART_EXPORT \
+Cpp.ignoretokens = Q_INVOKABLE \
+ QTCOMMERCIALCHART_EXPORT \
QTCOMMERCIALCHART_END_NAMESPACE \
QTCOMMERCIALCHART_BEGIN_NAMESPACE
Cpp.ignoredirectives = Q_DECLARE_HANDLE \
diff --git a/plugins/quick2/plugins.qmltypes b/plugins/quick2/plugins.qmltypes
index 6b8dfc88..2dc27f0a 100644
--- a/plugins/quick2/plugins.qmltypes
+++ b/plugins/quick2/plugins.qmltypes
@@ -1706,6 +1706,7 @@ Module {
Parameter { name: "min"; type: "string" }
Parameter { name: "max"; type: "string" }
}
+ Method { name: "clear" }
}
Component {
name: "QtCommercialChart::QBarModelMapper"
diff --git a/src/axis/barcategoryaxis/qbarcategoryaxis.cpp b/src/axis/barcategoryaxis/qbarcategoryaxis.cpp
index 48ba3752..fa90de64 100644
--- a/src/axis/barcategoryaxis/qbarcategoryaxis.cpp
+++ b/src/axis/barcategoryaxis/qbarcategoryaxis.cpp
@@ -33,7 +33,7 @@ QTCOMMERCIALCHART_BEGIN_NAMESPACE
\brief The QBarCategoryAxis class is used for manipulating chart's axis.
\mainclass
- BarCategoryAxis can be setup to show axis line with tick marks, grid lines and shades.
+ QBarCategoryAxis can be setup to show axis line with tick marks, grid lines and shades.
Categories are drawn between ticks. Note that you can use this also with lineseries too.
See the \l {Line and BarChart Example} {Line and BarChart Example} to learn how to do that.
@@ -144,6 +144,11 @@ QTCOMMERCIALCHART_BEGIN_NAMESPACE
*/
/*!
+ \qmlmethod void BarCategoryAxis::clear()
+ Removes all categories. Sets the maximum and minimum of the axis's range to QString::null.
+*/
+
+/*!
Constructs an axis object which is a child of \a parent.
*/
QBarCategoryAxis::QBarCategoryAxis(QObject *parent):
diff --git a/src/axis/barcategoryaxis/qbarcategoryaxis.h b/src/axis/barcategoryaxis/qbarcategoryaxis.h
index 96e4d03f..8f40b5c2 100644
--- a/src/axis/barcategoryaxis/qbarcategoryaxis.h
+++ b/src/axis/barcategoryaxis/qbarcategoryaxis.h
@@ -49,7 +49,7 @@ public:
void remove(const QString &category);
void insert(int index, const QString &category);
void replace(const QString &oldCategory, const QString &newCategory);
- void clear();
+ Q_INVOKABLE void clear();
void setCategories(const QStringList &categories);
QStringList categories();
int count() const;
diff --git a/tests/auto/qml-qtquicktest/tst_barcategoryaxis.qml b/tests/auto/qml-qtquicktest/tst_barcategoryaxis.qml
index b033bcf6..eae2364a 100644
--- a/tests/auto/qml-qtquicktest/tst_barcategoryaxis.qml
+++ b/tests/auto/qml-qtquicktest/tst_barcategoryaxis.qml
@@ -64,6 +64,17 @@ Rectangle {
compare(minChangedSpy.count, 1, "onMinChanged");
compare(maxChangedSpy.count, 1, "onMaxChanged");
}
+
+ function test_seriesAxisClear() {
+ verify(barSeries1.axisX.min !== "", "barSeries1.axisX.min");
+ verify(barSeries1.axisX.max !== "", "barSeries1.axisX.max");
+ verify(barSeries1.axisX.count !== 0, "barSeries1.axisX.count"); // category count
+ barSeries1.axisX.clear();
+ verify(barSeries1.axisX.min === "", "barSeries1.axisX.min");
+ verify(barSeries1.axisX.max === "", "barSeries1.axisX.max");
+ verify(barSeries1.axisX.count === 0);
+ }
+
}
ChartView {