GdiEntry11 (not tested, we can not test it yet in ros, until we got ddraw.dll and some api in win32k/ntdraw been implement) Modified: trunk/reactos/lib/gdi32/misc/gdientry.c Modified: trunk/reactos/lib/gdi32/misc/stubs.c _____
Modified: trunk/reactos/lib/gdi32/misc/gdientry.c --- trunk/reactos/lib/gdi32/misc/gdientry.c 2005-08-07 15:55:01 UTC (rev 17169) +++ trunk/reactos/lib/gdi32/misc/gdientry.c 2005-08-07 16:22:37 UTC (rev 17170) @@ -123,10 +123,10 @@
* * GDIEntry 4 */ -BOOL STDCALL DdCreateSurfaceObject( -LPDDRAWI_DDRAWSURFACE_LCL pSurfaceLocal, -BOOL bPrimarySurface -) +BOOL +STDCALL +DdCreateSurfaceObject( LPDDRAWI_DDRAWSURFACE_LCL pSurfaceLocal, + BOOL bPrimarySurface) { return intDDCreateSurface(pSurfaceLocal,1); } @@ -210,9 +210,37 @@ return NtGdiDdReenableDirectDrawObject((HANDLE)pDirectDrawGlobal->hDD, pbNewMode); }
+/* + * @implemented + * + * GDIEntry 11 + */ +BOOL +STDCALL +DdAttachSurface( LPDDRAWI_DDRAWSURFACE_LCL pSurfaceFrom, + LPDDRAWI_DDRAWSURFACE_LCL pSurfaceTo) +{
+ /* Create Surface if it does not exits one */ + if (pSurfaceFrom->hDDSurface) + { + if (!intDDCreateSurface(pSurfaceFrom,FALSE)) + { + return FALSE; + } + }
+ /* Create Surface if it does not exits one */ + if (pSurfaceTo->hDDSurface) + { + if (!intDDCreateSurface(pSurfaceTo,FALSE)) + { + return FALSE; + } + }
+ return NtGdiDdAttachSurface( (HANDLE) pSurfaceFrom->hDDSurface, (HANDLE) pSurfaceTo->hDDSurface); +}
/* * @implemented @@ -309,7 +337,7 @@ /* interal create surface */ BOOL intDDCreateSurface ( LPDDRAWI_DDRAWSURFACE_LCL pSurface, - BOOL bComplete) + BOOL bComplete) { DD_SURFACE_LOCAL SurfaceLocal; DD_SURFACE_GLOBAL SurfaceGlobal; _____
Modified: trunk/reactos/lib/gdi32/misc/stubs.c --- trunk/reactos/lib/gdi32/misc/stubs.c 2005-08-07 15:55:01 UTC (rev 17169) +++ trunk/reactos/lib/gdi32/misc/stubs.c 2005-08-07 16:22:37 UTC (rev 17170) @@ -3905,24 +3905,9 @@
}
- /* * @unimplemented */ -BOOL STDCALL DdAttachSurface( -LPDDRAWI_DDRAWSURFACE_LCL pSurfaceFrom, -LPDDRAWI_DDRAWSURFACE_LCL pSurfaceTo -) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - - -/* - * @unimplemented - */ BOOL STDCALL GdiPlayEMF