Dmitry Chapyshev <lentind@yandex.ru>:

- Implement basics of input.dll (does not work yet, just has dialogs/resources).

svn path=/trunk/; revision=28930
This commit is contained in:
Aleksey Bragin 2007-09-07 18:22:43 +00:00
parent f7db2e960b
commit 8a38525cef
20 changed files with 1214 additions and 0 deletions

View file

@ -10,6 +10,9 @@
<directory name="hdwwiz">
<xi:include href="hdwwiz/hdwwiz.rbuild" />
</directory>
<directory name="input">
<xi:include href="input/input.rbuild" />
</directory>
<directory name="intl">
<xi:include href="intl/intl.rbuild" />
</directory>

View file

@ -0,0 +1,70 @@
/*
* 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/add.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
INT_PTR CALLBACK
AddDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
{
}
case WM_COMMAND:
{
if ((LOWORD(wParam) == IDOK) || (LOWORD(wParam) == IDCANCEL))
{
EndDialog(hDlg,LOWORD(wParam));
return TRUE;
}
}
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,58 @@
/*
* 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/advanced.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
/* Property page dialog callback */
INT_PTR CALLBACK
AdvancedPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(hwndDlg);
switch(uMsg)
{
case WM_INITDIALOG:
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,74 @@
/*
* 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/changekeyseq.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
INT_PTR CALLBACK
ChangeKeySeqDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
{
}
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDOK:
break;
case IDCANCEL:
EndDialog(hDlg,LOWORD(wParam));
break;
}
}
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,144 @@
/*
* 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/input.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
#define NUM_APPLETS (1)
LONG CALLBACK SystemApplet(VOID);
HINSTANCE hApplet = 0;
/* Applets */
APPLET Applets[NUM_APPLETS] =
{
{IDI_CPLSYSTEM, IDS_CPLSYSTEMNAME, IDS_CPLSYSTEMDESCRIPTION, SystemApplet}
};
VOID
InitPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc)
{
ZeroMemory(psp, sizeof(PROPSHEETPAGE));
psp->dwSize = sizeof(PROPSHEETPAGE);
psp->dwFlags = PSP_DEFAULT;
psp->hInstance = hApplet;
psp->pszTemplate = MAKEINTRESOURCE(idDlg);
psp->pfnDlgProc = DlgProc;
}
/* First Applet */
LONG CALLBACK
SystemApplet(VOID)
{
PROPSHEETPAGE psp[2];
PROPSHEETHEADER psh;
TCHAR Caption[1024];
LoadString(hApplet, IDS_CPLSYSTEMNAME, Caption, sizeof(Caption) / sizeof(TCHAR));
ZeroMemory(&psh, sizeof(PROPSHEETHEADER));
psh.dwSize = sizeof(PROPSHEETHEADER);
psh.dwFlags = PSH_PROPSHEETPAGE;
psh.hwndParent = NULL;
psh.hInstance = hApplet;
psh.hIcon = LoadIcon(hApplet, MAKEINTRESOURCE(IDI_CPLSYSTEM));
psh.pszCaption = Caption;
psh.nPages = sizeof(psp) / sizeof(PROPSHEETPAGE);
psh.nStartPage = 0;
psh.ppsp = psp;
psh.pfnCallback = NULL;
InitPropSheetPage(&psp[0], IDD_PROPPAGESETTINGS, (DLGPROC) SettingPageProc);
InitPropSheetPage(&psp[1], IDD_PROPPAGEADVANCED, (DLGPROC) AdvancedPageProc);
return (LONG)(PropertySheet(&psh) != -1);
}
/* Control Panel Callback */
LONG CALLBACK
CPlApplet(HWND hwndCPl, UINT uMsg, LPARAM lParam1, LPARAM lParam2)
{
CPLINFO *CPlInfo;
DWORD i;
UNREFERENCED_PARAMETER(hwndCPl);
i = (DWORD)lParam1;
switch(uMsg)
{
case CPL_INIT:
return TRUE;
case CPL_GETCOUNT:
return NUM_APPLETS;
case CPL_INQUIRE:
CPlInfo = (CPLINFO*)lParam2;
CPlInfo->lData = 0;
CPlInfo->idIcon = Applets[i].idIcon;
CPlInfo->idName = Applets[i].idName;
CPlInfo->idInfo = Applets[i].idDescription;
break;
case CPL_DBLCLK:
Applets[i].AppletProc();
break;
}
return FALSE;
}
BOOL WINAPI
DllMain(HINSTANCE hinstDLL, DWORD dwReason, LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(lpvReserved);
switch(dwReason)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
hApplet = hinstDLL;
break;
}
return TRUE;
}
/* EOF */

View file

@ -0,0 +1,6 @@
LIBRARY input.dll
EXPORTS
CPlApplet
; EOF

View file

@ -0,0 +1,52 @@
#ifndef __CPL_INPUT_H
#define __CPL_INPUT_H
typedef LONG (CALLBACK *CPLAPPLET_PROC)(VOID);
typedef struct
{
int idIcon;
int idName;
int idDescription;
CPLAPPLET_PROC AppletProc;
} APPLET, *PAPPLET;
extern HINSTANCE hApplet;
/* input.c */
VOID
InitPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc);
/* settings.c */
INT_PTR CALLBACK
SettingPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
/* advanced.c */
INT_PTR CALLBACK
AdvancedPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
/* langbar.c */
INT_PTR CALLBACK
LangBarDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
/* keysettings.c */
INT_PTR CALLBACK
KeySettingsDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
/* add.c */
INT_PTR CALLBACK
AddDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
/* changekeyseq.c */
INT_PTR CALLBACK
ChangeKeySeqDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
/* inputlangprop.c */
INT_PTR CALLBACK
InputLangPropDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
void ShowLastWin32Error(HWND hWndOwner);
#endif /* __CPL_INPUT_H */
/* EOF */

View file

@ -0,0 +1,24 @@
<module name="input" type="win32dll" extension=".dll" baseaddress="${BASEADDRESS_APPWIZ}" installbase="system32" installname="input.dll">
<importlibrary definition="input.def" />
<include base="input">.</include>
<define name="UNICODE" />
<define name="_UNICODE" />
<define name="__REACTOS__" />
<define name="__USE_W32API" />
<define name="_WIN32_IE">0x600</define>
<define name="_WIN32_WINNT">0x501</define>
<library>kernel32</library>
<library>advapi32</library>
<library>user32</library>
<library>comctl32</library>
<library>msvcrt</library>
<file>input.c</file>
<file>settings.c</file>
<file>advanced.c</file>
<file>langbar.c</file>
<file>keysettings.c</file>
<file>add.c</file>
<file>changekeyseq.c</file>
<file>inputlangprop.c</file>
<file>input.rc</file>
</module>

View file

@ -0,0 +1,28 @@
#include "resource.h"
#include <windows.h>
#define REACTOS_VERSION_DLL
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Software Control Panel\0"
#define REACTOS_STR_INTERNAL_NAME "input\0"
#define REACTOS_STR_ORIGINAL_FILENAME "input.dll\0"
#ifdef _MSC_VER
#include <../../../reactos/version.rc>
#else
#include <reactos/version.rc>
#endif
IDI_KEYBOARD_ICO ICON "resources/keyboard.ico"
IDI_MARKER_ICO ICON "resources/marker.ico"
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
/*
* Everything specific to any language goes in one of the specific
* files. Note that you can and may override resources which also have
* a neutral version. This is to get localized bitmaps for example.
*/
#include "lang/en-US.rc"

View file

@ -0,0 +1,74 @@
/*
* 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/inputlangprop.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
INT_PTR CALLBACK
InputLangPropDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
{
}
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDOK:
break;
case IDCANCEL:
EndDialog(hDlg,LOWORD(wParam));
break;
}
}
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,80 @@
/*
* 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/keysettings.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
INT_PTR CALLBACK
KeySettingsDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
{
}
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDC_CHANGE_KEY_SEQ_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_CHANGE_KEY_SEQ),
hDlg,
ChangeKeySeqDlgProc);
break;
case IDOK:
break;
case IDCANCEL:
EndDialog(hDlg,LOWORD(wParam));
break;
}
}
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,247 @@
LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
IDD_PROPPAGESETTINGS DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Settings"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
GROUPBOX "Default input language", -1, 7,7,231,53
LTEXT "Select one of the installed input languages to use when you start your coputer.",-1,14,18,220,17
COMBOBOX IDC_DEFAULT_INPUT_LANG, 14, 40, 218, 46, CBS_DROPDOWNLIST
GROUPBOX "&Installed services", -1, 7,65,231,115
LTEXT "Select the services that you want for each input language shown in the list. Use the Add and Remove buttons to modify this list.",-1,14,75,220,17
CONTROL "TEXT", IDC_KEYLAYOUT_TREE, "SysTreeView32", WS_BORDER | WS_VSCROLL | WS_TABSTOP | 0x00000034, 14, 96, 160, 78
PUSHBUTTON "&Set Default", IDC_SET_DEFAULT, 179, 106, 53, 14
PUSHBUTTON "A&dd...", IDC_ADD_BUTTON, 179, 124, 53, 14
PUSHBUTTON "&Remove...", IDC_REMOVE_BUTTON, 179, 142, 53, 14
PUSHBUTTON "&Properties...", IDC_PROP_BUTTON, 179, 160, 53, 14
GROUPBOX "Proferences", -1, 7,185,231,36
PUSHBUTTON "Language &Bar...", IDC_LANG_BAR_BUTTON, 14, 198, 70, 14
PUSHBUTTON "&Key Settings...", IDC_KEY_SETTINGS_BUTTON, 90, 198, 70, 14
END
IDD_PROPPAGEADVANCED DIALOGEX 0, 0, PROPSHEETWIDTH, PROPSHEETHEIGHT
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_DISABLED | WS_CAPTION
CAPTION "Advanced"
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
GROUPBOX "Compatibility Configuration", -1, 7,7,231,60
AUTOCHECKBOX "&Extend support of advanced text services to all programs", IDC_SUPPORT_ADV_SERV_CHECKBOX, 14, 19, 210, 10, WS_GROUP
LTEXT "Select this check box to on advanced text services in Notepad and other programs that do not normally support speech and handwriting recognition or other advanced input services.",-1,14,33,220,25
GROUPBOX "System Configuration", -1, 7,74,231,60
AUTOCHECKBOX "&Turn off advanced text services", IDC_TURNOFF_ADV_TXTSERV_CHECKBOX, 14, 86, 210, 10, WS_GROUP
LTEXT "Select this chack box to turn off advanced text services in all programs. Not recommended for East Asian users because this closes the language bar.",-1,14,100,220,25
END
IDD_LANGBAR DIALOG 20, 20, 240, 120
STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION
CAPTION "Language Bar Settings"
FONT 8, "MS Shell Dlg"
{
GROUPBOX "", -1, 7, 7, 226, 85
AUTOCHECKBOX "Show the Language &bar on the desktop", IDC_LANGBAR_ON_DESK_CHECKBOX, 17, 17, 210, 10, WS_GROUP
AUTOCHECKBOX "Show the Language bar as &transparent when inactive", IDC_LANGBAR_TRANSP_INACT_CHECKBOX, 17, 32, 210, 10
AUTOCHECKBOX "Show &additional Language bar icons in the Notification area", IDC_ADDIT_LANGBAR_ICON_NOTIFYAREA_CHECKBOX, 17, 47, 210, 10
AUTOCHECKBOX "Show text &labels on the Language bar", IDC_TEXTLABEL_ON_LANGBAR_CHECKBOX, 17, 62, 210, 10
AUTOCHECKBOX "Turn &off advanced text services", IDC_OFF_ADVAN_TEXTSERV_CHECKBOX, 17, 77, 200, 10
DEFPUSHBUTTON "OK", IDOK, 129, 99, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 182, 99, 50, 14
}
IDD_KEYSETTINGS DIALOG 0, 0, 272, 163
STYLE DS_SETFONT | DS_MODALFRAME | DS_NOIDLEMSG | DS_3DLOOK | DS_CONTEXTHELP | WS_POPUPWINDOW | WS_VISIBLE | WS_CAPTION
CAPTION "Advanced Key Settings"
FONT 8, "MS Shell Dlg"
{
GROUPBOX "To turn off Caps Lock", -1, 7, 7, 258, 26
AUTORADIOBUTTON "Press the CAPS &LOCK key", IDC_PRESS_CAPSLOCK_KEY_RADIOBTN, 14, 17, 120, 11, WS_GROUP
AUTORADIOBUTTON "Press the SHI&FT key", IDC_PRESS_SHIFT_KEY_RADIOBTN, 144, 17, 120, 11, NOT WS_TABSTOP
GROUPBOX "Hot keys for input languages", -1, 7, 37, 258, 95
LTEXT "Action", -1, 14, 47, 60, 9
RTEXT "&Key sequence", -1, 177, 47, 79, 9
LISTBOX IDC_KEY_LISTBOX, 14, 57, 244, 52, LBS_OWNERDRAWFIXED | LBS_HASSTRINGS | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "&Change Key Sequence...", IDC_CHANGE_KEY_SEQ_BUTTON, 152, 113, 106, 14, WS_GROUP
DEFPUSHBUTTON "OK", IDOK, 66, 140, 70, 14
PUSHBUTTON "Cancel", IDCANCEL, 146, 140, 70, 14
}
IDD_ADD DIALOG 20, 20, 227, 90
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_LANGUAGE_COMBO, 7, 17, 212, 60, 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
DEFPUSHBUTTON "OK", IDOK, 116, 68, 50, 14
PUSHBUTTON "Cancel", IDCANCEL, 169, 68, 50, 14
}
IDD_CHANGE_KEY_SEQ 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 "", -1, 16, 5, 250, 10
GROUPBOX "", -1, 12, 17, 184, 48
AUTOCHECKBOX "&Enable Key Sequence", IDC_ENABLE_KEY_SEQ_CHECKBOX, 17, 17, 85, 8
CTEXT "SHIFT", -1, 68, 37, 27, 12
CTEXT "+", -1, 57, 37, 8, 9
CTEXT "+", -1, 98, 37, 8, 10
CHECKBOX "&CTRL", IDC_CTRL_CHECKBOX, 24, 31, 30, 11, NOT WS_TABSTOP
CHECKBOX "&ALT", IDC_ALT_CHECKBOX, 24, 45, 40, 12, NOT WS_TABSTOP
LTEXT "&Key:", -1, 110, 37, 14, 10
COMBOBOX IDC_CKEY_COMBOBOX, 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"
FONT 8, "MS Shell Dlg"
{
LTEXT "Input language:", -1, 7, 7, 61, 8
LTEXT "", -1, 73, 7, 129, 8
LTEXT "&Keyboard layout/IME:", -1, 7, 21, 110, 10
COMBOBOX IDC_KEYBOARD_LAYOUT_IME_COMBO, 7, 32, 212, 60, CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL
DEFPUSHBUTTON "OK", IDOK, 116, 53, 52, 14
PUSHBUTTON "Cancel", IDCANCEL, 169, 53, 52, 14
}
STRINGTABLE
BEGIN
IDS_CPLSYSTEMNAME "Text Services and Input Languages"
IDS_CPLSYSTEMDESCRIPTION "Customizes settings for text input of languages."
IDS_US_LAYOUT, "US"
IDS_BELGIAN_LAYOUT, "Belgian (Period)"
IDS_BELGIAN_FRENCH_LAYOUT, "Belgian French"
IDS_PORTUGUESE_BRAZILIAN_ABNT_LAYOUT, "Portuguese (Brazilian ABNT)"
IDS_CANADIAN_FRENCH_LAYOUT, "Canadian French"
IDS_CANADIAN_FRENCH_LEGACY_LAYOUT, "Canadian French (Legacy)"
IDS_DANISH_LAYOUT, "Danish"
IDS_DUTCH_LAYOUT, "Dutch"
IDS_FINNISH_LAYOUT, "Finnish"
IDS_FRENCH_LAYOUT, "French"
IDS_GERMAN_LAYOUT, "German"
IDS_GERMAN_IBM_LAYOUT, "German (IBM)"
IDS_ICELANDIC_LAYOUT, "Icelandic"
IDS_IRISH_LAYOUT, "Irish"
IDS_ITALIAN_LAYOUT, "Italian"
IDS_ITALIAN_142_LAYOUT, "Italian (142)"
IDS_LATIN_AMERICAN_LAYOUT, "Latin American"
IDS_NORWEGIAN_LAYOUT, "Norwegian"
IDS_PORTUGUESE_LAYOUT, "Portuguese"
IDS_SPANISH_LAYOUT, "Spanish"
IDS_SPANISH_VARIANTION_LAYOUT, "Spanish Variation"
IDS_SWEDISH_LAYOUT, "Swedish"
IDS_SWISS_FRENCH_LAYOUT, "Swiss French"
IDS_SWISS_GERMAN_LAYOUT, "Swiss German"
IDS_UNITED_KINGDOM_LAYOUT, "United Kingdom"
IDS_UNITED_STATES_INTERNATIONAL_LAYOUT, "United States-International"
IDS_UNITED_STATES_DVORAK_FOR_LEFT_HAND_LAYOUT, "United States-Dvorak for left hand"
IDS_UNITED_STATES_DVORAK_FOR_RIGHT_HAND_LAYOUT, "United States-Dvorak for right hand"
IDS_ALBANIAN_LAYOUT, "Albanian"
IDS_CROATIAN_LAYOUT, "Croatian"
IDS_CZECH_LAYOUT, "Czech"
IDS_CZECH_QWERTY_LAYOUT, "Czech (QWERTY)"
IDS_HUNGARIAN_LAYOUT, "Hungarian"
IDS_HUNGARIAN_101_KEY_LAYOUT, "Hungarian 101-key"
IDS_POLISH_LAYOUT, "Polish (Programmers)"
IDS_POLISH_214_LAYOUT, "Polish (214)"
IDS_ROMANIAN_LAYOUT, "Romanian"
IDS_SERBIAN_LATIN_LAYOUT, "Serbian (Latin)"
IDS_SLOVAK_LAYOUT, "Slovak"
IDS_SLOVAK_QWERTY_LAYOUT, "Slovak (QWERTY)"
IDS_SLOVENIAN_LAYOUT, "Slovenian"
IDS_ESTONIAN_LAYOUT, "Estonian"
IDS_LATVIAN_LAYOUT, "Latvian"
IDS_LATVIAN_QWERTY_LAYOUT, "Latvian (QWERTY)"
IDS_LITHUANIAN_IBM_LAYOUT, "Lithuanian IBM"
IDS_GREEK_LAYOUT, "Greek"
IDS_GREEK_LATIN_LAYOUT, "Greek Latin"
IDS_GREEK_220_LAYOUT, "Greek (220)"
IDS_GREEK_319_LAYOUT, "Greek (319)"
IDS_GREEK_220_LATIN_LAYOUT, "Greek (220) Latin"
IDS_GREEK_319_LATIN_LAYOUT, "Greek (319) Latin"
IDS_BELARUSIAN_LAYOUT, "Belarusian"
IDS_BULGARIAN_LAYOUT, "Bulgarian"
IDS_BULGARIAN_LATIN_LAYOUT, "Bulgarian (Latin)"
IDS_RUSSIAN_LAYOUT, "Russian"
IDS_RUSSIAN_TYPEWRITER_LAYOUT, "Russian (Typewriter)"
IDS_SERBIAN_CYRILLIC_LAYOUT, "Serbian (Cyrillic)"
IDS_UKRAINIAN_LAYOUT, "Ukrainian"
IDS_TURKISH_F_LAYOUT, "Turkish F"
IDS_TURKISH_Q_LAYOUT, "Turkish Q"
IDS_JAPANESE_LAYOUT, "Japanese"
IDS_JAPANESE_INPUT_SYSTEM_MSIME2002_LAYOUT, "Japanese Input System (MS-IME2002)"
IDS_KOREAN_LAYOUT, "Korean"
IDS_KOREAN_INPUT_SYSTEM_MSIME2002_LAYOUT, "Korean Input System (MS-IME2002)"
IDS_CHINESE_TRADITIONAL_USKEYBOARD_LAYOUT, "Chinese (Traditional) - US Keyboard"
IDS_CHINESE_TRADITIONAL_PHONETIC_LAYOUT, "Chinese (Traditional) - Phonetic"
IDS_CHINESE_TRADITIONAL_CHANGJIE_LAYOUT, "Chinese (Traditional) - ChangJie"
IDS_CHINESE_TRADITIONAL_BIG5CODE_LAYOUT, "Chinese (Traditional) - Big5 Code"
IDS_CHINESE_TRADITIONAL_DAYI_LAYOUT, "Chinese (Traditional) - DaYi"
IDS_CHINESE_TRADITIONAL_UNICODE_LAYOUT, "Chinese (Traditional) - Unicode"
IDS_CHINESE_TRADITIONAL_ALPHANUMERIC_LAYOUT, "Chinese (Traditional) - Alphanumeric"
IDS_CHINESE_SIMPLIFIED_USKEYBOARD_LAYOUT, "Chinese (Simplified) - US Keyboard"
IDS_CHINESE_SIMPLIFIED_QUANPIN_LAYOUT, "Chinese (Simplified) - QuanPin"
IDS_CHINESE_SIMPLIFIED_SHUANGPIN_LAYOUT, "Chinese (Simplified) - ShuangPin"
IDS_CHINESE_SIMPLIFIED_ZHENGMA_LAYOUT, "Chinese (Simplified) - ZhengMa"
IDS_CHINESE_SIMPLIFIED_NEIMA_LAYOUT, "Chinese (Simplified) - NeiMa"
IDS_THAI_KEDMANEE_LAYOUT, "Thai Kedmanee"
IDS_THAI_PATTACHOTE_LAYOUT, "Thai Pattachote"
IDS_THAI_KEDMANEE_NONSHIFTLOCK_LAYOUT, "Thai Kedmanee (non-ShiftLock)"
IDS_THAI_PATTACHOTE_NONSHIFTLOCK_LAYOUT, "Thai Pattachote (non-ShiftLock)"
IDS_HEBREW_LAYOUT, "Hebrew"
IDS_ARABIC_101_LAYOUT, "Arabic (101)"
IDS_ARABIC_102_LAYOUT, "Arabic (102)"
IDS_ARABIC_102_AZERTY_LAYOUT, "Arabic (102) AZERTY"
IDS_CZECH_PROGRAMMERS_LAYOUT, "Czech Programmers"
IDS_LITHUANIAN_LAYOUT, "Lithuanian"
IDS_BELGIAN_COMMA_LAYOUT, "Belgian (Comma)"
IDS_CHINESE_TRADITIONAL_NEWPHONETIC_LAYOUT, "Chinese (Traditional) - New Phonetic"
IDS_CHINESE_SIMPLIFIED_MSPINYINIME30_LAYOUT, "Chinese (Simplified) - Microsoft Pinyin IME 3.0"
IDS_UNITED_STATES_DVIRAK_LAYOUT, "United States-Dvorak"
IDS_CHINESE_TRADITIONAL_NEWCHANGJIE_LAYOUT, "Chinese (Traditional) - New ChangJie"
IDS_ASSAMESE_LAYOUT, "Assamese"
IDS_BENGALI_LAYOUT, "Bengali"
IDS_DEVANAGARI_INSCRIPT_LAYOUT, "Devanagari - INSCRIPT"
IDS_GUJARATI_LAYOUT, "Gujarati"
IDS_KANNADA_LAYOUT, "Kannada"
IDS_MALAYALAM_LAYOUT, "Malayalam"
IDS_ORIYA_LAYOUT, "Oriya"
IDS_PUNJABI_LAYOUT, "Punjabi"
IDS_TAMIL_LAYOUT, "Tamil"
IDS_TELUGU_LAYOUT, "Telugu"
IDS_MARATHI_LAYOUT, "Marathi"
IDS_HINDI_TRADITIONAL_LAYOUT, "Hindi Traditional"
IDS_CANTONESE_PHONETIC_LAYOUT, "Cantonese Phonetic"
IDS_FAEROESE_LAYOUT, "Faeroese"
IDS_FYRO_MACEDONIAN_LAYOUT, "FYRO Macedonian"
IDS_CANADIAN_MULTILINGUAL_STD_LAYOUT, "Canadian Multilingual Standard"
IDS_CHINESE_TRADITIONAL_QUICK_LAYOUT, "Chinese (Traditional) - Quick"
IDS_CHINESE_TRADITIONAL_ARRAY_LAYOUT, "Chinese (Traditional) - Array"
IDS_KAZAKH_LAYOUT, "Kazakh"
IDS_UZBEK_CYRILLIC_LAYOUT, "Uzbek Cyrillic"
IDS_AZERI_CYRILLIC_LAYOUT, "Azeri Cyrillic"
IDS_TATAR_LAYOUT, "Tatar"
IDS_AZERI_LATIN_LAYOUT, "Azeri Latin"
IDS_VIETNAMESE_LAYOUT, "Vietnamese"
IDS_GEORGIAN_LAYOUT, "Georgian"
IDS_ARMENIAN_EASTERN_LAYOUT, "Armenian Eastern"
IDS_ARMENIAN_WESTERN_LAYOUT, "Armenian Western"
IDS_GREEK_POLYTONIC_LAYOUT, "Greek Polytonic"
IDS_USENG_TABLE_IBM_ARABIC238L_LAYOUT, "US English Table for IBM Arabic 238_L"
IDS_FARSI_LAYOUT, "Farsi"
IDS_GAELIC_LAYOUT, "Gaelic"
IDS_PORTUGUESE_BRAZIL_ABNT2_LAYOUT, "Portuguese (Brazilian ABNT2)"
IDS_MONGOLIAN_CYRILLIC_LAYOUT, "Mongolian Cyrillic"
IDS_KYRGYZ_CYRILLIC_LAYOUT, "Kyrgyz Cyrillic"
IDS_URDU_LAYOUT, "Urdu"
IDS_SYRIAC_LAYOUT, "Syriac"
IDS_SYRIAC_PHONETIC_LAYOUT, "Syriac Phonetic"
IDS_DIVEHI_PHONETIC_LAYOUT, "Divehi Phonetic"
IDS_DIVEHI_TYPEWRITER_LAYOUT, "Divehi Typewriter"
END

View file

@ -0,0 +1,74 @@
/*
* 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/langbar.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
INT_PTR CALLBACK
LangBarDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (message)
{
case WM_INITDIALOG:
{
}
case WM_COMMAND:
{
switch (LOWORD(wParam))
{
case IDOK:
break;
case IDCANCEL:
EndDialog(hDlg,LOWORD(wParam));
break;
}
}
break;
}
return FALSE;
}
/* EOF */

View file

@ -0,0 +1,193 @@
#ifndef __CPL_RESOURCE_H
#define __CPL_RESOURCE_H
/* metrics */
#define PROPSHEETWIDTH 246
#define PROPSHEETHEIGHT 228
#define PROPSHEETPADDING 6
#define SYSTEM_COLUMN (0 * PROPSHEETPADDING)
#define ICONSIZE 16
/* IDI */
#define IDI_KEYBOARD_ICO 202
#define IDI_MARKER_ICO 205
#define IDI_MIC_ICO 203
#define IDI_KEY_SHORT_ICO 200
#define IDI_INFO_ICO 207
#define IDI_CPLSYSTEM 1502
/* 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
/* IDC */
#define IDC_DEFAULT_INPUT_LANG 150
#define IDC_ADD_BUTTON 151
#define IDC_REMOVE_BUTTON 152
#define IDC_PROP_BUTTON 153
#define IDC_LANG_BAR_BUTTON 154
#define IDC_KEY_SETTINGS_BUTTON 155
#define IDC_SET_DEFAULT 156
#define IDC_KEYLAYOUT_TREE 157
#define IDC_CHANGE_KEY_SEQ_BUTTON 158
#define IDC_LANGBAR_TRANSP_INACT_CHECKBOX 159
#define IDC_ADDIT_LANGBAR_ICON_NOTIFYAREA_CHECKBOX 160
#define IDC_TEXTLABEL_ON_LANGBAR_CHECKBOX 161
#define IDC_OFF_ADVAN_TEXTSERV_CHECKBOX 162
#define IDC_LANGBAR_ON_DESK_CHECKBOX 163
#define IDC_SUPPORT_ADV_SERV_CHECKBOX 164
#define IDC_TURNOFF_ADV_TXTSERV_CHECKBOX 165
#define IDC_PRESS_CAPSLOCK_KEY_RADIOBTN 166
#define IDC_PRESS_SHIFT_KEY_RADIOBTN 167
#define IDC_KEY_LISTBOX 168
#define IDC_INPUT_LANGUAGE_COMBO 169
#define IDC_KEYBOARD_LAYOUT_COMBO 170
#define IDC_ENABLE_KEY_SEQ_CHECKBOX 171
#define IDC_CTRL_CHECKBOX 172
#define IDC_ALT_CHECKBOX 173
#define IDC_CKEY_COMBOBOX 174
#define IDC_KEYBOARD_LAYOUT_IME_COMBO 175
/* IDS */
#define IDS_CPLSYSTEMNAME 1
#define IDS_CPLSYSTEMDESCRIPTION 2
#define IDS_US_LAYOUT 5000
#define IDS_BELGIAN_LAYOUT 5001
#define IDS_BELGIAN_FRENCH_LAYOUT 5002
#define IDS_PORTUGUESE_BRAZILIAN_ABNT_LAYOUT 5003
#define IDS_CANADIAN_FRENCH_LAYOUT 5004
#define IDS_CANADIAN_FRENCH_LEGACY_LAYOUT 5005
#define IDS_DANISH_LAYOUT 5007
#define IDS_DUTCH_LAYOUT 5008
#define IDS_FINNISH_LAYOUT 5009
#define IDS_FRENCH_LAYOUT 5010
#define IDS_GERMAN_LAYOUT 5011
#define IDS_GERMAN_IBM_LAYOUT 5012
#define IDS_ICELANDIC_LAYOUT 5013
#define IDS_IRISH_LAYOUT 5014
#define IDS_ITALIAN_LAYOUT 5015
#define IDS_ITALIAN_142_LAYOUT 5016
#define IDS_LATIN_AMERICAN_LAYOUT 5017
#define IDS_NORWEGIAN_LAYOUT 5018
#define IDS_PORTUGUESE_LAYOUT 5019
#define IDS_SPANISH_LAYOUT 5020
#define IDS_SPANISH_VARIANTION_LAYOUT 5021
#define IDS_SWEDISH_LAYOUT 5022
#define IDS_SWISS_FRENCH_LAYOUT 5023
#define IDS_SWISS_GERMAN_LAYOUT 5024
#define IDS_UNITED_KINGDOM_LAYOUT 5025
#define IDS_UNITED_STATES_INTERNATIONAL_LAYOUT 5026
#define IDS_UNITED_STATES_DVORAK_FOR_LEFT_HAND_LAYOUT 5027
#define IDS_UNITED_STATES_DVORAK_FOR_RIGHT_HAND_LAYOUT 5028
#define IDS_ALBANIAN_LAYOUT 5029
#define IDS_CROATIAN_LAYOUT 5030
#define IDS_CZECH_LAYOUT 5031
#define IDS_CZECH_QWERTY_LAYOUT 5032
#define IDS_HUNGARIAN_LAYOUT 5033
#define IDS_HUNGARIAN_101_KEY_LAYOUT 5034
#define IDS_POLISH_LAYOUT 5035
#define IDS_POLISH_214_LAYOUT 5036
#define IDS_ROMANIAN_LAYOUT 5037
#define IDS_SERBIAN_LATIN_LAYOUT 5038
#define IDS_SLOVAK_LAYOUT 5039
#define IDS_SLOVAK_QWERTY_LAYOUT 5040
#define IDS_SLOVENIAN_LAYOUT 5041
#define IDS_ESTONIAN_LAYOUT 5042
#define IDS_LATVIAN_LAYOUT 5043
#define IDS_LATVIAN_QWERTY_LAYOUT 5044
#define IDS_LITHUANIAN_IBM_LAYOUT 5045
#define IDS_GREEK_LAYOUT 5046
#define IDS_GREEK_LATIN_LAYOUT 5047
#define IDS_GREEK_220_LAYOUT 5048
#define IDS_GREEK_319_LAYOUT 5049
#define IDS_GREEK_220_LATIN_LAYOUT 5050
#define IDS_GREEK_319_LATIN_LAYOUT 5051
#define IDS_BELARUSIAN_LAYOUT 5052
#define IDS_BULGARIAN_LAYOUT 5053
#define IDS_BULGARIAN_LATIN_LAYOUT 5054
#define IDS_RUSSIAN_LAYOUT 5055
#define IDS_RUSSIAN_TYPEWRITER_LAYOUT 5056
#define IDS_SERBIAN_CYRILLIC_LAYOUT 5057
#define IDS_UKRAINIAN_LAYOUT 5058
#define IDS_TURKISH_F_LAYOUT 5059
#define IDS_TURKISH_Q_LAYOUT 5060
#define IDS_JAPANESE_LAYOUT 5061
#define IDS_JAPANESE_INPUT_SYSTEM_MSIME2002_LAYOUT 5062
#define IDS_KOREAN_LAYOUT 5063
#define IDS_KOREAN_INPUT_SYSTEM_MSIME2002_LAYOUT 5064
#define IDS_CHINESE_TRADITIONAL_USKEYBOARD_LAYOUT 5065
#define IDS_CHINESE_TRADITIONAL_PHONETIC_LAYOUT 5066
#define IDS_CHINESE_TRADITIONAL_CHANGJIE_LAYOUT 5067
#define IDS_CHINESE_TRADITIONAL_BIG5CODE_LAYOUT 5068
#define IDS_CHINESE_TRADITIONAL_DAYI_LAYOUT 5069
#define IDS_CHINESE_TRADITIONAL_UNICODE_LAYOUT 5070
#define IDS_CHINESE_TRADITIONAL_ALPHANUMERIC_LAYOUT 5071
#define IDS_CHINESE_SIMPLIFIED_USKEYBOARD_LAYOUT 5072
#define IDS_CHINESE_SIMPLIFIED_QUANPIN_LAYOUT 5073
#define IDS_CHINESE_SIMPLIFIED_SHUANGPIN_LAYOUT 5074
#define IDS_CHINESE_SIMPLIFIED_ZHENGMA_LAYOUT 5075
#define IDS_CHINESE_SIMPLIFIED_NEIMA_LAYOUT 5077
#define IDS_THAI_KEDMANEE_LAYOUT 5079
#define IDS_THAI_PATTACHOTE_LAYOUT 5080
#define IDS_THAI_KEDMANEE_NONSHIFTLOCK_LAYOUT 5081
#define IDS_THAI_PATTACHOTE_NONSHIFTLOCK_LAYOUT 5082
#define IDS_HEBREW_LAYOUT 5083
#define IDS_ARABIC_101_LAYOUT 5084
#define IDS_ARABIC_102_LAYOUT 5085
#define IDS_ARABIC_102_AZERTY_LAYOUT 5086
#define IDS_CZECH_PROGRAMMERS_LAYOUT 5087
#define IDS_LITHUANIAN_LAYOUT 5088
#define IDS_BELGIAN_COMMA_LAYOUT 5089
#define IDS_CHINESE_TRADITIONAL_NEWPHONETIC_LAYOUT 5090
#define IDS_CHINESE_SIMPLIFIED_MSPINYINIME30_LAYOUT 5091
#define IDS_UNITED_STATES_DVIRAK_LAYOUT 5092
#define IDS_CHINESE_TRADITIONAL_NEWCHANGJIE_LAYOUT 5093
#define IDS_ASSAMESE_LAYOUT 5094
#define IDS_BENGALI_LAYOUT 5095
#define IDS_DEVANAGARI_INSCRIPT_LAYOUT 5096
#define IDS_GUJARATI_LAYOUT 5097
#define IDS_KANNADA_LAYOUT 5098
#define IDS_MALAYALAM_LAYOUT 5099
#define IDS_ORIYA_LAYOUT 5100
#define IDS_PUNJABI_LAYOUT 5101
#define IDS_TAMIL_LAYOUT 5102
#define IDS_TELUGU_LAYOUT 5103
#define IDS_MARATHI_LAYOUT 5104
#define IDS_HINDI_TRADITIONAL_LAYOUT 5105
#define IDS_CANTONESE_PHONETIC_LAYOUT 5107
#define IDS_FAEROESE_LAYOUT 5108
#define IDS_FYRO_MACEDONIAN_LAYOUT 5109
#define IDS_CANADIAN_MULTILINGUAL_STD_LAYOUT 5110
#define IDS_CHINESE_TRADITIONAL_QUICK_LAYOUT 5111
#define IDS_CHINESE_TRADITIONAL_ARRAY_LAYOUT 5112
#define IDS_KAZAKH_LAYOUT 5113
#define IDS_UZBEK_CYRILLIC_LAYOUT 5114
#define IDS_AZERI_CYRILLIC_LAYOUT 5115
#define IDS_TATAR_LAYOUT 5116
#define IDS_AZERI_LATIN_LAYOUT 5117
#define IDS_VIETNAMESE_LAYOUT 5118
#define IDS_GEORGIAN_LAYOUT 5119
#define IDS_ARMENIAN_EASTERN_LAYOUT 5120
#define IDS_ARMENIAN_WESTERN_LAYOUT 5121
#define IDS_GREEK_POLYTONIC_LAYOUT 5122
#define IDS_USENG_TABLE_IBM_ARABIC238L_LAYOUT 5123
#define IDS_FARSI_LAYOUT 5124
#define IDS_GAELIC_LAYOUT 5125
#define IDS_PORTUGUESE_BRAZIL_ABNT2_LAYOUT 5126
#define IDS_MONGOLIAN_CYRILLIC_LAYOUT 5127
#define IDS_KYRGYZ_CYRILLIC_LAYOUT 5128
#define IDS_URDU_LAYOUT 5129
#define IDS_SYRIAC_LAYOUT 5130
#define IDS_SYRIAC_PHONETIC_LAYOUT 5131
#define IDS_DIVEHI_PHONETIC_LAYOUT 5132
#define IDS_DIVEHI_TYPEWRITER_LAYOUT 5133
#endif /* __CPL_RESOURCE_H */
/* EOF */

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

View file

@ -0,0 +1,87 @@
/*
* 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/settings.c
* PURPOSE: input.dll
* PROGRAMMER: Dmitry Chapyshev (lentind@yandex.ru)
* UPDATE HISTORY:
* 06-09-2007 Created
*/
#include <windows.h>
#include <commctrl.h>
#include <cpl.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdarg.h>
#include <tchar.h>
#include <process.h>
#include "resource.h"
#include "input.h"
/* Property page dialog callback */
INT_PTR CALLBACK
SettingPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam)
{
UNREFERENCED_PARAMETER(lParam);
switch (uMsg)
{
case WM_INITDIALOG:
break;
case WM_COMMAND:
switch (LOWORD(wParam))
{
case IDC_LANG_BAR_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_LANGBAR),
hwndDlg,
LangBarDlgProc);
break;
case IDC_KEY_SETTINGS_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_KEYSETTINGS),
hwndDlg,
KeySettingsDlgProc);
break;
case IDC_ADD_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_ADD),
hwndDlg,
AddDlgProc);
break;
case IDC_PROP_BUTTON:
DialogBox(hApplet,
MAKEINTRESOURCE(IDD_INPUT_LANG_PROP),
hwndDlg,
InputLangPropDlgProc);
break;
}
break;
}
return FALSE;
}
/* EOF */