From d35aa6d4cebb5b7ae233f613dd0c4cd2f0229c3f Mon Sep 17 00:00:00 2001 From: Dmitry Chapyshev Date: Mon, 2 Jun 2008 15:34:57 +0000 Subject: [PATCH] - Add more languages - Add scrolling to position in languages list svn path=/trunk/; revision=33826 --- reactos/base/setup/usetup/genlist.c | 33 +++++++ reactos/base/setup/usetup/genlist.h | 3 + reactos/base/setup/usetup/interface/usetup.c | 2 + reactos/base/setup/usetup/lang/af-ZA.h | 11 +++ reactos/base/setup/usetup/lang/ar-AE.h | 11 +++ reactos/base/setup/usetup/lang/ar-BH.h | 11 +++ reactos/base/setup/usetup/lang/ar-JO.h | 11 +++ reactos/base/setup/usetup/lang/ar-KW.h | 11 +++ reactos/base/setup/usetup/lang/ar-LB.h | 11 +++ reactos/base/setup/usetup/lang/ar-MA.h | 11 +++ reactos/base/setup/usetup/lang/ar-OM.h | 11 +++ reactos/base/setup/usetup/lang/ar-QA.h | 11 +++ reactos/base/setup/usetup/lang/ar-SY.h | 11 +++ reactos/base/setup/usetup/lang/ar-TN.h | 11 +++ reactos/base/setup/usetup/lang/ar-YE.h | 11 +++ reactos/base/setup/usetup/lang/de-AT.h | 11 +++ reactos/base/setup/usetup/lang/de-LI.h | 11 +++ reactos/base/setup/usetup/lang/de-LU.h | 11 +++ reactos/base/setup/usetup/lang/dv-MV.h | 11 +++ reactos/base/setup/usetup/lang/eu-ES.h | 11 +++ reactos/base/setup/usetup/lang/fa-IR.h | 12 +++ reactos/base/setup/usetup/lang/fo-FO.h | 11 +++ reactos/base/setup/usetup/lang/fr-CH.h | 11 +++ reactos/base/setup/usetup/lang/fr-LU.h | 11 +++ reactos/base/setup/usetup/lang/fr-MC.h | 11 +++ reactos/base/setup/usetup/lang/gl-ES.h | 11 +++ reactos/base/setup/usetup/lang/gu-IN.h | 12 +++ reactos/base/setup/usetup/lang/hi-IN.h | 12 +++ reactos/base/setup/usetup/lang/hr-HR.h | 11 +++ reactos/base/setup/usetup/lang/id-ID.h | 11 +++ reactos/base/setup/usetup/lang/it-CH.h | 11 +++ reactos/base/setup/usetup/lang/kn-IN.h | 12 +++ reactos/base/setup/usetup/lang/kok-IN.h | 11 +++ reactos/base/setup/usetup/lang/ky-KG.h | 11 +++ reactos/base/setup/usetup/lang/mn-MN.h | 11 +++ reactos/base/setup/usetup/lang/mr-IN.h | 12 +++ reactos/base/setup/usetup/lang/ms-BN.h | 10 +++ reactos/base/setup/usetup/lang/ms-MY.h | 10 +++ reactos/base/setup/usetup/lang/pa-IN.h | 12 +++ reactos/base/setup/usetup/lang/sa-IN.h | 11 +++ reactos/base/setup/usetup/lang/sl-SI.h | 11 +++ reactos/base/setup/usetup/lang/sv-FI.h | 11 +++ reactos/base/setup/usetup/lang/sw-KE.h | 10 +++ reactos/base/setup/usetup/lang/syr-SY.h | 11 +++ reactos/base/setup/usetup/lang/ta-IN.h | 11 +++ reactos/base/setup/usetup/lang/te-IN.h | 12 +++ reactos/base/setup/usetup/lang/ur-PK.h | 11 +++ reactos/base/setup/usetup/lang/zh-MO.h | 13 +++ reactos/base/setup/usetup/muilanguages.h | 92 ++++++++++++++++++++ reactos/base/setup/usetup/settings.c | 18 +++- reactos/base/setup/usetup/settings.h | 5 +- 51 files changed, 650 insertions(+), 4 deletions(-) create mode 100644 reactos/base/setup/usetup/lang/af-ZA.h create mode 100644 reactos/base/setup/usetup/lang/ar-AE.h create mode 100644 reactos/base/setup/usetup/lang/ar-BH.h create mode 100644 reactos/base/setup/usetup/lang/ar-JO.h create mode 100644 reactos/base/setup/usetup/lang/ar-KW.h create mode 100644 reactos/base/setup/usetup/lang/ar-LB.h create mode 100644 reactos/base/setup/usetup/lang/ar-MA.h create mode 100644 reactos/base/setup/usetup/lang/ar-OM.h create mode 100644 reactos/base/setup/usetup/lang/ar-QA.h create mode 100644 reactos/base/setup/usetup/lang/ar-SY.h create mode 100644 reactos/base/setup/usetup/lang/ar-TN.h create mode 100644 reactos/base/setup/usetup/lang/ar-YE.h create mode 100644 reactos/base/setup/usetup/lang/de-AT.h create mode 100644 reactos/base/setup/usetup/lang/de-LI.h create mode 100644 reactos/base/setup/usetup/lang/de-LU.h create mode 100644 reactos/base/setup/usetup/lang/dv-MV.h create mode 100644 reactos/base/setup/usetup/lang/eu-ES.h create mode 100644 reactos/base/setup/usetup/lang/fa-IR.h create mode 100644 reactos/base/setup/usetup/lang/fo-FO.h create mode 100644 reactos/base/setup/usetup/lang/fr-CH.h create mode 100644 reactos/base/setup/usetup/lang/fr-LU.h create mode 100644 reactos/base/setup/usetup/lang/fr-MC.h create mode 100644 reactos/base/setup/usetup/lang/gl-ES.h create mode 100644 reactos/base/setup/usetup/lang/gu-IN.h create mode 100644 reactos/base/setup/usetup/lang/hi-IN.h create mode 100644 reactos/base/setup/usetup/lang/hr-HR.h create mode 100644 reactos/base/setup/usetup/lang/id-ID.h create mode 100644 reactos/base/setup/usetup/lang/it-CH.h create mode 100644 reactos/base/setup/usetup/lang/kn-IN.h create mode 100644 reactos/base/setup/usetup/lang/kok-IN.h create mode 100644 reactos/base/setup/usetup/lang/ky-KG.h create mode 100644 reactos/base/setup/usetup/lang/mn-MN.h create mode 100644 reactos/base/setup/usetup/lang/mr-IN.h create mode 100644 reactos/base/setup/usetup/lang/ms-BN.h create mode 100644 reactos/base/setup/usetup/lang/ms-MY.h create mode 100644 reactos/base/setup/usetup/lang/pa-IN.h create mode 100644 reactos/base/setup/usetup/lang/sa-IN.h create mode 100644 reactos/base/setup/usetup/lang/sl-SI.h create mode 100644 reactos/base/setup/usetup/lang/sv-FI.h create mode 100644 reactos/base/setup/usetup/lang/sw-KE.h create mode 100644 reactos/base/setup/usetup/lang/syr-SY.h create mode 100644 reactos/base/setup/usetup/lang/ta-IN.h create mode 100644 reactos/base/setup/usetup/lang/te-IN.h create mode 100644 reactos/base/setup/usetup/lang/ur-PK.h create mode 100644 reactos/base/setup/usetup/lang/zh-MO.h diff --git a/reactos/base/setup/usetup/genlist.c b/reactos/base/setup/usetup/genlist.c index 330e93ede89..ea3f2fb8e38 100644 --- a/reactos/base/setup/usetup/genlist.c +++ b/reactos/base/setup/usetup/genlist.c @@ -422,6 +422,39 @@ ScrollDownGenericList (PGENERIC_LIST List) } +VOID +ScrollToPositionGenericList (PGENERIC_LIST List, ULONG uIndex) +{ + PLIST_ENTRY Entry; + ULONG uCount = 0; + + if (List->CurrentEntry == NULL) + return; + + do + { + if (List->CurrentEntry->Entry.Flink != &List->ListHead) + { + Entry = List->CurrentEntry->Entry.Flink; + if (List->LastShown == &List->CurrentEntry->Entry) + { + List->FirstShown = List->FirstShown->Flink; + List->LastShown = List->LastShown->Flink; + } + List->CurrentEntry = CONTAINING_RECORD (Entry, GENERIC_LIST_ENTRY, Entry); + } + uCount++; + } + while (uIndex != uCount); + + if (List->Redraw) + { + DrawListEntries(List); + DrawScrollBarGenericList(List); + } +} + + VOID ScrollUpGenericList (PGENERIC_LIST List) { diff --git a/reactos/base/setup/usetup/genlist.h b/reactos/base/setup/usetup/genlist.h index 90058fdab42..b8074b7888f 100644 --- a/reactos/base/setup/usetup/genlist.h +++ b/reactos/base/setup/usetup/genlist.h @@ -67,6 +67,9 @@ ScrollPageDownGenericList(PGENERIC_LIST List); VOID ScrollPageUpGenericList(PGENERIC_LIST List); +VOID +ScrollToPositionGenericList (PGENERIC_LIST List, ULONG uIndex); + VOID SetCurrentListEntry(PGENERIC_LIST List, PGENERIC_LIST_ENTRY Entry); diff --git a/reactos/base/setup/usetup/interface/usetup.c b/reactos/base/setup/usetup/interface/usetup.c index 9fbd0afaaaf..446cf48e711 100644 --- a/reactos/base/setup/usetup/interface/usetup.c +++ b/reactos/base/setup/usetup/interface/usetup.c @@ -612,6 +612,8 @@ LanguagePage(PINPUT_RECORD Ir) xScreen - 3, yScreen - 3); + ScrollToPositionGenericList (LanguageList, GetDefaultLanguageIndex()); + MUIDisplayPage(LANGUAGE_PAGE); while(TRUE) diff --git a/reactos/base/setup/usetup/lang/af-ZA.h b/reactos/base/setup/usetup/lang/af-ZA.h new file mode 100644 index 00000000000..7d706c9bf0b --- /dev/null +++ b/reactos/base/setup/usetup/lang/af-ZA.h @@ -0,0 +1,11 @@ +#ifndef LANG_AF_ZA_H__ +#define LANG_AF_ZA_H__ + +MUI_LAYOUTS afZALayouts[] = +{ + { L"0436", L"00000409" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-AE.h b/reactos/base/setup/usetup/lang/ar-AE.h new file mode 100644 index 00000000000..006db05635e --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-AE.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_AE_H__ +#define LANG_AR_AE_H__ + +MUI_LAYOUTS arAELayouts[] = +{ + { L"0409", L"00000409" }, + { L"3801", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-BH.h b/reactos/base/setup/usetup/lang/ar-BH.h new file mode 100644 index 00000000000..077483ffc15 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-BH.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_BH_H__ +#define LANG_AR_BH_H__ + +MUI_LAYOUTS arBHLayouts[] = +{ + { L"0409", L"00000409" }, + { L"3C01", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-JO.h b/reactos/base/setup/usetup/lang/ar-JO.h new file mode 100644 index 00000000000..997f64d6deb --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-JO.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_JO_H__ +#define LANG_AR_JO_H__ + +MUI_LAYOUTS arJOLayouts[] = +{ + { L"0409", L"00000409" }, + { L"2C01", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-KW.h b/reactos/base/setup/usetup/lang/ar-KW.h new file mode 100644 index 00000000000..58f1823e107 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-KW.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_KW_H__ +#define LANG_AR_KW_H__ + +MUI_LAYOUTS arKWLayouts[] = +{ + { L"0409", L"00000409" }, + { L"3401", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-LB.h b/reactos/base/setup/usetup/lang/ar-LB.h new file mode 100644 index 00000000000..c4ae8956548 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-LB.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_LB_H__ +#define LANG_AR_LB_H__ + +MUI_LAYOUTS arLBLayouts[] = +{ + { L"0409", L"00000409" }, + { L"3001", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-MA.h b/reactos/base/setup/usetup/lang/ar-MA.h new file mode 100644 index 00000000000..47b8637f3b2 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-MA.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_MA_H__ +#define LANG_AR_MA_H__ + +MUI_LAYOUTS arMALayouts[] = +{ + { L"040C", L"0000040C" }, + { L"1801", L"00020401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-OM.h b/reactos/base/setup/usetup/lang/ar-OM.h new file mode 100644 index 00000000000..ff49fc25127 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-OM.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_OM_H__ +#define LANG_AR_OM_H__ + +MUI_LAYOUTS arOMLayouts[] = +{ + { L"0409", L"00000409" }, + { L"2001", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-QA.h b/reactos/base/setup/usetup/lang/ar-QA.h new file mode 100644 index 00000000000..c9e27ca5f70 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-QA.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_QA_H__ +#define LANG_AR_QA_H__ + +MUI_LAYOUTS arQALayouts[] = +{ + { L"0409", L"00000409" }, + { L"4001", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-SY.h b/reactos/base/setup/usetup/lang/ar-SY.h new file mode 100644 index 00000000000..93dbe9b8583 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-SY.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_SY_H__ +#define LANG_AR_SY_H__ + +MUI_LAYOUTS arSYLayouts[] = +{ + { L"0409", L"00000409" }, + { L"2801", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-TN.h b/reactos/base/setup/usetup/lang/ar-TN.h new file mode 100644 index 00000000000..2d70266f965 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-TN.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_TN_H__ +#define LANG_AR_TN_H__ + +MUI_LAYOUTS arTNLayouts[] = +{ + { L"040C", L"0000040C" }, + { L"1C01", L"00020401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ar-YE.h b/reactos/base/setup/usetup/lang/ar-YE.h new file mode 100644 index 00000000000..eea30b10da3 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ar-YE.h @@ -0,0 +1,11 @@ +#ifndef LANG_AR_YE_H__ +#define LANG_AR_YE_H__ + +MUI_LAYOUTS arYELayouts[] = +{ + { L"0409", L"00000409" }, + { L"2401", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/de-AT.h b/reactos/base/setup/usetup/lang/de-AT.h new file mode 100644 index 00000000000..3c86dfc0092 --- /dev/null +++ b/reactos/base/setup/usetup/lang/de-AT.h @@ -0,0 +1,11 @@ +#ifndef LANG_DE_AT_H__ +#define LANG_DE_AT_H__ + +MUI_LAYOUTS deATLayouts[] = +{ + { L"0C07", L"00000407" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/de-LI.h b/reactos/base/setup/usetup/lang/de-LI.h new file mode 100644 index 00000000000..1e860f9b006 --- /dev/null +++ b/reactos/base/setup/usetup/lang/de-LI.h @@ -0,0 +1,11 @@ +#ifndef LANG_DE_LI_H__ +#define LANG_DE_LI_H__ + +MUI_LAYOUTS deLILayouts[] = +{ + { L"1407", L"00000407" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/de-LU.h b/reactos/base/setup/usetup/lang/de-LU.h new file mode 100644 index 00000000000..2c7f683b575 --- /dev/null +++ b/reactos/base/setup/usetup/lang/de-LU.h @@ -0,0 +1,11 @@ +#ifndef LANG_DE_LU_H__ +#define LANG_DE_LU_H__ + +MUI_LAYOUTS deLULayouts[] = +{ + { L"1007", L"00000407" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/dv-MV.h b/reactos/base/setup/usetup/lang/dv-MV.h new file mode 100644 index 00000000000..90f33c4c490 --- /dev/null +++ b/reactos/base/setup/usetup/lang/dv-MV.h @@ -0,0 +1,11 @@ +#ifndef LANG_DV_MV_H__ +#define LANG_DV_MV_H__ + +MUI_LAYOUTS dvMVLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0465", L"00000465" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/eu-ES.h b/reactos/base/setup/usetup/lang/eu-ES.h new file mode 100644 index 00000000000..ae9dd39a540 --- /dev/null +++ b/reactos/base/setup/usetup/lang/eu-ES.h @@ -0,0 +1,11 @@ +#ifndef LANG_EU_ES_H__ +#define LANG_EU_ES_H__ + +MUI_LAYOUTS euESLayouts[] = +{ + { L"042D", L"0000040A" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/fa-IR.h b/reactos/base/setup/usetup/lang/fa-IR.h new file mode 100644 index 00000000000..219ae1c4db8 --- /dev/null +++ b/reactos/base/setup/usetup/lang/fa-IR.h @@ -0,0 +1,12 @@ +#ifndef LANG_FA_IR_H__ +#define LANG_FA_IR_H__ + +MUI_LAYOUTS faIRLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0429", L"00000429" }, + { L"0429", L"00000401" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/fo-FO.h b/reactos/base/setup/usetup/lang/fo-FO.h new file mode 100644 index 00000000000..cede112ea52 --- /dev/null +++ b/reactos/base/setup/usetup/lang/fo-FO.h @@ -0,0 +1,11 @@ +#ifndef LANG_FO_FO_H__ +#define LANG_FO_FO_H__ + +MUI_LAYOUTS foFOLayouts[] = +{ + { L"0438", L"00000406" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/fr-CH.h b/reactos/base/setup/usetup/lang/fr-CH.h new file mode 100644 index 00000000000..c6e2378ffd7 --- /dev/null +++ b/reactos/base/setup/usetup/lang/fr-CH.h @@ -0,0 +1,11 @@ +#ifndef LANG_FR_CH_H__ +#define LANG_FR_CH_H__ + +MUI_LAYOUTS frCHLayouts[] = +{ + { L"100C", L"0000100C" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/fr-LU.h b/reactos/base/setup/usetup/lang/fr-LU.h new file mode 100644 index 00000000000..0a50dbdd121 --- /dev/null +++ b/reactos/base/setup/usetup/lang/fr-LU.h @@ -0,0 +1,11 @@ +#ifndef LANG_FR_LU_H__ +#define LANG_FR_LU_H__ + +MUI_LAYOUTS frLULayouts[] = +{ + { L"140C", L"0000040C" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/fr-MC.h b/reactos/base/setup/usetup/lang/fr-MC.h new file mode 100644 index 00000000000..6e564feae00 --- /dev/null +++ b/reactos/base/setup/usetup/lang/fr-MC.h @@ -0,0 +1,11 @@ +#ifndef LANG_FR_MC_H__ +#define LANG_FR_MC_H__ + +MUI_LAYOUTS frMCLayouts[] = +{ + { L"180C", L"0000040C" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/gl-ES.h b/reactos/base/setup/usetup/lang/gl-ES.h new file mode 100644 index 00000000000..35dcf5ec1f2 --- /dev/null +++ b/reactos/base/setup/usetup/lang/gl-ES.h @@ -0,0 +1,11 @@ +#ifndef LANG_GL_ES_H__ +#define LANG_GL_ES_H__ + +MUI_LAYOUTS glESLayouts[] = +{ + { L"0456", L"0000040A" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/gu-IN.h b/reactos/base/setup/usetup/lang/gu-IN.h new file mode 100644 index 00000000000..5443e1dc3ec --- /dev/null +++ b/reactos/base/setup/usetup/lang/gu-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_GU_IN_H__ +#define LANG_GU_IN_H__ + +MUI_LAYOUTS guINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0447", L"00000447" }, + { L"0439", L"00000439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/hi-IN.h b/reactos/base/setup/usetup/lang/hi-IN.h new file mode 100644 index 00000000000..b01731728fb --- /dev/null +++ b/reactos/base/setup/usetup/lang/hi-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_HI_IN_H__ +#define LANG_HI_IN_H__ + +MUI_LAYOUTS hiINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0439", L"00010439" }, + { L"0439", L"00000439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/hr-HR.h b/reactos/base/setup/usetup/lang/hr-HR.h new file mode 100644 index 00000000000..8622ea5339b --- /dev/null +++ b/reactos/base/setup/usetup/lang/hr-HR.h @@ -0,0 +1,11 @@ +#ifndef LANG_HR_HR_H__ +#define LANG_HR_HR_H__ + +MUI_LAYOUTS hrHRLayouts[] = +{ + { L"041A", L"0000041A" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/id-ID.h b/reactos/base/setup/usetup/lang/id-ID.h new file mode 100644 index 00000000000..2346f239152 --- /dev/null +++ b/reactos/base/setup/usetup/lang/id-ID.h @@ -0,0 +1,11 @@ +#ifndef LANG_ID_ID_H__ +#define LANG_ID_ID_H__ + +MUI_LAYOUTS idIDLayouts[] = +{ + { L"0421", L"00000409" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/it-CH.h b/reactos/base/setup/usetup/lang/it-CH.h new file mode 100644 index 00000000000..f0cbd7c4f83 --- /dev/null +++ b/reactos/base/setup/usetup/lang/it-CH.h @@ -0,0 +1,11 @@ +#ifndef LANG_IT_CH_H__ +#define LANG_IT_CH_H__ + +MUI_LAYOUTS itCHLayouts[] = +{ + { L"0810", L"00000410" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/kn-IN.h b/reactos/base/setup/usetup/lang/kn-IN.h new file mode 100644 index 00000000000..241ff8700cc --- /dev/null +++ b/reactos/base/setup/usetup/lang/kn-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_KN_IN_H__ +#define LANG_KN_IN_H__ + +MUI_LAYOUTS knINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"044B", L"0000044B" }, + { L"0439", L"00010439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/kok-IN.h b/reactos/base/setup/usetup/lang/kok-IN.h new file mode 100644 index 00000000000..ea9b692a2fa --- /dev/null +++ b/reactos/base/setup/usetup/lang/kok-IN.h @@ -0,0 +1,11 @@ +#ifndef LANG_KOK_IN_H__ +#define LANG_KOK_IN_H__ + +MUI_LAYOUTS kokINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0457", L"00000439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ky-KG.h b/reactos/base/setup/usetup/lang/ky-KG.h new file mode 100644 index 00000000000..b6571f61f88 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ky-KG.h @@ -0,0 +1,11 @@ +#ifndef LANG_KY_KG_H__ +#define LANG_KY_KG_H__ + +MUI_LAYOUTS kyKGLayouts[] = +{ + { L"0440", L"00000440" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/mn-MN.h b/reactos/base/setup/usetup/lang/mn-MN.h new file mode 100644 index 00000000000..f503f99c53b --- /dev/null +++ b/reactos/base/setup/usetup/lang/mn-MN.h @@ -0,0 +1,11 @@ +#ifndef LANG_MN_MN_H__ +#define LANG_MN_MN_H__ + +MUI_LAYOUTS mnMNLayouts[] = +{ + { L"0450", L"00000450" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/mr-IN.h b/reactos/base/setup/usetup/lang/mr-IN.h new file mode 100644 index 00000000000..58840e927bd --- /dev/null +++ b/reactos/base/setup/usetup/lang/mr-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_MR_IN_H__ +#define LANG_MR_IN_H__ + +MUI_LAYOUTS mrINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"044E", L"0000044E" }, + { L"044E", L"00000439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ms-BN.h b/reactos/base/setup/usetup/lang/ms-BN.h new file mode 100644 index 00000000000..24ef23d8cbe --- /dev/null +++ b/reactos/base/setup/usetup/lang/ms-BN.h @@ -0,0 +1,10 @@ +#ifndef LANG_MS_BN_H__ +#define LANG_MS_BN_H__ + +MUI_LAYOUTS msBNLayouts[] = +{ + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ms-MY.h b/reactos/base/setup/usetup/lang/ms-MY.h new file mode 100644 index 00000000000..1abc1a33039 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ms-MY.h @@ -0,0 +1,10 @@ +#ifndef LANG_MS_MY_H__ +#define LANG_MS_MY_H__ + +MUI_LAYOUTS msMYLayouts[] = +{ + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/pa-IN.h b/reactos/base/setup/usetup/lang/pa-IN.h new file mode 100644 index 00000000000..44be5985a03 --- /dev/null +++ b/reactos/base/setup/usetup/lang/pa-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_PA_IN_H__ +#define LANG_PA_IN_H__ + +MUI_LAYOUTS paINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0446", L"00000446" }, + { L"0439", L"00010439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/sa-IN.h b/reactos/base/setup/usetup/lang/sa-IN.h new file mode 100644 index 00000000000..b186ff42fc9 --- /dev/null +++ b/reactos/base/setup/usetup/lang/sa-IN.h @@ -0,0 +1,11 @@ +#ifndef LANG_SA_IN_H__ +#define LANG_SA_IN_H__ + +MUI_LAYOUTS saINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"044F", L"00000439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/sl-SI.h b/reactos/base/setup/usetup/lang/sl-SI.h new file mode 100644 index 00000000000..9278ee7d728 --- /dev/null +++ b/reactos/base/setup/usetup/lang/sl-SI.h @@ -0,0 +1,11 @@ +#ifndef LANG_SL_SI_H__ +#define LANG_SL_SI_H__ + +MUI_LAYOUTS slSILayouts[] = +{ + { L"0424", L"00000424" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/sv-FI.h b/reactos/base/setup/usetup/lang/sv-FI.h new file mode 100644 index 00000000000..b377d7f7e05 --- /dev/null +++ b/reactos/base/setup/usetup/lang/sv-FI.h @@ -0,0 +1,11 @@ +#ifndef LANG_SV_FI_H__ +#define LANG_SV_FI_H__ + +MUI_LAYOUTS svFILayouts[] = +{ + { L"081D", L"0000041D" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/sw-KE.h b/reactos/base/setup/usetup/lang/sw-KE.h new file mode 100644 index 00000000000..c73f07d2e7d --- /dev/null +++ b/reactos/base/setup/usetup/lang/sw-KE.h @@ -0,0 +1,10 @@ +#ifndef LANG_SW_KE_H__ +#define LANG_SW_KE_H__ + +MUI_LAYOUTS swKELayouts[] = +{ + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/syr-SY.h b/reactos/base/setup/usetup/lang/syr-SY.h new file mode 100644 index 00000000000..02435a2a520 --- /dev/null +++ b/reactos/base/setup/usetup/lang/syr-SY.h @@ -0,0 +1,11 @@ +#ifndef LANG_SYR_SY_H__ +#define LANG_SYR_SY_H__ + +MUI_LAYOUTS syrSYLayouts[] = +{ + { L"0409", L"00000409" }, + { L"045A", L"0000045A" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ta-IN.h b/reactos/base/setup/usetup/lang/ta-IN.h new file mode 100644 index 00000000000..a111ada8c02 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ta-IN.h @@ -0,0 +1,11 @@ +#ifndef LANG_TA_IN_H__ +#define LANG_TA_IN_H__ + +MUI_LAYOUTS taINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0449", L"00000449" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/te-IN.h b/reactos/base/setup/usetup/lang/te-IN.h new file mode 100644 index 00000000000..b9072ed9c03 --- /dev/null +++ b/reactos/base/setup/usetup/lang/te-IN.h @@ -0,0 +1,12 @@ +#ifndef LANG_TE_IN_H__ +#define LANG_TE_IN_H__ + +MUI_LAYOUTS teINLayouts[] = +{ + { L"0409", L"00000409" }, + { L"044A", L"0000044A" }, + { L"0439", L"00010439" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/ur-PK.h b/reactos/base/setup/usetup/lang/ur-PK.h new file mode 100644 index 00000000000..b1129dee966 --- /dev/null +++ b/reactos/base/setup/usetup/lang/ur-PK.h @@ -0,0 +1,11 @@ +#ifndef LANG_UR_PK_H__ +#define LANG_UR_PK_H__ + +MUI_LAYOUTS urPKLayouts[] = +{ + { L"0420", L"00000420" }, + { L"0409", L"00000409" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/lang/zh-MO.h b/reactos/base/setup/usetup/lang/zh-MO.h new file mode 100644 index 00000000000..6194ed3ad64 --- /dev/null +++ b/reactos/base/setup/usetup/lang/zh-MO.h @@ -0,0 +1,13 @@ +#ifndef LANG_ZH_MO_H__ +#define LANG_ZH_MO_H__ + +MUI_LAYOUTS zhMOLayouts[] = +{ + { L"0409", L"00000409" }, + { L"0804", L"E00E0804" }, + { L"0404", L"E0020404" }, + { L"0404", L"E0080404" }, + { NULL, NULL } +}; + +#endif diff --git a/reactos/base/setup/usetup/muilanguages.h b/reactos/base/setup/usetup/muilanguages.h index ec3335ab884..01e279bade1 100644 --- a/reactos/base/setup/usetup/muilanguages.h +++ b/reactos/base/setup/usetup/muilanguages.h @@ -1,19 +1,35 @@ #ifndef LANG_MUI_LANGUAGES_H__ #define LANG_MUI_LANGUAGES_H__ +#include "lang/af-ZA.h" +#include "lang/ar-AE.h" +#include "lang/ar-BH.h" #include "lang/ar-DZ.h" #include "lang/ar-EG.h" #include "lang/ar-IQ.h" +#include "lang/ar-JO.h" +#include "lang/ar-KW.h" +#include "lang/ar-LB.h" #include "lang/ar-LY.h" +#include "lang/ar-MA.h" +#include "lang/ar-OM.h" +#include "lang/ar-QA.h" #include "lang/ar-SA.h" +#include "lang/ar-SY.h" +#include "lang/ar-TN.h" +#include "lang/ar-YE.h" #include "lang/az-AZ.h" #include "lang/be-BY.h" #include "lang/bg-BG.h" #include "lang/ca-ES.h" #include "lang/cs-CZ.h" #include "lang/da-DK.h" +#include "lang/de-AT.h" #include "lang/de-CH.h" #include "lang/de-DE.h" +#include "lang/de-LI.h" +#include "lang/de-LU.h" +#include "lang/dv-MV.h" #include "lang/el-GR.h" #include "lang/en-AU.h" #include "lang/en-BZ.h" @@ -48,57 +64,99 @@ #include "lang/es-UY.h" #include "lang/es-VE.h" #include "lang/et-EE.h" +#include "lang/eu-ES.h" +#include "lang/fa-IR.h" #include "lang/fi-FI.h" +#include "lang/fo-FO.h" #include "lang/fr-BE.h" #include "lang/fr-CA.h" +#include "lang/fr-CH.h" #include "lang/fr-FR.h" +#include "lang/fr-LU.h" +#include "lang/fr-MC.h" +#include "lang/gl-ES.h" +#include "lang/gu-IN.h" #include "lang/he-IL.h" +#include "lang/hi-IN.h" +#include "lang/hr-HR.h" #include "lang/hu-HU.h" #include "lang/hy-AM.h" +#include "lang/id-ID.h" #include "lang/is-IS.h" +#include "lang/it-CH.h" #include "lang/it-IT.h" #include "lang/ja-JP.h" #include "lang/ka-GE.h" #include "lang/kk-KZ.h" +#include "lang/kn-IN.h" +#include "lang/kok-IN.h" #include "lang/ko-KR.h" +#include "lang/ky-KG.h" #include "lang/lt-LT.h" #include "lang/lv-LV.h" #include "lang/mk-MK.h" +#include "lang/mn-MN.h" +#include "lang/mr-IN.h" +#include "lang/ms-BN.h" +#include "lang/ms-MY.h" #include "lang/nl-BE.h" #include "lang/nl-NL.h" #include "lang/nn-NO.h" +#include "lang/pa-IN.h" #include "lang/pl-PL.h" #include "lang/pt-BR.h" #include "lang/pt-PT.h" #include "lang/ro-RO.h" #include "lang/ru-RU.h" +#include "lang/sa-IN.h" #include "lang/sk-SK.h" +#include "lang/sl-SI.h" #include "lang/sq-AL.h" #include "lang/sr-SP.h" +#include "lang/sv-FI.h" #include "lang/sv-SE.h" +#include "lang/sw-KE.h" +#include "lang/syr-SY.h" +#include "lang/ta-IN.h" +#include "lang/te-IN.h" #include "lang/th-TH.h" #include "lang/tr-TR.h" #include "lang/tt-TA.h" #include "lang/uk-UA.h" +#include "lang/ur-PK.h" #include "lang/uz-UZ.h" #include "lang/vi-VN.h" #include "lang/zh-CN.h" #include "lang/zh-HK.h" +#include "lang/zh-MO.h" #include "lang/zh-SG.h" #include "lang/zh-TW.h" const MUI_LANGUAGE LanguageList[] = { /* Lang ID, ANSI CP, OEM CP, MAC CP, Language Name, page strgs,error strings, other strings, fonts, kb layouts */ + {L"00000436", L"1252", L"850", L"10000", L"Afrikaans", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, afZALayouts }, {L"0000041C", L"1250", L"852", L"10029", L"Albanian", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, sqALLayouts }, {L"00000401", L"1256", L"720", L"10004", L"Arabic (Saudi Arabia)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arSALayouts }, {L"00000801", L"1256", L"720", L"10004", L"Arabic (Iraq)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arIQLayouts }, {L"00000C01", L"1256", L"720", L"10004", L"Arabic (Egypt)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arEGLayouts }, {L"00001001", L"1256", L"720", L"10004", L"Arabic (Libya)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arLYLayouts }, {L"00001401", L"1256", L"720", L"10004", L"Arabic (Algeria)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arDZLayouts }, + {L"00001801", L"1256", L"720", L"10004", L"Arabic (Morocco)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arMALayouts }, + {L"00001C01", L"1256", L"720", L"10004", L"Arabic (Tunisia)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arTNLayouts }, + {L"00002001", L"1256", L"720", L"10004", L"Arabic (Oman)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arOMLayouts }, + {L"00002401", L"1256", L"720", L"10004", L"Arabic (Yemen)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arYELayouts }, + {L"00002801", L"1256", L"720", L"10004", L"Arabic (Syria)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arSYLayouts }, + {L"00002C01", L"1256", L"720", L"10004", L"Arabic (Jordan)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arJOLayouts }, + {L"00003001", L"1256", L"720", L"10004", L"Arabic (Lebanon)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arLBLayouts }, + {L"00003401", L"1256", L"720", L"10004", L"Arabic (Kuwait)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arKWLayouts }, + {L"00003801", L"1256", L"720", L"10004", L"Arabic (U.A.E.)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arAELayouts }, + {L"00003C01", L"1256", L"720", L"10004", L"Arabic (Bahrain)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arBHLayouts }, + {L"00004001", L"1256", L"720", L"10004", L"Arabic (Qatar)", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, arQALayouts }, {L"0000042B", L"0", L"1", L"2", L"Armenian", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,hyAMLayouts }, {L"0000082C", L"1251", L"866", L"10007", L"Azeri (Cyrillic)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, azAZLayouts }, {L"0000042C", L"1254", L"857", L"10081", L"Azeri (Latin)", enUSPages, enUSErrorEntries, enUSStrings, CP1254Fonts, azAZLayouts }, + {L"0000042D", L"1252", L"850", L"10000", L"Basque", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, euESLayouts }, {L"00000423", L"1251", L"866", L"10007", L"Belarusian", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, beBYLayouts }, {L"00000402", L"1251", L"866", L"10007", L"Bulgarian", bgBGPages, bgBGErrorEntries, bgBGStrings, CP1251Fonts, bgBGLayouts }, {L"00000455", L"0", L"1", L"2", L"Burmese", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,enUSLayouts }, @@ -107,8 +165,11 @@ const MUI_LANGUAGE LanguageList[] = {L"00000804", L"936", L"936", L"10008", L"Chinese (PRC)", enUSPages, enUSErrorEntries, enUSStrings, CP936Fonts, zhCNLayouts }, {L"00000C04", L"950", L"950", L"10008", L"Chinese (Hong Kong S.A.R.)", enUSPages, enUSErrorEntries, enUSStrings, CP950Fonts, zhHKLayouts }, {L"00001004", L"936", L"936", L"10008", L"Chinese (Singapore)", enUSPages, enUSErrorEntries, enUSStrings, CP936Fonts, zhSGLayouts }, + {L"00001404", L"950", L"950", L"10002", L"Chinese (Macau S.A.R.)", enUSPages, enUSErrorEntries, enUSStrings, CP950Fonts, zhMOLayouts }, + {L"0000041A", L"1250", L"852", L"10029", L"Croatian", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, hrHRLayouts }, {L"00000405", L"1250", L"852", L"10029", L"Czech", csCZPages, csCZErrorEntries, csCZStrings, CP1250Fonts, csCZLayouts }, {L"00000406", L"1252", L"850", L"10000", L"Danish", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, daDKLayouts }, + {L"00000465", L"0", L"1", L"2", L"Divehi (Maldives)", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,dvMVLayouts }, {L"00000413", L"1252", L"850", L"10000", L"Dutch (Netherlands)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, nlNLLayouts }, {L"00000813", L"1252", L"850", L"10000", L"Dutch (Belgium)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, nlBELayouts }, {L"00000409", L"1252", L"437", L"10000", L"English (United States)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, enUSLayouts }, @@ -125,33 +186,57 @@ const MUI_LANGUAGE LanguageList[] = {L"00003009", L"1252", L"437", L"10000", L"English (Zimbabwe)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, enZWLayouts }, {L"00003409", L"1252", L"437", L"10000", L"English (Philippines)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, enPHLayouts }, {L"00000425", L"1257", L"775", L"10029", L"Estonian", enUSPages, enUSErrorEntries, enUSStrings, CP1257Fonts, etEELayouts }, + {L"00000438", L"1252", L"850", L"10079", L"Faeroese", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, foFOLayouts }, + {L"00000429", L"1256", L"720", L"10004", L"Farsi", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, faIRLayouts }, {L"0000040B", L"1252", L"850", L"10000", L"Finnish", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, fiFILayouts }, {L"00000C0C", L"1252", L"850", L"10000", L"French (Canada)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frCALayouts }, {L"0000040C", L"1252", L"850", L"10000", L"French (France)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frFRLayouts }, {L"0000080C", L"1252", L"850", L"10000", L"French (Belgium)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frBELayouts }, + {L"0000100C", L"1252", L"850", L"10000", L"French (Switzerland)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frCHLayouts }, + {L"0000140C", L"1252", L"850", L"10000", L"French (Luxembourg)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frLULayouts }, + {L"0000180C", L"1252", L"850", L"10000", L"French (Monaco)", frFRPages, frFRErrorEntries, frFRStrings, CP1252Fonts, frMCLayouts }, + {L"00000456", L"1252", L"850", L"10000", L"Galician (Spain)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, glESLayouts }, {L"00000437", L"0", L"1", L"2", L"Georgian", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,kaGELayouts }, {L"00000407", L"1252", L"850", L"10000", L"German (Germany)", deDEPages, deDEErrorEntries, deDEStrings, CP1252Fonts, deDELayouts }, {L"00000807", L"1252", L"850", L"10000", L"German (Switzerland)", deDEPages, deDEErrorEntries, deDEStrings, CP1252Fonts, deCHLayouts }, + {L"00000C07", L"1252", L"850", L"10000", L"German (Austria)", deDEPages, deDEErrorEntries, deDEStrings, CP1252Fonts, deATLayouts }, + {L"00001007", L"1252", L"850", L"10000", L"German (Luxembourg)", deDEPages, deDEErrorEntries, deDEStrings, CP1252Fonts, deLULayouts }, + {L"00001407", L"1252", L"850", L"10000", L"German (Liechtenstein)", deDEPages, deDEErrorEntries, deDEStrings, CP1252Fonts, deLILayouts }, {L"00000408", L"1253", L"737", L"10006", L"Greek", elGRPages, elGRErrorEntries, elGRStrings, CP1253Fonts, elGRLayouts }, + {L"00000447", L"0", L"1", L"2", L"Gujarati (India)", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,guINLayouts }, {L"0000040D", L"1255", L"862", L"10005", L"Hebrew", enUSPages, enUSErrorEntries, enUSStrings, CP1255Fonts, heILLayouts }, + {L"00000439", L"1252", L"437", L"10000", L"Hindi", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,hiINLayouts }, {L"0000040E", L"1250", L"852", L"10029", L"Hungarian", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, huHULayouts }, {L"0000040F", L"1252", L"850", L"10079", L"Icelandic", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, isISLayouts }, + {L"00000421", L"1252", L"850", L"10079", L"Indonesian", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, idIDLayouts }, {L"00000410", L"1252", L"850", L"10000", L"Italian (Italy)", itITPages, itITErrorEntries, itITStrings, CP1252Fonts, itITLayouts }, + {L"00000810", L"1252", L"850", L"10000", L"Italian (Switzerland)", itITPages, itITErrorEntries, itITStrings, CP1252Fonts, itCHLayouts }, {L"00000411", L"932", L"932", L"10001", L"Japanese", enUSPages, enUSErrorEntries, enUSStrings, CP932Fonts, jaJPLayouts }, + {L"0000044B", L"1252", L"437", L"10079", L"Kannada (India)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, knINLayouts }, {L"0000043F", L"1251", L"866", L"10007", L"Kazakh", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, kkKZLayouts }, + {L"00000457", L"0", L"437", L"2", L"Konkani", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,kokINLayouts}, {L"00000412", L"949", L"949", L"10003", L"Korean", enUSPages, enUSErrorEntries, enUSStrings, CP949Fonts, koKRLayouts }, + {L"00000440", L"1251", L"866", L"10007", L"Kyrgyz (Kyrgyzstan)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, kyKGLayouts }, {L"00000426", L"1257", L"775", L"10029", L"Latvian", enUSPages, enUSErrorEntries, enUSStrings, CP1257Fonts, lvLVLayouts }, {L"00000427", L"1257", L"775", L"10029", L"Lithuanian", ltLTPages, ltLTErrorEntries, ltLTStrings, CP1257Fonts, ltLTLayouts }, {L"0000042F", L"1251", L"866", L"10007", L"FYRO Macedonian", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, mkMKLayouts }, + {L"0000083E", L"1252", L"850", L"10000", L"Malay (Brunei Darussalam)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, msBNLayouts }, + {L"0000043E", L"1252", L"850", L"10000", L"Malay (Malaysia)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, msMYLayouts }, + {L"0000044E", L"0", L"1", L"2", L"Marathi", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,mrINLayouts }, + {L"00000450", L"1251", L"866", L"10007", L"Mongolian (Mongolia)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, mnMNLayouts }, {L"00000414", L"1252", L"850", L"10000", L"Norwegian (Bokmal)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, nnNOLayouts }, + {L"00000814", L"1252", L"850", L"10000", L"Norwegian (Nynorsk)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, nnNOLayouts }, {L"00000415", L"1250", L"852", L"10029", L"Polish", plPLPages, plPLErrorEntries, plPLStrings, CP1250Fonts, plPLLayouts }, {L"00000816", L"1252", L"850", L"10000", L"Portuguese (Portugal)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, ptPTLayouts }, {L"00000416", L"1252", L"850", L"10000", L"Portuguese (Brazil)", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, ptBRLayouts }, + {L"00000446", L"0", L"1", L"2", L"Punjabi (India)", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,paINLayouts }, {L"00000418", L"1250", L"852", L"10029", L"Romanian", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, roROLayouts }, {L"00000419", L"1251", L"866", L"10007", L"Russian", ruRUPages, ruRUErrorEntries, ruRUStrings, CP1251Fonts, ruRULayouts }, + {L"0000044F", L"0", L"1", L"2", L"Sanskrit", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,saINLayouts }, {L"00000C1A", L"1251", L"855", L"10007", L"Serbian (Cyrillic)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, srSPLayouts }, {L"0000081A", L"1250", L"852", L"10029", L"Serbian (Latin)", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, srSPLayouts }, {L"0000041B", L"1250", L"852", L"10029", L"Slovak", skSKPages, skSKErrorEntries, skSKStrings, CP1250Fonts, skSKLayouts }, + {L"00000424", L"1250", L"852", L"10029", L"Slovenian", enUSPages, enUSErrorEntries, enUSStrings, CP1250Fonts, slSILayouts }, {L"0000040A", L"1252", L"850", L"10000", L"Spanish (Traditional Sort)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esESLayouts }, {L"0000080A", L"1252", L"850", L"10000", L"Spanish (Mexico)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esMXLayouts }, {L"00000C0A", L"1252", L"850", L"10000", L"Spanish (International Sort)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esESLayouts }, @@ -172,11 +257,18 @@ const MUI_LANGUAGE LanguageList[] = {L"0000480A", L"1252", L"850", L"10000", L"Spanish (Honduras)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esHNLayouts }, {L"00004C0A", L"1252", L"850", L"10000", L"Spanish (Nicaragua)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esNILayouts }, {L"0000500A", L"1252", L"850", L"10000", L"Spanish (Puerto Rico)", esESPages, esESErrorEntries, esESStrings, CP1252Fonts, esPRLayouts }, + {L"00000441", L"1252", L"437", L"10000", L"Swahili", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, swKELayouts }, {L"0000041D", L"1252", L"850", L"10000", L"Swedish", svSEPages, svSEErrorEntries, svSEStrings, CP1252Fonts, svSELayouts }, + {L"0000081D", L"1252", L"850", L"10000", L"Swedish (Finland)", svSEPages, svSEErrorEntries, svSEStrings, CP1252Fonts, svFILayouts }, + {L"0000045A", L"0", L"1", L"2", L"Syriac (Syria)", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,syrSYLayouts}, + {L"00000449", L"0", L"1", L"2", L"Tamil", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,taINLayouts }, {L"00000444", L"1251", L"866", L"10007", L"Tatar", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, ttTALayouts }, + {L"0000044A", L"0", L"1", L"2", L"Telugu (India)", enUSPages, enUSErrorEntries, enUSStrings, UnicodeFonts,teINLayouts }, {L"0000041E", L"874", L"874", L"10021", L"Thai", enUSPages, enUSErrorEntries, enUSStrings, CP874Fonts, thTHLayouts }, {L"0000041F", L"1254", L"857", L"10081", L"Turkish", enUSPages, enUSErrorEntries, enUSStrings, CP1254Fonts, trTRLayouts }, {L"00000422", L"1251", L"866", L"10017", L"Ukrainian", ukUAPages, ukUAErrorEntries, ukUAStrings, CP1251Fonts, ukUALayouts }, + {L"00000420", L"1256", L"720", L"10004", L"Urdu", enUSPages, enUSErrorEntries, enUSStrings, CP1256Fonts, urPKLayouts }, + {L"00000443", L"1254", L"857", L"10029", L"Uzbek (Latin)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, uzUZLayouts }, {L"00000843", L"1251", L"866", L"10007", L"Uzbek (Cyrillic)", enUSPages, enUSErrorEntries, enUSStrings, CP1251Fonts, uzUZLayouts }, {L"0000042A", L"1258", L"1258",L"10000", L"Vietnamese", enUSPages, enUSErrorEntries, enUSStrings, CP1258Fonts, viVNLayouts }, {L"00000435", L"1252", L"850", L"10000", L"Zulu", enUSPages, enUSErrorEntries, enUSStrings, CP1252Fonts, enUSLayouts }, diff --git a/reactos/base/setup/usetup/settings.c b/reactos/base/setup/usetup/settings.c index 7afb9bd7f5f..5f4cb4a046b 100644 --- a/reactos/base/setup/usetup/settings.c +++ b/reactos/base/setup/usetup/settings.c @@ -742,7 +742,15 @@ CreateKeyboardDriverList(HINF InfFile) return List; } -PGENERIC_LIST +ULONG DefaultLanguageIndex = 0; + +ULONG +GetDefaultLanguageIndex(VOID) +{ + return DefaultLanguageIndex; +} + +PGENERIC_LIST CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage) { CHAR Buffer[128]; @@ -751,6 +759,7 @@ CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage) PWCHAR KeyName; PWCHAR KeyValue; PWCHAR UserData; + ULONG uIndex = 0; /* Get default language id */ if (!SetupFindFirstLineW (InfFile, L"NLS", L"DefaultLanguage", &Context)) @@ -769,7 +778,7 @@ CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage) if (!SetupFindFirstLineW (InfFile, L"Language", NULL, &Context)) { - DestroyGenericList(List, FALSE); + DestroyGenericList(List, FALSE); return NULL; } @@ -792,11 +801,14 @@ CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage) wcscpy(UserData, KeyName); + if (!_wcsicmp(KeyName, DefaultLanguage)) DefaultLanguageIndex = uIndex; + sprintf(Buffer, "%S", KeyValue); AppendGenericListEntry(List, Buffer, UserData, - _wcsicmp(KeyName, DefaultLanguage) ? FALSE : TRUE); + FALSE); + uIndex++; } while (SetupFindNextLine(&Context, &Context)); return List; diff --git a/reactos/base/setup/usetup/settings.h b/reactos/base/setup/usetup/settings.h index d578dd5bcf5..7b823d0a55c 100644 --- a/reactos/base/setup/usetup/settings.h +++ b/reactos/base/setup/usetup/settings.h @@ -49,7 +49,10 @@ PGENERIC_LIST CreateKeyboardLayoutList(HINF InfFile, WCHAR *DefaultKBLayout); PGENERIC_LIST -CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage); +CreateLanguageList(HINF InfFile, WCHAR * DefaultLanguage); + +ULONG +GetDefaultLanguageIndex(VOID); BOOLEAN ProcessLocaleRegistry(PGENERIC_LIST List); -- 2.17.1