[ros-diffs] [greatlrd] 32628: partly implement gdi32 Escape implemented command GETCOLORTABLE and GETEXTENDEDTEXTMETRICS in Escape MS have releae docs over this api in msdn, u can also found docs in nt4 ddk and win98 ddk how this api works. and thanks to Filip and Blight that have explain how this api works time to time, in gdi32

greatlrd at svn.reactos.org greatlrd at svn.reactos.org
Sun Mar 9 20:04:26 CET 2008


Author: greatlrd
Date: Sun Mar  9 14:04:26 2008
New Revision: 32628

URL: http://svn.reactos.org/svn/reactos?rev=3D32628&view=3Drev
Log:
partly implement gdi32 Escape
implemented command GETCOLORTABLE and GETEXTENDEDTEXTMETRICS in Escape
MS have releae docs over this api in msdn, u can also found docs in nt4 ddk=
 and win98 ddk how this api works. =

and thanks to Filip and Blight that have explain how this api works time to=
 time, in gdi32 =



Modified:
    trunk/reactos/dll/win32/gdi32/misc/stubs.c

Modified: trunk/reactos/dll/win32/gdi32/misc/stubs.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/=
stubs.c?rev=3D32628&r1=3D32627&r2=3D32628&view=3Ddiff
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/reactos/dll/win32/gdi32/misc/stubs.c (original)
+++ trunk/reactos/dll/win32/gdi32/misc/stubs.c Sun Mar  9 14:04:26 2008
@@ -178,17 +178,7 @@
     return 0;
 }
 =

-/*
- * @unimplemented
- */
-int
-STDCALL
-Escape(HDC hdc, INT escape, INT in_count, LPCSTR in_data, LPVOID out_data)
-{
-        UNIMPLEMENTED;
-        SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-        return 0;
-}
+
 =

 /*
  * @implemented
@@ -1503,6 +1493,45 @@
     petm->emKernPairs =3D GetKerningPairsA(hdc, 0, 0);
 =

   return Ret;
+}
+
+/*
+ * @unimplemented
+ */
+int
+STDCALL
+Escape(HDC hdc, INT nEscape, INT cbInput, LPCSTR lpvInData, LPVOID lpvOutD=
ata)
+{
+    int retValue =3D -1;
+
+    /* FIXME gdi share memory */
+
+    if (nEscape =3D=3D GETCOLORTABLE)
+    {
+        retValue =3D GetSystemPaletteEntries(hdc, (UINT)*lpvInData, 1, (LP=
PALETTEENTRY)lpvOutData);
+        if ( !retValue )
+        {
+            retValue =3D -1;        =

+        }
+
+        /* FIXME tempary until Escape are completed */
+        return retValue;
+    }
+    else if (nEscape =3D=3D GETEXTENDEDTEXTMETRICS)
+    {
+        retValue =3D (int) GetETM( hdc, (EXTTEXTMETRIC *) lpvOutData) !=3D=
 0;
+
+        /* FIXME tempary until Escape are completed */
+        return retValue;
+    }
+    else if ( nEscape !=3D QUERYESCSUPPORT )
+    {
+    =

+    }
+
+    UNIMPLEMENTED;
+    SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
+    return retValue;
 }
 =

 /*




More information about the Ros-diffs mailing list