mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-05-17 17:05:02 +00:00
qt_gui: Organize settings page (#1316)
* Wire up translations and descriptions for the cursor settings. * Move controller settings to input tab and rename it to controller (to inline it with how other settings are shown). * Fixed unnecessary double initialization of the back button setting. * Organize statements and functions w/ respect to their tabs and some minor QOL changes for the settings UI in general.
This commit is contained in:
parent
299a29e243
commit
87f8f3a59e
5 changed files with 499 additions and 242 deletions
|
@ -47,8 +47,6 @@ QStringList languageNames = {"Arabic",
|
|||
const QVector<int> languageIndexes = {21, 23, 14, 6, 18, 1, 12, 22, 2, 4, 25, 24, 29, 5, 0,
|
||||
9, 15, 16, 17, 7, 26, 8, 11, 20, 3, 13, 27, 10, 19, 28};
|
||||
|
||||
QStringList hideCursorStates = {"Never", "Idle", "Always"};
|
||||
|
||||
SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidget* parent)
|
||||
: QDialog(parent), ui(new Ui::SettingsDialog) {
|
||||
ui->setupUi(this);
|
||||
|
@ -69,7 +67,14 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidge
|
|||
completer->setCaseSensitivity(Qt::CaseInsensitive);
|
||||
ui->consoleLanguageComboBox->setCompleter(completer);
|
||||
|
||||
ui->hideCursorComboBox->addItems(hideCursorStates);
|
||||
ui->hideCursorComboBox->addItem(tr("Never"));
|
||||
ui->hideCursorComboBox->addItem(tr("Idle"));
|
||||
ui->hideCursorComboBox->addItem(tr("Always"));
|
||||
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Left"), "left");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Center"), "center");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Right"), "right");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("None"), "none");
|
||||
|
||||
InitializeEmulatorLanguages();
|
||||
LoadValuesFromConfig();
|
||||
|
@ -102,15 +107,6 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidge
|
|||
ui->buttonBox->button(QDialogButtonBox::RestoreDefaults)->setText(tr("Restore Defaults"));
|
||||
ui->buttonBox->button(QDialogButtonBox::Close)->setText(tr("Close"));
|
||||
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Left"), "left");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Center"), "center");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("Touchpad Right"), "right");
|
||||
ui->backButtonBehaviorComboBox->addItem(tr("None"), "none");
|
||||
|
||||
QString currentBackButtonBehavior = QString::fromStdString(Config::getBackButtonBehavior());
|
||||
int index = ui->backButtonBehaviorComboBox->findData(currentBackButtonBehavior);
|
||||
ui->backButtonBehaviorComboBox->setCurrentIndex(index != -1 ? index : 0);
|
||||
|
||||
connect(ui->tabWidgetSettings, &QTabWidget::currentChanged, this,
|
||||
[this]() { ui->buttonBox->button(QDialogButtonBox::Close)->setFocus(); });
|
||||
|
||||
|
@ -175,14 +171,6 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidge
|
|||
rpc->shutdown();
|
||||
}
|
||||
});
|
||||
|
||||
connect(ui->backButtonBehaviorComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged),
|
||||
this, [this](int index) {
|
||||
if (index >= 0 && index < ui->backButtonBehaviorComboBox->count()) {
|
||||
QString data = ui->backButtonBehaviorComboBox->itemData(index).toString();
|
||||
Config::setBackButtonBehavior(data.toStdString());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// Input TAB
|
||||
|
@ -195,6 +183,14 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidge
|
|||
|
||||
connect(ui->idleTimeoutSpinBox, &QSpinBox::valueChanged, this,
|
||||
[](int index) { Config::setCursorHideTimeout(index); });
|
||||
|
||||
connect(ui->backButtonBehaviorComboBox, QOverload<int>::of(&QComboBox::currentIndexChanged),
|
||||
this, [this](int index) {
|
||||
if (index >= 0 && index < ui->backButtonBehaviorComboBox->count()) {
|
||||
QString data = ui->backButtonBehaviorComboBox->itemData(index).toString();
|
||||
Config::setBackButtonBehavior(data.toStdString());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// GPU TAB
|
||||
|
@ -293,6 +289,11 @@ SettingsDialog::SettingsDialog(std::span<const QString> physical_devices, QWidge
|
|||
ui->logFilter->installEventFilter(this);
|
||||
ui->updaterGroupBox->installEventFilter(this);
|
||||
ui->GUIgroupBox->installEventFilter(this);
|
||||
|
||||
// Input
|
||||
ui->cursorGroupBox->installEventFilter(this);
|
||||
ui->hideCursorGroupBox->installEventFilter(this);
|
||||
ui->idleTimeoutGroupBox->installEventFilter(this);
|
||||
ui->backButtonBehaviorGroupBox->installEventFilter(this);
|
||||
|
||||
// Graphics
|
||||
|
@ -442,6 +443,15 @@ void SettingsDialog::updateNoteTextEdit(const QString& elementName) {
|
|||
text = tr("updaterGroupBox");
|
||||
} else if (elementName == "GUIgroupBox") {
|
||||
text = tr("GUIgroupBox");
|
||||
}
|
||||
|
||||
// Input
|
||||
if (elementName == "cursorGroupBox") {
|
||||
text = tr("cursorGroupBox");
|
||||
} else if (elementName == "hideCursorGroupBox") {
|
||||
text = tr("hideCursorGroupBox");
|
||||
} else if (elementName == "idleTimeoutGroupBox") {
|
||||
text = tr("idleTimeoutGroupBox");
|
||||
} else if (elementName == "backButtonBehaviorGroupBox") {
|
||||
text = tr("backButtonBehaviorGroupBox");
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue