diff options
| author | isanae <14251494+isanae@users.noreply.github.com> | 2019-07-09 00:47:29 -0400 |
|---|---|---|
| committer | isanae <14251494+isanae@users.noreply.github.com> | 2019-07-10 20:45:37 -0400 |
| commit | fa6602816160f6ac959527ce843dee22b1272603 (patch) | |
| tree | 7586d0f1f0e6c59e45b19a85a382b219f0536a87 /src/nxmaccessmanager.cpp | |
| parent | d9003f9e5407396fdd552c5df3d0be76ab9a16a3 (diff) | |
dialog should be on the heap, gets deleted by the main window
Diffstat (limited to 'src/nxmaccessmanager.cpp')
| -rw-r--r-- | src/nxmaccessmanager.cpp | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp index a68dea54..cabe07a9 100644 --- a/src/nxmaccessmanager.cpp +++ b/src/nxmaccessmanager.cpp @@ -46,9 +46,8 @@ const QString NexusBaseUrl("https://api.nexusmods.com/v1"); const auto ValidationTimeout = 10s; -ValidationProgressDialog::ValidationProgressDialog(std::chrono::seconds t) : - m_timeout(t), m_bar(nullptr), m_buttons(nullptr), - m_timer(nullptr) +ValidationProgressDialog::ValidationProgressDialog(std::chrono::seconds t) + : m_timeout(t), m_bar(nullptr), m_buttons(nullptr), m_timer(nullptr) { m_bar = new QProgressBar; m_bar->setTextVisible(false); @@ -123,7 +122,7 @@ void ValidationProgressDialog::onTimer() NXMAccessManager::NXMAccessManager(QObject *parent, const QString &moVersion) : QNetworkAccessManager(parent) , m_ValidateReply(nullptr) - , m_ProgressDialog(ValidationTimeout) + , m_ProgressDialog(new ValidationProgressDialog(ValidationTimeout)) , m_MOVersion(moVersion) { m_ValidateTimeout.setSingleShot(true); @@ -149,7 +148,7 @@ NXMAccessManager::~NXMAccessManager() void NXMAccessManager::setTopLevelWidget(QWidget* w) { - m_ProgressDialog.setParentWidget(w); + m_ProgressDialog->setParentWidget(w); } QNetworkReply *NXMAccessManager::createRequest( @@ -206,7 +205,7 @@ void NXMAccessManager::startValidationCheck() request.setRawHeader("Application-Name", "MO2"); request.setRawHeader("Application-Version", m_MOVersion.toUtf8()); - m_ProgressDialog.start(); + m_ProgressDialog->start(); QCoreApplication::processEvents(); // for some reason the whole app hangs during the login. This way the user has at least a little feedback @@ -221,7 +220,7 @@ void NXMAccessManager::startValidationCheck() bool NXMAccessManager::validated() const { if (m_ValidateState == VALIDATE_CHECKING) { - m_ProgressDialog.show(); + m_ProgressDialog->show(); } return m_ValidateState == VALIDATE_VALID; @@ -300,7 +299,7 @@ void NXMAccessManager::clearApiKey() void NXMAccessManager::validateTimeout() { m_ValidateTimeout.stop(); - m_ProgressDialog.stop(); + m_ProgressDialog->stop(); m_ApiKey.clear(); m_ValidateState = VALIDATE_NOT_VALID; @@ -317,7 +316,7 @@ void NXMAccessManager::validateTimeout() void NXMAccessManager::validateError(QNetworkReply::NetworkError) { m_ValidateTimeout.stop(); - m_ProgressDialog.stop(); + m_ProgressDialog->stop(); m_ApiKey.clear(); m_ValidateState = VALIDATE_NOT_VALID; @@ -337,7 +336,7 @@ void NXMAccessManager::validateError(QNetworkReply::NetworkError) void NXMAccessManager::validateFinished() { m_ValidateTimeout.stop(); - m_ProgressDialog.stop(); + m_ProgressDialog->stop(); if (m_ValidateReply != nullptr) { QJsonDocument jdoc = QJsonDocument::fromJson(m_ValidateReply->readAll()); |
