ReactOS  0.4.13-dev-249-gcba1a2f
user32p.h
Go to the documentation of this file.
1 /*
2  * COPYRIGHT: See COPYING in the top level directory
3  * PROJECT: ReactOS System Libraries
4  * FILE: win32ss/user/user32/include/user32p.h
5  * PURPOSE: Win32 User Library Private Headers
6  * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
7  */
8 
9 /* INCLUDES ******************************************************************/
10 
11 #pragma once
12 
13 /* Private User32 Headers */
14 #include "controls.h"
15 #include "dde_private.h"
16 #include "regcontrol.h"
17 #include "resource.h"
18 #include "ntwrapper.h"
19 
20 
21 typedef struct
22 {
23  BOOL (WINAPI* pImmIsIME) (HKL);
24  LRESULT (WINAPI* pImmEscapeA) (HKL, HIMC, UINT, LPVOID);
25  LRESULT (WINAPI* pImmEscapeW) (HKL, HIMC, UINT, LPVOID);
26  LONG (WINAPI* pImmGetCompositionStringA) (HIMC, DWORD, LPVOID, DWORD);
27  LONG (WINAPI* pImmGetCompositionStringW) (HIMC, DWORD, LPVOID, DWORD);
28  BOOL (WINAPI* pImmGetCompositionFontA) (HIMC, LPLOGFONTA);
29  BOOL (WINAPI* pImmGetCompositionFontW) (HIMC, LPLOGFONTW);
30  BOOL (WINAPI* pImmSetCompositionFontA)(HIMC, LPLOGFONTA);
31  BOOL (WINAPI* pImmSetCompositionFontW)(HIMC, LPLOGFONTW);
32  BOOL (WINAPI* pImmGetCompositionWindow) (HIMC, LPCOMPOSITIONFORM);
33  BOOL (WINAPI* pImmSetCompositionWindow) (HIMC, LPCOMPOSITIONFORM);
34  HIMC (WINAPI* pImmAssociateContext) (HWND, HIMC);
35  BOOL (WINAPI* pImmReleaseContext) (HWND, HIMC);
36  HIMC (WINAPI* pImmGetContext) (HWND);
37  HWND (WINAPI* pImmGetDefaultIMEWnd) (HWND);
38  BOOL (WINAPI* pImmNotifyIME) (HIMC, DWORD, DWORD, DWORD);
39  BOOL (WINAPI* pImmRegisterClient) (PVOID, HINSTANCE);
40  UINT (WINAPI* pImmProcessKey) (HWND, HKL, UINT, LPARAM, DWORD);
41 
43 
44 
45 /* global variables */
47 #define user32_module User32Instance
48 extern PPROCESSINFO g_ppi;
50 extern PSERVERINFO gpsi;
51 extern SHAREDINFO gSharedInfo;
52 extern BOOLEAN gfLogonProcess;
57 extern HINSTANCE ghImm32;
59 extern USERAPIHOOK guah;
63 
64 #define IS_ATOM(x) \
65  (((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
66 
67 /* FIXME: move to a correct header */
68 /* undocumented gdi32 definitions */
71 
72 /* definitions for spy.c */
73 #define SPY_DISPATCHMESSAGE 0x0101
74 #define SPY_SENDMESSAGE 0x0103
75 #define SPY_DEFWNDPROC 0x0105
76 #define SPY_RESULT_OK 0x0001
77 #define SPY_RESULT_INVALIDHWND 0x0003
78 #define SPY_RESULT_DEFWND 0x0005
79 extern const char *SPY_GetMsgName(UINT msg, HWND hWnd);
80 extern const char *SPY_GetVKeyName(WPARAM wParam);
82 extern void SPY_ExitMessage(INT iFlag, HWND hwnd, UINT msg, LRESULT lReturn, WPARAM wParam, LPARAM lParam);
83 
84 /* definitions for usrapihk.c */
92 
93 /* definitions for message.c */
96 
97 /* definitions for misc.c */
108 
109 /* definitions for menu.c */
115 
116 /* definitions for logon.c */
117 VOID FASTCALL Logon(BOOL IsLogon);
118 
119 /* misc definitions */
120 void mirror_rect( const RECT *window_rect, RECT *rect );
123 HCURSOR CursorIconToCursor(HICON hIcon, BOOL SemiTransparent);
126 UINT WINAPI WinPosGetMinMaxInfo(HWND hWnd, POINT* MaxSize, POINT* MaxPos, POINT* MinTrack, POINT* MaxTrack);
129 extern BOOL FASTCALL EnumNamesA(HWINSTA WindowStation, NAMEENUMPROCA EnumFunc, LPARAM Context, BOOL Desktops);
130 extern BOOL FASTCALL EnumNamesW(HWINSTA WindowStation, NAMEENUMPROCW EnumFunc, LPARAM Context, BOOL Desktops);
132 HWND* WIN_ListChildren (HWND hWndparent);
138 
139 /* EOF */
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
BOOL FASTCALL EndUserApiHook(VOID)
Definition: usrapihk.c:164
const uint16_t * PCWSTR
Definition: typedefs.h:55
#define IN
Definition: typedefs.h:38
static HICON
Definition: imagelist.c:84
Imm32ApiTable gImmApiEntries
Definition: imm.c:21
struct tagLOGFONTW * LPLOGFONTW
VOID FASTCALL IntNotifyWinEvent(DWORD, HWND, LONG, LONG, DWORD)
Definition: hook.c:113
HINSTANCE ghImm32
Definition: imm.c:22
VOID FASTCALL ResetUserApiHook(PUSERAPIHOOK)
Definition: usrapihk.c:131
PCALLPROCDATA FASTCALL ValidateCallProc(HANDLE hCallProc)
Definition: misc.c:349
BOOL WINAPI InitializeImmEntryTable(VOID)
Definition: imm.c:183
PVOID FASTCALL ValidateHandleNoErr(HANDLE handle, UINT uType)
Definition: misc.c:320
WORD ATOM
Definition: dimm.idl:113
_In_ ATOM _In_ HANDLE _In_ BOOLEAN SystemProp
Definition: prop.h:22
PUSER_HANDLE_TABLE gHandleTable
Definition: object.c:13
LONG NTSTATUS
Definition: precomp.h:26
USERAPIHOOK guah
Definition: usrapihk.c:344
static HDC
Definition: imagelist.c:92
void Draw(HDC aDc)
Definition: magnifier.c:365
BOOL WINAPI ClearUserApiHook(HINSTANCE hInstance)
Definition: usrapihk.c:193
HWND hWnd
Definition: settings.c:17
BOOL FASTCALL TestWindowProcess(PWND)
Definition: misc.c:176
HANDLE HWND
Definition: compat.h:13
static WCHAR String[]
Definition: stringtable.c:55
UINT_PTR WPARAM
Definition: windef.h:207
HICON HCURSOR
Definition: windef.h:284
HICON hIconWindows
Definition: dllmain.c:21
VOID WINAPI UserSetLastError(IN DWORD dwErrCode)
Definition: misc.c:13
_Out_ RTL_ATOM * Atom
Definition: class.h:54
BOOL FASTCALL EnumNamesW(HWINSTA WindowStation, NAMEENUMPROCW EnumFunc, LPARAM Context, BOOL Desktops)
Definition: winsta.c:130
#define BOOL
Definition: nt_native.h:43
#define FASTCALL
Definition: nt_native.h:50
void SPY_ExitMessage(INT iFlag, HWND hwnd, UINT msg, LRESULT lReturn, WPARAM wParam, LPARAM lParam)
Definition: spy.c:2648
ULONG_PTR g_ulSharedDelta
Definition: dllmain.c:17
HINSTANCE User32Instance
Definition: dllmain.c:10
#define DWORD
Definition: nt_native.h:44
BOOL FASTCALL DefSetText(HWND hWnd, PCWSTR String, BOOL Ansi)
Definition: defwnd.c:64
int32_t INT
Definition: typedefs.h:56
BOOLEAN gfServerProcess
Definition: dllmain.c:19
& rect
Definition: startmenu.cpp:1413
WPARAM wParam
Definition: combotst.c:138
const char * SPY_GetMsgName(UINT msg, HWND hWnd)
Definition: spy.c:2218
uint32_t ULONG_PTR
Definition: typedefs.h:63
#define down(mutex)
Definition: glue.h:29
BOOL FASTCALL IsMsgOverride(UINT, PUAHOWP)
Definition: usrapihk.c:63
BOOL(CALLBACK * NAMEENUMPROCW)(LPWSTR, LPARAM)
Definition: winuser.h:2864
BOOL(CALLBACK * USERAPIHOOKPROC)(UAPIHK State, PUSERAPIHOOK puah)
Definition: undocuser.h:362
HINSTANCE hInstance
Definition: charmap.c:20
BOOL(CALLBACK * NAMEENUMPROCA)(LPSTR, LPARAM)
Definition: winuser.h:2863
BOOL WINAPI GdiDllInitialize(HANDLE, DWORD, LPVOID)
Definition: dllmain.c:71
unsigned int BOOL
Definition: ntddk_ex.h:94
long LONG
Definition: pedump.c:60
HINSTANCE ghmodUserApiHook
Definition: usrapihk.c:37
unsigned char BOOLEAN
HCURSOR CursorIconToCursor(HICON hIcon, BOOL SemiTransparent)
Definition: cursoricon.c:79
LONG_PTR LPARAM
Definition: windef.h:208
CRITICAL_SECTION U32AccelCacheLock
Definition: accel.c:54
BOOL WINAPI InitUserApiHook(HINSTANCE hInstance, USERAPIHOOKPROC pfn)
Definition: usrapihk.c:255
VOID UserGetWindowBorders(DWORD, DWORD, SIZE *, BOOL)
Definition: winpos.c:885
void * PVOID
Definition: retypes.h:9
DWORD HIMC
Definition: dimm.idl:75
static BOOL CALLBACK EnumFunc(_In_ HWND hWnd, _In_ PCWSTR lpszString, _In_ HANDLE hData)
Definition: SetProp.c:15
PPROCESSINFO g_ppi
Definition: dllmain.c:12
struct _tagCOMPOSITIONFORM * LPCOMPOSITIONFORM
Definition: ntuser.h:19
VOID FASTCALL ScrollTrackScrollBar(HWND Wnd, INT SBType, POINT Pt)
Definition: scrollbar.c:1115
GLsizeiptr size
Definition: glext.h:5919
UINT MenuDrawMenuBar(HDC hDC, LPRECT Rect, HWND hWnd, BOOL Draw)
BOOL FASTCALL IsInsideUserApiHook(VOID)
Definition: usrapihk.c:98
__wchar_t WCHAR
Definition: xmlstorage.h:180
PSERVERINFO gpsi
Definition: main.c:27
#define WINAPI
Definition: msvc.h:8
void SPY_EnterMessage(INT iFlag, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
Definition: spy.c:2593
unsigned long DWORD
Definition: ntddk_ex.h:95
HICON hIconSmWindows
Definition: dllmain.c:21
#define LPVOID
Definition: nt_native.h:45
LONG WINAPI GdiGetCharDimensions(HDC, LPTEXTMETRICW, LONG *)
Definition: font.c:2145
VOID MenuTrackMouseMenuBar(HWND hWnd, ULONG Ht, POINT Pt)
PWND FASTCALL ValidateHwnd(HWND hwnd)
Definition: misc.c:369
VOID FASTCALL Logon(BOOL IsLogon)
Definition: logon.c:74
RTL_CRITICAL_SECTION gcsUserApiHook
Definition: usrapihk.c:39
BOOL get_icon_size(HICON hIcon, SIZE *size)
Definition: cursoricon.c:74
#define LRESULT
Definition: ole.h:14
VOID DeleteFrameBrushes(VOID)
Definition: paint.c:71
UINT_PTR HKL
Definition: msctf.idl:101
void mirror_rect(const RECT *window_rect, RECT *rect)
Definition: winpos.c:15
BOOL UserDrawSysMenuButton(HWND hWnd, HDC hDC, LPRECT, BOOL down)
Status
Definition: gdiplustypes.h:24
VOID FASTCALL MessageCleanup(VOID)
Definition: message.c:3281
VOID WINAPI UserSetLastNTError(IN NTSTATUS Status)
Definition: misc.c:25
Definition: ntuser.h:657
static HDC hDC
Definition: 3dtext.c:33
BOOL FASTCALL EnumNamesA(HWINSTA WindowStation, NAMEENUMPROCA EnumFunc, LPARAM Context, BOOL Desktops)
Definition: winsta.c:273
SHAREDINFO gSharedInfo
Definition: dllmain.c:16
HANDLE FASTCALL UserGetProp(HWND hWnd, ATOM Atom, BOOLEAN SystemProp)
Definition: prop.c:66
HICON hIcon
Definition: msconfig.c:44
BOOL FASTCALL BeginIfHookedUserApiHook(VOID)
Definition: usrapihk.c:106
BOOLEAN gfLogonProcess
Definition: dllmain.c:18
PVOID FASTCALL ValidateHandle(HANDLE, UINT)
Definition: misc.c:262
unsigned int UINT
Definition: ndis.h:50
VOID MenuTrackKbdMenuBar(HWND hWnd, UINT wParam, WCHAR wChar)
BOOL FASTCALL MessageInit(VOID)
Definition: message.c:3273
HWND * WIN_ListChildren(HWND hWndparent)
Definition: mdi.c:140
#define msg(x)
Definition: auth_time.c:54
PWND FASTCALL GetThreadDesktopWnd(VOID)
Definition: misc.c:407
struct tagLOGFONTA * LPLOGFONTA
UINT WINAPI WinPosGetMinMaxInfo(HWND hWnd, POINT *MaxSize, POINT *MaxPos, POINT *MinTrack, POINT *MaxTrack)
VOID FASTCALL GetConnected(VOID)
unsigned int ULONG
Definition: retypes.h:1
PWND FASTCALL ValidateHwndNoErr(HWND hwnd)
Definition: window.c:96
BOOL WINAPI GdiValidateHandle(HGDIOBJ)
Definition: misc.c:712
const char * SPY_GetVKeyName(WPARAM wParam)
Definition: spy.c:2236
LONG_PTR LRESULT
Definition: windef.h:209
BOOL MenuInit(VOID)
Definition: menu.c:363
PWND FASTCALL ValidateHwndOrDesk(HWND hwnd)
Definition: misc.c:420
LPARAM lParam
Definition: combotst.c:139
VOID MenuCleanup(VOID)
Definition: menu.c:649
BOOL WINAPI UpdatePerUserImmEnabling(VOID)
Definition: imm.c:287
PUSER_HANDLE_ENTRY gHandleEntries
Definition: dllmain.c:14