configure_general.cpp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. // Copyright 2016 Citra Emulator Project
  2. // Licensed under GPLv2 or any later version
  3. // Refer to the license.txt file included.
  4. #include "core/core.h"
  5. #include "core/settings.h"
  6. #include "ui_configure_general.h"
  7. #include "yuzu/configuration/configure_general.h"
  8. #include "yuzu/uisettings.h"
  9. ConfigureGeneral::ConfigureGeneral(QWidget* parent)
  10. : QWidget(parent), ui(new Ui::ConfigureGeneral) {
  11. ui->setupUi(this);
  12. for (const auto& theme : UISettings::themes) {
  13. ui->theme_combobox->addItem(QString::fromUtf8(theme.first),
  14. QString::fromUtf8(theme.second));
  15. }
  16. SetConfiguration();
  17. connect(ui->toggle_deepscan, &QCheckBox::stateChanged, this,
  18. [] { UISettings::values.is_game_list_reload_pending.exchange(true); });
  19. }
  20. ConfigureGeneral::~ConfigureGeneral() = default;
  21. void ConfigureGeneral::SetConfiguration() {
  22. ui->toggle_deepscan->setChecked(UISettings::values.game_directory_deepscan);
  23. ui->toggle_check_exit->setChecked(UISettings::values.confirm_before_closing);
  24. ui->toggle_user_on_boot->setChecked(UISettings::values.select_user_on_boot);
  25. ui->theme_combobox->setCurrentIndex(ui->theme_combobox->findData(UISettings::values.theme));
  26. }
  27. void ConfigureGeneral::ApplyConfiguration() {
  28. UISettings::values.game_directory_deepscan = ui->toggle_deepscan->isChecked();
  29. UISettings::values.confirm_before_closing = ui->toggle_check_exit->isChecked();
  30. UISettings::values.select_user_on_boot = ui->toggle_user_on_boot->isChecked();
  31. UISettings::values.theme =
  32. ui->theme_combobox->itemData(ui->theme_combobox->currentIndex()).toString();
  33. }
  34. void ConfigureGeneral::changeEvent(QEvent* event) {
  35. if (event->type() == QEvent::LanguageChange) {
  36. RetranslateUI();
  37. }
  38. QWidget::changeEvent(event);
  39. }
  40. void ConfigureGeneral::RetranslateUI() {
  41. ui->retranslateUi(this);
  42. }