diff options
author | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-12-04 06:47:31 +0200 |
---|---|---|
committer | Tomi Korpipää <tomi.korpipaa@digia.com> | 2013-12-04 08:12:42 +0200 |
commit | f272b13f025897e157480b9bc3e5b6f1163c6125 (patch) | |
tree | 7d5637ce1d88b0ba621fbeaeef93f21939c0f533 /src/datavisualization/data/qscatter3dseries.cpp | |
parent | 344870fb79e647b87aa79b9433eef8237c901e10 (diff) |
Item size per series for scatter
Task-number: QTRD-2568
Change-Id: Ic137185304a5cc5ad16699cbb127035db86196cb
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualization/data/qscatter3dseries.cpp')
-rw-r--r-- | src/datavisualization/data/qscatter3dseries.cpp | 40 |
1 files changed, 39 insertions, 1 deletions
diff --git a/src/datavisualization/data/qscatter3dseries.cpp b/src/datavisualization/data/qscatter3dseries.cpp index 25e32ffe..4c2f368a 100644 --- a/src/datavisualization/data/qscatter3dseries.cpp +++ b/src/datavisualization/data/qscatter3dseries.cpp @@ -95,6 +95,14 @@ QT_DATAVISUALIZATION_BEGIN_NAMESPACE */ /*! + * \qmlproperty float Scatter3DSeries::itemSize + * + * Set item size for the series. Size must be between 0.0 and 1.0. Setting the size to 0.0 + * causes item size to be automatically scaled based on combined item count in all the series for + * the graph. Preset default is \c 0.0. + */ + +/*! * \qmlmethod int Scatter3DSeries::invalidSelectionIndex() * \return an invalid index for selection. Set this index to selectedItem property if you * want to clear the selection. @@ -176,6 +184,28 @@ int QScatter3DSeries::selectedItem() const } /*! + * \property QScatter3DSeries::selectedItem + * + * Set item \a size for the series. Size must be between 0.0f and 1.0f. Setting the size to 0.0f + * causes item size to be automatically scaled based on combined item count in all the series for + * the graph. Preset default is \c 0.0f. + */ +void QScatter3DSeries::setItemSize(float size) +{ + if (size < 0.0f || size > 1.0f) { + qWarning("Invalid size. Valid range for itemSize is 0.0f...1.0f"); + } else if (size != dptr()->m_itemSize) { + dptr()->setItemSize(size); + emit itemSizeChanged(size); + } +} + +float QScatter3DSeries::itemSize() const +{ + return dptrc()->m_itemSize; +} + +/*! * \return an invalid index for selection. Set this index to selectedItem property if you * want to clear the selection. */ @@ -204,7 +234,8 @@ const QScatter3DSeriesPrivate *QScatter3DSeries::dptrc() const QScatter3DSeriesPrivate::QScatter3DSeriesPrivate(QScatter3DSeries *q) : QAbstract3DSeriesPrivate(q, QAbstract3DSeries::SeriesTypeScatter), - m_selectedItem(Scatter3DController::invalidSelectionIndex()) + m_selectedItem(Scatter3DController::invalidSelectionIndex()), + m_itemSize(0.0f) { m_itemLabelFormat = QStringLiteral("@valueTitle: @valueLabel"); m_mesh = QAbstract3DSeries::MeshSphere; @@ -261,4 +292,11 @@ void QScatter3DSeriesPrivate::setSelectedItem(int index) } } +void QScatter3DSeriesPrivate::setItemSize(float size) +{ + m_itemSize = size; + if (m_controller) + m_controller->markSeriesVisualsDirty(); +} + QT_DATAVISUALIZATION_END_NAMESPACE |