Author: greatlrd Date: Sun Mar 9 18:32:52 2008 New Revision: 32635
URL: http://svn.reactos.org/svn/reactos?rev=3D32635&view=3Drev Log: partly implement gdi32 Escape need it for getting opengl icd driver working= , if they are using ms icd ddk =
implemented command DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE for they are not = longer supported in windows XP/2003 implemented command SETABORTPROC it is still stub in gdi32/misc/stubs.c
=
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=3D32635&r1=3D32634&r2=3D32635&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 18:32:52 2008 @@ -619,9 +619,8 @@ int STDCALL SetAbortProc( - HDC hdc, - ABORTPROC a1 - ) + HDC hdc, + ABORTPROC lpAbortProc) { UNIMPLEMENTED; SetLastError(ERROR_CALL_NOT_IMPLEMENTED); @@ -1519,7 +1518,7 @@ { switch (nEscape) { - case ABORTDOC: =
+ case ABORTDOC: =
/* Note Winodws check see if the handle have any user data= for ABORTDOC command =
* ReactOS copy this behoir to be compatible with windows = 2003 =
*/ @@ -1535,7 +1534,35 @@ } break; =
- case GETCOLORTABLE: =
+ case DRAFTMODE: + case FLUSHOUTPUT: + case SETCOLORTABLE: + /* Note 1: DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE is outdat= ed and been replace with other api */ + /* Note 2: Winodws check see if the handle have any user d= ata for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command =
+ * ReactOS copy this behoir to be compatible with windows = 2003 =
+ */ + if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) = &pUserData)) || =
+ (pUserData =3D=3D NULL) ) =
+ { + GdiSetLastError(ERROR_INVALID_HANDLE); + } + retValue =3D FALSE; + break; + + case SETABORTPROC: + /* Note : Winodws check see if the handle have any user da= ta for DRAFTMODE, FLUSHOUTPUT, SETCOLORTABLE command =
+ * ReactOS copy this behoir to be compatible with windows = 2003 =
+ */ + if ( (!GdiGetHandleUserData(hObject, (DWORD)Type, (PVOID) = &pUserData)) || =
+ (pUserData =3D=3D NULL) ) =
+ { + GdiSetLastError(ERROR_INVALID_HANDLE); + retValue =3D FALSE; + } + retValue =3D SetAbortProc(hdc, (ABORTPROC)lpvInData); + break; + + case GETCOLORTABLE: retValue =3D GetSystemPaletteEntries(hdc, (UINT)*lpvInData= , 1, (LPPALETTEENTRY)lpvOutData); if ( !retValue ) { @@ -1543,11 +1570,7 @@ } =
break; =
- case GETEXTENDEDTEXTMETRICS: - retValue =3D (int) GetETM( hdc, (EXTTEXTMETRIC *) lpvOutDa= ta) !=3D 0; - break; - =
- case GETSCALINGFACTOR: =
+ case GETSCALINGFACTOR: /* Note GETSCALINGFACTOR is outdated have been replace by = GetDeviceCaps */ if ( Type =3D=3D GDI_OBJECT_TYPE_DC ) { =
@@ -1560,6 +1583,13 @@ } =
retValue =3D FALSE; break; + + case GETEXTENDEDTEXTMETRICS: + retValue =3D (int) GetETM( hdc, (EXTTEXTMETRIC *) lpvOutDa= ta) !=3D 0; + break; + =
+ =
+ =
default: UNIMPLEMENTED;