Author: tkreuzer Date: Wed Mar 25 22:32:06 2015 New Revision: 66888
URL: http://svn.reactos.org/svn/reactos?rev=66888&view=rev Log: [WIN32SS/INCLUDE] - Add ntwin32.h, move declaration of PTHREADINFO, PPROCESSINFO and W32CLIENTINFO there - Avoid language extensions that are not C++ compatible - Avoid dependenence to PTHREADINFO/PPROCESSINFO in ntuser.h and use incomplete types instead - Move duplicate definition of PATRECT from ntusrtyp.h to user32.h private header
Modified: trunk/reactos/win32ss/include/ntgdityp.h trunk/reactos/win32ss/include/ntuser.h trunk/reactos/win32ss/include/ntusrtyp.h trunk/reactos/win32ss/user/user32/include/user32.h
Modified: trunk/reactos/win32ss/include/ntgdityp.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/include/ntgdityp.h?... ============================================================================== --- trunk/reactos/win32ss/include/ntgdityp.h [iso-8859-1] (original) +++ trunk/reactos/win32ss/include/ntgdityp.h [iso-8859-1] Wed Mar 25 22:32:06 2015 @@ -10,6 +10,8 @@
#ifndef _NTGDITYP_ #define _NTGDITYP_ + +#include "ntwin32.h"
/* ENUMERATIONS **************************************************************/
@@ -436,9 +438,7 @@ DWORD dwCFCount; } CFONT, *PCFONT;
-// -// GDI Batch structures. -// +/* GDI Batch structures. */ typedef struct _GDIBATCHHDR { SHORT Size; @@ -464,24 +464,13 @@ ULONG ulBrushClr; } GDIBSPATBLT, *PGDIBSPATBLT;
-#ifndef _NTUSRTYP_ +/* FIXME: this should go to some "public" GDI32 header */ typedef struct _PATRECT { RECT r; HBRUSH hBrush; } PATRECT, * PPATRECT; -#endif -#ifndef __WIN32K_NTUSER_H -typedef struct _W32CLIENTINFO -{ - ULONG CI_flags; - ULONG cSpins; - ULONG ulWindowsVersion; - ULONG ulAppCompatFlags; - ULONG ulAppCompatFlags2; - ULONG W32ClientInfo[57]; -} W32CLIENTINFO, *PW32CLIENTINFO; -#endif + typedef struct _GDIBSPPATBLT { GDIBATCHHDR gbHdr; @@ -539,26 +528,20 @@ { GDIBATCHHDR gbHdr; int fnMode; - RECTL; + RECTL rcl; } GDIBSEXTSELCLPRGN, *PGDIBSEXTSELCLPRGN; -// -// Use with GdiBCSelObj, GdiBCDelObj and GdiBCDelRgn. + +/* Use with GdiBCSelObj, GdiBCDelObj and GdiBCDelRgn. */ typedef struct _GDIBSOBJECT { GDIBATCHHDR gbHdr; HGDIOBJ hgdiobj; } GDIBSOBJECT, *PGDIBSOBJECT;
-// -// Declarations missing in ddk/winddi.h -// +/* Declaration missing in ddk/winddi.h */ typedef VOID (APIENTRY *PFN_DrvMovePanning)(LONG, LONG, FLONG); -//typedef BOOL (APIENTRY *PFN_DrvOffset)(SURFOBJ*, LONG, LONG, FLONG); - - -// -// Most of these are defined in ddk/winddi.h -// + +/* Most of these are defined in ddk/winddi.h */ typedef struct _DRIVER_FUNCTIONS { PFN_DrvEnablePDEV EnablePDEV;
Modified: trunk/reactos/win32ss/include/ntuser.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/include/ntuser.h?re... ============================================================================== --- trunk/reactos/win32ss/include/ntuser.h [iso-8859-1] (original) +++ trunk/reactos/win32ss/include/ntuser.h [iso-8859-1] Wed Mar 25 22:32:06 2015 @@ -1,8 +1,8 @@ #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; @@ -21,8 +21,8 @@ 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; @@ -141,7 +141,7 @@ HWND hShellWindow; struct _WND *spwndShell;
- PPROCESSINFO ppiShellProcess; + struct _PROCESSINFO *ppiShellProcess;
union { @@ -178,7 +178,7 @@ typedef struct _THROBJHEAD { HEAD; - PTHREADINFO pti; + struct _THREADINFO *pti; } THROBJHEAD, *PTHROBJHEAD;
typedef struct _THRDESKHEAD @@ -200,7 +200,7 @@ { HEAD; ULONG hTaskWow; - PPROCESSINFO ppi; + struct _PROCESSINFO *ppi; } PROCMARKHEAD, *PPROCMARKHEAD;
#define UserHMGetHandle(obj) ((obj)->head.h) @@ -218,7 +218,7 @@ 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 */ @@ -309,7 +309,7 @@ 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 */ @@ -1032,8 +1032,8 @@ LUID luid; } BROADCASTPARM, *PBROADCASTPARM;
-PTHREADINFO GetW32ThreadInfo(VOID); -PPROCESSINFO GetW32ProcessInfo(VOID); +struct _THREADINFO *GetW32ThreadInfo(VOID); +struct _PROCESSINFO *GetW32ProcessInfo(VOID);
typedef struct _WNDMSG {
Modified: trunk/reactos/win32ss/include/ntusrtyp.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/include/ntusrtyp.h?... ============================================================================== --- trunk/reactos/win32ss/include/ntusrtyp.h [iso-8859-1] (original) +++ trunk/reactos/win32ss/include/ntusrtyp.h [iso-8859-1] Wed Mar 25 22:32:06 2015 @@ -11,15 +11,11 @@ #ifndef _NTUSRTYP_ #define _NTUSRTYP_
+#include <ntwin32.h> + /* ENUMERATIONS **************************************************************/
/* TYPES *********************************************************************/ - -typedef struct _PATRECT -{ - RECT r; - HBRUSH hBrush; -} PATRECT, * PPATRECT;
/* Bitfields for UserpreferencesMask SPI_ values (with defaults) */ /* See also http://technet.microsoft.com/nl-nl/library/cc957204(en-us).aspx */ @@ -88,7 +84,7 @@
typedef struct { union - { + { ICONRESDIR icon; CURSORRESDIR cursor; } ResInfo;
Modified: trunk/reactos/win32ss/user/user32/include/user32.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/user32/include... ============================================================================== --- trunk/reactos/win32ss/user/user32/include/user32.h [iso-8859-1] (original) +++ trunk/reactos/win32ss/user/user32/include/user32.h [iso-8859-1] Wed Mar 25 22:32:06 2015 @@ -61,4 +61,11 @@ /* User macros */ #include "user_x.h"
+/* FIXME: this should be in a "public" GDI32 header */ +typedef struct _PATRECT +{ + RECT r; + HBRUSH hBrush; +} PATRECT, * PPATRECT; + #endif /* _USER32_PCH_ */