From 3f6b60365b39244a2568507cd9745422a079dd75 Mon Sep 17 00:00:00 2001 From: Aleksey Bragin Date: Sat, 6 Oct 2007 11:47:06 +0000 Subject: [PATCH] Dmitry Chapyshev - Add some more dialogs to input.dll, and even some functionality, but it still needs a lot of work. - Add input.dll and systeminfo.exe to the bootcd svn path=/trunk/; revision=29416 --- reactos/boot/bootdata/packages/reactos.dff | 2 + reactos/dll/cpl/input/add.c | 120 +++++++++++++++++-- reactos/dll/cpl/input/advanced.c | 20 +++- reactos/dll/cpl/input/changekeyseq.c | 8 +- reactos/dll/cpl/input/input.c | 8 +- reactos/dll/cpl/input/input.h | 7 ++ reactos/dll/cpl/input/input.rbuild | 3 +- reactos/dll/cpl/input/input.rc | 2 + reactos/dll/cpl/input/inputlangprop.c | 23 +++- reactos/dll/cpl/input/keysettings.c | 8 +- reactos/dll/cpl/input/lang/de-DE.rc | 129 +++++++++++++++++++- reactos/dll/cpl/input/lang/en-US.rc | 130 ++++++++++++++++++++- reactos/dll/cpl/input/lang/fr-FR.rc | 129 +++++++++++++++++++- reactos/dll/cpl/input/lang/uk-UA.rc | 129 +++++++++++++++++++- reactos/dll/cpl/input/langbar.c | 8 +- reactos/dll/cpl/input/misc.c | 69 +++++++++++ reactos/dll/cpl/input/resource.h | 38 +++++- reactos/dll/cpl/input/settings.c | 70 ++++++++++- 18 files changed, 842 insertions(+), 61 deletions(-) create mode 100644 reactos/dll/cpl/input/misc.c diff --git a/reactos/boot/bootdata/packages/reactos.dff b/reactos/boot/bootdata/packages/reactos.dff index a5b19f979b4..14498b5478a 100644 --- a/reactos/boot/bootdata/packages/reactos.dff +++ b/reactos/boot/bootdata/packages/reactos.dff @@ -113,6 +113,7 @@ dll\cpl\ncpa\ncpa.cpl 1 dll\cpl\powercfg\powercfg.cpl 1 dll\cpl\sysdm\sysdm.cpl 1 dll\cpl\timedate\timedate.cpl 1 +dll\cpl\input\input.dll 1 dll\directx\dinput\dinput.dll 1 dll\directx\dinput8\dinput8.dll 1 @@ -482,6 +483,7 @@ modules\rosapps\ramdrv\ramdrv.sys 1 optional modules\rosapps\roshttpd\roshttpd.exe 1 optional modules\rosapps\screenshot\screenshot.exe 1 optional modules\rosapps\sysutils\chkdsk\chkdsk.exe 1 optional +modules\rosapps\sysutils\systeminfo\systeminfo.exe 1 optional modules\rosapps\sysutils\chklib\chklib.exe 1 optional modules\rosapps\sysutils\ctm\ctm.exe 1 optional modules\rosapps\sysutils\kill\kill.exe 1 optional diff --git a/reactos/dll/cpl/input/add.c b/reactos/dll/cpl/input/add.c index 719a241d3b3..29b98f9dea4 100644 --- a/reactos/dll/cpl/input/add.c +++ b/reactos/dll/cpl/input/add.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/add.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/add.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ @@ -39,6 +39,93 @@ #include "resource.h" #include "input.h" +HWND hLanguageList; + +/*struct LangAndLayout +{ + TCHAR Lang; + TCHAR Layout; + TCHAR SubLayout; +} VarLang[133]; + +char *SubLang[133] = {} + +VOID CreateLangStruct(VOID) +{ + UINT Count; + TCHAR Layout[256]; + + for(Count = 0; Count < END_LAYOUT - BEGIN_LAYOUT; Count++) + { + LoadString(hApplet, + Count, + Layout, + sizeof(Layout) / sizeof(TCHAR)); + strcpy(VarLang[Count].Layout,Layout); + } +}*/ + +/* Language enumerate procedure */ +BOOL +CALLBACK +LanguagesEnumProc(LPTSTR lpLanguage) +{ + LCID Lcid; + TCHAR Lang[1024]; + int Index; + + Lcid = wcstoul(lpLanguage, NULL, 16); + + GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, Lang, sizeof(Lang)); + Index = (int) SendMessage(hLanguageList, + CB_ADDSTRING, + 0, + (LPARAM)Lang); + + SendMessage(hLanguageList, + CB_SETITEMDATA, + Index, + (LPARAM)Lcid); + + return TRUE; +} + +/* Enumerate all installed language identifiers */ +static +VOID +CreateLanguagesList(HWND hWnd) +{ + TCHAR LangSel[256]; + hLanguageList = hWnd; + EnumSystemLocales(LanguagesEnumProc, LCID_INSTALLED); + + LoadString(hApplet, + IDS_SELECTED_LANGUAGE, + LangSel, + sizeof(LangSel) / sizeof(TCHAR)); + + SendMessage(hLanguageList, + CB_SELECTSTRING, + (WPARAM) -1, + (LPARAM)LangSel); +} + +static +VOID +SelectCurrentLayout(HWND hWnd) +{ + TCHAR Layout[256]; + + LoadString(hApplet, + IDS_SELECTED_LAYOUT, + Layout, + sizeof(Layout) / sizeof(TCHAR)); + SendMessage(hWnd, + CB_SELECTSTRING, + (WPARAM) -1, + (LPARAM)Layout); +} + INT_PTR CALLBACK AddDlgProc(HWND hDlg, UINT message, @@ -51,15 +138,28 @@ AddDlgProc(HWND hDlg, { case WM_INITDIALOG: { - + CreateLanguagesList(GetDlgItem(hDlg, IDC_INPUT_LANGUAGE_COMBO)); + CreateKeyboardLayoutList(GetDlgItem(hDlg, IDC_KEYBOARD_LAYOUT_COMBO)); + SelectCurrentLayout(GetDlgItem(hDlg, IDC_KEYBOARD_LAYOUT_COMBO)); } case WM_COMMAND: { - if ((LOWORD(wParam) == IDOK) || (LOWORD(wParam) == IDCANCEL)) - { - EndDialog(hDlg,LOWORD(wParam)); - return TRUE; - } + switch (LOWORD(wParam)) + { + case IDC_INPUT_LANGUAGE_COMBO: + if (HIWORD(wParam) == CBN_SELCHANGE) + { + SelectCurrentLayout(GetDlgItem(hDlg, IDC_KEYBOARD_LAYOUT_COMBO)); + } + break; + case IDOK: + + break; + case IDCANCEL: + EndDialog(hDlg,LOWORD(wParam)); + return TRUE; + break; + } } break; } diff --git a/reactos/dll/cpl/input/advanced.c b/reactos/dll/cpl/input/advanced.c index 95778e8f81d..9ba1e4b3eca 100644 --- a/reactos/dll/cpl/input/advanced.c +++ b/reactos/dll/cpl/input/advanced.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/advanced.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/advanced.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ @@ -49,7 +49,17 @@ AdvancedPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam) switch(uMsg) { case WM_INITDIALOG: - break; + + break; + case WM_COMMAND: + switch (LOWORD(wParam)) + { + case IDC_SUPPORT_ADV_SERV_CHECKBOX: + case IDC_TURNOFF_ADV_TXTSERV_CHECKBOX: + PropSheet_Changed(GetParent(hwndDlg), hwndDlg); + break; + } + break; } return FALSE; diff --git a/reactos/dll/cpl/input/changekeyseq.c b/reactos/dll/cpl/input/changekeyseq.c index b9a3f5b1b95..0c43339dc12 100644 --- a/reactos/dll/cpl/input/changekeyseq.c +++ b/reactos/dll/cpl/input/changekeyseq.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/changekeyseq.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/changekeyseq.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ diff --git a/reactos/dll/cpl/input/input.c b/reactos/dll/cpl/input/input.c index 9c6409a1da3..6e55d93ed0c 100644 --- a/reactos/dll/cpl/input/input.c +++ b/reactos/dll/cpl/input/input.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/input.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/input.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ diff --git a/reactos/dll/cpl/input/input.h b/reactos/dll/cpl/input/input.h index 25936282ac2..4fa72259c52 100644 --- a/reactos/dll/cpl/input/input.h +++ b/reactos/dll/cpl/input/input.h @@ -13,6 +13,9 @@ typedef struct extern HINSTANCE hApplet; +#define BEGIN_LAYOUT 5000 +#define END_LAYOUT 5133 + /* input.c */ VOID InitPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc); @@ -45,6 +48,10 @@ ChangeKeySeqDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam); INT_PTR CALLBACK InputLangPropDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam); +/* misc.c */ +VOID +CreateKeyboardLayoutList(HWND hWnd); + void ShowLastWin32Error(HWND hWndOwner); #endif /* __CPL_INPUT_H */ diff --git a/reactos/dll/cpl/input/input.rbuild b/reactos/dll/cpl/input/input.rbuild index 93d4ab0d51e..c46e1e73db5 100644 --- a/reactos/dll/cpl/input/input.rbuild +++ b/reactos/dll/cpl/input/input.rbuild @@ -1,6 +1,6 @@ - + . @@ -22,5 +22,6 @@ add.c changekeyseq.c inputlangprop.c + misc.c input.rc diff --git a/reactos/dll/cpl/input/input.rc b/reactos/dll/cpl/input/input.rc index 9269e24a635..6143aeb1bd1 100644 --- a/reactos/dll/cpl/input/input.rc +++ b/reactos/dll/cpl/input/input.rc @@ -21,4 +21,6 @@ IDI_MIC_ICO ICON "resources/microphone.ico" IDI_KEY_SHORT_ICO ICON "resources/keyboard-shortcuts.ico" IDI_INFO_ICO ICON "resources/information.ico" +LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL + #include "rsrc.rc" diff --git a/reactos/dll/cpl/input/inputlangprop.c b/reactos/dll/cpl/input/inputlangprop.c index 00795855d1e..b1ccb69aa98 100644 --- a/reactos/dll/cpl/input/inputlangprop.c +++ b/reactos/dll/cpl/input/inputlangprop.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/inputlangprop.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/inputlangprop.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ @@ -39,6 +39,18 @@ #include "resource.h" #include "input.h" +static +VOID +SelectKeyboardLayout(HWND hWnd) +{ + TCHAR Layout[256]; + + SendMessage(hWnd, + CB_SELECTSTRING, + (WPARAM) -1, + (LPARAM)Layout); +} + INT_PTR CALLBACK InputLangPropDlgProc(HWND hDlg, UINT message, @@ -51,7 +63,8 @@ InputLangPropDlgProc(HWND hDlg, { case WM_INITDIALOG: { - + CreateKeyboardLayoutList(GetDlgItem(hDlg, IDC_KEYBOARD_LAYOUT_IME_COMBO)); + SelectKeyboardLayout(GetDlgItem(hDlg, IDC_KEYBOARD_LAYOUT_IME_COMBO)); } case WM_COMMAND: { diff --git a/reactos/dll/cpl/input/keysettings.c b/reactos/dll/cpl/input/keysettings.c index 98c6f311960..719c495c1f4 100644 --- a/reactos/dll/cpl/input/keysettings.c +++ b/reactos/dll/cpl/input/keysettings.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/keysettings.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/keysettings.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ diff --git a/reactos/dll/cpl/input/lang/de-DE.rc b/reactos/dll/cpl/input/lang/de-DE.rc index f555b8764b6..3b95b479741 100644 --- a/reactos/dll/cpl/input/lang/de-DE.rc +++ b/reactos/dll/cpl/input/lang/de-DE.rc @@ -71,14 +71,14 @@ CAPTION "Eingabesprache hinzuf FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Eingabesprache:", -1, 7, 7, 61, 10 - COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL LTEXT "&Tastaturlayout/IME:", -1, 7, 36, 110, 10 - COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL DEFPUSHBUTTON "OK", IDOK, 116, 68, 50, 14 PUSHBUTTON "Abbrechen", IDCANCEL, 169, 68, 50, 14 END -IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 269, 78 +IDD_CHANGE_KEY_SEQ2 DIALOG 5, 100, 269, 78 STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION CAPTION "Tastenkombination ändern" FONT 8, "MS Shell Dlg" @@ -110,8 +110,131 @@ BEGIN PUSHBUTTON "Abbrechen", IDCANCEL, 169, 53, 52, 14 END +IDD_ADD2 DIALOG 20, 20, 257, 176 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&More Text Services:", IDC_MORE_TEXT_SERV_CHECKBOX, 37, 123, 110, 10 + COMBOBOX IDC_MORE_TEXT_SERV_COMBO, 49, 134, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 155, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 155, 50, 14 +} + +IDD_ADD3 DIALOG 20, 20, 257, 147 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 126, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 126, 50, 14 +} + +IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 285, 74 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 209, 60 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 121, 15, 90, 12 + LTEXT "SHIFT", -1, 179, 37, 27, 12 + CTEXT "+", -1, 168, 37, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 135, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 135, 45, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 227, 18, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 227, 44, 50, 14 +} + +IDD_CHANGE_KEY_SEQ3 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 77, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 87, 69, 10, WS_GROUP + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ4 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 27, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 37, 69, 10, WS_GROUP + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ5 DIALOG 5, 100, 269, 78 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + LTEXT "", 1240, 16, 5, 250, 10 + GROUPBOX "", -1, 12, 17, 184, 48 + AUTOCHECKBOX "&Enable Key Sequence", 1249, 17, 17, 85, 8 + CTEXT "SHIFT", -1, 68, 37, 27, 12 + CTEXT "+", -1, 57, 37, 8, 9 + CTEXT "+", -1, 98, 37, 8, 10 + AUTORADIOBUTTON "&CTRL", -1, 24, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", -1, 24, 45, 40, 12, NOT WS_TABSTOP + LTEXT "&Key:", -1, 110, 37, 14, 10 + COMBOBOX 1236, 127, 34, 46, 48, CBS_DROPDOWNLIST | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 212, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 212, 47, 50, 14 +} + STRINGTABLE BEGIN + //Selected language on "Add Input language" + IDS_SELECTED_LANGUAGE "English (United States)" + //Selected keyboard layout on "Add Input language" + IDS_SELECTED_LAYOUT, "United States-Dvorak" IDS_CPLSYSTEMNAME "Textdienste und Eingabesprachen" IDS_CPLSYSTEMDESCRIPTION "Ändert die Einstellungen der Texteingabe einer Sprache." IDS_US_LAYOUT, "US" diff --git a/reactos/dll/cpl/input/lang/en-US.rc b/reactos/dll/cpl/input/lang/en-US.rc index f783b73957e..e1212c421f4 100644 --- a/reactos/dll/cpl/input/lang/en-US.rc +++ b/reactos/dll/cpl/input/lang/en-US.rc @@ -71,14 +71,50 @@ CAPTION "Add Input language" FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Input language:", -1, 7, 7, 61, 10 - COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL LTEXT "&Keyboard layout/IME:", -1, 7, 36, 110, 10 - COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL DEFPUSHBUTTON "OK", IDOK, 116, 68, 50, 14 PUSHBUTTON "Cancel", IDCANCEL, 169, 68, 50, 14 END -IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 269, 78 +IDD_ADD2 DIALOG 20, 20, 257, 176 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&More Text Services:", IDC_MORE_TEXT_SERV_CHECKBOX, 37, 123, 110, 10 + COMBOBOX IDC_MORE_TEXT_SERV_COMBO, 49, 134, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 155, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 155, 50, 14 +} + +IDD_ADD3 DIALOG 20, 20, 257, 147 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 126, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 126, 50, 14 +} + +IDD_CHANGE_KEY_SEQ2 DIALOG 5, 100, 269, 78 STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION CAPTION "Change Key Sequence" FONT 8, "MS Shell Dlg" @@ -97,6 +133,89 @@ BEGIN PUSHBUTTON "Cancel", IDCANCEL, 212, 47, 50, 14 END +IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 285, 74 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 209, 60 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 121, 15, 90, 12 + LTEXT "SHIFT", -1, 179, 37, 27, 12 + CTEXT "+", -1, 168, 37, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 135, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 135, 45, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 227, 18, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 227, 44, 50, 14 +} + +IDD_CHANGE_KEY_SEQ3 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 77, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 87, 69, 10, WS_GROUP + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ4 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 27, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 37, 69, 10, WS_GROUP + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ5 DIALOG 5, 100, 269, 78 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + LTEXT "", 1240, 16, 5, 250, 10 + GROUPBOX "", -1, 12, 17, 184, 48 + AUTOCHECKBOX "&Enable Key Sequence", 1249, 17, 17, 85, 8 + CTEXT "SHIFT", -1, 68, 37, 27, 12 + CTEXT "+", -1, 57, 37, 8, 9 + CTEXT "+", -1, 98, 37, 8, 10 + AUTORADIOBUTTON "&CTRL", -1, 24, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", -1, 24, 45, 40, 12, NOT WS_TABSTOP + LTEXT "&Key:", -1, 110, 37, 14, 10 + COMBOBOX 1236, 127, 34, 46, 48, CBS_DROPDOWNLIST | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 212, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 212, 47, 50, 14 +} + IDD_INPUT_LANG_PROP DIALOG 20, 20, 227, 75 STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION CAPTION "Input language Properties" @@ -112,6 +231,11 @@ END STRINGTABLE BEGIN + //Selected language on "Add Input language" + IDS_SELECTED_LANGUAGE "English (United States)" + //Selected keyboard layout on "Add Input language" + IDS_SELECTED_LAYOUT, "United States-Dvorak" + IDS_CPLSYSTEMNAME "Text Services and Input Languages" IDS_CPLSYSTEMDESCRIPTION "Customizes settings for text input of languages." IDS_US_LAYOUT, "US" diff --git a/reactos/dll/cpl/input/lang/fr-FR.rc b/reactos/dll/cpl/input/lang/fr-FR.rc index a36d55c41ae..ca01510dcdb 100644 --- a/reactos/dll/cpl/input/lang/fr-FR.rc +++ b/reactos/dll/cpl/input/lang/fr-FR.rc @@ -71,14 +71,14 @@ CAPTION "Ajouter une langue de saisie" FONT 8, "MS Shell Dlg" BEGIN LTEXT "Langue de sa&isie:", -1, 7, 7, 61, 10 - COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL LTEXT "Configuration du clavier/IME:", -1, 7, 36, 110, 10 - COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL DEFPUSHBUTTON "OK", IDOK, 116, 68, 50, 14 PUSHBUTTON "Annuler", IDCANCEL, 169, 68, 50, 14 END -IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 269, 78 +IDD_CHANGE_KEY_SEQ2 DIALOG 5, 100, 269, 78 STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION CAPTION "Changer la séquence de touches" FONT 8, "MS Shell Dlg" @@ -110,10 +110,133 @@ BEGIN PUSHBUTTON "Annuler", IDCANCEL, 169, 53, 52, 14 END +IDD_ADD2 DIALOG 20, 20, 257, 176 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&More Text Services:", IDC_MORE_TEXT_SERV_CHECKBOX, 37, 123, 110, 10 + COMBOBOX IDC_MORE_TEXT_SERV_COMBO, 49, 134, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 155, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 155, 50, 14 +} + +IDD_ADD3 DIALOG 20, 20, 257, 147 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 126, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 126, 50, 14 +} + +IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 285, 74 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 209, 60 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 121, 15, 90, 12 + LTEXT "SHIFT", -1, 179, 37, 27, 12 + CTEXT "+", -1, 168, 37, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 135, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 135, 45, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 227, 18, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 227, 44, 50, 14 +} + +IDD_CHANGE_KEY_SEQ3 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 77, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 87, 69, 10, WS_GROUP + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ4 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 27, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 37, 69, 10, WS_GROUP + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ5 DIALOG 5, 100, 269, 78 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + LTEXT "", 1240, 16, 5, 250, 10 + GROUPBOX "", -1, 12, 17, 184, 48 + AUTOCHECKBOX "&Enable Key Sequence", 1249, 17, 17, 85, 8 + CTEXT "SHIFT", -1, 68, 37, 27, 12 + CTEXT "+", -1, 57, 37, 8, 9 + CTEXT "+", -1, 98, 37, 8, 10 + AUTORADIOBUTTON "&CTRL", -1, 24, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", -1, 24, 45, 40, 12, NOT WS_TABSTOP + LTEXT "&Key:", -1, 110, 37, 14, 10 + COMBOBOX 1236, 127, 34, 46, 48, CBS_DROPDOWNLIST | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 212, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 212, 47, 50, 14 +} + /* FIXME : To improve/complete */ /* FIXME : À améliorer/compléter */ STRINGTABLE BEGIN + //Selected language on "Add Input language" + IDS_SELECTED_LANGUAGE "English (United States)" + //Selected keyboard layout on "Add Input language" + IDS_SELECTED_LAYOUT, "United States-Dvorak" IDS_CPLSYSTEMNAME "Services texte et langue de saisie" IDS_CPLSYSTEMDESCRIPTION "Personnalise les paramètres pour la langue de saisie de texte." IDS_US_LAYOUT, "US" diff --git a/reactos/dll/cpl/input/lang/uk-UA.rc b/reactos/dll/cpl/input/lang/uk-UA.rc index a84e6874906..19dcbd3ddd7 100644 --- a/reactos/dll/cpl/input/lang/uk-UA.rc +++ b/reactos/dll/cpl/input/lang/uk-UA.rc @@ -79,14 +79,14 @@ CAPTION " FONT 8, "MS Shell Dlg" BEGIN LTEXT "&Ìîâà ââîäó:", -1, 7, 7, 61, 10 - COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_INPUT_LANGUAGE_COMBO, 7, 17, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL LTEXT "&Ðîçêëàäêà êëàâ³àòóðè àáî çàñ³á ââîäó (IME):", -1, 7, 36, 110, 10 - COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + COMBOBOX IDC_KEYBOARD_LAYOUT_COMBO, 7, 47, 212, 110, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL DEFPUSHBUTTON "OK", IDOK, 116, 68, 50, 14 PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 169, 68, 50, 14 END -IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 269, 78 +IDD_CHANGE_KEY_SEQ2 DIALOG 5, 100, 269, 78 STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION CAPTION "Çì³íà ñïîëó÷åííÿ êëàâ³ø" FONT 8, "MS Shell Dlg" @@ -118,8 +118,131 @@ BEGIN PUSHBUTTON "Ñêàñóâàòè", IDCANCEL, 169, 53, 52, 14 END +IDD_ADD2 DIALOG 20, 20, 257, 176 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&More Text Services:", IDC_MORE_TEXT_SERV_CHECKBOX, 37, 123, 110, 10 + COMBOBOX IDC_MORE_TEXT_SERV_COMBO, 49, 134, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 155, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 155, 50, 14 +} + +IDD_ADD3 DIALOG 20, 20, 257, 147 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Add Input Language" +FONT 8, "MS Shell Dlg" +{ + LTEXT "&Input language:", -1, 7, 7, 61, 10 + COMBOBOX IDC_INPUT_LANG_COMBO, 7, 17, 105, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Keyboard layout/IME:", IDC_KEYBOARD_LO_CHECKBOX, 37, 36, 110, 10 + COMBOBOX IDC_KEYBOARD_LO_COMBO, 49, 47, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Handwriting recognition:", IDC_HANDWRITING_REC_CHECKBOX, 37, 65, 110, 10 + COMBOBOX IDC_HANDWRITING_REC_COMBO, 49, 76, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + AUTOCHECKBOX "&Speech:", IDC_SPEECH_CHECKBOX, 37, 94, 110, 10 + COMBOBOX IDC_SPEECH_COMBO, 49, 105, 200, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 146, 126, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 199, 126, 50, 14 +} + +IDD_CHANGE_KEY_SEQ DIALOG 5, 100, 285, 74 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 209, 60 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 121, 15, 90, 12 + LTEXT "SHIFT", -1, 179, 37, 27, 12 + CTEXT "+", -1, 168, 37, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 135, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 135, 45, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 227, 18, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 227, 44, 50, 14 +} + +IDD_CHANGE_KEY_SEQ3 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 77, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 87, 69, 10, WS_GROUP + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ4 DIALOG 5, 100, 249, 125 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + GROUPBOX "", -1, 9, 5, 174, 110 + AUTOCHECKBOX "&Switch input languages", IDC_SWITCH_INPUT_LANG_CHECKBOX, 15, 15, 90, 12 + LTEXT "SHIFT", -1, 73, 37, 27, 12 + CTEXT "+", -1, 62, 37, 8, 9 + CONTROL "", IDC_CKS_BUTTON, "BUTTON", BS_OWNERDRAW, 96, 27, 13, 33 + AUTORADIOBUTTON "&Grave Accent ( ` )", IDC_GRAVE_ACCENT_RADIOBTN, 110, 37, 69, 10, WS_GROUP + AUTORADIOBUTTON "&CTRL", IDC_INLANG_CTRL_RADIOBTN, 29, 31, 30, 11, NOT WS_TABSTOP + AUTORADIOBUTTON "Left &ALT", IDC_INLANG_LEFTALT_RADIOBTN, 29, 45, 40, 12, NOT WS_TABSTOP + AUTOCHECKBOX "S&witch keyboard layouts", IDC_SWITCH_KEYBOARD_LO_CHECKBOX, 15, 65, 90, 12 + LTEXT "SHIFT", -1, 73, 87, 27, 12 + CTEXT "+", -1, 62, 87, 8, 9 + AUTORADIOBUTTON "C&TRL", IDC_LAYOUT_CTRL_RADIOBTN, 29, 81, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left A<", IDC_LAYOUT_LEFTALT_RADIOBTN, 29, 95, 40, 12, NOT WS_TABSTOP + DEFPUSHBUTTON "OK", IDOK, 192, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 192, 47, 50, 14 +} + +IDD_CHANGE_KEY_SEQ5 DIALOG 5, 100, 269, 78 +STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION +CAPTION "Change Key Sequence" +FONT 8, "MS Shell Dlg" +{ + LTEXT "", 1240, 16, 5, 250, 10 + GROUPBOX "", -1, 12, 17, 184, 48 + AUTOCHECKBOX "&Enable Key Sequence", 1249, 17, 17, 85, 8 + CTEXT "SHIFT", -1, 68, 37, 27, 12 + CTEXT "+", -1, 57, 37, 8, 9 + CTEXT "+", -1, 98, 37, 8, 10 + AUTORADIOBUTTON "&CTRL", -1, 24, 31, 30, 11, WS_GROUP + AUTORADIOBUTTON "Left &ALT", -1, 24, 45, 40, 12, NOT WS_TABSTOP + LTEXT "&Key:", -1, 110, 37, 14, 10 + COMBOBOX 1236, 127, 34, 46, 48, CBS_DROPDOWNLIST | WS_VSCROLL + DEFPUSHBUTTON "OK", IDOK, 212, 25, 50, 14 + PUSHBUTTON "Cancel", IDCANCEL, 212, 47, 50, 14 +} + STRINGTABLE BEGIN + //Selected language on "Add Input language" + IDS_SELECTED_LANGUAGE "English (United States)" + //Selected keyboard layout on "Add Input language" + IDS_SELECTED_LAYOUT, "United States-Dvorak" IDS_CPLSYSTEMNAME "Ìîâè òà ñëóæáè òåêñòîâîãî ââîäó" IDS_CPLSYSTEMDESCRIPTION "Íàëàøòîâóº ïàðàìåòðè äëÿ òåêñòîâîãî ââîäó." IDS_US_LAYOUT, "ÑØÀ" diff --git a/reactos/dll/cpl/input/langbar.c b/reactos/dll/cpl/input/langbar.c index ce2d0788259..643173bab88 100644 --- a/reactos/dll/cpl/input/langbar.c +++ b/reactos/dll/cpl/input/langbar.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/langbar.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/langbar.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ diff --git a/reactos/dll/cpl/input/misc.c b/reactos/dll/cpl/input/misc.c new file mode 100644 index 00000000000..a7f2ee490d0 --- /dev/null +++ b/reactos/dll/cpl/input/misc.c @@ -0,0 +1,69 @@ +/* + * ReactOS + * Copyright (C) 2007 ReactOS Team + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ +/* + * + * PROJECT: input.dll + * FILE: dll/win32/input/misc.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * UPDATE HISTORY: + * 06-09-2007 Created + */ + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "resource.h" +#include "input.h" + +VOID +CreateKeyboardLayoutList(HWND hWnd) +{ + TCHAR Layout[256]; + int Index; + UINT loIndex; + + for ( loIndex = BEGIN_LAYOUT; loIndex <= END_LAYOUT; loIndex++ ) + { + LoadString(hApplet, + loIndex, + Layout, + sizeof(Layout) / sizeof(TCHAR)); + if (strlen((char*)Layout) > 0) + { + Index = (int) SendMessage(hWnd, + CB_INSERTSTRING, + 0, + (LPARAM)Layout); + SendMessage(hWnd, + CB_SETITEMDATA, + Index, + (LPARAM)loIndex); + } + } +} + +/* EOF */ diff --git a/reactos/dll/cpl/input/resource.h b/reactos/dll/cpl/input/resource.h index c05dc79e4e7..cac1024f965 100644 --- a/reactos/dll/cpl/input/resource.h +++ b/reactos/dll/cpl/input/resource.h @@ -18,12 +18,18 @@ /* IDD */ #define IDD_PROPPAGESETTINGS 500 -#define IDD_PROPPAGEADVANCED 501 -#define IDD_LANGBAR 502 -#define IDD_KEYSETTINGS 503 -#define IDD_ADD 504 -#define IDD_CHANGE_KEY_SEQ 505 -#define IDD_INPUT_LANG_PROP 506 +#define IDD_ADD3 501 +#define IDD_INPUT_LANG_PROP 502 +#define IDD_CHANGE_KEY_SEQ 503 +#define IDD_CHANGE_KEY_SEQ4 504 +#define IDD_CHANGE_KEY_SEQ5 505 +#define IDD_CHANGE_KEY_SEQ2 506 +#define IDD_ADD 507 +#define IDD_CHANGE_KEY_SEQ3 508 +#define IDD_ADD2 509 +#define IDD_KEYSETTINGS 510 +#define IDD_LANGBAR 511 +#define IDD_PROPPAGEADVANCED 512 /* IDC */ #define IDC_DEFAULT_INPUT_LANG 150 @@ -52,6 +58,23 @@ #define IDC_ALT_CHECKBOX 173 #define IDC_CKEY_COMBOBOX 174 #define IDC_KEYBOARD_LAYOUT_IME_COMBO 175 +#define IDC_SWITCH_INPUT_LANG_CHECKBOX 176 +#define IDC_INLANG_CTRL_RADIOBTN 177 +#define IDC_INLANG_LEFTALT_RADIOBTN 178 +#define IDC_SWITCH_KEYBOARD_LO_CHECKBOX 179 +#define IDC_LAYOUT_CTRL_RADIOBTN 180 +#define IDC_LAYOUT_LEFTALT_RADIOBTN 181 +#define IDC_INPUT_LANG_COMBO 182 +#define IDC_KEYBOARD_LO_CHECKBOX 183 +#define IDC_KEYBOARD_LO_COMBO 184 +#define IDC_HANDWRITING_REC_CHECKBOX 185 +#define IDC_HANDWRITING_REC_COMBO 186 +#define IDC_SPEECH_CHECKBOX 187 +#define IDC_SPEECH_COMBO 188 +#define IDC_MORE_TEXT_SERV_CHECKBOX 189 +#define IDC_MORE_TEXT_SERV_COMBO 190 +#define IDC_CKS_BUTTON 191 +#define IDC_GRAVE_ACCENT_RADIOBTN 192 /* IDS */ #define IDS_CPLSYSTEMNAME 1 @@ -188,6 +211,9 @@ #define IDS_DIVEHI_PHONETIC_LAYOUT 5132 #define IDS_DIVEHI_TYPEWRITER_LAYOUT 5133 +#define IDS_SELECTED_LAYOUT 6000 +#define IDS_SELECTED_LANGUAGE 6001 + #endif /* __CPL_RESOURCE_H */ /* EOF */ diff --git a/reactos/dll/cpl/input/settings.c b/reactos/dll/cpl/input/settings.c index 80549e6b858..74593565601 100644 --- a/reactos/dll/cpl/input/settings.c +++ b/reactos/dll/cpl/input/settings.c @@ -18,10 +18,10 @@ */ /* * - * PROJECT: input.dll - * FILE: dll/win32/input/settings.c - * PURPOSE: input.dll - * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) + * PROJECT: input.dll + * FILE: dll/win32/input/settings.c + * PURPOSE: input.dll + * PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru) * UPDATE HISTORY: * 06-09-2007 Created */ @@ -39,6 +39,58 @@ #include "resource.h" #include "input.h" +#define BUFSIZE 80 + +static +BOOL +CreateDefaultLangList(HWND hWnd) +{ + HKEY hKey; + char szPreload[BUFSIZE],szCount[BUFSIZE],Lang[BUFSIZE]; + DWORD dwBufLen = BUFSIZE, dwBufCLen = BUFSIZE, cValues; + LONG lRet; + int Count; + LCID Lcid; + + if(RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("Keyboard Layout\\Preload"), 0, KEY_QUERY_VALUE, &hKey) != ERROR_SUCCESS) + { + return FALSE; + } + RegQueryInfoKey(hKey,NULL,NULL,NULL,NULL,NULL,NULL,&cValues,NULL,NULL,NULL,NULL); + + if (cValues) + { + for (Count = 0; Count < cValues; Count++) + { + szCount[0] = '\0'; + lRet = RegEnumValue(hKey,Count,(LPTSTR)szCount,&dwBufCLen,NULL,NULL,NULL,NULL); + + sprintf(szCount,"%d",Count + 1); + RegQueryValueEx(hKey,(LPTSTR)szCount,NULL,NULL,(LPBYTE)szPreload,&dwBufLen); + + Lcid = wcstoul((LPTSTR)szPreload, NULL, 16); + GetLocaleInfo(Lcid, LOCALE_SLANGUAGE, (LPTSTR)Lang, sizeof(Lang)); + + SendMessage(hWnd, + CB_INSERTSTRING, + 0, + (LPARAM)Lang); + if (Count == 0) + { + SendMessage(hWnd, + CB_SELECTSTRING, + (WPARAM) -1, + (LPARAM)Lang); + } + } + + } + + RegCloseKey(hKey); + + return TRUE; +} + /* Property page dialog callback */ INT_PTR CALLBACK SettingPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam) @@ -47,8 +99,8 @@ SettingPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam) switch (uMsg) { case WM_INITDIALOG: - - break; + CreateDefaultLangList(GetDlgItem(hwndDlg, IDC_DEFAULT_INPUT_LANG)); + break; case WM_COMMAND: switch (LOWORD(wParam)) @@ -77,6 +129,12 @@ SettingPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam) hwndDlg, InputLangPropDlgProc); break; + case IDC_DEFAULT_INPUT_LANG: + if (HIWORD(wParam) == CBN_SELCHANGE) + { + PropSheet_Changed(GetParent(hwndDlg), hwndDlg); + } + break; } break; }