summaryrefslogtreecommitdiffstats
path: root/tests/scattertest/scatterchart.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/scattertest/scatterchart.cpp')
-rw-r--r--tests/scattertest/scatterchart.cpp84
1 files changed, 61 insertions, 23 deletions
diff --git a/tests/scattertest/scatterchart.cpp b/tests/scattertest/scatterchart.cpp
index b1df526a..6ee7711e 100644
--- a/tests/scattertest/scatterchart.cpp
+++ b/tests/scattertest/scatterchart.cpp
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2013 Digia Plc
+** Copyright (C) 2014 Digia Plc
** All rights reserved.
** For any questions to Digia, please use contact form at http://qt.digia.com
**
@@ -19,7 +19,7 @@
#include "scatterchart.h"
#include <QtDataVisualization/qscatterdataproxy.h>
#include <QtDataVisualization/qscatter3dseries.h>
-#include <QtDataVisualization/q3dvalueaxis.h>
+#include <QtDataVisualization/qvalue3daxis.h>
#include <QtDataVisualization/q3dscene.h>
#include <QtDataVisualization/q3dcamera.h>
#include <QtDataVisualization/q3dtheme.h>
@@ -37,24 +37,31 @@ ScatterDataModifier::ScatterDataModifier(Q3DScatter *scatter)
m_selectedItem(-1),
m_targetSeries(0)
{
- m_chart->setTheme(new Q3DTheme(Q3DTheme::ThemeStoneMoss));
- QFont font = m_chart->theme()->font();
+ m_chart->activeTheme()->setType(Q3DTheme::ThemeStoneMoss);
+ QFont font = m_chart->activeTheme()->font();
font.setPointSize(m_fontSize);
- m_chart->theme()->setFont(font);
- m_chart->setShadowQuality(QDataVis::ShadowQualityNone);
+ m_chart->activeTheme()->setFont(font);
+ m_chart->setShadowQuality(QAbstract3DGraph::ShadowQualityNone);
m_chart->scene()->activeCamera()->setCameraPreset(Q3DCamera::CameraPresetFront);
- m_chart->setAxisX(new Q3DValueAxis);
- m_chart->setAxisY(new Q3DValueAxis);
- m_chart->setAxisZ(new Q3DValueAxis);
+ m_chart->setAxisX(new QValue3DAxis);
+ m_chart->setAxisY(new QValue3DAxis);
+ m_chart->setAxisZ(new QValue3DAxis);
createAndAddSeries();
createAndAddSeries();
- m_chart->setSelectionMode(QDataVis::SelectionItem);
+ m_chart->setSelectionMode(QAbstract3DGraph::SelectionItem);
QObject::connect(&m_timer, &QTimer::timeout, this, &ScatterDataModifier::timeout);
QObject::connect(m_chart, &Q3DScatter::shadowQualityChanged, this,
&ScatterDataModifier::shadowQualityUpdatedByVisual);
+
+ QObject::connect(m_chart, &Q3DScatter::axisXChanged, this,
+ &ScatterDataModifier::handleAxisXChanged);
+ QObject::connect(m_chart, &Q3DScatter::axisYChanged, this,
+ &ScatterDataModifier::handleAxisYChanged);
+ QObject::connect(m_chart, &Q3DScatter::axisZChanged, this,
+ &ScatterDataModifier::handleAxisZChanged);
}
ScatterDataModifier::~ScatterDataModifier()
@@ -105,6 +112,8 @@ void ScatterDataModifier::addData()
m_chart->seriesList().at(0)->dataProxy()->resetArray(dataArray);
m_chart->seriesList().at(1)->dataProxy()->resetArray(dataArray2);
+ m_chart->seriesList().at(0)->setItemSize(0.0f);
+ m_chart->seriesList().at(1)->setItemSize(0.0f);
}
void ScatterDataModifier::changeStyle()
@@ -161,7 +170,7 @@ void ScatterDataModifier::changeTheme()
{
static int theme = Q3DTheme::ThemeQt;
- m_chart->setTheme(new Q3DTheme(Q3DTheme::Theme(theme)));
+ m_chart->activeTheme()->setType(Q3DTheme::Theme(theme));
if (++theme > Q3DTheme::ThemeIsabelle)
theme = Q3DTheme::ThemeQt;
@@ -169,22 +178,22 @@ void ScatterDataModifier::changeTheme()
void ScatterDataModifier::changeLabelStyle()
{
- m_chart->theme()->setLabelBackgroundEnabled(!m_chart->theme()->isLabelBackgroundEnabled());
+ m_chart->activeTheme()->setLabelBackgroundEnabled(!m_chart->activeTheme()->isLabelBackgroundEnabled());
}
void ScatterDataModifier::changeFont(const QFont &font)
{
QFont newFont = font;
newFont.setPointSizeF(m_fontSize);
- m_chart->theme()->setFont(newFont);
+ m_chart->activeTheme()->setFont(newFont);
}
void ScatterDataModifier::changeFontSize(int fontSize)
{
m_fontSize = fontSize;
- QFont font = m_chart->theme()->font();
+ QFont font = m_chart->activeTheme()->font();
font.setPointSize(m_fontSize);
- m_chart->theme()->setFont(font);
+ m_chart->activeTheme()->setFont(font);
}
void ScatterDataModifier::changePointSize(int pointSize)
@@ -192,7 +201,7 @@ void ScatterDataModifier::changePointSize(int pointSize)
m_targetSeries->setItemSize(0.01f * float(pointSize));
}
-void ScatterDataModifier::shadowQualityUpdatedByVisual(QDataVis::ShadowQuality sq)
+void ScatterDataModifier::shadowQualityUpdatedByVisual(QAbstract3DGraph::ShadowQuality sq)
{
int quality = int(sq);
// Updates the UI component to show correct shadow quality
@@ -217,9 +226,9 @@ void ScatterDataModifier::resetAxes()
m_chart->releaseAxis(m_chart->axisY());
m_chart->releaseAxis(m_chart->axisZ());
- m_chart->setAxisX(new Q3DValueAxis);
- m_chart->setAxisY(new Q3DValueAxis);
- m_chart->setAxisZ(new Q3DValueAxis);
+ m_chart->setAxisX(new QValue3DAxis);
+ m_chart->setAxisY(new QValue3DAxis);
+ m_chart->setAxisZ(new QValue3DAxis);
m_chart->axisX()->setSegmentCount(5);
m_chart->axisY()->setSegmentCount(5);
m_chart->axisZ()->setSegmentCount(5);
@@ -461,21 +470,48 @@ void ScatterDataModifier::removeSeries()
}
}
+void ScatterDataModifier::toggleSeriesVisibility()
+{
+ if (m_targetSeries)
+ m_targetSeries->setVisible(!m_targetSeries->isVisible());
+}
+
+void ScatterDataModifier::changeSeriesName()
+{
+ if (m_targetSeries)
+ m_targetSeries->setName(m_targetSeries->name().append("-").append(QString::number(qrand() % 10)));
+}
+
+void ScatterDataModifier::handleAxisXChanged(QValue3DAxis *axis)
+{
+ qDebug() << __FUNCTION__ << axis << axis->orientation() << (axis == m_chart->axisX());
+}
+
+void ScatterDataModifier::handleAxisYChanged(QValue3DAxis *axis)
+{
+ qDebug() << __FUNCTION__ << axis << axis->orientation() << (axis == m_chart->axisY());
+}
+
+void ScatterDataModifier::handleAxisZChanged(QValue3DAxis *axis)
+{
+ qDebug() << __FUNCTION__ << axis << axis->orientation() << (axis == m_chart->axisZ());
+}
+
void ScatterDataModifier::changeShadowQuality(int quality)
{
- QDataVis::ShadowQuality sq = QDataVis::ShadowQuality(quality);
+ QAbstract3DGraph::ShadowQuality sq = QAbstract3DGraph::ShadowQuality(quality);
m_chart->setShadowQuality(sq);
emit shadowQualityChanged(quality);
}
void ScatterDataModifier::setBackgroundEnabled(int enabled)
{
- m_chart->theme()->setBackgroundEnabled((bool)enabled);
+ m_chart->activeTheme()->setBackgroundEnabled((bool)enabled);
}
void ScatterDataModifier::setGridEnabled(int enabled)
{
- m_chart->theme()->setGridEnabled((bool)enabled);
+ m_chart->activeTheme()->setGridEnabled((bool)enabled);
}
QVector3D ScatterDataModifier::randVector()
@@ -496,10 +532,12 @@ QScatter3DSeries *ScatterDataModifier::createAndAddSeries()
m_targetSeries = series;
m_chart->addSeries(series);
- series->setItemLabelFormat(QString("%1: @xLabel - @yLabel - @zLabel").arg(counter++));
+ series->setName(QString("Series %1").arg(counter++));
+ series->setItemLabelFormat(QStringLiteral("@seriesName: @xLabel - @yLabel - @zLabel"));
series->setMesh(QAbstract3DSeries::MeshSphere);
series->setMeshSmooth(true);
series->setBaseColor(QColor(rand() % 256, rand() % 256, rand() % 256));
+ series->setItemSize(float(rand() % 90 + 10) / 100.0f);
QObject::connect(series, &QScatter3DSeries::selectedItemChanged, this,
&ScatterDataModifier::handleSelectionChange);