diff options
Diffstat (limited to 'qt-ui')
-rw-r--r-- | qt-ui/subsurfacewebservices.cpp | 16 | ||||
-rw-r--r-- | qt-ui/subsurfacewebservices.h | 2 |
2 files changed, 14 insertions, 4 deletions
diff --git a/qt-ui/subsurfacewebservices.cpp b/qt-ui/subsurfacewebservices.cpp index 850e076f3..1f47d965b 100644 --- a/qt-ui/subsurfacewebservices.cpp +++ b/qt-ui/subsurfacewebservices.cpp @@ -115,6 +115,14 @@ QNetworkAccessManager *WebServices::manager() return manager; } +void WebServices::resetState() +{ + ui.download->setEnabled(true); + ui.progressBar->reset(); + ui.progressBar->setRange(0,1); + ui.status->setText(QString()); +} + // # // # // # Subsurface Web Service Implementation. @@ -156,12 +164,13 @@ void SubsurfaceWebServices::buttonClicked(QAbstractButton* button) s.sync(); hide(); close(); + resetState(); } break; case QDialogButtonBox::RejectRole: // we may want to clean up after ourselves // reply->deleteLater(); - ui.progressBar->setMaximum(1); + resetState(); break; case QDialogButtonBox::HelpRole: QDesktopServices::openUrl(QUrl("http://api.hohndel.org")); @@ -208,9 +217,8 @@ void SubsurfaceWebServices::downloadFinished() void SubsurfaceWebServices::downloadError(QNetworkReply::NetworkError) { - ui.download->setEnabled(true); - ui.progressBar->setRange(0,1); - ui.status->setText(QString::number((int)QNetworkRequest::HttpStatusCodeAttribute)); + resetState(); + ui.status->setText(tr("Download error: %1").arg(reply->errorString())); reply->deleteLater(); } diff --git a/qt-ui/subsurfacewebservices.h b/qt-ui/subsurfacewebservices.h index 0400fd503..0cd083001 100644 --- a/qt-ui/subsurfacewebservices.h +++ b/qt-ui/subsurfacewebservices.h @@ -25,6 +25,8 @@ private slots: virtual void buttonClicked(QAbstractButton* button) = 0; protected: + void resetState(); + Ui::WebServices ui; QNetworkReply *reply; QByteArray downloadedData; |