diff options
Diffstat (limited to 'core/uploadDiveLogsDE.h')
-rw-r--r-- | core/uploadDiveLogsDE.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/core/uploadDiveLogsDE.h b/core/uploadDiveLogsDE.h new file mode 100644 index 000000000..d19d20a26 --- /dev/null +++ b/core/uploadDiveLogsDE.h @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-2.0 +#ifndef UPLOADDIVELOGSDE_H +#define UPLOADDIVELOGSDE_H +#include <QNetworkReply> +#include <QHttpMultiPart> +#include <QTimer> + + +class uploadDiveLogsDE : public QObject { + Q_OBJECT + +public: + static uploadDiveLogsDE *instance(); + void doUpload(bool selected, const QString &userid, const QString &password); + +private slots: + void updateProgress(qint64 current, qint64 total); + void uploadFinished(); + void uploadTimeout(); + void uploadError(QNetworkReply::NetworkError error); + +signals: + void uploadFinish(bool success, const QString &text); + void uploadProgress(qreal percentage); + +private: + uploadDiveLogsDE(); + + bool prepareDives(bool selected, const QString &filename); + void uploadDives(const QString &filename, const QString &userid, const QString &password); + + QNetworkReply *reply; + QHttpMultiPart *multipart; + QTimer timeout; +}; +#endif // UPLOADDIVELOGSDE_H |