#ifndef __WIN32K_NTUSER_H
#define __WIN32K_NTUSER_H
-typedef struct _PROCESSINFO *PPROCESSINFO;
-typedef struct _THREADINFO *PTHREADINFO;
+struct _PROCESSINFO;
+struct _THREADINFO;
struct _DESKTOP;
struct _WND;
struct tagPOPUPMENU;
union
{
PVOID pi;
- PTHREADINFO pti; /* pointer to Win32ThreadInfo */
- PPROCESSINFO ppi; /* pointer to W32ProcessInfo */
+ struct _THREADINFO *pti; /* pointer to Win32ThreadInfo */
+ struct _PROCESSINFO *ppi; /* pointer to W32ProcessInfo */
};
unsigned char type; /* object type (0 if free) */
unsigned char flags;
HWND hShellWindow;
struct _WND *spwndShell;
- PPROCESSINFO ppiShellProcess;
+ struct _PROCESSINFO *ppiShellProcess;
union
{
typedef struct _THROBJHEAD
{
HEAD;
- PTHREADINFO pti;
+ struct _THREADINFO *pti;
} THROBJHEAD, *PTHROBJHEAD;
typedef struct _THRDESKHEAD
{
HEAD;
ULONG hTaskWow;
- PPROCESSINFO ppi;
+ struct _PROCESSINFO *ppi;
} PROCMARKHEAD, *PPROCMARKHEAD;
#define UserHMGetHandle(obj) ((obj)->head.h)
ULONG_PTR offPfn;
ULONG flags; /* Some internal flags */
INT ihmod;
- PTHREADINFO ptiHooked;
+ struct _THREADINFO *ptiHooked;
struct _DESKTOP *rpdesk;
/* ReactOS */
LIST_ENTRY Chain; /* Hook chain entry */
LPDWORD lpdwRegisteredClasses;
ULONG Win32ClientInfo3[26];
/* It's just a pointer reference not to be used w the structure in user space. */
- PPROCESSINFO ppi;
+ struct _PROCESSINFO *ppi;
} CLIENTINFO, *PCLIENTINFO;
/* Make sure it fits into the TEB */
/* Hack */
#define MNF_SYSMENU 0x0200
+/* (other FocusedItem values give the position of the focused item) */
+#define NO_SELECTED_ITEM 0xffff
+
typedef struct tagMENU
{
PROCDESKHEAD head;
INT cy;
} OEMBITMAPINFO, *POEMBITMAPINFO;
+typedef enum _OBI_TYPES
+{
+ OBI_CLOSE = 0,
+ OBI_UPARROW = 46,
+ OBI_UPARROWI = 49,
+ OBI_DNARROW = 50,
+ OBI_DNARROWI = 53,
+ OBI_MNARROW = 62,
+ OBI_CTYPES = 93
+} OBI_TYPES;
+
typedef struct tagMBSTRING
{
WCHAR szName[16];
DWORD dwKeyCache;
DWORD dwAsyncKeyCache;
ULONG cCaptures;
- OEMBITMAPINFO oembmi[93];
+ OEMBITMAPINFO oembmi[OBI_CTYPES];
RECT rcScreenReal;
USHORT BitCount;
USHORT dmLogPixels;
HANDLE Data;
} PROPLISTITEM, *PPROPLISTITEM;
+#define PROPERTY_FLAG_SYSTEM 1
+
typedef struct _PROPERTY
{
LIST_ENTRY PropListEntry;
LUID luid;
} BROADCASTPARM, *PBROADCASTPARM;
-PTHREADINFO GetW32ThreadInfo(VOID);
-PPROCESSINFO GetW32ProcessInfo(VOID);
+struct _THREADINFO *GetW32ThreadInfo(VOID);
+struct _PROCESSINFO *GetW32ProcessInfo(VOID);
typedef struct _WNDMSG
{
DWORD dwUnknown1,
DWORD dwUnknown2,
DWORD dwUnknown3);
+
+DWORD
+APIENTRY
+NtUserDbgWin32HeapFail(
+ DWORD Unknown0,
+ DWORD Unknown1);
+
+DWORD
+APIENTRY
+NtUserDbgWin32HeapStat(
+ DWORD Unknown0,
+ DWORD Unknown1);
BOOL
NTAPI
NtUserChangeDisplaySettings(
PUNICODE_STRING lpszDeviceName,
LPDEVMODEW lpDevMode,
- HWND hwnd,
DWORD dwflags,
LPVOID lParam);
NtUserSetDbgTag(
DWORD Unknown0,
DWORD Unknown1);
+
+DWORD
+APIENTRY
+NtUserSetDbgTagCount(
+ DWORD Unknown0);
HWND
NTAPI
DWORD
NTAPI
NtUserSetRipFlags(
- DWORD Unknown0,
- DWORD Unknown1);
+ DWORD Unknown0);
DWORD
NTAPI
BOOL
NTAPI
NtUserValidateHandleSecure(
- HANDLE hHdl,
- BOOL Restricted);
+ HANDLE hHdl);
BOOL
NTAPI
BOOL
APIENTRY
NtUserValidateTimerCallback(
- HWND hWnd,
- WPARAM wParam,
LPARAM lParam);
DWORD
/* Should be done in usermode */
-/* (other FocusedItem values give the position of the focused item) */
-#define NO_SELECTED_ITEM 0xffff
-
-typedef struct tagROSMENUINFO
-{
- /* ----------- MENUINFO ----------- */
- DWORD cbSize;
- DWORD fMask;
- DWORD dwStyle;
- UINT cyMax;
- HBRUSH hbrBack;
- DWORD dwContextHelpID;
- ULONG_PTR dwMenuData;
- /* ----------- Extra ----------- */
- ULONG fFlags; /* Menu flags (MF_POPUP, MF_SYSMENU) */
- UINT iItem; /* Currently focused item */
- UINT cItems; /* Number of items in the menu */
- WORD cxMenu; /* Width of the whole menu */
- WORD cyMenu; /* Height of the whole menu */
- ULONG cxTextAlign;
- PWND spwndNotify; /* window receiving the messages for ownerdraw */
- INT iTop;
- INT iMaxTop;
- DWORD dwArrowsOn:2;
-
- HMENU Self; /* Handle of this menu */
- HWND Wnd; /* Window containing the menu */
- BOOL TimeToHide; /* Request hiding when receiving a second click in the top-level menu item */
-} ROSMENUINFO, *PROSMENUINFO;
-
-typedef struct tagROSMENUITEMINFO
-{
- /* ----------- MENUITEMINFOW ----------- */
- UINT cbSize;
- UINT fMask;
- UINT fType;
- UINT fState;
- UINT wID;
- HMENU hSubMenu;
- HBITMAP hbmpChecked;
- HBITMAP hbmpUnchecked;
- DWORD dwItemData;
- LPWSTR dwTypeData;
- UINT cch;
- HBITMAP hbmpItem;
- /* ----------- Extra ----------- */
- RECT Rect; /* Item area (relative to menu window) */
- UINT dxTab; /* X position of text after Tab */
- LPWSTR lpstr; /* Copy of the text pointer in MenuItem->Text */
- SIZE maxBmpSize; /* Maximum size of the bitmap items in MIIM_BITMAP state */
-} ROSMENUITEMINFO, *PROSMENUITEMINFO;
-
HMONITOR
NTAPI
NtUserMonitorFromPoint(