summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorDennis Oberst <dennis.oberst@qt.io>2023-02-28 14:58:54 +0100
committerDennis Oberst <dennis.oberst@qt.io>2023-03-09 17:26:59 +0000
commitb5e9d418959a9d427c14468886470791527e157f (patch)
tree6d46f4edcfd2194f0c6ab51b5d47cfc19ce557c7 /examples
parent7261a2298734d4d4844d7ff34592378410293664 (diff)
Example: update imagescaling example
Updated the example to align with the Qt6 Example-Guideline. https://wiki.qt.io/Qt6/Example-Guideline Task-number: QTBUG-111165 Pick-to: 6.5 6.5.0 Change-Id: Ibd9e7ce0d4dee90f6a693b81516d2f5b86345b1d Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'examples')
-rw-r--r--examples/qtconcurrent/imagescaling/doc/images/imagescaling.webpbin0 -> 46826 bytes
-rw-r--r--examples/qtconcurrent/imagescaling/doc/images/imagescaling_example.pngbin21049 -> 0 bytes
-rw-r--r--examples/qtconcurrent/imagescaling/doc/src/qtconcurrent-imagescaling.qdoc10
-rw-r--r--examples/qtconcurrent/imagescaling/imagescaling.cpp14
-rw-r--r--examples/qtconcurrent/imagescaling/main.cpp7
5 files changed, 17 insertions, 14 deletions
diff --git a/examples/qtconcurrent/imagescaling/doc/images/imagescaling.webp b/examples/qtconcurrent/imagescaling/doc/images/imagescaling.webp
new file mode 100644
index 0000000000..56999faaa7
--- /dev/null
+++ b/examples/qtconcurrent/imagescaling/doc/images/imagescaling.webp
Binary files differ
diff --git a/examples/qtconcurrent/imagescaling/doc/images/imagescaling_example.png b/examples/qtconcurrent/imagescaling/doc/images/imagescaling_example.png
deleted file mode 100644
index a3860e1974..0000000000
--- a/examples/qtconcurrent/imagescaling/doc/images/imagescaling_example.png
+++ /dev/null
Binary files differ
diff --git a/examples/qtconcurrent/imagescaling/doc/src/qtconcurrent-imagescaling.qdoc b/examples/qtconcurrent/imagescaling/doc/src/qtconcurrent-imagescaling.qdoc
index 91a519b8ae..d5008019ee 100644
--- a/examples/qtconcurrent/imagescaling/doc/src/qtconcurrent-imagescaling.qdoc
+++ b/examples/qtconcurrent/imagescaling/doc/src/qtconcurrent-imagescaling.qdoc
@@ -3,14 +3,16 @@
/*!
\example imagescaling
- \title Image Scaling Example
- \brief Demonstrates how to asynchronously download and scale images.
+ \meta tags {widgets, threads, network}
+ \title Image Scaling
\ingroup qtconcurrentexamples
- \image imagescaling_example.png
+ \brief Demonstrates how to asynchronously download and scale images.
This example shows how to use the QFuture and QPromise classes to download a
collection of images from the network and scale them, without blocking the UI.
+ \image imagescaling.webp
+
The application consists of the following steps:
\list 1
@@ -148,4 +150,6 @@
The rest of the code is straightforward, you can check the example project for
more details.
+
+ \include examples-run.qdocinc
*/
diff --git a/examples/qtconcurrent/imagescaling/imagescaling.cpp b/examples/qtconcurrent/imagescaling/imagescaling.cpp
index fca9291e8b..79616a1353 100644
--- a/examples/qtconcurrent/imagescaling/imagescaling.cpp
+++ b/examples/qtconcurrent/imagescaling/imagescaling.cpp
@@ -4,14 +4,12 @@
#include "downloaddialog.h"
#include <QNetworkReply>
-
-#include <qmath.h>
+#include <QtMath>
#include <functional>
Images::Images(QWidget *parent) : QWidget(parent), downloadDialog(new DownloadDialog())
{
- setWindowTitle(tr("Image downloading and scaling example"));
resize(800, 600);
addUrlsButton = new QPushButton(tr("Add URLs"));
@@ -90,7 +88,7 @@ void Images::process()
// Abort all pending requests
abortDownload();
})
- .onFailed([this](const std::exception& ex) {
+ .onFailed([this](const std::exception &ex) {
updateStatus(tr(ex.what()));
});
//! [6]
@@ -117,7 +115,7 @@ QFuture<QByteArray> Images::download(const QList<QUrl> &urls)
//! [9]
//! [10]
- for (auto url : urls) {
+ for (const auto &url : urls) {
QSharedPointer<QNetworkReply> reply(qnam.get(QNetworkRequest(url)));
replies.push_back(reply);
//! [10]
@@ -142,10 +140,10 @@ QFuture<QByteArray> Images::download(const QList<QUrl> &urls)
promise->finish();
}
//! [12]
- }).onFailed([=] (QNetworkReply::NetworkError error) {
+ }).onFailed([promise] (QNetworkReply::NetworkError error) {
promise->setException(std::make_exception_ptr(error));
promise->finish();
- }).onFailed([=] {
+ }).onFailed([promise] {
const auto ex = std::make_exception_ptr(
std::runtime_error("Unknown error occurred while downloading."));
promise->setException(ex);
@@ -164,7 +162,7 @@ QList<QImage> Images::scaled() const
{
QList<QImage> scaled;
const auto data = downloadFuture.results();
- for (auto imgData : data) {
+ for (const auto &imgData : data) {
QImage image;
image.loadFromData(imgData);
if (image.isNull())
diff --git a/examples/qtconcurrent/imagescaling/main.cpp b/examples/qtconcurrent/imagescaling/main.cpp
index c7e30df34c..67b543a961 100644
--- a/examples/qtconcurrent/imagescaling/main.cpp
+++ b/examples/qtconcurrent/imagescaling/main.cpp
@@ -1,15 +1,16 @@
// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
-#include <QtWidgets>
-#include <QtConcurrent>
-
#include "imagescaling.h"
+#include <QApplication>
int main(int argc, char *argv[])
{
QApplication app(argc,argv);
+ app.setOrganizationName("QtProject");
+ app.setApplicationName(QObject::tr("Image Downloading and Scaling"));
Images imageView;
+ imageView.setWindowTitle(QObject::tr("Image Downloading and Scaling"));
imageView.show();
return app.exec();