diff options
author | Petr Mrázek <peterix@gmail.com> | 2017-09-26 13:38:34 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2017-09-26 13:38:34 +0200 |
commit | 2b998bb8cc8e83efafb20ed2fbe1a245d4d5ec5f (patch) | |
tree | 392872160002aa12c95a9f9239300aa12e80b368 /application/pages/LegacyUpgradePage.cpp | |
parent | eac892965e152519a6d7278504e7d4118aa7c01f (diff) | |
download | PrismLauncher-2b998bb8cc8e83efafb20ed2fbe1a245d4d5ec5f.tar.gz PrismLauncher-2b998bb8cc8e83efafb20ed2fbe1a245d4d5ec5f.tar.bz2 PrismLauncher-2b998bb8cc8e83efafb20ed2fbe1a245d4d5ec5f.zip |
NOISSUE implement LEgacy instance migration
Diffstat (limited to 'application/pages/LegacyUpgradePage.cpp')
-rw-r--r-- | application/pages/LegacyUpgradePage.cpp | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/application/pages/LegacyUpgradePage.cpp b/application/pages/LegacyUpgradePage.cpp index 14cb916d..c1ad0146 100644 --- a/application/pages/LegacyUpgradePage.cpp +++ b/application/pages/LegacyUpgradePage.cpp @@ -2,8 +2,13 @@ #include "ui_LegacyUpgradePage.h" #include "minecraft/legacy/LegacyInstance.h" +#include "minecraft/legacy/LegacyUpgradeTask.h" +#include "MultiMC.h" +#include "FolderInstanceProvider.h" +#include "dialogs/CustomMessageBox.h" +#include "dialogs/ProgressDialog.h" -LegacyUpgradePage::LegacyUpgradePage(LegacyInstance *inst, QWidget *parent) +LegacyUpgradePage::LegacyUpgradePage(InstancePtr inst, QWidget *parent) : QWidget(parent), ui(new Ui::LegacyUpgradePage), m_inst(inst) { ui->setupUi(this); @@ -14,9 +19,21 @@ LegacyUpgradePage::~LegacyUpgradePage() delete ui; } +void LegacyUpgradePage::runModalTask(Task *task) +{ + connect(task, &Task::failed, [this](QString reason) + { + CustomMessageBox::selectable(this, tr("Error"), reason, QMessageBox::Warning)->show(); + }); + ProgressDialog loadDialog(this); + loadDialog.setSkipButton(true, tr("Abort")); + loadDialog.execWithTask(task); +} + void LegacyUpgradePage::on_upgradeButton_clicked() { - // now what? + std::unique_ptr<Task> task(MMC->folderProvider()->legacyUpgradeTask(m_inst)); + runModalTask(task.get()); } bool LegacyUpgradePage::shouldDisplay() const |