// Copyright (C) 2020 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause #ifndef IMAGESCALING_H #define IMAGESCALING_H #include #include #include class DownloadDialog; class Images : public QWidget { Q_OBJECT public: Images(QWidget *parent = nullptr); ~Images(); void initLayout(qsizetype count); QFuture download(const QList &urls); QList scaled() const; void updateStatus(const QString &msg); void showImages(const QList &images); void abortDownload(); public slots: void process(); void cancel(); private: QPushButton *addUrlsButton; QPushButton *cancelButton; QVBoxLayout *mainLayout; QList labels; QGridLayout *imagesLayout; QStatusBar *statusBar; DownloadDialog *downloadDialog; QNetworkAccessManager qnam; QList> replies; QFuture downloadFuture; }; #endif // IMAGESCALING_H