GH-1314 add UI for custom minecraft jar addition

Also changes the text of the jar mod addition button.
It should be clearer what it does and hopefully will not confuse
as many people.
This commit is contained in:
Petr Mrázek
2017-08-07 00:46:29 +02:00
parent 117bfef151
commit 8cf88ffc58
16 changed files with 147 additions and 52 deletions

View File

@ -250,34 +250,20 @@ void VersionPage::on_modBtn_clicked()
void VersionPage::on_jarmodBtn_clicked()
{
bool nagShown = false;
if (!m_profile->hasTrait("legacyLaunch") && !m_profile->hasTrait("alphaLaunch"))
{
// not legacy launch... nag
auto seenNag = MMC->settings()->get("JarModNagSeen").toBool();
if(!seenNag)
{
auto result = QMessageBox::question(this,
tr("Are you sure?"),
tr("This will add mods directly to the Minecraft jar.\n"
"Unless you KNOW that this is what NEEDS to be done, you should just use the mods folder (Loader mods).\n"
"\n"
"Do you want to continue?"),
tr("I understand, continue."), tr("Cancel"), QString(), 1, 1
);
if(result != 0)
return;
nagShown = true;
}
}
auto list = GuiUtil::BrowseForFiles("jarmod", tr("Select jar mods"), tr("Minecraft.jar mods (*.zip *.jar)"), MMC->settings()->get("CentralModsDir").toString(), this->parentWidget());
if(!list.empty())
{
m_profile->installJarMods(list);
if(nagShown)
{
MMC->settings()->set("JarModNagSeen", QVariant(true));
}
}
updateButtons();
}
void VersionPage::on_jarBtn_clicked()
{
auto jarPath = GuiUtil::BrowseForFile("jar", tr("Select jar"), tr("Minecraft.jar replacement (*.jar)"), MMC->settings()->get("CentralModsDir").toString(), this->parentWidget());
if(!jarPath.isEmpty())
{
m_profile->installCustomJar(jarPath);
}
updateButtons();
}

View File

@ -58,6 +58,7 @@ private slots:
void on_moveUpBtn_clicked();
void on_moveDownBtn_clicked();
void on_jarmodBtn_clicked();
void on_jarBtn_clicked();
void on_revertBtn_clicked();
void on_editBtn_clicked();
void on_modBtn_clicked();

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>693</width>
<height>750</height>
<height>788</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
@ -206,7 +206,14 @@
<string>Add a mod into the Minecraft jar file.</string>
</property>
<property name="text">
<string>Add jar mod</string>
<string>Add to Minecraft.jar</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="jarBtn">
<property name="text">
<string>Replace Minecraft.jar</string>
</property>
</widget>
</item>
@ -281,7 +288,6 @@
</customwidget>
</customwidgets>
<tabstops>
<tabstop>tabWidget</tabstop>
<tabstop>packageView</tabstop>
<tabstop>changeVersionBtn</tabstop>
<tabstop>moveUpBtn</tabstop>