From 9bde25dfa90083c3cb69a3117404c8a0b99f5a3f Mon Sep 17 00:00:00 2001 From: Henrik Rydgard Date: Fri, 3 Jan 2014 19:04:43 +0100 Subject: [PATCH] Moving the lang mapping to Config clears up some obcure file-to-file build dependency. Should fix the build. --- Core/Config.cpp | 38 ++++++++++++++++++++++++++++++++++ Core/Config.h | 2 ++ Core/Dialog/PSPSaveDialog.cpp | 1 - Core/HLE/sceUtility.cpp | 39 ----------------------------------- Core/HLE/sceUtility.h | 1 - Windows/WndMainWindow.cpp | 1 - 6 files changed, 40 insertions(+), 42 deletions(-) diff --git a/Core/Config.cpp b/Core/Config.cpp index 278e631c62..e8b7152003 100644 --- a/Core/Config.cpp +++ b/Core/Config.cpp @@ -47,6 +47,44 @@ extern bool iosCanUseJit; Config::Config() { } Config::~Config() { } +std::map> GetLangValuesMapping() { + std::map> langValuesMapping; + IniFile mapping; + mapping.LoadFromVFS("langregion.ini"); + std::vector keys; + mapping.GetKeys("LangRegionNames", keys); + + + std::map langCodeMapping; + langCodeMapping["JAPANESE"] = PSP_SYSTEMPARAM_LANGUAGE_JAPANESE; + langCodeMapping["ENGLISH"] = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; + langCodeMapping["FRENCH"] = PSP_SYSTEMPARAM_LANGUAGE_FRENCH; + langCodeMapping["SPANISH"] = PSP_SYSTEMPARAM_LANGUAGE_SPANISH; + langCodeMapping["GERMAN"] = PSP_SYSTEMPARAM_LANGUAGE_GERMAN; + langCodeMapping["ITALIAN"] = PSP_SYSTEMPARAM_LANGUAGE_ITALIAN; + langCodeMapping["DUTCH"] = PSP_SYSTEMPARAM_LANGUAGE_DUTCH; + langCodeMapping["PORTUGUESE"] = PSP_SYSTEMPARAM_LANGUAGE_PORTUGUESE; + langCodeMapping["RUSSIAN"] = PSP_SYSTEMPARAM_LANGUAGE_RUSSIAN; + langCodeMapping["KOREAN"] = PSP_SYSTEMPARAM_LANGUAGE_KOREAN; + langCodeMapping["CHINESE_TRADITIONAL"] = PSP_SYSTEMPARAM_LANGUAGE_CHINESE_TRADITIONAL; + langCodeMapping["CHINESE_SIMPLIFIED"] = PSP_SYSTEMPARAM_LANGUAGE_CHINESE_SIMPLIFIED; + + IniFile::Section *langRegionNames = mapping.GetOrCreateSection("LangRegionNames"); + IniFile::Section *systemLanguage = mapping.GetOrCreateSection("SystemLanguage"); + + for (size_t i = 0; i < keys.size(); i++) { + std::string langName; + langRegionNames->Get(keys[i].c_str(), &langName, "ERROR"); + std::string langCode; + systemLanguage->Get(keys[i].c_str(), &langCode, "ENGLISH"); + int iLangCode = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; + if (langCodeMapping.find(langCode) != langCodeMapping.end()) + iLangCode = langCodeMapping[langCode]; + langValuesMapping[keys[i]] = std::make_pair(langName, iLangCode); + } + return langValuesMapping; +} + void Config::Load(const char *iniFileName, const char *controllerIniFilename) { iniFilename_ = FindConfigFile(iniFileName != NULL ? iniFileName : "ppsspp.ini"); controllerIniFilename_ = FindConfigFile(controllerIniFilename != NULL ? controllerIniFilename : "controls.ini"); diff --git a/Core/Config.h b/Core/Config.h index 8b9ebc157d..d5a45aefe8 100644 --- a/Core/Config.h +++ b/Core/Config.h @@ -309,6 +309,8 @@ private: std::string defaultPath_; }; +std::map> GetLangValuesMapping(); + // TODO: Find a better place for this. extern http::Downloader g_DownloadManager; extern Config g_Config; diff --git a/Core/Dialog/PSPSaveDialog.cpp b/Core/Dialog/PSPSaveDialog.cpp index 96bec217ce..2da0994265 100755 --- a/Core/Dialog/PSPSaveDialog.cpp +++ b/Core/Dialog/PSPSaveDialog.cpp @@ -22,7 +22,6 @@ #include "Core/FileSystems/MetaFileSystem.h" #include "Core/Util/PPGeDraw.h" #include "Core/HLE/sceCtrl.h" -#include "Core/HLE/sceUtility.h" #include "Core/MemMap.h" #include "Core/Config.h" #include "Core/Reporting.h" diff --git a/Core/HLE/sceUtility.cpp b/Core/HLE/sceUtility.cpp index ac0c2f4146..1a99bb3bda 100644 --- a/Core/HLE/sceUtility.cpp +++ b/Core/HLE/sceUtility.cpp @@ -846,42 +846,3 @@ void Register_sceUtility() { RegisterModule("sceUtility", ARRAY_SIZE(sceUtility), sceUtility); } - -std::map> GetLangValuesMapping() { - std::map> langValuesMapping; - IniFile mapping; - mapping.LoadFromVFS("langregion.ini"); - std::vector keys; - mapping.GetKeys("LangRegionNames", keys); - - - std::map langCodeMapping; - langCodeMapping["JAPANESE"] = PSP_SYSTEMPARAM_LANGUAGE_JAPANESE; - langCodeMapping["ENGLISH"] = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; - langCodeMapping["FRENCH"] = PSP_SYSTEMPARAM_LANGUAGE_FRENCH; - langCodeMapping["SPANISH"] = PSP_SYSTEMPARAM_LANGUAGE_SPANISH; - langCodeMapping["GERMAN"] = PSP_SYSTEMPARAM_LANGUAGE_GERMAN; - langCodeMapping["ITALIAN"] = PSP_SYSTEMPARAM_LANGUAGE_ITALIAN; - langCodeMapping["DUTCH"] = PSP_SYSTEMPARAM_LANGUAGE_DUTCH; - langCodeMapping["PORTUGUESE"] = PSP_SYSTEMPARAM_LANGUAGE_PORTUGUESE; - langCodeMapping["RUSSIAN"] = PSP_SYSTEMPARAM_LANGUAGE_RUSSIAN; - langCodeMapping["KOREAN"] = PSP_SYSTEMPARAM_LANGUAGE_KOREAN; - langCodeMapping["CHINESE_TRADITIONAL"] = PSP_SYSTEMPARAM_LANGUAGE_CHINESE_TRADITIONAL; - langCodeMapping["CHINESE_SIMPLIFIED"] = PSP_SYSTEMPARAM_LANGUAGE_CHINESE_SIMPLIFIED; - - IniFile::Section *langRegionNames = mapping.GetOrCreateSection("LangRegionNames"); - IniFile::Section *systemLanguage = mapping.GetOrCreateSection("SystemLanguage"); - - for (size_t i = 0; i < keys.size(); i++) { - std::string langName; - langRegionNames->Get(keys[i].c_str(), &langName, "ERROR"); - std::string langCode; - systemLanguage->Get(keys[i].c_str(), &langCode, "ENGLISH"); - int iLangCode = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; - if (langCodeMapping.find(langCode) != langCodeMapping.end()) - iLangCode = langCodeMapping[langCode]; - langValuesMapping[keys[i]] = std::make_pair(langName, iLangCode); - } - return langValuesMapping; -} - diff --git a/Core/HLE/sceUtility.h b/Core/HLE/sceUtility.h index 0256a47666..aebd799e76 100644 --- a/Core/HLE/sceUtility.h +++ b/Core/HLE/sceUtility.h @@ -84,4 +84,3 @@ void __UtilityDoState(PointerWrap &p); void __UtilityShutdown(); void Register_sceUtility(); -std::map> GetLangValuesMapping(); diff --git a/Windows/WndMainWindow.cpp b/Windows/WndMainWindow.cpp index bbdadab4b1..20a144f5ef 100644 --- a/Windows/WndMainWindow.cpp +++ b/Windows/WndMainWindow.cpp @@ -68,7 +68,6 @@ #include "GPU/GLES/Framebuffer.h" #include "ControlMapping.h" #include "UI/OnScreenDisplay.h" -#include "Core/HLE/sceUtility.h" #include "GPU/Common/PostShader.h" #include "Core/HLE/sceUmd.h"