Skip to content
Permalink
Browse files

NOISSUE Import page is now a MultiMC pack page

  • Loading branch information...
peterix committed Jun 28, 2019
1 parent fde43c9 commit f74e3db804f2fb3d73cbf7ab5fbdb12ecea0f259
@@ -119,8 +119,8 @@ SET(MULTIMC_SOURCES
pages/global/LanguagePage.h
pages/global/MinecraftPage.cpp
pages/global/MinecraftPage.h
pages/global/MultiMCPage.cpp
pages/global/MultiMCPage.h
pages/global/MultiMCSettingsPage.cpp
pages/global/MultiMCSettingsPage.h
pages/global/ProxyPage.cpp
pages/global/ProxyPage.h
pages/global/PasteEEPage.cpp
@@ -139,8 +139,8 @@ SET(MULTIMC_SOURCES
pages/modplatform/TwitchPage.h
pages/modplatform/TechnicPage.cpp
pages/modplatform/TechnicPage.h
pages/modplatform/ImportPage.cpp
pages/modplatform/ImportPage.h
pages/modplatform/MultiMCPage.cpp
pages/modplatform/MultiMCPage.h

# GUI - dialogs
dialogs/AboutDialog.cpp
@@ -245,7 +245,7 @@ SET(MULTIMC_UIS
pages/global/ExternalToolsPage.ui
pages/global/JavaPage.ui
pages/global/MinecraftPage.ui
pages/global/MultiMCPage.ui
pages/global/MultiMCSettingsPage.ui
pages/global/ProxyPage.ui
pages/global/PasteEEPage.ui
pages/global/PackagesPage.ui
@@ -255,7 +255,7 @@ SET(MULTIMC_UIS
pages/modplatform/FTBPage.ui
pages/modplatform/TwitchPage.ui
pages/modplatform/TechnicPage.ui
pages/modplatform/ImportPage.ui
pages/modplatform/MultiMCPage.ui

# Dialogs
dialogs/CopyInstanceDialog.ui
@@ -3,7 +3,7 @@
#include "MainWindow.h"
#include "InstanceWindow.h"
#include "pages/BasePageProvider.h"
#include "pages/global/MultiMCPage.h"
#include "pages/global/MultiMCSettingsPage.h"
#include "pages/global/MinecraftPage.h"
#include "pages/global/JavaPage.h"
#include "pages/global/LanguagePage.h"
@@ -517,7 +517,7 @@ MultiMC::MultiMC(int &argc, char **argv) : QApplication(argc, argv)
// Init page provider
{
m_globalSettingsProvider = std::make_shared<GenericPageProvider>(tr("Settings"));
m_globalSettingsProvider->addPage<MultiMCPage>();
m_globalSettingsProvider->addPage<MultiMCSettingsPage>();
m_globalSettingsProvider->addPage<MinecraftPage>();
m_globalSettingsProvider->addPage<JavaPage>();
m_globalSettingsProvider->addPage<LanguagePage>();
@@ -36,7 +36,7 @@
#include <pages/modplatform/VanillaPage.h>
#include <pages/modplatform/FTBPage.h>
#include <pages/modplatform/TwitchPage.h>
#include <pages/modplatform/ImportPage.h>
#include <pages/modplatform/MultiMCPage.h>
#include <pages/modplatform/TechnicPage.h>

NewInstanceDialog::NewInstanceDialog(const QString & initialGroup, const QString & url, QWidget *parent)
@@ -118,13 +118,13 @@ void NewInstanceDialog::accept()

QList<BasePage *> NewInstanceDialog::getPages()
{
importPage = new ImportPage(this);
importPage = new MultiMCPage(this);
return
{
new VanillaPage(this),
new FTBPage(this),
importPage,
new TwitchPage(this),
new FTBPage(this),
new TechnicPage(this)
};
}
@@ -28,7 +28,7 @@ class NewInstanceDialog;

class PageContainer;
class QDialogButtonBox;
class ImportPage;
class MultiMCPage;

class NewInstanceDialog : public QDialog, public BasePageProvider
{
@@ -66,7 +66,7 @@ private slots:
QDialogButtonBox * m_buttons = nullptr;

QString InstIconKey;
ImportPage *importPage = nullptr;
MultiMCPage *importPage = nullptr;
std::unique_ptr<InstanceTask> creationTask;

bool importIcon = false;
@@ -13,8 +13,8 @@
* limitations under the License.
*/

#include "MultiMCPage.h"
#include "ui_MultiMCPage.h"
#include "MultiMCSettingsPage.h"
#include "ui_MultiMCSettingsPage.h"

#include <QFileDialog>
#include <QMessageBox>
@@ -38,7 +38,7 @@ enum InstSortMode
Sort_LastLaunch
};

MultiMCPage::MultiMCPage(QWidget *parent) : QWidget(parent), ui(new Ui::MultiMCPage)
MultiMCSettingsPage::MultiMCSettingsPage(QWidget *parent) : QWidget(parent), ui(new Ui::MultiMCSettingsPage)
{
ui->setupUi(this);
auto origForeground = ui->fontPreview->palette().color(ui->fontPreview->foregroundRole());
@@ -56,7 +56,7 @@ MultiMCPage::MultiMCPage(QWidget *parent) : QWidget(parent), ui(new Ui::MultiMCP
if(BuildConfig.UPDATER_ENABLED)
{
QObject::connect(MMC->updateChecker().get(), &UpdateChecker::channelListLoaded, this,
&MultiMCPage::refreshUpdateChannelList);
&MultiMCSettingsPage::refreshUpdateChannelList);

if (MMC->updateChecker()->hasChannels())
{
@@ -81,18 +81,18 @@ MultiMCPage::MultiMCPage(QWidget *parent) : QWidget(parent), ui(new Ui::MultiMCP
connect(ui->languageBox, SIGNAL(currentIndexChanged(int)), SLOT(languageIndexChanged(int)));
}

MultiMCPage::~MultiMCPage()
MultiMCSettingsPage::~MultiMCSettingsPage()
{
delete ui;
}

bool MultiMCPage::apply()
bool MultiMCSettingsPage::apply()
{
applySettings();
return true;
}

void MultiMCPage::on_instDirBrowseBtn_clicked()
void MultiMCSettingsPage::on_instDirBrowseBtn_clicked()
{
QString raw_dir = QFileDialog::getExistingDirectory(this, tr("Instance Folder"), ui->instDirTextBox->text());

@@ -124,7 +124,7 @@ void MultiMCPage::on_instDirBrowseBtn_clicked()
}
}

void MultiMCPage::on_iconsDirBrowseBtn_clicked()
void MultiMCSettingsPage::on_iconsDirBrowseBtn_clicked()
{
QString raw_dir = QFileDialog::getExistingDirectory(this, tr("Icons Folder"), ui->iconsDirTextBox->text());

@@ -135,7 +135,7 @@ void MultiMCPage::on_iconsDirBrowseBtn_clicked()
ui->iconsDirTextBox->setText(cooked_dir);
}
}
void MultiMCPage::on_modsDirBrowseBtn_clicked()
void MultiMCSettingsPage::on_modsDirBrowseBtn_clicked()
{
QString raw_dir = QFileDialog::getExistingDirectory(this, tr("Mods Folder"), ui->modsDirTextBox->text());

@@ -147,7 +147,7 @@ void MultiMCPage::on_modsDirBrowseBtn_clicked()
}
}

void MultiMCPage::languageIndexChanged(int index)
void MultiMCSettingsPage::languageIndexChanged(int index)
{
auto languageCode = ui->languageBox->itemData(ui->languageBox->currentIndex()).toString();
if(languageCode.isEmpty())
@@ -160,7 +160,7 @@ void MultiMCPage::languageIndexChanged(int index)
translations->updateLanguage(languageCode);
}

void MultiMCPage::refreshUpdateChannelList()
void MultiMCSettingsPage::refreshUpdateChannelList()
{
// Stop listening for selection changes. It's going to change a lot while we update it and
// we don't need to update the
@@ -205,12 +205,12 @@ void MultiMCPage::refreshUpdateChannelList()
ui->updateChannelComboBox->setEnabled(true);
}

void MultiMCPage::updateChannelSelectionChanged(int index)
void MultiMCSettingsPage::updateChannelSelectionChanged(int index)
{
refreshUpdateChannelDesc();
}

void MultiMCPage::refreshUpdateChannelDesc()
void MultiMCSettingsPage::refreshUpdateChannelDesc()
{
// Get the channel list.
QList<UpdateChecker::ChannelListEntry> channelList = MMC->updateChecker()->getChannelList();
@@ -232,7 +232,7 @@ void MultiMCPage::refreshUpdateChannelDesc()
}
}

void MultiMCPage::applySettings()
void MultiMCSettingsPage::applySettings()
{
auto s = MMC->settings();

@@ -329,7 +329,7 @@ void MultiMCPage::applySettings()
s->set("Analytics", ui->analyticsCheck->isChecked());
}
}
void MultiMCPage::loadSettings()
void MultiMCSettingsPage::loadSettings()
{
auto s = MMC->settings();
// Language
@@ -437,7 +437,7 @@ void MultiMCPage::loadSettings()
}
}

void MultiMCPage::refreshFontPreview()
void MultiMCSettingsPage::refreshFontPreview()
{
int fontSize = ui->fontSizeBox->value();
QString fontFamily = ui->consoleFont->currentFont().family();
@@ -29,16 +29,16 @@ class SettingsObject;

namespace Ui
{
class MultiMCPage;
class MultiMCSettingsPage;
}

class MultiMCPage : public QWidget, public BasePage
class MultiMCSettingsPage : public QWidget, public BasePage
{
Q_OBJECT

public:
explicit MultiMCPage(QWidget *parent = 0);
~MultiMCPage();
explicit MultiMCSettingsPage(QWidget *parent = 0);
~MultiMCSettingsPage();

QString displayName() const override
{
@@ -88,7 +88,7 @@ private
void updateChannelSelectionChanged(int index);

private:
Ui::MultiMCPage *ui;
Ui::MultiMCSettingsPage *ui;

/*!
* Stores the currently selected update channel.
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MultiMCPage</class>
<widget class="QWidget" name="MultiMCPage">
<class>MultiMCSettingsPage</class>
<widget class="QWidget" name="MultiMCSettingsPage">
<property name="geometry">
<rect>
<x>0</x>
@@ -1,5 +1,5 @@
#include "ImportPage.h"
#include "ui_ImportPage.h"
#include "MultiMCPage.h"
#include "ui_MultiMCPage.h"

#include "MultiMC.h"
#include "dialogs/NewInstanceDialog.h"
@@ -30,30 +30,30 @@ class UrlValidator : public QValidator
}
};

ImportPage::ImportPage(NewInstanceDialog* dialog, QWidget *parent)
: QWidget(parent), ui(new Ui::ImportPage), dialog(dialog)
MultiMCPage::MultiMCPage(NewInstanceDialog* dialog, QWidget *parent)
: QWidget(parent), ui(new Ui::MultiMCPage), dialog(dialog)
{
ui->setupUi(this);
ui->modpackEdit->setValidator(new UrlValidator(ui->modpackEdit));
connect(ui->modpackEdit, &QLineEdit::textChanged, this, &ImportPage::updateState);
connect(ui->modpackEdit, &QLineEdit::textChanged, this, &MultiMCPage::updateState);
}

ImportPage::~ImportPage()
MultiMCPage::~MultiMCPage()
{
delete ui;
}

bool ImportPage::shouldDisplay() const
bool MultiMCPage::shouldDisplay() const
{
return true;
}

void ImportPage::openedImpl()
void MultiMCPage::openedImpl()
{
updateState();
}

void ImportPage::updateState()
void MultiMCPage::updateState()
{
if(!isOpened)
{
@@ -75,11 +75,6 @@ void ImportPage::updateState()
}
else
{
if(input.endsWith("?client=y")) {
input.chop(9);
input.append("/file");
url = QUrl::fromUserInput(input);
}
// hook, line and sinker.
QFileInfo fi(url.fileName());
dialog->setSuggestedPack(fi.completeBaseName(), new InstanceImportTask(url));
@@ -91,13 +86,13 @@ void ImportPage::updateState()
}
}

void ImportPage::setUrl(const QString& url)
void MultiMCPage::setUrl(const QString& url)
{
ui->modpackEdit->setText(url);
updateState();
}

void ImportPage::on_modpackBtn_clicked()
void MultiMCPage::on_modpackBtn_clicked()
{
const QUrl url = QFileDialog::getOpenFileUrl(this, tr("Choose modpack"), modpackUrl(), tr("Zip (*.zip)"));
if (url.isValid())
@@ -114,7 +109,7 @@ void ImportPage::on_modpackBtn_clicked()
}


QUrl ImportPage::modpackUrl() const
QUrl MultiMCPage::modpackUrl() const
{
const QUrl url(ui->modpackEdit->text());
if (url.isValid() && !url.isRelative() && !url.host().isEmpty())

0 comments on commit f74e3db

Please sign in to comment.
You can’t perform that action at this time.