mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Properly reset the state of the download dialog before dismissing
Re-enable buttons that should be enabled by default, disable the others, set the status to empty, make the progress bar go back to zero. Signed-off-by: Thiago Macieira <thiago@macieira.org>
This commit is contained in:
parent
481ddf43c6
commit
fa07f554e2
2 changed files with 14 additions and 4 deletions
|
@ -115,6 +115,14 @@ QNetworkAccessManager *WebServices::manager()
|
||||||
return 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.
|
// # Subsurface Web Service Implementation.
|
||||||
|
@ -156,12 +164,13 @@ void SubsurfaceWebServices::buttonClicked(QAbstractButton* button)
|
||||||
s.sync();
|
s.sync();
|
||||||
hide();
|
hide();
|
||||||
close();
|
close();
|
||||||
|
resetState();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case QDialogButtonBox::RejectRole:
|
case QDialogButtonBox::RejectRole:
|
||||||
// we may want to clean up after ourselves
|
// we may want to clean up after ourselves
|
||||||
// reply->deleteLater();
|
// reply->deleteLater();
|
||||||
ui.progressBar->setMaximum(1);
|
resetState();
|
||||||
break;
|
break;
|
||||||
case QDialogButtonBox::HelpRole:
|
case QDialogButtonBox::HelpRole:
|
||||||
QDesktopServices::openUrl(QUrl("http://api.hohndel.org"));
|
QDesktopServices::openUrl(QUrl("http://api.hohndel.org"));
|
||||||
|
@ -208,9 +217,8 @@ void SubsurfaceWebServices::downloadFinished()
|
||||||
|
|
||||||
void SubsurfaceWebServices::downloadError(QNetworkReply::NetworkError)
|
void SubsurfaceWebServices::downloadError(QNetworkReply::NetworkError)
|
||||||
{
|
{
|
||||||
ui.download->setEnabled(true);
|
resetState();
|
||||||
ui.progressBar->setRange(0,1);
|
ui.status->setText(tr("Download error: %1").arg(reply->errorString()));
|
||||||
ui.status->setText(QString::number((int)QNetworkRequest::HttpStatusCodeAttribute));
|
|
||||||
reply->deleteLater();
|
reply->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,8 @@ private slots:
|
||||||
virtual void buttonClicked(QAbstractButton* button) = 0;
|
virtual void buttonClicked(QAbstractButton* button) = 0;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
void resetState();
|
||||||
|
|
||||||
Ui::WebServices ui;
|
Ui::WebServices ui;
|
||||||
QNetworkReply *reply;
|
QNetworkReply *reply;
|
||||||
QByteArray downloadedData;
|
QByteArray downloadedData;
|
||||||
|
|
Loading…
Add table
Reference in a new issue