diff options
author | Didier Raboud <odyx@debian.org> | 2012-12-28 23:06:12 +0100 |
---|---|---|
committer | Didier Raboud <odyx@debian.org> | 2012-12-28 23:06:12 +0100 |
commit | 1b4208cdc5143cfc8f46da063a1a991795d7f307 (patch) | |
tree | 53817bb71f0b77752bbd506c79ac2620e61d183f /src/app/app.cpp | |
parent | f4c6f49b2fd01de2d6daff5ec1b9c181c39d09b7 (diff) | |
download | colobot-1b4208cdc5143cfc8f46da063a1a991795d7f307.tar.gz colobot-1b4208cdc5143cfc8f46da063a1a991795d7f307.tar.bz2 colobot-1b4208cdc5143cfc8f46da063a1a991795d7f307.zip |
Implement language Char for level files
This currently lacks fallback to an existing entry for non-translated entries
Diffstat (limited to 'src/app/app.cpp')
-rw-r--r-- | src/app/app.cpp | 45 |
1 files changed, 44 insertions, 1 deletions
diff --git a/src/app/app.cpp b/src/app/app.cpp index 32f68e1..1e577ca 100644 --- a/src/app/app.cpp +++ b/src/app/app.cpp @@ -1412,6 +1412,32 @@ Language CApplication::GetLanguage() return m_language; } +char CApplication::GetLanguageChar() +{ + char langChar = 'E'; + switch (m_language) + { + default: + case LANGUAGE_ENV: + case LANGUAGE_ENGLISH: + langChar = 'E'; + break; + + case LANGUAGE_GERMAN: + langChar = 'D'; + break; + + case LANGUAGE_FRENCH: + langChar = 'F'; + break; + + case LANGUAGE_POLISH: + langChar = 'P'; + break; + } + return langChar; +} + void CApplication::SetLanguage(Language language) { m_language = language; @@ -1445,7 +1471,24 @@ void CApplication::SetLanguage(Language language) if (locale.empty()) { - GetLogger()->Trace("SetLanguage: Inherit LANGUAGE=%s from environment\n", getenv("LANGUAGE")); + char *envLang = getenv("LANGUAGE"); + if (strncmp(envLang,"en",2) == 0) + { + m_language = LANGUAGE_ENGLISH; + } + else if (strncmp(envLang,"de",2) == 0) + { + m_language = LANGUAGE_GERMAN; + } + else if (strncmp(envLang,"fr",2) == 0) + { + m_language = LANGUAGE_FRENCH; + } + else if (strncmp(envLang,"po",2) == 0) + { + m_language = LANGUAGE_POLISH; + } + GetLogger()->Trace("SetLanguage: Inherit LANGUAGE=%s from environment\n", envLang); } else { |