aboutsummaryrefslogtreecommitdiff
path: root/launcher
diff options
context:
space:
mode:
authorKenneth Chew <kenneth.c0@protonmail.com>2022-05-12 17:11:06 -0400
committerKenneth Chew <kenneth.c0@protonmail.com>2022-05-12 17:11:06 -0400
commit3aea639fe4359259a27e971ae357e308ae50e69d (patch)
tree807d65f278e83ccd102fcefaf7b38d909306c077 /launcher
parent046f1e6e58b7a28f336bb2ed79995656fe66f0bf (diff)
downloadPrismLauncher-3aea639fe4359259a27e971ae357e308ae50e69d.tar.gz
PrismLauncher-3aea639fe4359259a27e971ae357e308ae50e69d.tar.bz2
PrismLauncher-3aea639fe4359259a27e971ae357e308ae50e69d.zip
Add UI for miscellaneous instance setting overrides
Diffstat (limited to 'launcher')
-rw-r--r--launcher/ui/pages/instance/InstanceSettingsPage.cpp19
-rw-r--r--launcher/ui/pages/instance/InstanceSettingsPage.ui29
2 files changed, 48 insertions, 0 deletions
diff --git a/launcher/ui/pages/instance/InstanceSettingsPage.cpp b/launcher/ui/pages/instance/InstanceSettingsPage.cpp
index a48c4d69..b4562843 100644
--- a/launcher/ui/pages/instance/InstanceSettingsPage.cpp
+++ b/launcher/ui/pages/instance/InstanceSettingsPage.cpp
@@ -101,6 +101,20 @@ void InstanceSettingsPage::applySettings()
{
SettingsObject::Lock lock(m_settings);
+ // Miscellaneous
+ bool miscellaneous = ui->miscellaneousSettingsBox->isChecked();
+ m_settings->set("OverrideMiscellaneous", miscellaneous);
+ if (miscellaneous)
+ {
+ m_settings->set("CloseAfterLaunch", ui->closeAfterLaunchCheck->isChecked());
+ m_settings->set("QuitAfterGameStop", ui->quitAfterGameStopCheck->isChecked());
+ }
+ else
+ {
+ m_settings->reset("CloseAfterLaunch");
+ m_settings->reset("QuitAfterGameStop");
+ }
+
// Console
bool console = ui->consoleSettingsBox->isChecked();
m_settings->set("OverrideConsole", console);
@@ -247,6 +261,11 @@ void InstanceSettingsPage::applySettings()
void InstanceSettingsPage::loadSettings()
{
+ // Miscellaneous
+ ui->miscellaneousSettingsBox->setChecked(m_settings->get("OverrideMiscellaneous").toBool());
+ ui->closeAfterLaunchCheck->setChecked(m_settings->get("CloseAfterLaunch").toBool());
+ ui->quitAfterGameStopCheck->setChecked(m_settings->get("QuitAfterGameStop").toBool());
+
// Console
ui->consoleSettingsBox->setChecked(m_settings->get("OverrideConsole").toBool());
ui->showConsoleCheck->setChecked(m_settings->get("ShowConsole").toBool());
diff --git a/launcher/ui/pages/instance/InstanceSettingsPage.ui b/launcher/ui/pages/instance/InstanceSettingsPage.ui
index 5db2d147..cb66b3ce 100644
--- a/launcher/ui/pages/instance/InstanceSettingsPage.ui
+++ b/launcher/ui/pages/instance/InstanceSettingsPage.ui
@@ -350,6 +350,35 @@
</widget>
</item>
<item>
+ <widget class="QGroupBox" name="miscellaneousSettingsBox">
+ <property name="title">
+ <string>Miscellaneous</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ <property name="checked">
+ <bool>false</bool>
+ </property>
+ <layout class="QVBoxLayout" name="verticalLayout_12">
+ <item>
+ <widget class="QCheckBox" name="closeAfterLaunchCheck">
+ <property name="text">
+ <string>Close the launcher after game window opens</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QCheckBox" name="quitAfterGameStopCheck">
+ <property name="text">
+ <string>Quit the launcher after game window closes</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
<spacer name="verticalSpacerMinecraft_2">
<property name="orientation">
<enum>Qt::Vertical</enum>