From 0636c03d7c08a90de5180e20dd6106c4cac34a23 Mon Sep 17 00:00:00 2001 From: Petr Mrázek Date: Fri, 5 Jan 2018 04:26:46 +0100 Subject: GH-2087 remove the revert to vanilla functionality, add file download button to version page --- application/pages/VersionPage.cpp | 41 +++++++++++++-------------------------- application/pages/VersionPage.h | 1 + application/pages/VersionPage.ui | 15 ++++++++++++-- 3 files changed, 27 insertions(+), 30 deletions(-) (limited to 'application') diff --git a/application/pages/VersionPage.cpp b/application/pages/VersionPage.cpp index 50cc825f..57e1709b 100644 --- a/application/pages/VersionPage.cpp +++ b/application/pages/VersionPage.cpp @@ -324,54 +324,39 @@ void VersionPage::on_changeVersionBtn_clicked() if (!vselect.exec() || !vselect.selectedVersion()) return; - if (!MMC->accounts()->anyAccountIsValid()) - { - CustomMessageBox::selectable( - this, tr("Error"), - tr("MultiMC cannot download Minecraft or update instances unless you have at least " - "one account added.\nPlease add your Mojang or Minecraft account."), - QMessageBox::Warning)->show(); - return; - } - qDebug() << "Change" << uid << "to" << vselect.selectedVersion()->descriptor(); bool important = false; if(uid == "net.minecraft") { important = true; - if (!m_profile->isVanilla()) - { - auto result = CustomMessageBox::selectable( - this, tr("Are you sure?"), - tr("This will remove any library/version customization you did previously. " - "This includes things like Forge install and similar."), - QMessageBox::Warning, QMessageBox::Ok | QMessageBox::Abort, - QMessageBox::Abort)->exec(); - - if (result != QMessageBox::Ok) - return; - m_profile->revertToVanilla(); - reloadComponentList(); - } } m_profile->setComponentVersion(uid, vselect.selectedVersion()->descriptor(), important); - doUpdate(); + m_profile->resolve(Net::Mode::Online); m_container->refreshContainer(); } -int VersionPage::doUpdate() +void VersionPage::on_downloadBtn_clicked() { + if (!MMC->accounts()->anyAccountIsValid()) + { + CustomMessageBox::selectable( + this, tr("Error"), + tr("MultiMC cannot download Minecraft or update instances unless you have at least " + "one account added.\nPlease add your Mojang or Minecraft account."), + QMessageBox::Warning)->show(); + return; + } + auto updateTask = m_inst->createUpdateTask(Net::Mode::Online); if (!updateTask) { - return 1; + return; } ProgressDialog tDialog(this); connect(updateTask.get(), SIGNAL(failed(QString)), SLOT(onGameUpdateError(QString))); int ret = tDialog.execWithTask(updateTask.get()); updateButtons(); m_container->refreshContainer(); - return ret; } void VersionPage::on_forgeBtn_clicked() diff --git a/application/pages/VersionPage.h b/application/pages/VersionPage.h index d4b65983..0003fe69 100644 --- a/application/pages/VersionPage.h +++ b/application/pages/VersionPage.h @@ -62,6 +62,7 @@ private slots: void on_editBtn_clicked(); void on_modBtn_clicked(); void on_customizeBtn_clicked(); + void on_downloadBtn_clicked(); void updateVersionControls(); void disableVersionControls(); diff --git a/application/pages/VersionPage.ui b/application/pages/VersionPage.ui index 1d2adff7..d54dd840 100644 --- a/application/pages/VersionPage.ui +++ b/application/pages/VersionPage.ui @@ -6,8 +6,8 @@ 0 0 - 693 - 833 + 870 + 1008 @@ -234,6 +234,16 @@ + + + + Download the files needed to launch the instance now. + + + Download All + + + @@ -300,6 +310,7 @@ jarBtn addEmptyBtn reloadBtn + downloadBtn tabWidget -- cgit