7#include <unordered_map>
42 bool loadFromJson(
const std::string &lang,
const std::string &json);
43 bool loadFromFile(
const std::string &lang,
const std::string &path);
45 void unload(
const std::string &lang);
58 bool has(
const std::string &key)
const;
59 std::string
get(
const std::string &key)
const;
61 const std::unordered_map<std::string, std::string> ¶ms)
const;
62 std::string
getPlural(
const std::string &key,
int n)
const;
64 const std::unordered_map<std::string, std::string> ¶ms)
const;
74 std::unordered_map<std::string, std::string> strings;
75 std::unordered_map<std::string, std::unordered_map<std::string, std::string>>
81 Locale * findLocale(
const std::string &lang);
82 const Locale *findLocale(
const std::string &lang)
const;
84 std::string formatString(
const std::string &tpl,
85 const std::unordered_map<std::string, std::string> ¶ms)
const;
86 std::string pluralForm(
const std::string &lang,
int n)
const;
88 std::unordered_map<std::string, Locale> locales_;
89 std::string language_ =
"en";
90 std::string defaultLanguage_ =
"en";
91 bool autoReload_ =
true;
Game localization (i18n) module.
bool loadFromJson(const std::string &lang, const std::string &json)
加载语言表(JSON 文本 / 文件)。
std::string getDefaultLanguage() const
std::string getPluralWithParams(const std::string &key, int n, const std::unordered_map< std::string, std::string > ¶ms) const
bool hasLanguage(const std::string &lang) const
int update(float dt)
Re-read changed locale files; returns the number of reloads performed.
void setAutoReload(bool enable)
bool isAutoReload() const
bool loadFromFile(const std::string &lang, const std::string &path)
std::string getWithParams(const std::string &key, const std::unordered_map< std::string, std::string > ¶ms) const
void unload(const std::string &lang)
卸载 / 清空语言表。
std::string getLanguage() const
bool setLanguage(const std::string &lang)
语言管理:当前语言 / 默认语言回退。
bool has(const std::string &key) const
翻译查找:按键(点号命名空间)取字符串。
std::string getLanguageAt(int index) const
std::string getPlural(const std::string &key, int n) const
std::string get(const std::string &key) const
void setDefaultLanguage(const std::string &lang)
int getLanguageCount() const