/** * FreeRDP: A Remote Desktop Protocol Implementation * Microsoft Locales * * Copyright 2009-2012 Marc-Andre Moreau * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /* Detection of plausible keyboard layout id based on current locale (LANG) setting. */ /* * Refer to "Windows XP/Server 2003 - List of Locale IDs, Input Locale, and Language Collection": * http://www.microsoft.com/globaldev/reference/winxp/xp-lcid.mspx */ #ifndef FREERDP_LOCALE_H #define FREERDP_LOCALE_H #include #include #define AFRIKAANS 0x0436 #define ALBANIAN 0x041C #define ALSATIAN 0x0484 #define AMHARIC 0x045E #define ARABIC_SAUDI_ARABIA 0x0401 #define ARABIC_IRAQ 0x0801 #define ARABIC_EGYPT 0x0C01 #define ARABIC_LIBYA 0x1001 #define ARABIC_ALGERIA 0x1401 #define ARABIC_MOROCCO 0x1801 #define ARABIC_TUNISIA 0x1C01 #define ARABIC_OMAN 0x2001 #define ARABIC_YEMEN 0x2401 #define ARABIC_SYRIA 0x2801 #define ARABIC_JORDAN 0x2C01 #define ARABIC_LEBANON 0x3001 #define ARABIC_KUWAIT 0x3401 #define ARABIC_UAE 0x3801 #define ARABIC_BAHRAIN 0x3C01 #define ARABIC_QATAR 0x4001 #define ARMENIAN 0x042B #define ASSAMESE 0x044D #define AZERI_LATIN 0x042C #define AZERI_CYRILLIC 0x082C #define BASHKIR 0x046D #define BASQUE 0x042D #define BELARUSIAN 0x0423 #define BENGALI_INDIA 0x0445 #define BOSNIAN_LATIN 0x141A #define BRETON 0x047E #define BULGARIAN 0x0402 #define CATALAN 0x0403 #define CHEROKEE 0x045C #define CHINESE_TAIWAN 0x0404 #define CHINESE_PRC 0x0804 #define CHINESE_HONG_KONG 0x0C04 #define CHINESE_SINGAPORE 0x1004 #define CHINESE_MACAU 0x1404 #define CROATIAN 0x041A #define CROATIAN_BOSNIA_HERZEGOVINA 0x101A #define CZECH 0x0405 #define DANISH 0x0406 #define DARI 0x048C #define DIVEHI 0x0465 #define DUTCH_STANDARD 0x0413 #define DUTCH_BELGIAN 0x0813 #define ENGLISH_UNITED_STATES 0x0409 #define ENGLISH_UNITED_KINGDOM 0x0809 #define ENGLISH_AUSTRALIAN 0x0C09 #define ENGLISH_CANADIAN 0x1009 #define ENGLISH_NEW_ZEALAND 0x1409 #define ENGLISH_INDIA 0x4009 #define ENGLISH_IRELAND 0x1809 #define ENGLISH_MALAYSIA 0x4409 #define ENGLISH_SOUTH_AFRICA 0x1C09 #define ENGLISH_JAMAICA 0x2009 #define ENGLISH_CARIBBEAN 0x2409 #define ENGLISH_BELIZE 0x2809 #define ENGLISH_TRINIDAD 0x2C09 #define ENGLISH_ZIMBABWE 0x3009 #define ENGLISH_PHILIPPINES 0x3409 #define ENGLISH_SINGAPORE 0x4809 #define ESTONIAN 0x0425 #define FAEROESE 0x0438 #define FARSI 0x0429 #define FILIPINO 0x0464 #define FINNISH 0x040B #define FRENCH_STANDARD 0x040C #define FRENCH_BELGIAN 0x080C #define FRENCH_CANADIAN 0x0C0C #define FRENCH_SWISS 0x100C #define FRENCH_LUXEMBOURG 0x140C #define FRENCH_MONACO 0x180C #define FRISIAN 0x0462 #define GEORGIAN 0x0437 #define GALICIAN 0x0456 #define GERMAN_STANDARD 0x0407 #define GERMAN_SWISS 0x0807 #define GERMAN_AUSTRIAN 0x0C07 #define GERMAN_LUXEMBOURG 0x1007 #define GERMAN_LIECHTENSTEIN 0x1407 #define GREEK 0x0408 #define GREENLANDIC 0x046F #define GUJARATI 0x0447 #define HAWAIIAN 0x0475 #define HEBREW 0x040D #define HINDI 0x0439 #define HUNGARIAN 0x040E #define ICELANDIC 0x040F #define IGBO 0x0470 #define INDONESIAN 0x0421 #define INUKTITUT 0x045D #define IRISH 0x083C #define ITALIAN_STANDARD 0x0410 #define ITALIAN_SWISS 0x0810 #define JAPANESE 0x0411 #define KANNADA 0x044B #define KAZAKH 0x043F #define KHMER 0x0453 #define KICHE 0x0486 #define KINYARWANDA 0x0487 #define KONKANI 0x0457 #define KOREAN 0x0412 #define KYRGYZ 0x0440 #define LAO 0x0454 #define LATVIAN 0x0426 #define LITHUANIAN 0x0427 #define LOWER_SORBIAN 0x082E #define LUXEMBOURGISH 0x046E #define MACEDONIAN 0x042F #define MALAY_MALAYSIA 0x043E #define MALAY_BRUNEI_DARUSSALAM 0x083E #define MALAYALAM 0x044C #define MALTESE 0x043A #define MAPUDUNGUN 0x047A #define MAORI 0x0481 #define MARATHI 0x044E #define MOHAWK 0x047C #define MONGOLIAN 0x0450 #define MYANMAR 0x0455 #define NEPALI 0x0461 #define NORWEGIAN_BOKMAL 0x0414 #define NORWEGIAN_NYNORSK 0x0814 #define OCCITAN 0x0482 #define ORIYA 0x0448 #define PASHTO 0x0463 #define POLISH 0x0415 #define PORTUGUESE_BRAZILIAN 0x0416 #define PORTUGUESE_STANDARD 0x0816 #define PUNJABI 0x0446 #define QUECHUA_BOLIVIA 0x046B #define QUECHUA_ECUADOR 0x086B #define QUECHUA_PERU 0x0C6B #define ROMANIAN 0x0418 #define ROMANSH 0x0417 #define RUSSIAN 0x0419 #define SAMI_INARI 0x243B #define SAMI_LULE_NORWAY 0x103B #define SAMI_LULE_SWEDEN 0x143B #define SAMI_NORTHERN_FINLAND 0x0C3B #define SAMI_NORTHERN_NORWAY 0x043B #define SAMI_NORTHERN_SWEDEN 0x083B #define SAMI_SKOLT 0x203B #define SAMI_SOUTHERN_NORWAY 0x183B #define SAMI_SOUTHERN_SWEDEN 0x1C3B #define SANSKRIT 0x044F #define SERBIAN_LATIN 0x081A #define SERBIAN_LATIN_BOSNIA_HERZEGOVINA 0x181A #define SERBIAN_CYRILLIC 0x0C1A #define SERBIAN_CYRILLIC_BOSNIA_HERZEGOVINA 0x1C1A #define SESOTHO_SA_LEBOA 0x046C #define SINHALA 0x045B #define SLOVAK 0x041B #define SLOVENIAN 0x0424 #define SPANISH_TRADITIONAL_SORT 0x040A #define SPANISH_MEXICAN 0x080A #define SPANISH_MODERN_SORT 0x0C0A #define SPANISH_GUATEMALA 0x100A #define SPANISH_COSTA_RICA 0x140A #define SPANISH_PANAMA 0x180A #define SPANISH_DOMINICAN_REPUBLIC 0x1C0A #define SPANISH_VENEZUELA 0x200A #define SPANISH_COLOMBIA 0x240A #define SPANISH_PERU 0x280A #define SPANISH_ARGENTINA 0x2C0A #define SPANISH_ECUADOR 0x300A #define SPANISH_CHILE 0x340A #define SPANISH_UNITED_STATES 0x540A #define SPANISH_URUGUAY 0x380A #define SPANISH_PARAGUAY 0x3C0A #define SPANISH_BOLIVIA 0x400A #define SPANISH_EL_SALVADOR 0x440A #define SPANISH_HONDURAS 0x480A #define SPANISH_NICARAGUA 0x4C0A #define SPANISH_PUERTO_RICO 0x500A #define SWAHILI 0x0441 #define SWEDISH 0x041D #define SWEDISH_FINLAND 0x081D #define SYRIAC 0x045A #define TAMIL 0x0449 #define TATAR 0x0444 #define TELUGU 0x044A #define THAI 0x041E #define TIBETAN_BHUTAN 0x0851 #define TIBETAN_PRC 0x0451 #define TSWANA 0x0432 #define UKRAINIAN 0x0422 #define TURKISH 0x041F #define TURKMEN 0x0442 #define UIGHUR 0x0480 #define UPPER_SORBIAN 0x042E #define URDU 0x0420 #define URDU_INDIA 0x0820 #define UZBEK_LATIN 0x0443 #define UZBEK_CYRILLIC 0x0843 #define VIETNAMESE 0x042A #define WELSH 0x0452 #define WOLOF 0x0488 #define XHOSA 0x0434 #define YAKUT 0x0485 #define YI 0x0478 #define YORUBA 0x046A #define ZULU 0x0435 #ifdef __cplusplus extern "C" { #endif FREERDP_API DWORD freerdp_get_system_locale_id(void); FREERDP_API const char* freerdp_get_system_locale_name_from_id(DWORD localeId); FREERDP_API int freerdp_detect_keyboard_layout_from_system_locale(DWORD* keyboardLayoutId); #ifdef __cplusplus } #endif #endif /* FREERDP_LOCALE_H */