Revert the radio button changes

Signed-off-by: Yihe Li <winmikedows@hotmail.com>
This commit is contained in:
Yihe Li 2025-03-27 05:20:58 +08:00
parent 7ea5b6173c
commit b550a6c5c4
No known key found for this signature in database
3 changed files with 166 additions and 156 deletions

View File

@ -336,6 +336,7 @@ bool BaseInstance::updateInstanceRoot(QWidget* parent)
return false;
auto oldRoot = instanceRoot();
auto oldName = QFileInfo(oldRoot).baseName();
auto newRoot = FS::PathCombine(QFileInfo(oldRoot).dir().absolutePath(), name());
if (oldRoot == newRoot)
return false;
@ -350,11 +351,8 @@ bool BaseInstance::updateInstanceRoot(QWidget* parent)
// Ask if we should rename
if (renamingMode == "AskEverytime") {
QMessageBox messageBox(parent);
messageBox.setText(tr("Do you want to also rename the instance\'s physical directory?"));
messageBox.setInformativeText(tr("The following renaming operation will be performed: <br/>"
" - Old instance root: %1<br/>"
" - New instance root: %2")
.arg(oldRoot, newRoot));
messageBox.setText(tr("Would you also like to rename the instance folder?"));
messageBox.setInformativeText(tr("Renaming \'%1\' -> \'%2\'").arg(oldName, name()));
messageBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
messageBox.setDefaultButton(QMessageBox::Yes);
messageBox.setIcon(QMessageBox::Question);

View File

@ -67,17 +67,20 @@ enum InstSortMode {
enum InstRenamingMode {
// Rename metadata only.
Rename_Metadata,
// Rename physical directory too.
Rename_Physical,
Rename_Always,
// Ask everytime.
Rename_Ask
Rename_Ask,
// Rename physical directory too.
Rename_Never
};
LauncherPage::LauncherPage(QWidget* parent) : QWidget(parent), ui(new Ui::LauncherPage)
{
ui->setupUi(this);
ui->sortingModeGroup->setId(ui->sortByNameBtn, Sort_Name);
ui->sortingModeGroup->setId(ui->sortLastLaunchedBtn, Sort_LastLaunch);
defaultFormat = new QTextCharFormat(ui->fontPreview->currentCharFormat());
m_languageModel = APPLICATION->translations();
@ -241,7 +244,7 @@ void LauncherPage::applySettings()
s->set("MoveModsFromDownloadsDir", ui->downloadsDirMoveCheckBox->isChecked());
// Instance
auto sortMode = (InstSortMode)ui->viewSortingComboBox->currentIndex();
auto sortMode = (InstSortMode)ui->sortingModeGroup->checkedId();
switch (sortMode) {
case Sort_LastLaunch:
s->set("InstSortMode", "LastLaunch");
@ -254,10 +257,10 @@ void LauncherPage::applySettings()
auto renamingMode = (InstRenamingMode)ui->renamingBehaviorComboBox->currentIndex();
switch (renamingMode) {
case Rename_Metadata:
case Rename_Always:
s->set("InstRenamingMode", "MetadataOnly");
break;
case Rename_Physical:
case Rename_Never:
s->set("InstRenamingMode", "PhysicalDir");
break;
case Rename_Ask:
@ -322,20 +325,18 @@ void LauncherPage::loadSettings()
// Instance
QString sortMode = s->get("InstSortMode").toString();
InstSortMode sortModeEnum;
if (sortMode == "LastLaunch") {
sortModeEnum = Sort_LastLaunch;
ui->sortLastLaunchedBtn->setChecked(true);
} else {
sortModeEnum = Sort_Name;
ui->sortByNameBtn->setChecked(true);
}
ui->viewSortingComboBox->setCurrentIndex(sortModeEnum);
QString renamingMode = s->get("InstRenamingMode").toString();
InstRenamingMode renamingModeEnum;
if (renamingMode == "MetadataOnly") {
renamingModeEnum = Rename_Metadata;
renamingModeEnum = Rename_Always;
} else if (renamingMode == "PhysicalDir") {
renamingModeEnum = Rename_Physical;
renamingModeEnum = Rename_Never;
} else {
renamingModeEnum = Rename_Ask;
}

View File

@ -112,40 +112,76 @@
<string>Folders</string>
</property>
<layout class="QGridLayout" name="foldersBoxLayout">
<item row="8" column="0">
<widget class="QLabel" name="labelDownloadsDir">
<item row="0" column="0">
<widget class="QLabel" name="labelInstDir">
<property name="text">
<string>&amp;Downloads:</string>
<string>I&amp;nstances:</string>
</property>
<property name="buddy">
<cstring>downloadsDirTextBox</cstring>
<cstring>instDirTextBox</cstring>
</property>
</widget>
</item>
<item row="8" column="2">
<widget class="QToolButton" name="downloadsDirBrowseBtn">
<item row="0" column="1" colspan="2">
<widget class="QLineEdit" name="instDirTextBox"/>
</item>
<item row="0" column="3">
<widget class="QToolButton" name="instDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="iconsDirTextBox"/>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="javaDirTextBox"/>
</item>
<item row="4" column="0">
<widget class="QLabel" name="labelSkinsDir">
<item row="1" column="1">
<widget class="QLabel" name="labelRenamingBehavior">
<property name="text">
<string>&amp;Skins:</string>
</property>
<property name="buddy">
<cstring>skinsDirTextBox</cstring>
<string>Rename instance folders</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QComboBox" name="renamingBehaviorComboBox">
<item>
<property name="text">
<string>Never</string>
</property>
</item>
<item>
<property name="text">
<string>Ask</string>
</property>
</item>
<item>
<property name="text">
<string>Always</string>
</property>
</item>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="labelModsDir">
<property name="text">
<string>&amp;Mods:</string>
</property>
<property name="buddy">
<cstring>modsDirTextBox</cstring>
</property>
</widget>
</item>
<item row="2" column="1" colspan="2">
<widget class="QLineEdit" name="modsDirTextBox"/>
</item>
<item row="2" column="3">
<widget class="QToolButton" name="modsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelIconsDir">
<property name="text">
<string>&amp;Icons:</string>
@ -155,7 +191,81 @@
</property>
</widget>
</item>
<item row="9" column="1" colspan="2">
<item row="3" column="1" colspan="2">
<widget class="QLineEdit" name="iconsDirTextBox"/>
</item>
<item row="3" column="3">
<widget class="QToolButton" name="iconsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="labelJavaDir">
<property name="text">
<string>&amp;Java:</string>
</property>
<property name="buddy">
<cstring>javaDirTextBox</cstring>
</property>
</widget>
</item>
<item row="4" column="1" colspan="2">
<widget class="QLineEdit" name="javaDirTextBox"/>
</item>
<item row="4" column="3">
<widget class="QToolButton" name="javaDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="labelSkinsDir">
<property name="text">
<string>&amp;Skins:</string>
</property>
<property name="buddy">
<cstring>skinsDirTextBox</cstring>
</property>
</widget>
</item>
<item row="5" column="1" colspan="2">
<widget class="QLineEdit" name="skinsDirTextBox"/>
</item>
<item row="5" column="3">
<widget class="QToolButton" name="skinsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="labelDownloadsDir">
<property name="text">
<string>&amp;Downloads:</string>
</property>
<property name="buddy">
<cstring>downloadsDirTextBox</cstring>
</property>
</widget>
</item>
<item row="6" column="1" colspan="2">
<widget class="QLineEdit" name="downloadsDirTextBox"/>
</item>
<item row="6" column="3">
<widget class="QToolButton" name="downloadsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="7" column="1" colspan="3">
<layout class="QHBoxLayout" name="downloadModsCheckLayout">
<item>
<widget class="QCheckBox" name="downloadsDirWatchRecursiveCheckBox">
@ -179,83 +289,6 @@
</item>
</layout>
</item>
<item row="8" column="1">
<widget class="QLineEdit" name="downloadsDirTextBox"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelJavaDir">
<property name="text">
<string>&amp;Java:</string>
</property>
<property name="buddy">
<cstring>javaDirTextBox</cstring>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelModsDir">
<property name="text">
<string>&amp;Mods:</string>
</property>
<property name="buddy">
<cstring>modsDirTextBox</cstring>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLineEdit" name="skinsDirTextBox"/>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="modsDirTextBox"/>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="instDirTextBox"/>
</item>
<item row="1" column="2">
<widget class="QToolButton" name="modsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QToolButton" name="instDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QToolButton" name="iconsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="labelInstDir">
<property name="text">
<string>I&amp;nstances:</string>
</property>
<property name="buddy">
<cstring>instDirTextBox</cstring>
</property>
</widget>
</item>
<item row="3" column="2">
<widget class="QToolButton" name="javaDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
<item row="4" column="2">
<widget class="QToolButton" name="skinsDirBrowseBtn">
<property name="text">
<string>Browse</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
@ -401,59 +434,32 @@
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<widget class="QGroupBox" name="instanceBox">
<widget class="QGroupBox" name="sortingModeBox">
<property name="enabled">
<bool>true</bool>
</property>
<property name="title">
<string>Instance</string>
<string>Instance view sorting mode</string>
</property>
<layout class="QGridLayout" name="instanceBoxLayout">
<item row="0" column="0">
<widget class="QLabel" name="labelSortingMode">
<layout class="QHBoxLayout" name="sortingModeBoxLayout">
<item>
<widget class="QRadioButton" name="sortLastLaunchedBtn">
<property name="text">
<string>Instance view sorting mode</string>
<string>&amp;By last launched</string>
</property>
<attribute name="buttonGroup">
<string notr="true">sortingModeGroup</string>
</attribute>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="viewSortingComboBox">
<item>
<property name="text">
<string>By last launched</string>
</property>
</item>
<item>
<property name="text">
<string>By name</string>
</property>
</item>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelRenamingBehavior">
<item>
<widget class="QRadioButton" name="sortByNameBtn">
<property name="text">
<string>Instance renaming behavior</string>
<string>By &amp;name</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QComboBox" name="renamingBehaviorComboBox">
<item>
<property name="text">
<string>Rename metadata only</string>
</property>
</item>
<item>
<property name="text">
<string>Rename physical directory</string>
</property>
</item>
<item>
<property name="text">
<string>Ask everytime</string>
</property>
</item>
<attribute name="buttonGroup">
<string notr="true">sortingModeGroup</string>
</attribute>
</widget>
</item>
</layout>
@ -701,6 +707,8 @@
<tabstop>numberOfConcurrentDownloadsSpinBox</tabstop>
<tabstop>numberOfManualRetriesSpinBox</tabstop>
<tabstop>timeoutSecondsSpinBox</tabstop>
<tabstop>sortLastLaunchedBtn</tabstop>
<tabstop>sortByNameBtn</tabstop>
<tabstop>catOpacitySpinBox</tabstop>
<tabstop>preferMenuBarCheckBox</tabstop>
<tabstop>lineLimitSpinBox</tabstop>
@ -711,4 +719,7 @@
</tabstops>
<resources/>
<connections/>
<buttongroups>
<buttongroup name="sortingModeGroup"/>
</buttongroups>
</ui>