File indexing completed on 2023-11-26 08:19:24
0001 // SPDX-FileCopyrightText: 2022 Carl Schwan <carl@carlschwan.eu> 0002 // SPDX-License-Identifier: LGPL-2.1-or-later 0003 0004 #pragma once 0005 0006 #include <QObject> 0007 0008 class QNetworkReply; 0009 0010 class NetworkRequestProgress : public QObject 0011 { 0012 Q_OBJECT 0013 0014 Q_PROPERTY(QNetworkReply *reply READ reply WRITE setReply NOTIFY replyChanged) 0015 0016 Q_PROPERTY(bool uploading READ uploading NOTIFY progressChanged) 0017 Q_PROPERTY(int progress READ progress NOTIFY progressChanged) 0018 0019 public: 0020 explicit NetworkRequestProgress(QObject *parent = nullptr); 0021 0022 QNetworkReply *reply() const; 0023 void setReply(QNetworkReply *reply); 0024 0025 bool uploading() const; 0026 0027 int progress() const; 0028 void setProgress(int progress); 0029 0030 Q_SIGNALS: 0031 void replyChanged(); 0032 void progressChanged(); 0033 0034 private: 0035 QNetworkReply *m_reply = nullptr; 0036 int m_progress = 0; 0037 };