Implement GdiEntry14 (party tested see older commit msg)
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-07-29 16:53:27 UTC (rev 16874)
+++ trunk/reactos/lib/gdi32/misc/gdientry.c	2005-07-29 17:11:11 UTC (rev 16875)
@@ -91,6 +91,9 @@
   return TRUE;
 }
 
+
+
+
 /*
  * @implemented
  *
@@ -116,6 +119,8 @@
 }
 
 
+
+
 /*
  * @implemented
  *
@@ -171,6 +176,8 @@
  return NtGdiDdReleaseDC((HANDLE) pSurfaceLocal->hDDSurface);
 }
 
+
+
 /*
  * @implemented
  *
@@ -193,6 +200,10 @@
   return NtGdiDdReenableDirectDrawObject((HANDLE)pDirectDrawGlobal->hDD, pbNewMode); 	
 } 
 
+
+
+
+
 /*
  * @implemented
  *
@@ -218,7 +229,35 @@
  return RemberDdQueryDisplaySettingsUniquenessID;
 }
 
+/*
+ * @implemented
+ *
+ * GDIEntry 14
+ */
+HANDLE 
+STDCALL 
+DdGetDxHandle(LPDDRAWI_DIRECTDRAW_LCL pDDraw,
+              LPDDRAWI_DDRAWSURFACE_LCL pSurface,
+              BOOL bRelease)
+{
+ if (pSurface) 
+ {                              
+   return ((HANDLE) NtGdiDdGetDxHandle(NULL, (HANDLE)pSurface->hDDSurface, bRelease));    
+ }
 
+ 
+ if (!pDDraw->lpGbl->hDD)
+  {
+     if (!pDirectDrawGlobalInternal->hDD)
+     {
+       return FALSE;
+     }
+   return ((HANDLE) NtGdiDdGetDxHandle( (HANDLE) pDirectDrawGlobalInternal->hDD, (HANDLE) pSurface->hDDSurface, bRelease));
+  }
+
+  return ((HANDLE) NtGdiDdGetDxHandle((HANDLE)pDDraw->lpGbl->hDD, (HANDLE) pSurface->hDDSurface, bRelease));
+}
+
 /*
  * @implemented
  *

Modified: trunk/reactos/lib/gdi32/misc/stubs.c
--- trunk/reactos/lib/gdi32/misc/stubs.c	2005-07-29 16:53:27 UTC (rev 16874)
+++ trunk/reactos/lib/gdi32/misc/stubs.c	2005-07-29 17:11:11 UTC (rev 16875)
@@ -3941,24 +3941,6 @@
 /*
  * @unimplemented
  */
-HANDLE STDCALL DdGetDxHandle( 
-LPDDRAWI_DIRECTDRAW_LCL pDDraw,
-LPDDRAWI_DDRAWSURFACE_LCL pSurface,
-BOOL bRelease
-)
-{
-	UNIMPLEMENTED;
-	SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-	return 0;
-}
-
-
-
-
-
-/*
- * @unimplemented
- */
 BOOL 
 STDCALL
 GdiPlayEMF