diff --git a/rpcs3/rpcs3qt/emu_settings.cpp b/rpcs3/rpcs3qt/emu_settings.cpp index fd5b68fed2..ad6478ea80 100644 --- a/rpcs3/rpcs3qt/emu_settings.cpp +++ b/rpcs3/rpcs3qt/emu_settings.cpp @@ -244,7 +244,7 @@ void emu_settings::SaveSettings() config.close(); } -void emu_settings::EnhanceComboBox(QComboBox* combobox, SettingsType type, bool is_ranged, bool use_max, int max) +void emu_settings::EnhanceComboBox(QComboBox* combobox, SettingsType type, bool is_ranged, bool use_max, int max, bool sorted) { if (!combobox) { @@ -265,7 +265,14 @@ void emu_settings::EnhanceComboBox(QComboBox* combobox, SettingsType type, bool } else { - for (QString setting : GetSettingOptions(type)) + QStringList settings = GetSettingOptions(type); + + if (sorted) + { + settings.sort(); + } + + for (QString setting : settings) { combobox->addItem(tr(setting.toStdString().c_str()), QVariant(setting)); } diff --git a/rpcs3/rpcs3qt/emu_settings.h b/rpcs3/rpcs3qt/emu_settings.h index 82303518bb..6565d55064 100644 --- a/rpcs3/rpcs3qt/emu_settings.h +++ b/rpcs3/rpcs3qt/emu_settings.h @@ -187,7 +187,7 @@ public: ~emu_settings(); /** Connects a combo box with the target settings type*/ - void EnhanceComboBox(QComboBox* combobox, SettingsType type, bool is_ranged = false, bool use_max = false, int max = 0); + void EnhanceComboBox(QComboBox* combobox, SettingsType type, bool is_ranged = false, bool use_max = false, int max = 0, bool sorted = false); /** Connects a check box with the target settings type*/ void EnhanceCheckBox(QCheckBox* checkbox, SettingsType type); diff --git a/rpcs3/rpcs3qt/settings_dialog.cpp b/rpcs3/rpcs3qt/settings_dialog.cpp index a3668603a3..ef6b020e56 100644 --- a/rpcs3/rpcs3qt/settings_dialog.cpp +++ b/rpcs3/rpcs3qt/settings_dialog.cpp @@ -861,7 +861,7 @@ settings_dialog::settings_dialog(std::shared_ptr guiSettings, std: // Comboboxes - xemu_settings->EnhanceComboBox(ui->sysLangBox, emu_settings::Language); + xemu_settings->EnhanceComboBox(ui->sysLangBox, emu_settings::Language, false, false, 0, true); SubscribeTooltip(ui->sysLangBox, json_sys["sysLangBox"].toString()); // Checkboxes