Sync with trunk r63343.
[reactos.git] / dll / cpl / input / input.h
1 #ifndef _INPUT_H
2 #define _INPUT_H
3
4 #include <stdarg.h>
5
6 #define WIN32_NO_STATUS
7 #include <windef.h>
8 #include <winbase.h>
9 #include <winnls.h>
10 #include <winreg.h>
11 #include <winuser.h>
12 #include <commctrl.h>
13 #include <tchar.h>
14
15 #include "resource.h"
16
17 typedef LONG (CALLBACK *CPLAPPLET_PROC)(VOID);
18
19 typedef struct
20 {
21 int idIcon;
22 int idName;
23 int idDescription;
24 CPLAPPLET_PROC AppletProc;
25 } APPLET, *PAPPLET;
26
27 extern HINSTANCE hApplet;
28 extern HANDLE hProcessHeap;
29
30 // Character Count of a layout ID like "00000409"
31 #define CCH_LAYOUT_ID 8
32
33 // Maximum Character Count of a ULONG in decimal
34 #define CCH_ULONG_DEC 10
35
36 /* input.c */
37 VOID
38 InitPropSheetPage(PROPSHEETPAGE *psp, WORD idDlg, DLGPROC DlgProc);
39
40 /* settings.c */
41 INT_PTR CALLBACK
42 SettingsPageProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
43 BOOL
44 GetLayoutName(LPCTSTR szLCID, LPTSTR szName);
45 VOID
46 UpdateLayoutsList(VOID);
47 BOOL
48 IsLayoutExists(LPTSTR szLayoutID, LPTSTR szLangID);
49
50 /* advsettings.c */
51 INT_PTR CALLBACK
52 AdvancedSettingsPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
53
54 /* keysettings.c */
55 INT_PTR CALLBACK
56 KeySettingsDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
57 VOID
58 UpdateKeySettingsList(VOID);
59
60 /* add.c */
61 INT_PTR CALLBACK
62 AddDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
63 VOID
64 CreateKeyboardLayoutList(HWND hItemsList);
65 INT
66 GetLayoutCount(LPTSTR szLang);
67
68 /* changekeyseq.c */
69 INT_PTR CALLBACK
70 ChangeKeySeqDlgProc(HWND hDlg,UINT message,WPARAM wParam,LPARAM lParam);
71 BOOL
72 GetHotkeys(LPTSTR szHotkey, LPTSTR szLangHotkey, LPTSTR szLayoutHotkey);
73
74 void ShowLastWin32Error(HWND hWndOwner);
75
76 #endif /* _INPUT_H */