Browse Source

cl_main: set language according to LANG variable

pull/51/head
nillerusr 2 years ago
parent
commit
9dd2d20e78
  1. 11
      engine/cl_main.cpp
  2. 20
      gameui/BasePanel.cpp

11
engine/cl_main.cpp

@ -72,6 +72,7 @@ @@ -72,6 +72,7 @@
#include "replay_internal.h"
#endif
#include "language.h"
#include "igame.h"
// memdbgon must be the last include file in a .cpp file!!!
@ -2743,14 +2744,18 @@ void CL_InitLanguageCvar() @@ -2743,14 +2744,18 @@ void CL_InitLanguageCvar()
}
else
{
char *szLang = getenv("LANG");
if ( CommandLine()->CheckParm( "-language" ) )
{
cl_language.SetValue( CommandLine()->ParmValue( "-language", "english") );
else if( szLang )
{
ELanguage lang = PchLanguageICUCodeToELanguage(szLang, k_Lang_English);
char *szShortLang = GetLanguageShortName(lang);
cl_language.SetValue( szShortLang );
}
else
{
cl_language.SetValue( "english" );
}
}
}

20
gameui/BasePanel.cpp

@ -297,6 +297,16 @@ public: @@ -297,6 +297,16 @@ public:
return BaseClass::AddMenuItem(item);
}
virtual int AddMenuItem(const char *itemName, wchar_t *itemText, const char *command, Panel *target, KeyValues *userData = NULL)
{
MenuItem *item = new CGameMenuItem(this, itemName);
item->AddActionSignalTarget(target);
item->SetCommand(command);
item->SetText(itemText);
item->SetUserData(userData);
return BaseClass::AddMenuItem(item);
}
virtual int AddMenuItem(const char *itemName, const char *itemText, KeyValues *command, Panel *target, KeyValues *userData = NULL)
{
CGameMenuItem *item = new CGameMenuItem(this, itemName);
@ -586,6 +596,9 @@ public: @@ -586,6 +596,9 @@ public:
KeyValues *kv1 = menuItem1->GetUserData();
KeyValues *kv2 = menuItem2->GetUserData();
if( !kv1 || !kv2 )
continue;
if ( kv1->GetInt("InGameOrder") > kv2->GetInt("InGameOrder") )
MoveMenuItem( iID2, iID1 );
}
@ -1478,7 +1491,12 @@ CGameMenu *CBasePanel::RecursiveLoadGameMenu(KeyValues *datafile) @@ -1478,7 +1491,12 @@ CGameMenu *CBasePanel::RecursiveLoadGameMenu(KeyValues *datafile)
{
CGameMenu *menu = new CGameMenu(this, datafile->GetName());
menu->AddMenuItem("Console", "CONSOLE", "OpenConsole", this);
wchar_t *pString = g_pVGuiLocalize->Find( "#GameUI_Console" );
if( pString )
menu->AddMenuItem("Console", V_wcsupr(pString), "OpenConsole", this);
else
menu->AddMenuItem("Console", "CONSOLE", "OpenConsole", this);
// loop through all the data adding items to the menu
for (KeyValues *dat = datafile->GetFirstSubKey(); dat != NULL; dat = dat->GetNextKey())

Loading…
Cancel
Save