mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-19 19:15:26 +00:00
Qt: fix handler not found in pad settings after changing language
This commit is contained in:
parent
17c6a9d7e5
commit
f5cf39330b
1 changed files with 19 additions and 18 deletions
|
@ -27,7 +27,6 @@
|
|||
LOG_CHANNEL(cfg_log, "CFG");
|
||||
|
||||
inline std::string sstr(const QString& _in) { return _in.toStdString(); }
|
||||
constexpr auto qstr = QString::fromStdString;
|
||||
|
||||
cfg_input_configurations g_cfg_input_configs;
|
||||
|
||||
|
@ -77,7 +76,7 @@ pad_settings_dialog::pad_settings_dialog(std::shared_ptr<gui_settings> gui_setti
|
|||
if (game)
|
||||
{
|
||||
m_title_id = game->serial;
|
||||
setWindowTitle(tr("Gamepad Settings: [%0] %1").arg(qstr(game->serial)).arg(qstr(game->name).simplified()));
|
||||
setWindowTitle(tr("Gamepad Settings: [%0] %1").arg(QString::fromStdString(game->serial)).arg(QString::fromStdString(game->name).simplified()));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -89,13 +88,13 @@ pad_settings_dialog::pad_settings_dialog(std::shared_ptr<gui_settings> gui_setti
|
|||
|
||||
if (m_title_id.empty())
|
||||
{
|
||||
const QString input_config_dir = qstr(rpcs3::utils::get_input_config_dir(m_title_id));
|
||||
const QString input_config_dir = QString::fromStdString(rpcs3::utils::get_input_config_dir(m_title_id));
|
||||
QStringList config_files = gui::utils::get_dir_entries(QDir(input_config_dir), QStringList() << "*.yml");
|
||||
QString active_config_file = qstr(g_cfg_input_configs.active_configs.get_value(g_cfg_input_configs.global_key));
|
||||
QString active_config_file = QString::fromStdString(g_cfg_input_configs.active_configs.get_value(g_cfg_input_configs.global_key));
|
||||
|
||||
if (!config_files.contains(active_config_file))
|
||||
{
|
||||
const QString default_config_file = qstr(g_cfg_input_configs.default_config);
|
||||
const QString default_config_file = QString::fromStdString(g_cfg_input_configs.default_config);
|
||||
|
||||
if (!config_files.contains(default_config_file) && CreateConfigFile(input_config_dir, default_config_file))
|
||||
{
|
||||
|
@ -114,7 +113,7 @@ pad_settings_dialog::pad_settings_dialog(std::shared_ptr<gui_settings> gui_setti
|
|||
}
|
||||
else
|
||||
{
|
||||
ui->chooseConfig->addItem(qstr(m_title_id));
|
||||
ui->chooseConfig->addItem(QString::fromStdString(m_title_id));
|
||||
ui->gb_config_files->setEnabled(false);
|
||||
}
|
||||
|
||||
|
@ -673,7 +672,7 @@ void pad_settings_dialog::ReloadButtons()
|
|||
|
||||
auto updateButton = [this](int id, QPushButton* button, cfg::string* cfg_text)
|
||||
{
|
||||
const QString text = qstr(*cfg_text);
|
||||
const QString text = QString::fromStdString(*cfg_text);
|
||||
m_cfg_entries.insert(std::make_pair(id, pad_button{cfg_text, *cfg_text, text}));
|
||||
button->setText(text);
|
||||
};
|
||||
|
@ -1228,7 +1227,7 @@ void pad_settings_dialog::UpdateLabels(bool is_reset)
|
|||
if (is_reset)
|
||||
{
|
||||
button.keys = *button.cfg_text;
|
||||
button.text = qstr(button.keys);
|
||||
button.text = QString::fromStdString(button.keys);
|
||||
}
|
||||
|
||||
// The button has to contain at least one character, because it would be square'ish otherwise
|
||||
|
@ -1493,7 +1492,7 @@ void pad_settings_dialog::ChangeHandler()
|
|||
case pad_handler::skateboard:
|
||||
case pad_handler::move:
|
||||
{
|
||||
const QString name_string = qstr(m_handler->name_string());
|
||||
const QString name_string = QString::fromStdString(m_handler->name_string());
|
||||
for (usz i = 1; i <= m_handler->max_devices(); i++) // Controllers 1-n in GUI
|
||||
{
|
||||
const QString device_name = name_string + QString::number(i);
|
||||
|
@ -1628,15 +1627,15 @@ void pad_settings_dialog::ChangeConfig(const QString& config_file)
|
|||
}
|
||||
|
||||
const u32 player_id = GetPlayerIndex();
|
||||
const std::string handler = fmt::format("%s", g_cfg_input.player[player_id]->handler.get());
|
||||
const QString q_handler = QString::fromStdString(g_cfg_input.player[player_id]->handler.to_string());
|
||||
|
||||
if (const QString q_handler = qstr(handler); ui->chooseHandler->findText(q_handler) >= 0)
|
||||
if (const int index = ui->chooseHandler->findData(q_handler); index >= 0)
|
||||
{
|
||||
ui->chooseHandler->setCurrentText(q_handler);
|
||||
ui->chooseHandler->setCurrentIndex(index);
|
||||
}
|
||||
else
|
||||
{
|
||||
cfg_log.error("Handler '%s' not found in handler dropdown.", handler);
|
||||
cfg_log.error("Handler '%s' not found in handler dropdown.", q_handler);
|
||||
}
|
||||
|
||||
// Force Refresh
|
||||
|
@ -1773,7 +1772,7 @@ void pad_settings_dialog::AddConfigFile()
|
|||
QMessageBox::warning(this, tr("Error"), tr("Please choose a non-existing name"));
|
||||
continue;
|
||||
}
|
||||
if (CreateConfigFile(qstr(rpcs3::utils::get_input_config_dir(m_title_id)), config_name))
|
||||
if (CreateConfigFile(QString::fromStdString(rpcs3::utils::get_input_config_dir(m_title_id)), config_name))
|
||||
{
|
||||
ui->chooseConfig->addItem(config_name);
|
||||
ui->chooseConfig->setCurrentText(config_name);
|
||||
|
@ -1799,12 +1798,12 @@ void pad_settings_dialog::RefreshHandlers()
|
|||
const std::vector<std::string> str_inputs = g_cfg_input.player[0]->handler.to_list();
|
||||
for (usz i = 0; i < str_inputs.size(); i++)
|
||||
{
|
||||
const QString item_data = qstr(str_inputs[i]);
|
||||
const QString item_data = QString::fromStdString(str_inputs[i]);
|
||||
ui->chooseHandler->addItem(GetLocalizedPadHandler(item_data, static_cast<pad_handler>(i)), QVariant(item_data));
|
||||
}
|
||||
|
||||
const auto& handler = g_cfg_input.player[player_id]->handler;
|
||||
ui->chooseHandler->setCurrentText(GetLocalizedPadHandler(qstr(handler.to_string()), handler));
|
||||
const QString item_data = QString::fromStdString(g_cfg_input.player[player_id]->handler.to_string());
|
||||
ui->chooseHandler->setCurrentIndex(ui->chooseHandler->findData(QVariant(item_data)));
|
||||
}
|
||||
|
||||
ui->chooseHandler->blockSignals(false);
|
||||
|
@ -1932,7 +1931,9 @@ void pad_settings_dialog::SaveExit()
|
|||
m_gui_settings->ShowConfirmationBox(
|
||||
tr("Warning!"),
|
||||
tr("The %0 button <b>%1</b> of <b>Player %2</b> was assigned at least twice.<br>Please consider adjusting the configuration.<br><br>Continue anyway?<br>")
|
||||
.arg(qstr(g_cfg_input.player[player_id]->handler.to_string())).arg(qstr(key)).arg(player_id + 1),
|
||||
.arg(QString::fromStdString(g_cfg_input.player[player_id]->handler.to_string()))
|
||||
.arg(QString::fromStdString(key))
|
||||
.arg(player_id + 1),
|
||||
gui::ib_same_buttons, &result, this);
|
||||
|
||||
if (result == QMessageBox::No)
|
||||
|
|
Loading…
Add table
Reference in a new issue