forked from cafeberry/cafeberry
91 lines
2.1 KiB
C++
91 lines
2.1 KiB
C++
#include "stdafx.h"
|
|
|
|
//str1k3r - both XGetLanguage & XGetLocale were able to be stolen from Durango as its the exact same as windows
|
|
DWORD XGetLanguage()
|
|
{
|
|
WCHAR wchLocaleName[LOCALE_NAME_MAX_LENGTH];
|
|
GetUserDefaultLocaleName(wchLocaleName,LOCALE_NAME_MAX_LENGTH);
|
|
eMCLang eLang=(eMCLang)app.get_eMCLang(wchLocaleName);
|
|
|
|
#ifdef _DEBUG
|
|
app.DebugPrintf("XGetLanguage() ==> '%ls'\n", wchLocaleName);
|
|
#endif
|
|
|
|
switch(eLang)
|
|
{
|
|
case eMCLang_jaJP:
|
|
return XC_LANGUAGE_JAPANESE;
|
|
case eMCLang_deDE:
|
|
case eMCLang_deAT:
|
|
return XC_LANGUAGE_GERMAN;
|
|
case eMCLang_frFR:
|
|
case eMCLang_frCA:
|
|
return XC_LANGUAGE_FRENCH;
|
|
case eMCLang_esES:
|
|
case eMCLang_esMX:
|
|
return XC_LANGUAGE_SPANISH;
|
|
case eMCLang_itIT:
|
|
return XC_LANGUAGE_ITALIAN;
|
|
case eMCLang_koKR:
|
|
return XC_LANGUAGE_KOREAN;
|
|
case eMCLang_zhHK:
|
|
case eMCLang_zhSG:
|
|
case eMCLang_zhTW:
|
|
case eMCLang_zhCHT:
|
|
return XC_LANGUAGE_TCHINESE;
|
|
case eMCLang_zhCN:
|
|
return XC_LANGUAGE_SCHINESE;
|
|
case eMCLang_ptPT:
|
|
case eMCLang_ptBR:
|
|
return XC_LANGUAGE_PORTUGUESE;
|
|
case eMCLang_ruRU:
|
|
return XC_LANGUAGE_RUSSIAN;
|
|
case eMCLang_nlNL:
|
|
case eMCLang_nlBE:
|
|
return XC_LANGUAGE_DUTCH;
|
|
case eMCLang_fiFI:
|
|
return XC_LANGUAGE_FINISH;
|
|
case eMCLang_svSV:
|
|
case eMCLang_svSE:
|
|
return XC_LANGUAGE_SWEDISH;
|
|
case eMCLang_daDA:
|
|
case eMCLang_daDK:
|
|
return XC_LANGUAGE_DANISH;
|
|
case eMCLang_noNO:
|
|
case eMCLang_nnNO:
|
|
case eMCLang_nbNO:
|
|
return XC_LANGUAGE_BNORWEGIAN;
|
|
case eMCLang_plPL:
|
|
return XC_LANGUAGE_POLISH;
|
|
case eMCLang_trTR:
|
|
return XC_LANGUAGE_TURKISH;
|
|
case eMCLang_laLAS:
|
|
return XC_LOCALE_LATIN_AMERICA;
|
|
case eMCLang_elEL:
|
|
case eMCLang_elGR:
|
|
case eMCLang_enGR:
|
|
return XC_LANGUAGE_GREEK;
|
|
case eMCLang_csCZ:
|
|
case eMCLang_enCZ:
|
|
return XC_LANGUAGE_CZECH;
|
|
case eMCLang_skSK:
|
|
case eMCLang_enSK:
|
|
return XC_LANGUAGE_SLOVAK;
|
|
case eMCLang_enUS:
|
|
case eMCLang_enGB:
|
|
case eMCLang_enIE:
|
|
case eMCLang_enAU:
|
|
case eMCLang_enNZ:
|
|
case eMCLang_enCA:
|
|
default:
|
|
return XC_LANGUAGE_ENGLISH;
|
|
}
|
|
}
|
|
|
|
DWORD XGetLocale()
|
|
{
|
|
WCHAR wchLocaleName[LOCALE_NAME_MAX_LENGTH];
|
|
GetUserDefaultLocaleName(wchLocaleName,LOCALE_NAME_MAX_LENGTH);
|
|
|
|
return app.get_xcLang(wchLocaleName);
|
|
} |