summaryrefslogtreecommitdiffstats
path: root/tests/scattertest
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2014-06-04 13:51:21 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2014-06-04 13:54:34 +0300
commit964a6c7f8ff2354737ef897067ee46e3d0cd55a9 (patch)
tree8d2499ea69cbb4c32690661d13ede9e61117e4bc /tests/scattertest
parent3953654a954b7ecc2b0b8ea514e8a520df2ba413 (diff)
Add testing of renderToImage to scatter test
Change-Id: I03c3868ac7c98658fafa71c19409eb3afe851a10 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'tests/scattertest')
-rw-r--r--tests/scattertest/main.cpp15
-rw-r--r--tests/scattertest/scatterchart.cpp22
-rw-r--r--tests/scattertest/scatterchart.h1
3 files changed, 35 insertions, 3 deletions
diff --git a/tests/scattertest/main.cpp b/tests/scattertest/main.cpp
index 50c73901..207da530 100644
--- a/tests/scattertest/main.cpp
+++ b/tests/scattertest/main.cpp
@@ -129,6 +129,9 @@ int main(int argc, char **argv)
QPushButton *testReverseButton = new QPushButton(widget);
testReverseButton->setText(QStringLiteral("Test Axis Reversing"));
+ QPushButton *renderToImageButton = new QPushButton(widget);
+ renderToImageButton->setText(QStringLiteral("Render the graph to an image"));
+
QLinearGradient grBtoY(0, 0, 100, 0);
grBtoY.setColorAt(1.0, Qt::black);
grBtoY.setColorAt(0.67, Qt::blue);
@@ -270,7 +273,8 @@ int main(int argc, char **argv)
vLayout->addWidget(startTimerButton, 0, Qt::AlignTop);
vLayout->addWidget(massiveDataTestButton, 0, Qt::AlignTop);
vLayout->addWidget(testItemChangesButton, 0, Qt::AlignTop);
- vLayout->addWidget(testReverseButton, 1, Qt::AlignTop);
+ vLayout->addWidget(testReverseButton, 0, Qt::AlignTop);
+ vLayout->addWidget(renderToImageButton, 1, Qt::AlignTop);
vLayout2->addWidget(gradientBtoYPB, 0, Qt::AlignTop);
vLayout2->addWidget(fpsLabel, 0, Qt::AlignTop);
@@ -299,8 +303,6 @@ int main(int argc, char **argv)
vLayout2->addWidget(new QLabel(QStringLiteral("Axis label rotation")));
vLayout2->addWidget(axisLabelRotationSlider, 1, Qt::AlignTop);
- widget->show();
-
ScatterDataModifier *modifier = new ScatterDataModifier(chart);
QObject::connect(fontSizeSlider, &QSlider::valueChanged, modifier,
@@ -352,6 +354,8 @@ int main(int argc, char **argv)
&ScatterDataModifier::testItemChanges);
QObject::connect(testReverseButton, &QPushButton::clicked, modifier,
&ScatterDataModifier::testAxisReverse);
+ QObject::connect(renderToImageButton, &QPushButton::clicked, modifier,
+ &ScatterDataModifier::renderToImage);
QObject::connect(gradientBtoYPB, &QPushButton::clicked, modifier,
&ScatterDataModifier::setGradient);
QObject::connect(themeButton, &QPushButton::clicked, modifier,
@@ -396,7 +400,12 @@ int main(int argc, char **argv)
modifier->setFpsLabel(fpsLabel);
+ chart->setGeometry(QRect(0, 0, 800, 800));
+
modifier->start();
+ modifier->renderToImage(); // Initial hidden render
+
+ widget->show();
return app.exec();
}
diff --git a/tests/scattertest/scatterchart.cpp b/tests/scattertest/scatterchart.cpp
index e498b2da..c00c526a 100644
--- a/tests/scattertest/scatterchart.cpp
+++ b/tests/scattertest/scatterchart.cpp
@@ -948,6 +948,28 @@ void ScatterDataModifier::toggleAxisTitleFixed(bool enabled)
m_chart->axisZ()->setTitleFixed(enabled);
}
+void ScatterDataModifier::renderToImage()
+{
+ QImage renderedImage8AA = m_chart->renderToImage(8);
+ QImage renderedImageNoAA = m_chart->renderToImage(0);
+ QImage renderedImage8AASmall = m_chart->renderToImage(8, QSize(100, 100));
+ QImage renderedImageNoAASmall = m_chart->renderToImage(0, QSize(100, 100));
+
+ if (m_chart->isVisible()) {
+ renderedImage8AA.save(QStringLiteral("./renderedImage8AA_visible.png"));
+ renderedImageNoAA.save(QStringLiteral("./renderedImageNoAA_visible.png"));
+ renderedImage8AASmall.save(QStringLiteral("./renderedImage8AASmall_visible.png"));
+ renderedImageNoAASmall.save(QStringLiteral("./renderedImageNoAASmall_visible.png"));
+ qDebug() << "Visible images rendered!";
+ } else {
+ renderedImage8AA.save(QStringLiteral("./renderedImage8AA_hidden.png"));
+ renderedImageNoAA.save(QStringLiteral("./renderedImageNoAA_hidden.png"));
+ renderedImage8AASmall.save(QStringLiteral("./renderedImage8AASmall_hidden.png"));
+ renderedImageNoAASmall.save(QStringLiteral("./renderedImageNoAASmall_hidden.png"));
+ qDebug() << "Hidden images rendered!";
+ }
+}
+
void ScatterDataModifier::changeShadowQuality(int quality)
{
QAbstract3DGraph::ShadowQuality sq = QAbstract3DGraph::ShadowQuality(quality);
diff --git a/tests/scattertest/scatterchart.h b/tests/scattertest/scatterchart.h
index 983b605a..97c3b1f9 100644
--- a/tests/scattertest/scatterchart.h
+++ b/tests/scattertest/scatterchart.h
@@ -92,6 +92,7 @@ public slots:
void changeLabelRotation(int rotation);
void toggleAxisTitleVisibility(bool enabled);
void toggleAxisTitleFixed(bool enabled);
+ void renderToImage();
signals:
void shadowQualityChanged(int quality);