diff options
author | Charles Lombardo <clombardo169@gmail.com> | 2023-11-25 04:59:55 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-25 04:59:55 +0100 |
commit | 5a182f4e7ccfac696cd54542089c880d002f5cc9 (patch) | |
tree | e1bcd72f38f4f57ff6b915022268b0feb86a7937 /src/android/app/src/main/jni/android_config.cpp | |
parent | Merge pull request #12140 from liamwhite/qcr-unreachable (diff) | |
parent | frontend_common: Don't specify default value for screenshot_path (diff) | |
download | yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar.gz yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar.bz2 yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar.lz yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar.xz yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.tar.zst yuzu-5a182f4e7ccfac696cd54542089c880d002f5cc9.zip |
Diffstat (limited to 'src/android/app/src/main/jni/android_config.cpp')
-rw-r--r-- | src/android/app/src/main/jni/android_config.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/android/app/src/main/jni/android_config.cpp b/src/android/app/src/main/jni/android_config.cpp new file mode 100644 index 000000000..3041c25c9 --- /dev/null +++ b/src/android/app/src/main/jni/android_config.cpp @@ -0,0 +1,70 @@ +// SPDX-FileCopyrightText: 2023 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "android_config.h" +#include "android_settings.h" +#include "common/settings_setting.h" + +AndroidConfig::AndroidConfig(const std::string& config_name, ConfigType config_type) + : Config(config_type) { + Initialize(config_name); + if (config_type != ConfigType::InputProfile) { + ReadAndroidValues(); + SaveAndroidValues(); + } +} + +AndroidConfig::~AndroidConfig() { + if (global) { + AndroidConfig::SaveAllValues(); + } +} + +void AndroidConfig::ReloadAllValues() { + Reload(); + ReadAndroidValues(); + SaveAndroidValues(); +} + +void AndroidConfig::SaveAllValues() { + Save(); + SaveAndroidValues(); +} + +void AndroidConfig::ReadAndroidValues() { + if (global) { + ReadAndroidUIValues(); + } +} + +void AndroidConfig::ReadAndroidUIValues() { + BeginGroup(Settings::TranslateCategory(Settings::Category::Android)); + + ReadCategory(Settings::Category::Android); + + EndGroup(); +} + +void AndroidConfig::SaveAndroidValues() { + if (global) { + SaveAndroidUIValues(); + } + + WriteToIni(); +} + +void AndroidConfig::SaveAndroidUIValues() { + BeginGroup(Settings::TranslateCategory(Settings::Category::Android)); + + WriteCategory(Settings::Category::Android); + + EndGroup(); +} + +std::vector<Settings::BasicSetting*>& AndroidConfig::FindRelevantList(Settings::Category category) { + auto& map = Settings::values.linkage.by_category; + if (map.contains(category)) { + return Settings::values.linkage.by_category[category]; + } + return AndroidSettings::values.linkage.by_category[category]; +} |