UGDK  0.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
languagemanager.h
Go to the documentation of this file.
1 #ifndef UGDK_UTIL_LANGUAGEMANAGER_H_
2 #define UGDK_UTIL_LANGUAGEMANAGER_H_
3 
4 #include <string>
5 #include <map>
6 #include <ugdk/util.h>
7 
8 namespace ugdk {
9 
10 #define LANGUAGE_MANAGER() (ugdk::base::Engine::reference()->language_manager())
11 
13  public:
14  LanguageManager(const std::string& default_language_code) : default_language_(default_language_code) {}
16 
17  const std::string& default_language() const { return default_language_; }
18 
19  bool RegisterLanguage(const std::string& code, const std::string& language_file);
20 
22  bool Setup(const std::string& active_language);
23 
24  private:
25  std::map<std::string, std::string> registered_languages_;
26  std::string default_language_;
27 };
28 
29 } // namespace ugdk
30 
31 #endif /* UGDK_UTIL_LANGUAGEMANAGER_H_ */