From 91e0ee9d9bbf5a3630f3c203f6ecba9e91eec6f8 Mon Sep 17 00:00:00 2001 From: jan Iversen Date: Tue, 10 Dec 2019 15:36:31 +0100 Subject: desktop-widgets: diveDiveShareExportDialog add signal handling connect signals from uploadDiveShare and remove reply variable Signed-off-by: Jan Iversen --- desktop-widgets/diveshareexportdialog.cpp | 21 +++++++++++++-------- desktop-widgets/diveshareexportdialog.h | 3 +-- 2 files changed, 14 insertions(+), 10 deletions(-) (limited to 'desktop-widgets') diff --git a/desktop-widgets/diveshareexportdialog.cpp b/desktop-widgets/diveshareexportdialog.cpp index 5207569fb..2f41dffea 100644 --- a/desktop-widgets/diveshareexportdialog.cpp +++ b/desktop-widgets/diveshareexportdialog.cpp @@ -15,8 +15,7 @@ DiveShareExportDialog::DiveShareExportDialog(QWidget *parent) : QDialog(parent), ui(new Ui::DiveShareExportDialog), - exportSelected(false), - reply(NULL) + exportSelected(false) { ui->setupUi(this); } @@ -89,18 +88,16 @@ static QByteArray generate_html_list(const QByteArray &data) return html; } -void DiveShareExportDialog::finishedSlot() +void DiveShareExportDialog::finishedSlot(bool isOk, const QString &text, const QByteArray &html) { ui->progressBar->setVisible(false); - if (reply->error() != 0) { + if (!isOk) { ui->buttonBox->setStandardButtons(QDialogButtonBox::Cancel); - ui->txtResult->setText(reply->errorString()); + ui->txtResult->setText(text); } else { ui->buttonBox->setStandardButtons(QDialogButtonBox::Ok); - ui->txtResult->setHtml(generate_html_list(reply->readAll())); + ui->txtResult->setHtml(generate_html_list(html)); } - - reply->deleteLater(); } void DiveShareExportDialog::doUpload() @@ -118,4 +115,12 @@ void DiveShareExportDialog::doUpload() ui->progressBar->setRange(0, 0); uploadDiveShare::instance()->doUpload(exportSelected, uid, noPublic); + connect(uploadDiveShare::instance(), SIGNAL(uploadFinish(bool, const QString &, const QByteArray &)), + this, SLOT(finishedSlot(bool, const QString &, const QByteArray &))); + + // Not implemented in the UI, but would be nice to have + //connect(uploadDiveLogsDE::instance(), SIGNAL(uploadProgress(qreal, qreal)), + // this, SLOT(updateProgress(qreal, qreal))); + //connect(uploadDiveLogsDE::instance(), SIGNAL(uploadStatus(const QString &)), + // this, SLOT(uploadStatus(const QString &))); } diff --git a/desktop-widgets/diveshareexportdialog.h b/desktop-widgets/diveshareexportdialog.h index 4fd13781a..391a23def 100644 --- a/desktop-widgets/diveshareexportdialog.h +++ b/desktop-widgets/diveshareexportdialog.h @@ -24,12 +24,11 @@ public: private: Ui::DiveShareExportDialog *ui; bool exportSelected; - QNetworkReply *reply; private slots: void UIDFromBrowser(); void doUpload(); - void finishedSlot(); + void finishedSlot(bool, const QString &, const QByteArray &); }; #endif // DIVESHAREEXPORTDIALOG_H -- cgit v1.2.3-70-g09d2