xref: /reactos/dll/cpl/input/input.h (revision 67d5a538)
1 #ifndef _INPUT_H
2 #define _INPUT_H
3 
4 #include <stdlib.h>
5 #include <wchar.h>
6 
7 #define WIN32_NO_STATUS
8 #include <windef.h>
9 #include <winbase.h>
10 #include <winnls.h>
11 #include <winreg.h>
12 #include <winuser.h>
13 #include <wingdi.h>
14 #include <commctrl.h>
15 #include <windowsx.h>
16 #include <setupapi.h>
17 #include <strsafe.h>
18 #include <cpl.h>
19 #include <imm32_undoc.h>
20 
21 #include "resource.h"
22 
23 typedef struct
24 {
25     int idIcon;
26     int idName;
27     int idDescription;
28     APPLET_PROC AppletProc;
29 } APPLET, *PAPPLET;
30 
31 extern HINSTANCE hApplet;
32 extern BOOL g_bRebootNeeded;
33 
34 // Character Count of a layout ID like "00000409"
35 #define CCH_LAYOUT_ID    8
36 
37 // Maximum Character Count of a ULONG in decimal
38 #define CCH_ULONG_DEC    10
39 
40 #define MAX_STR_LEN      256
41 
42 /* settings_page.c */
43 INT_PTR CALLBACK
44 SettingsPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
45 BOOL EnableProcessPrivileges(LPCWSTR lpPrivilegeName, BOOL bEnable);
46 
47 /* advanced_settings_page.c */
48 INT_PTR CALLBACK
49 AdvancedSettingsPageProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
50 
51 /* add_dialog.c */
52 INT_PTR CALLBACK
53 AddDialogProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
54 
55 /* edit_dialog.c */
56 INT_PTR CALLBACK
57 EditDialogProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
58 
59 /* key_settings_dialog.c */
60 
61 typedef struct
62 {
63     DWORD dwAttributes;
64     DWORD dwLanguage;
65     DWORD dwLayout;
66 } KEY_SETTINGS;
67 
68 INT_PTR CALLBACK
69 KeySettingsDialogProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
70 
71 DWORD
72 ReadAttributes(VOID);
73 
74 /* key_sequence_dialog.c */
75 INT_PTR CALLBACK
76 ChangeKeySeqDialogProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
77 
78 
79 static inline DWORD
80 DWORDfromString(const WCHAR *pszString)
81 {
82     WCHAR *pszEnd;
83 
84     return wcstoul(pszString, &pszEnd, 16);
85 }
86 
87 VOID GetSystemLibraryPath(LPWSTR pszPath, INT cchPath, LPCWSTR pszFileName);
88 
89 #endif /* _INPUT_H */
90