summaryrefslogtreecommitdiff
path: root/core/translation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/translation.cpp')
-rw-r--r--core/translation.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/core/translation.cpp b/core/translation.cpp
index e4dad8d8de..01789747ea 100644
--- a/core/translation.cpp
+++ b/core/translation.cpp
@@ -54,6 +54,9 @@ static const char* locale_list[]={
"be_BY", // Belarusian (Belarus)
"bg", // Bulgarian
"bg_BG", // Bulgarian (Bulgaria)
+"bn", // Bengali
+"bn_BD", // Bengali (Bangladesh)
+"bn_IN", // Bengali (India)
"ca", // Catalan
"ca_ES", // Catalan (Spain)
"cs", // Czech
@@ -178,6 +181,9 @@ static const char* locale_list[]={
"tr_TR", // Turkish (Turkey)
"uk", // Ukrainian
"uk_UA", // Ukrainian (Ukraine)
+"ur", // Urdu
+"ur_IN", // Urdu (India)
+"ur_PK", // Urdu (Pakistan)
"vi", // Vietnamese
"vi_VN", // Vietnamese (Vietnam)
"zh", // Chinese
@@ -211,6 +217,9 @@ static const char* locale_names[]={
"Belarusian (Belarus)",
"Bulgarian",
"Bulgarian (Bulgaria)",
+"Bengali",
+"Bengali (Bangladesh)",
+"Bengali (India)",
"Catalan",
"Catalan (Spain)",
"Czech",
@@ -335,6 +344,9 @@ static const char* locale_names[]={
"Turkish (Turkey)",
"Ukrainian",
"Ukrainian (Ukraine)",
+"Urdu",
+"Urdu (India)",
+"Urdu (Pakistan)",
"Vietnamese",
"Vietnamese (Vietnam)",
"Chinese",
@@ -665,6 +677,24 @@ void TranslationServer::setup() {
}
+void TranslationServer::set_tool_translation(const Ref<Translation>& p_translation) {
+ tool_translation=p_translation;
+}
+
+StringName TranslationServer::tool_translate(const StringName& p_message) const {
+
+ if (tool_translation.is_valid()) {
+ StringName r = tool_translation->get_message(p_message);
+
+ if (r) {
+ return r;
+ }
+ }
+
+ return p_message;
+}
+
+
void TranslationServer::_bind_methods() {
ObjectTypeDB::bind_method(_MD("set_locale","locale"),&TranslationServer::set_locale);