Author: greatlrd Date: Thu Aug 30 22:06:35 2007 New Revision: 28676
URL: http://svn.reactos.org/svn/reactos?rev=28676&view=rev Log: Implement GdiReleaseLocalDC, GdiFlush, GdiPlayDCScript, GdiPlayJournal, GdiPlayScript, GdiConvertBitmap, GdiConvertBrush, GdiConvertDC, GdiConvertFont, GdiSetAttrs Redirect GdiConsoleTextOut, FontIsLinked, GdiDescribePixelFormat, GdiSetPixelFormat, GdiSwapBuffers, GdiFullscreenControl, GdiQueryFonts, GdiInitSpool to win32k.sys do not redirect add smaller code in gdi32 and use share memory : GdiGradientFill, FrameRgn, GdiTransparentBlt stub : GdiPrinterThunk, GdiConvertBitmapV5 update good api list.
Modified: trunk/reactos/dll/win32/gdi32/gdi32.def trunk/reactos/dll/win32/gdi32/good api.def trunk/reactos/dll/win32/gdi32/misc/misc.c trunk/reactos/dll/win32/gdi32/misc/stubs.c trunk/reactos/dll/win32/gdi32/misc/stubsw.c trunk/reactos/dll/win32/gdi32/objects/dc.c
Modified: trunk/reactos/dll/win32/gdi32/gdi32.def URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/gdi32.def?r... ============================================================================== --- trunk/reactos/dll/win32/gdi32/gdi32.def (original) +++ trunk/reactos/dll/win32/gdi32/gdi32.def Thu Aug 30 22:06:35 2007 @@ -184,8 +184,98 @@ FixBrushOrgEx@16 FlattenPath@4 FloodFill@16 -FontIsLinked@4 -FrameRgn@20=NtGdiFontIsLinked@4 +FontIsLinked@4=NtGdiFontIsLinked@4 +FrameRgn@20 +GdiAddFontResourceW@12 +GdiAddGlsBounds@8 +GdiAddGlsRecord@16 +GdiAlphaBlend@44 +GdiArtificialDecrementDriver@8 +GdiCleanCacheDC@4 +GdiComment@12 +GdiConsoleTextOut@16=NtGdiConsoleTextOut@16 +GdiConvertAndCheckDC@4 +GdiConvertBitmap@4 +GdiConvertBitmapV5@16 +GdiConvertBrush@4 +GdiConvertDC@4 +GdiConvertEnhMetaFile@4 +GdiConvertFont@4 +GdiConvertMetaFilePict@4 +GdiConvertPalette@4 +GdiConvertRegion@4 +GdiConvertToDevmodeW@4 +GdiCreateLocalEnhMetaFile@4 +GdiCreateLocalMetaFilePict@4 +GdiDeleteLocalDC@4 +GdiDeleteSpoolFileHandle@4 +GdiDescribePixelFormat@16=NtGdiDescribePixelFormat@16 +GdiDllInitialize@12 +GdiEndDocEMF@4 +GdiEndPageEMF@8 +GdiEntry10@8 +GdiEntry11@8 +GdiEntry12@8 +GdiEntry13@0 +GdiEntry14@12 +GdiEntry15@12 +GdiEntry16@12 +GdiEntry1@8 +GdiEntry2@44 +GdiEntry3@4 +GdiEntry4@8 +GdiEntry5@4 +GdiEntry6@8 +GdiEntry7@8 +GdiEntry8@4 +GdiEntry9@24 +GdiFixUpHandle@4 +GdiFlush@0 +GdiFullscreenControl@20=NtGdiFullscreenControl@20 +GdiGetBatchLimit@0 +GdiGetCharDimensions@12 +GdiGetCodePage@4 +GdiGetDC@4 +GdiGetDevmodeForPage@16 +GdiGetLocalBrush@4 +GdiGetLocalDC@4 +GdiGetLocalFont@4 +GdiGetPageCount@4 +GdiGetPageHandle@12 +GdiGetSpoolFileHandle@12 +GdiGetSpoolMessage@16=NtGdiGetSpoolMessage@16 +GdiGradientFill@24 +GdiInitSpool@0=NtGdiInitSpool@0 +GdiInitializeLanguagePack@4 +GdiIsMetaFileDC@4 +GdiIsMetaPrintDC@4 +GdiIsPlayMetafileDC@4 +GdiPlayDCScript@24 +GdiPlayEMF@20 +GdiPlayJournal@20 +GdiPlayPageEMF@20 +GdiPlayPrivatePageEMF@12 +GdiPlayScript@28 +GdiPrinterThunk@12 +GdiProcessSetup@0 +GdiQueryFonts@12=NtGdiQueryFonts@12 +GdiQueryTable@0 +GdiRealizationInfo@8 +GdiReleaseDC@4 +GdiReleaseLocalDC@4 +GdiResetDCEMF@8 +GdiSetAttrs@4 +GdiSetBatchLimit@4 +GdiSetLastError@4 +GdiSetPixelFormat@8=NtGdiSetPixelFormat@8 +GdiSetServerAttr@8 +GdiStartDocEMF@8 +GdiStartPageEMF@4 +GdiSwapBuffers@4=NtGdiSwapBuffers@4 +GdiTransparentBlt@44 +GdiValidateHandle@4 +GetArcDirection@4 +GetAspectRatioFilterEx@8
ClearBitmapAttributes@8 ClearBrushAttributes@8 @@ -245,98 +335,7 @@ DdEntry54@8=NtGdiDdUnlockD3D@8 DdEntry55@12=NtGdiDdUpdateOverlay@12 DdEntry56@8=NtGdiDdWaitForVerticalBlank@8 - -GdiAddFontResourceW@12 -GdiAddGlsBounds@8 -GdiAddGlsRecord@16 -GdiAlphaBlend@44 -GdiArtificialDecrementDriver@8 -GdiCleanCacheDC@4 -GdiComment@12 -GdiConsoleTextOut@16 -GdiConvertAndCheckDC@4 -GdiConvertBitmap@4 -;GdiConvertBitmapV5 -GdiConvertBrush@4 -GdiConvertDC@4 -GdiConvertEnhMetaFile@4 -GdiConvertFont@4 -GdiConvertMetaFilePict@4 -GdiConvertPalette@4 -GdiConvertRegion@4 -GdiConvertToDevmodeW@4 -GdiCreateLocalEnhMetaFile@4 -GdiCreateLocalMetaFilePict@4 -GdiDeleteLocalDC@4 -GdiDeleteSpoolFileHandle@4 -GdiDescribePixelFormat@16 -GdiDllInitialize@12 GdiDrawStream@12 -GdiEndDocEMF@4 -GdiEndPageEMF@8 -GdiEntry1@8 -GdiEntry2@44 -GdiEntry3@4 -GdiEntry4@8 -GdiEntry5@4 -GdiEntry6@8 -GdiEntry7@8 -GdiEntry8@4 -GdiEntry9@24 -GdiEntry10@8 -GdiEntry11@8 -GdiEntry12@8 -GdiEntry13@0 -GdiEntry14@12 -GdiEntry15@12 -GdiEntry16@12 -GdiFixUpHandle@4 -GdiFlush@0 -GdiFullscreenControl@20 -GdiGetBatchLimit@0 -GdiGetCharDimensions@12 -GdiGetCodePage@4 -GdiGetDC@4 -GdiGetDevmodeForPage@16 -GdiGetLocalBrush@4 -GdiGetLocalDC@4 -GdiGetLocalFont@4 -GdiGetPageCount@4 -GdiGetPageHandle@12 -GdiGetSpoolFileHandle@12 -;GdiGetSpoolMessage -GdiGradientFill@24=NtGdiGradientFill@24 -GdiInitSpool@0 -GdiInitializeLanguagePack@4 -GdiIsMetaFileDC@4 -GdiIsMetaPrintDC@4 -GdiIsPlayMetafileDC@4 -GdiPlayDCScript@24 -GdiPlayEMF@20 -GdiPlayJournal@20 -GdiPlayPageEMF@20 -GdiPlayPrivatePageEMF@12 -GdiPlayScript@28 -;GdiPrinterThunk -GdiProcessSetup@0 -GdiQueryFonts@12 -GdiQueryTable@0 -GdiRealizationInfo@8 -GdiReleaseDC@4 -GdiReleaseLocalDC@4 -GdiResetDCEMF@8 -GdiSetAttrs@4 -GdiSetBatchLimit@4 -GdiSetLastError@4 -GdiSetPixelFormat@8 -GdiSetServerAttr@8 -GdiStartDocEMF@8 -GdiStartPageEMF@4 -GdiSwapBuffers@4 -GdiTransparentBlt@44=NtGdiTransparentBlt@44 -GdiValidateHandle@4 -GetArcDirection@4 -GetAspectRatioFilterEx@8 GetBitmapAttributes@4 GetBitmapBits@12=NtGdiGetBitmapBits@12 GetBitmapDimensionEx@8=NtGdiGetBitmapDimension@8
Modified: trunk/reactos/dll/win32/gdi32/good api.def URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/good%20api.... ============================================================================== --- trunk/reactos/dll/win32/gdi32/good api.def (original) +++ trunk/reactos/dll/win32/gdi32/good api.def Thu Aug 30 22:06:35 2007 @@ -7,7 +7,8 @@ ; if bugs exists their or verify ;
-AddFontResourceA@4 +AAddFontResourceA@4 +AddFontResourceExA@12 AddFontResourceExW@12 AddFontResourceW@4 AnyLinkedFonts@0 @@ -47,11 +48,14 @@ EngCreateDeviceBitmap@16 EngCreateDeviceSurface@16 EngCreatePalette@24 +EngCreateSemaphore@0 EngDeleteClip@4 EngDeletePath@4 +EngDeleteSemaphore@4 EngDeleteSurface@4 EngEraseSurface@12 EngFillPath@28 +EngFindResource@16 EngFreeModule@4 EngGetCurrentCodePage@8 EngGetPrinterDataFileName@4 @@ -73,4 +77,39 @@ EngTextOut@40 EngTransparentBlt@32 EngUnicodeToMultiByteN@20 +EngUnlockSurface@4 +EqualRgn@8 +FixBrushOrgEx@16 +FloodFill@16 +FontIsLinked@4 +FONTOBJ_cGetAllGlyphHandles@8 +FONTOBJ_cGetGlyphs@20 +FONTOBJ_pfdg@4 +FONTOBJ_pifi@4 +FONTOBJ_pQueryGlyphAttrs@8 +FONTOBJ_pvTrueTypeFontFile@8 +FONTOBJ_pxoGetXform@4 +FONTOBJ_vGetInfo@12 +GdiConsoleTextOut@16 +GdiConvertBitmap@4 +GdiConvertBrush@4 +GdiConvertDC@4 +GdiDescribePixelFormat@16 +GdiEntry16@12=DdSwapTextureHandles@12 +GdiFlush@0 +GdiFullscreenControl@20 +GdiGetSpoolMessage@16 +GdiInitSpool@0 +GdiPlayDCScript@24 +GdiPlayJournal@20 +GdiPlayScript@28 +GdiQueryFonts@12 +GdiReleaseLocalDC@4 +GdiSetAttrs@4 +GdiSetLastError@4 +GdiSetPixelFormat@8 +GdiSetServerAttr@8 +GdiSwapBuffers@4 +GetAspectRatioFilterEx@8
+
Modified: trunk/reactos/dll/win32/gdi32/misc/misc.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/misc.c... ============================================================================== --- trunk/reactos/dll/win32/gdi32/misc/misc.c (original) +++ trunk/reactos/dll/win32/gdi32/misc/misc.c Thu Aug 30 22:06:35 2007 @@ -160,13 +160,13 @@
/* - * @unimplemented + * @implemented */ BOOL STDCALL GdiReleaseLocalDC(HDC hdc) { - return 0; + return TRUE; }
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 (original) +++ trunk/reactos/dll/win32/gdi32/misc/stubs.c Thu Aug 30 22:06:35 2007 @@ -757,18 +757,14 @@
/* - * @unimplemented + * @implemented */ BOOL STDCALL GdiFlush() { - /* - * Although GdiFlush is unimplemented, it's safe to return - * TRUE, because we don't have GDI engine surface caching - * implemented yet. - */ - return TRUE; + NtGdiFlush(); + return TRUE; }
@@ -1118,9 +1114,9 @@
/* - * @unimplemented - */ -DWORD + * @implemented + */ +BOOL STDCALL GdiPlayDCScript( DWORD a0, @@ -1131,16 +1127,15 @@ DWORD a5 ) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - - -/* - * @unimplemented - */ -DWORD + /* FIXME fix the prototype right */ + return FALSE; +} + + +/* + * @implemented + */ +BOOL STDCALL GdiPlayJournal( DWORD a0, @@ -1150,16 +1145,15 @@ DWORD a4 ) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - - -/* - * @unimplemented - */ -DWORD + /* FIXME fix the prototype right */ + return FALSE; +} + + +/* + * @implemented + */ +BOOL STDCALL GdiPlayScript( DWORD a0, @@ -1168,12 +1162,10 @@ DWORD a3, DWORD a4, DWORD a5, - DWORD a6 - ) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; + DWORD a6) +{ + /* FIXME prototype */ + return FALSE; }
@@ -1348,12 +1340,150 @@ return 0; }
+ + +/* + * @unimplemented + */ +DWORD +STDCALL +GdiAddGlsBounds(HDC hdc,LPRECT prc) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + /* * @unimplemented */ BOOL STDCALL -FontIsLinked(HDC hdc) +GdiArtificialDecrementDriver(LPWSTR pDriverName,BOOL unknown) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +BOOL +STDCALL +GdiCleanCacheDC(HDC hdc) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +HDC +STDCALL +GdiConvertAndCheckDC(HDC hdc) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @implemented + */ +HBITMAP +STDCALL +GdiConvertBitmap(HBITMAP hbm) +{ + return hbm; +} + +/* + * @implemented + */ +HBRUSH +STDCALL +GdiConvertBrush(HBRUSH hbr) +{ + return hbr; +} + +/* + * @implemented + */ +HDC +STDCALL +GdiConvertDC(HDC hdc) +{ + return hdc; +} + +/* + * @implemented + */ +HFONT +STDCALL +GdiConvertFont(HFONT hfont) +{ + return hfont; +} + +/* + * @unimplemented + */ +HPALETTE +STDCALL +GdiConvertPalette(HPALETTE hpal) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +HRGN +STDCALL +GdiConvertRegion(HRGN hregion) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +HENHMETAFILE +STDCALL +GdiConvertEnhMetaFile(HENHMETAFILE hmf) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +BOOL +STDCALL +GdiDeleteLocalDC(HDC hdc) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +BOOL +STDCALL +GdiDrawStream(HDC dc, ULONG l, VOID *v) { UNIMPLEMENTED; SetLastError(ERROR_CALL_NOT_IMPLEMENTED); @@ -1365,67 +1495,19 @@ */ DWORD STDCALL -GdiAddGlsBounds(HDC hdc,LPRECT prc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -BOOL -STDCALL -GdiArtificialDecrementDriver(LPWSTR pDriverName,BOOL unknown) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -BOOL -STDCALL -GdiCleanCacheDC(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HDC -STDCALL -GdiConvertAndCheckDC(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HBITMAP -STDCALL -GdiConvertBitmap(HBITMAP hbm) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HBRUSH -STDCALL -GdiConvertBrush(HBRUSH hbr) +GdiGetCodePage(HDC hdc) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; +} + +/* + * @unimplemented + */ +HBRUSH +STDCALL +GdiGetLocalBrush(HBRUSH hbr) { UNIMPLEMENTED; SetLastError(ERROR_CALL_NOT_IMPLEMENTED); @@ -1437,7 +1519,7 @@ */ HDC STDCALL -GdiConvertDC(HDC hdc) +GdiGetLocalDC(HDC hdc) { UNIMPLEMENTED; SetLastError(ERROR_CALL_NOT_IMPLEMENTED); @@ -1449,126 +1531,6 @@ */ HFONT STDCALL -GdiConvertFont(HFONT hfont) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HPALETTE -STDCALL -GdiConvertPalette(HPALETTE hpal) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HRGN -STDCALL -GdiConvertRegion(HRGN hregion) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HENHMETAFILE -STDCALL -GdiConvertEnhMetaFile(HENHMETAFILE hmf) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -BOOL -STDCALL -GdiDeleteLocalDC(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -int -STDCALL -GdiDescribePixelFormat(HDC hdc,int ipfd,UINT cjpfd,PPIXELFORMATDESCRIPTOR ppfd) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -BOOL -STDCALL -GdiDrawStream(HDC dc, ULONG l, VOID *v) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -DWORD -STDCALL -GdiGetCodePage(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HBRUSH -STDCALL -GdiGetLocalBrush(HBRUSH hbr) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HDC -STDCALL -GdiGetLocalDC(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -HFONT -STDCALL GdiGetLocalFont(HFONT hfont) { UNIMPLEMENTED; @@ -1613,15 +1575,13 @@ }
/* - * @unimplemented + * @implemented */ BOOL STDCALL GdiSetAttrs(HDC hdc) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; + return TRUE; }
/* @@ -1635,17 +1595,7 @@ SetLastError(ERROR_CALL_NOT_IMPLEMENTED); }
-/* - * @unimplemented - */ -BOOL -STDCALL -GdiSetPixelFormat(HDC hdc,int ipfd) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} +
/* * @unimplemented @@ -1659,27 +1609,16 @@ return 0; }
-/* - * @unimplemented - */ -BOOL -STDCALL -GdiSwapBuffers(HDC hdc) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented + + +/* + * @implemented */ VOID STDCALL GdiSetServerAttr(HDC hdc,DWORD attr) { - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + /* it does do nothing */ }
/* @@ -2052,31 +1991,9 @@ return 0; }
-/* - * @unimplemented - */ -NTSTATUS -STDCALL -GdiFullscreenControl(FULLSCREENCONTROL FullscreenCommand,PVOID FullscreenInput, - DWORD FullscreenInputLength,PVOID FullscreenOutput, - PULONG FullscreenOutputLength) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -INT -STDCALL -GdiQueryFonts(PUNIVERSAL_FONT_ID pufiFontList,ULONG nBufferSize,PLARGE_INTEGER pTimeStamp ) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} + + +
/* * @unimplemented @@ -2719,17 +2636,7 @@ return 0; }
-/* - * @unimplemented - */ -BOOL -STDCALL -GdiInitSpool(VOID) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} +
/* * @unimplemented @@ -2791,5 +2698,101 @@ return NtGdiFillRgn( hdc, hrgn, hbrush); }
- - +/* + * @implemented + */ +BOOL +STDCALL +GdiGradientFill( + IN HDC hdc, + IN PTRIVERTEX pVertex, + IN ULONG nVertex, + IN PVOID pMesh, + IN ULONG nMesh, + IN ULONG ulMode) +{ + /* FIXME some part need be done in user mode */ + return NtGdiGradientFill(hdc, pVertex, nVertex, pMesh, nMesh, ulMode); +} + + +/* + * @implemented + */ +BOOL +STDCALL +FrameRgn( + IN HDC hdc, + IN HRGN hrgn, + IN HBRUSH hbrush, + IN INT xWidth, + IN INT yHeight) +{ + /* FIXME some part need be done in user mode */ + return NtGdiFrameRgn(hdc, hrgn, hbrush, xWidth, yHeight); +} + +/* + * @implemented + */ +BOOL +STDCALL +GdiTransparentBlt( + IN HDC hdcDst, + IN INT xDst, + IN INT yDst, + IN INT cxDst, + IN INT cyDst, + IN HDC hdcSrc, + IN INT xSrc, + IN INT ySrc, + IN INT cxSrc, + IN INT cySrc, + IN COLORREF TransColor +) +{ + /* FIXME some part need be done in user mode */ + return NtGdiTransparentBlt(hdcDst, xDst, yDst, cxDst, cyDst, hdcSrc, xSrc, ySrc, cxSrc, cySrc, TransColor); +} + +/* + * @unimplemented + */ +BOOL +STDCALL +GdiPrinterThunk( + IN HUMPD humpd, + DWORD *status, + DWORD unuse) +{ + /* FIXME figout the protypes, the HUMPD are a STRUCT or COM object */ + /* status contain some form of return value that being save, what it is I do not known */ + /* unsue seam have zero effect, what it is for I do not known */ + + // ? return NtGdiSetPUMPDOBJ(humpd->0x10,TRUE, humpd, ?) <- blackbox, OpenRCE info, and api hooks for anylaysing; + return FALSE; +} + +/* + * @unimplemented + * + */ +HBITMAP +STDCALL +GdiConvertBitmapV5( + HBITMAP in_format_BitMap, + HBITMAP src_BitMap, + INT bpp, + INT unuse) +{ + /* FIXME guessing the prototypes */ + + /* + * it have create a new bitmap with desired in format, + * then convert it src_bitmap to new format + * and return it as HBITMAP + */ + + return FALSE; +} +
Modified: trunk/reactos/dll/win32/gdi32/misc/stubsw.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/stubsw... ============================================================================== --- trunk/reactos/dll/win32/gdi32/misc/stubsw.c (original) +++ trunk/reactos/dll/win32/gdi32/misc/stubsw.c Thu Aug 30 22:06:35 2007 @@ -260,17 +260,6 @@ return NtGdiAddFontResource ( &Filename, fl ); }
-/* - * @unimplemented - */ -BOOL -STDCALL -GdiConsoleTextOut(HDC hdc, POLYTEXTW *lpto,UINT nStrings, RECTL *prclBounds) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -}
/* * @unimplemented
Modified: trunk/reactos/dll/win32/gdi32/objects/dc.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/dc.... ============================================================================== --- trunk/reactos/dll/win32/gdi32/objects/dc.c (original) +++ trunk/reactos/dll/win32/gdi32/objects/dc.c Thu Aug 30 22:06:35 2007 @@ -396,6 +396,9 @@ }
+/* + * @implemented + */ BOOL STDCALL GetAspectRatioFilterEx(