UGDK
src/ugdk/util/languagemanager.h
Go to the documentation of this file.
00001 #ifndef UGDK_UTIL_LANGUAGEMANAGER_H_
00002 #define UGDK_UTIL_LANGUAGEMANAGER_H_
00003 
00004 #include <string>
00005 #include <map>
00006 #include <ugdk/util.h>
00007 
00008 namespace ugdk {
00009 
00010 #define LANGUAGE_MANAGER() (ugdk::base::Engine::reference()->language_manager())
00011 
00012 class LanguageManager {
00013   public:
00014     LanguageManager(const std::string& default_language_code) : default_language_(default_language_code) {}
00015     ~LanguageManager() {}
00016 
00017     const std::string& default_language() const { return default_language_; }
00018 
00019     bool RegisterLanguage(const std::string& code, const std::string& language_file);
00020 
00022     bool Setup(const std::string& active_language);
00023 
00024   private:
00025     std::map<std::string, std::string> registered_languages_;
00026     std::string default_language_;
00027 };
00028 
00029 }  // namespace ugdk
00030 
00031 #endif /* UGDK_UTIL_LANGUAGEMANAGER_H_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines