Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXiao Xiangquan <xiaoxiangquan@gmail.com>2011-07-25 21:05:43 +0400
committerXiao Xiangquan <xiaoxiangquan@gmail.com>2011-07-25 21:05:43 +0400
commit8454f2b8b3fc2fc5275773e5d110be98260b7b8e (patch)
treeb5bde8204992bb710a00467b0035ca3781425a11 /source/blender
parent96bbf550b0471d19d37385f62c1ff2b5b42408cb (diff)
complete the language-select feature
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/blenfont/intern/blf_lang.c44
-rw-r--r--source/blender/makesrna/intern/rna_userdef.c32
2 files changed, 37 insertions, 39 deletions
diff --git a/source/blender/blenfont/intern/blf_lang.c b/source/blender/blenfont/intern/blf_lang.c
index ccaab88a248..cc55eb585ed 100644
--- a/source/blender/blenfont/intern/blf_lang.c
+++ b/source/blender/blenfont/intern/blf_lang.c
@@ -88,7 +88,7 @@ static char locale_serbian[] = "sr_RS";
static char locale_ukrainian[] = "uk_UA";
static char locale_polish[] = "pl_PL";
static char locale_romanian[] = "ro_RO";
-static char locale_arabic[] = "ar_SA";
+static char locale_arabic[] = "ar_EG";
static char locale_bulgarian[] = "bg_BG";
static char locale_greek[] = "el_GR";
static char locale_korean[] = "ko_KR";
@@ -138,33 +138,31 @@ void BLF_lang_init(void)
void BLF_lang_set(const char *str)
{
char *locreturn;
- if(str==NULL) {
- if( U.language==1 )
- return;
+ if(str==NULL)
str = lang_to_locale[U.language];
- }
-#if defined (_WIN32) || defined(__APPLE__)
- BLI_setenv("LANG", str);
-#else
- locreturn= setlocale(LC_ALL, str);
- if (locreturn == NULL) {
- char *lang= BLI_sprintfN("%s.UTF-8", str);
+ BLI_setenv("LANG", str);
+ BLI_setenv("LANGUAGE", str);
- locreturn= setlocale(LC_ALL, lang);
- if (locreturn == NULL) {
- printf("could not change language to %s nor %s\n", str, lang);
- }
+ locreturn= setlocale(LC_ALL, str);
+ if (locreturn == NULL) {
+ char *lang= BLI_sprintfN("%s.UTF-8", str);
- MEM_freeN(lang);
+ locreturn= setlocale(LC_ALL, lang);
+ if (locreturn == NULL) {
+ printf("could not change language to %s nor %s\n", str, lang);
}
- setlocale(LC_NUMERIC, "C");
-#endif
- textdomain(DOMAIN_NAME);
- bindtextdomain(DOMAIN_NAME, global_messagepath);
- /* bind_textdomain_codeset(DOMAIN_NAME, global_encoding_name); */
- BLI_strncpy(global_language, str, sizeof(global_language));
-
+ MEM_freeN(lang);
+ }
+
+ setlocale(LC_NUMERIC, "C");
+
+ textdomain(DOMAIN_NAME);
+ bindtextdomain(DOMAIN_NAME, global_messagepath);
+ /* bind_textdomain_codeset(DOMAIN_NAME, global_encoding_name); */
+ BLI_strncpy(global_language, str, sizeof(global_language));
+
+// printf( "<<< %s %s %s \n", setlocale(LC_MESSAGES,NULL), getenv("LANG"), getenv("LANGUAGE") );
}
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index e7611e45035..fe7a2466234 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -2442,25 +2442,25 @@ static void rna_def_userdef_system(BlenderRNA *brna)
{2, "JAPANESE", 0, "Japanese (日本語)", "ja_JP"},
{3, "DUTCH", 0, "Dutch (Nederlandse taal)", "nl_NL"},
{4, "ITALIAN", 0, "Italian (Italiano)", "it_IT"},
- {5, "GERMAN", 0, "German (German)", "de_DE"},
- {6, "FINNISH", 0, "Finnish (Finnish)", "fi_FI"},
- {7, "SWEDISH", 0, "Swedish (Swedish)", "sv_SE"},
- {8, "FRENCH", 0, "French (French)", "fr_FR"},
- {9, "SPANISH", 0, "Spanish (Spanish)", "es_ES"},
- {10, "CATALAN", 0, "Catalan (Catalan)", "ca_AD"},
- {11, "CZECH", 0, "Czech (Czech)", "cs_CZ"},
- {12, "BRAZILIAN_PORTUGUESE", 0, "Brazilian Portuguese (Brazilian Portuguese)", "pt_BR"},
+ {5, "GERMAN", 0, "German (Deutsch)", "de_DE"},
+ {6, "FINNISH", 0, "Finnish (Suomalainen)", "fi_FI"},
+ {7, "SWEDISH", 0, "Swedish (Svenska)", "sv_SE"},
+ {8, "FRENCH", 0, "French (Française)", "fr_FR"},
+ {9, "SPANISH", 0, "Spanish (Español)", "es_ES"},
+ {10, "CATALAN", 0, "Catalan (Català)", "ca_AD"},
+ {11, "CZECH", 0, "Czech (Český)", "cs_CZ"},
+ {12, "BRAZILIAN_PORTUGUESE", 0, "Brazilian Portuguese (Português do Brasil)", "pt_BR"},
{13, "SIMPLIFIED_CHINESE", 0, "Simplified Chinese (简体中文)", "zh_CN"},
{14, "TRADITIONAL_CHINESE", 0, "Traditional Chinese (繁體中文)", "zh_TW"},
- {15, "RUSSIAN", 0, "Russian (Russian)", "ru_RU"},
- {16, "CROATIAN", 0, "Croatian (Croatian)", "hr_HR"},
- {17, "SERBIAN", 0, "Serbian (Serbian)", "sr_RS"},
- {18, "UKRAINIAN", 0, "Ukrainian (Ukrainian)", "uk_UA"},
- {19, "POLISH", 0, "Polish (Polish)", "pl_PL"},
+ {15, "RUSSIAN", 0, "Russian (Русский)", "ru_RU"},
+ {16, "CROATIAN", 0, "Croatian (Hrvatski)", "hr_HR"},
+ {17, "SERBIAN", 0, "Serbian (Српском језику)", "sr_RS"},
+ {18, "UKRAINIAN", 0, "Ukrainian (Український)", "uk_UA"},
+ {19, "POLISH", 0, "Polish (Polski)", "pl_PL"},
{20, "ROMANIAN", 0, "Romanian (Român)", "ro_RO"},
- {21, "ARABIC", 0, "Arabic (العربية)", "ar_SA"},
- {22, "BULGARIAN", 0, "Bulgarian (Bulgarian)", "bg_BG"},
- {23, "GREEK", 0, "Greek (Greek)", "el_GR"},
+ {21, "ARABIC", 0, "Arabic (العربية)", "ar_EG"},
+ {22, "BULGARIAN", 0, "Bulgarian (Български)", "bg_BG"},
+ {23, "GREEK", 0, "Greek (Ελληνικά)", "el_GR"},
{24, "KOREAN", 0, "Korean (한국 언어)", "ko_KR"},
{0, NULL, 0, NULL, NULL}};