Author: jimtabor Date: Thu Dec 24 00:30:26 2009 New Revision: 44747
URL: http://svn.reactos.org/svn/reactos?rev=44747&view=rev Log: [gdi32] - Move more region code from stubs into the appropriate file. - Enable and fix more user code.
Modified: trunk/reactos/dll/win32/gdi32/misc/stubs.c trunk/reactos/dll/win32/gdi32/objects/region.c
Modified: trunk/reactos/dll/win32/gdi32/misc/stubs.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/stubs.... ============================================================================== --- trunk/reactos/dll/win32/gdi32/misc/stubs.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/gdi32/misc/stubs.c [iso-8859-1] Thu Dec 24 00:30:26 2009 @@ -1704,25 +1704,6 @@ return NtGdiGetFontData(hdc, dwTable, dwOffset, lpvBuffer, cbData); }
- -/* - * @implemented - * - */ -DWORD -WINAPI -GetRegionData(HRGN hrgn, - DWORD nCount, - LPRGNDATA lpRgnData) -{ - if (!lpRgnData) - { - nCount = 0; - } - - return NtGdiGetRegionData(hrgn,nCount,lpRgnData); -} - INT WINAPI NamedEscape(HDC hdc,
Modified: trunk/reactos/dll/win32/gdi32/objects/region.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/reg... ============================================================================== --- trunk/reactos/dll/win32/gdi32/objects/region.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/gdi32/objects/region.c [iso-8859-1] Thu Dec 24 00:30:26 2009 @@ -190,7 +190,7 @@ */ HRGN WINAPI -CreateRectRgn(int x1, int y1, int x2,int y2) +CreateRectRgn(int x1, int y1, int x2, int y2) { /* FIXME Some part need be done in user mode */ return NtGdiCreateRectRgn(x1,y1,x2,y2); @@ -289,15 +289,34 @@ * @implemented * */ +DWORD +WINAPI +GetRegionData(HRGN hrgn, + DWORD nCount, + LPRGNDATA lpRgnData) +{ + if (!lpRgnData) + { + nCount = 0; + } + + return NtGdiGetRegionData(hrgn,nCount,lpRgnData); +} + +/* + * @implemented + * + */ INT WINAPI GetRgnBox(HRGN hrgn, LPRECT prcOut) { -#if 0 PRGN_ATTR Rgn_Attr; - if (!GdiGetHandleUserData((HGDIOBJ) hRgn, GDI_OBJECT_TYPE_REGION, (PVOID) &Rgn_Attr)) + + if (!GdiGetHandleUserData((HGDIOBJ) hrgn, GDI_OBJECT_TYPE_REGION, (PVOID) &Rgn_Attr)) return NtGdiGetRgnBox(hrgn, prcOut); + if (Rgn_Attr->Flags == NULLREGION) { prcOut->left = 0; @@ -307,12 +326,12 @@ } else { - if (Rgn_Attr->Flags != SIMPLEREGION) return NtGdiGetRgnBox(hrgn, prcOut); - *prcOut = Rgn_Attr->Rect; + if (Rgn_Attr->Flags != SIMPLEREGION) + return NtGdiGetRgnBox(hrgn, prcOut); + /* WARNING! prcOut is never checked newbies! */ + RtlCopyMemory( prcOut, &Rgn_Attr->Rect, sizeof(RECT)); } return Rgn_Attr->Flags; -#endif - return NtGdiGetRgnBox(hrgn, prcOut); }
/*