summaryrefslogtreecommitdiff
path: root/common/language.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/language.h')
-rw-r--r--common/language.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/common/language.h b/common/language.h
new file mode 100644
index 0000000..b16c492
--- /dev/null
+++ b/common/language.h
@@ -0,0 +1,56 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose: represent a canonical list of the languages we support,
+//
+//=============================================================================
+
+#ifndef LANG_H
+#define LANG_H
+#ifdef _WIN32
+#pragma once
+#endif
+
+// if you change this enum also change language.cpp:s_LanguageNames
+enum ELanguage
+{
+ k_Lang_None = -1,
+ k_Lang_First = 0,
+ k_Lang_English = 0,
+ k_Lang_German,
+ k_Lang_French,
+ k_Lang_Italian,
+ k_Lang_Korean,
+ k_Lang_Spanish,
+ k_Lang_Simplified_Chinese,
+ k_Lang_Traditional_Chinese,
+ k_Lang_Russian,
+ k_Lang_Thai,
+ k_Lang_Japanese,
+ k_Lang_Portuguese,
+ k_Lang_Polish,
+ k_Lang_Danish,
+ k_Lang_Dutch,
+ k_Lang_Finnish,
+ k_Lang_Norwegian,
+ k_Lang_Swedish,
+ k_Lang_Romanian,
+ k_Lang_Turkish,
+ k_Lang_Hungarian,
+ k_Lang_Czech,
+ k_Lang_Brazilian,
+ k_Lang_Bulgarian,
+ k_Lang_Greek,
+ k_Lang_Ukrainian,
+ k_Lang_MAX
+};
+
+#define FOR_EACH_LANGUAGE( eLang ) for ( int eLang = (int)k_Lang_First; eLang < k_Lang_MAX; ++eLang )
+
+ELanguage PchLanguageToELanguage(const char *pchShortName, ELanguage eDefault = k_Lang_English);
+ELanguage PchLanguageICUCodeToELanguage( const char *pchICUCode, ELanguage eDefault = k_Lang_English );
+const char *GetLanguageShortName( ELanguage eLang );
+const char *GetLanguageICUName( ELanguage eLang );
+const char *GetLanguageVGUILocalization( ELanguage eLang );
+const char *GetLanguageName( ELanguage eLang );
+
+#endif /* LANG_H */