[win32k]
authorTimo Kreuzer <timo.kreuzer@reactos.org>
Wed, 31 Mar 2010 22:43:02 +0000 (22:43 +0000)
committerTimo Kreuzer <timo.kreuzer@reactos.org>
Wed, 31 Mar 2010 22:43:02 +0000 (22:43 +0000)
Use PREGION as type fo the DC regions instead of PVOID.

svn path=/branches/reactos-yarotows/; revision=46630

subsystems/win32/win32k/include/dc.h
subsystems/win32/win32k/include/region.h
subsystems/win32/win32k/objects/dclife.c

index 030f2db..e46bb9b 100644 (file)
@@ -8,6 +8,7 @@ typedef struct _DC *PDC;
 #include "bitmaps.h"
 #include "pdevobj.h"
 #include "palette.h"
+#include "region.h"
 
 /* Constants ******************************************************************/
 
@@ -127,9 +128,9 @@ typedef struct _DC
   RECTL       erclWindow;
   RECTL       erclBounds;
   RECTL       erclBoundsApp;
-  PVOID       prgnAPI; /* PROSRGNDATA */
-  PVOID       prgnVis; /* Visible region (must never be 0) */
-  PVOID       prgnRao;
+  PREGION     prgnAPI; /* PROSRGNDATA */
+  PREGION     prgnVis; /* Visible region (must never be 0) */
+  PREGION     prgnRao;
   POINTL      ptlFillOrigin;
   EBRUSHOBJ   eboFill;
   EBRUSHOBJ   eboLine;
index d29b1b0..5ad6e2c 100644 (file)
@@ -14,7 +14,7 @@ typedef struct _ROSRGNDATA
 
   RGNDATAHEADER rdh;
   RECTL        *Buffer;
-} ROSRGNDATA, *PROSRGNDATA, *LPROSRGNDATA;
+} ROSRGNDATA, *PROSRGNDATA, *LPROSRGNDATA, REGION, *PREGION;
 
 
 /* Functions ******************************************************************/
index 0dd4950..0487f60 100644 (file)
@@ -365,7 +365,7 @@ DC_Cleanup(PVOID ObjectBody)
     if (pdc->rosdc.hClipRgn)
         GreDeleteObject(pdc->rosdc.hClipRgn);
     if (pdc->prgnVis)
-        REGION_FreeRgnByHandle(((PROSRGNDATA)pdc->prgnVis)->BaseObject.hHmgr);
+        REGION_FreeRgnByHandle(pdc->prgnVis->BaseObject.hHmgr);
 ASSERT(pdc->rosdc.hGCClipRgn);
     if (pdc->rosdc.hGCClipRgn)
         GreDeleteObject(pdc->rosdc.hGCClipRgn);
@@ -419,12 +419,12 @@ DC_SetOwnership(HDC hDC, PEPROCESS Owner)
     }
     if (pDC->prgnVis)
     {   // FIXME! HAX!!!
-        Index = GDI_HANDLE_GET_INDEX(((PROSRGNDATA)pDC->prgnVis)->BaseObject.hHmgr);
+        Index = GDI_HANDLE_GET_INDEX(pDC->prgnVis->BaseObject.hHmgr);
         Entry = &GdiHandleTable->Entries[Index];
         if (Entry->UserData) FreeObjectAttr(Entry->UserData);
         Entry->UserData = NULL;
         //
-        if (!GDIOBJ_SetOwnership(((PROSRGNDATA)pDC->prgnVis)->BaseObject.hHmgr, Owner)) goto leave;
+        if (!GDIOBJ_SetOwnership(pDC->prgnVis->BaseObject.hHmgr, Owner)) goto leave;
     }
     if (pDC->rosdc.hGCClipRgn)
     {   // FIXME! HAX!!!