From 9a6c2b0e2c0a4fb9f26b9c9d1137a66d7977251b Mon Sep 17 00:00:00 2001 From: Petr Mrázek Date: Sat, 16 Sep 2017 23:09:05 +0200 Subject: NOISSUE Add back Legacy for migration purposes --- application/pages/LegacyUpgradePage.cpp | 25 ++++++++++++++ application/pages/LegacyUpgradePage.h | 60 +++++++++++++++++++++++++++++++++ application/pages/LegacyUpgradePage.ui | 47 ++++++++++++++++++++++++++ 3 files changed, 132 insertions(+) create mode 100644 application/pages/LegacyUpgradePage.cpp create mode 100644 application/pages/LegacyUpgradePage.h create mode 100644 application/pages/LegacyUpgradePage.ui (limited to 'application/pages') diff --git a/application/pages/LegacyUpgradePage.cpp b/application/pages/LegacyUpgradePage.cpp new file mode 100644 index 00000000..14cb916d --- /dev/null +++ b/application/pages/LegacyUpgradePage.cpp @@ -0,0 +1,25 @@ +#include "LegacyUpgradePage.h" +#include "ui_LegacyUpgradePage.h" + +#include "minecraft/legacy/LegacyInstance.h" + +LegacyUpgradePage::LegacyUpgradePage(LegacyInstance *inst, QWidget *parent) + : QWidget(parent), ui(new Ui::LegacyUpgradePage), m_inst(inst) +{ + ui->setupUi(this); +} + +LegacyUpgradePage::~LegacyUpgradePage() +{ + delete ui; +} + +void LegacyUpgradePage::on_upgradeButton_clicked() +{ + // now what? +} + +bool LegacyUpgradePage::shouldDisplay() const +{ + return !m_inst->isRunning(); +} diff --git a/application/pages/LegacyUpgradePage.h b/application/pages/LegacyUpgradePage.h new file mode 100644 index 00000000..4731bb82 --- /dev/null +++ b/application/pages/LegacyUpgradePage.h @@ -0,0 +1,60 @@ +/* Copyright 2013-2017 MultiMC Contributors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include + +#include "minecraft/legacy/LegacyInstance.h" +#include "pages/BasePage.h" +#include + +namespace Ui +{ +class LegacyUpgradePage; +} + +class LegacyUpgradePage : public QWidget, public BasePage +{ + Q_OBJECT + +public: + explicit LegacyUpgradePage(LegacyInstance *inst, QWidget *parent = 0); + virtual ~LegacyUpgradePage(); + virtual QString displayName() const override + { + return tr("Upgrade"); + } + virtual QIcon icon() const override + { + return MMC->getThemedIcon("checkupdate"); + } + virtual QString id() const override + { + return "upgrade"; + } + virtual QString helpPage() const override + { + return "Legacy-upgrade"; + } + virtual bool shouldDisplay() const override; +private +slots: + void on_upgradeButton_clicked(); + +private: + Ui::LegacyUpgradePage *ui; + LegacyInstance *m_inst; +}; diff --git a/application/pages/LegacyUpgradePage.ui b/application/pages/LegacyUpgradePage.ui new file mode 100644 index 00000000..124a0ce9 --- /dev/null +++ b/application/pages/LegacyUpgradePage.ui @@ -0,0 +1,47 @@ + + + LegacyUpgradePage + + + + 0 + 0 + 546 + 405 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + <html><body><h1>Upgrade is required</h1><p>MultiMC now supports old Minecraft versions and all the required features in the new (OneSix) instance format. As a consequence, the old (Legacy) format has been entirely disabled and old instances need to be upgraded.</p><p>The upgrade will create a new instance with the same contents as the current one, in the new format. The original instance will remain untouched, in case anything goes wrong in the process.</p><p>Please report any issues on our <a href="https://github.com/MultiMC/MultiMC5/issues">github issues page</a>.</p></body></html> + + + true + + + + + + + Upgrade the instance + + + + + + + + -- cgit