// Copyright 2016 Citra Emulator Project // Licensed under GPLv2 or any later version // Refer to the license.txt file included. #pragma once #include #include #include "common/common_types.h" namespace Ui { class ConfigureSystem; } namespace ConfigurationShared { enum class CheckState; } namespace Service { namespace CFG { class Module; } // namespace CFG } // namespace Service class ConfigureSystem : public QWidget { Q_OBJECT public: explicit ConfigureSystem(QWidget* parent = nullptr); ~ConfigureSystem() override; void ApplyConfiguration(); void SetConfiguration(); void RetranslateUI(); private: void ReadSystemSettings(); void ConfigureTime(); void UpdateBirthdayComboBox(int birthmonth_index); void UpdateInitTime(int init_clock); void RefreshConsoleID(); void SetupPerGameUI(); void DownloadFromNUS(); ConfigurationShared::CheckState is_new_3ds; std::unique_ptr ui; bool enabled = false; std::shared_ptr cfg; std::u16string username; int birthmonth = 0; int birthday = 0; int language_index = 0; int sound_index = 0; u8 country_code; u16 play_coin; bool system_setup; };