Author: greatlrd Date: Sat Sep 1 16:52:23 2007 New Revision: 28738
URL: http://svn.reactos.org/svn/reactos?rev=28738&view=rev Log: add stub for : IsValidEnhMetaRecord and IsValidEnhMetaRecordOffExt, I have not search after any info about thuse api follow api need have some part done in user mode : OffsetRgn, GetTextCharsetInfo, IntersectClipRect, OffsetClipRgn. Implement partly NamedEscape we need metadc support to finish full implement follow api have been move from redirect to smaller code into hacks.c for they are ros own syscall and does not exists in windows, GetStretchBltMode, GetTextAlign, GetTextColor, MoveToEx, OffsetViewportOrgEx, OffsetWindowOrgEx. redirect HT_Get8BPPMaskPalette, HT_Get8BPPFormatPalette, GetSystemPaletteUse to win32k
Modified: trunk/reactos/dll/win32/gdi32/gdi32.def trunk/reactos/dll/win32/gdi32/misc/hacks.c trunk/reactos/dll/win32/gdi32/misc/stubs.c trunk/reactos/dll/win32/gdi32/objects/coord.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 Sat Sep 1 16:52:23 2007 @@ -366,6 +366,69 @@ GetRegionData@12 GetRelAbs@8 GetRgnBox@8 +GetStockObject@4 +GetStretchBltMode@4 +GetStringBitmapA@20 +GetStringBitmapW@20 +GetSystemPaletteEntries@16 +GetSystemPaletteUse@4=NtGdiGetSystemPaletteUse@4 +GetTextAlign@4 +GetTextCharacterExtra@4 +GetTextCharset@4 +GetTextCharsetInfo@12 +GetTextColor@4 +GetTextExtentExPointA@28 +GetTextExtentExPointI@28 +GetTextExtentExPointW@28 +GetTextExtentExPointWPri@28 +GetTextExtentPoint32A@16 +GetTextExtentPoint32W@16 +GetTextExtentPointA@16 +GetTextExtentPointI@16 +GetTextExtentPointW@16 +GetTextFaceA@12 +GetTextFaceAliasW@12 +GetTextFaceW@12 +GetTextMetricsA@8 +GetTextMetricsW@8 +GetTransform@12=NtGdiGetTransform@12 +GetViewportExtEx@8 +GetViewportOrgEx@8 +GetWinMetaFileBits@20 +GetWindowExtEx@8 +GetWindowOrgEx@8 +GetWorldTransform@8 +HT_Get8BPPFormatPalette@16=NtGdiHT_Get8BPPFormatPalette@16 +HT_Get8BPPMaskPalette@24=NtGdiHT_Get8BPPMaskPalette@24 +IntersectClipRect@20 +InvertRgn@8 +IsValidEnhMetaRecord@8 +IsValidEnhMetaRecordOffExt@16 +LPtoDP@12 +LineDDA@24 +LineTo@12 +MaskBlt@48 +MirrorRgn@8 +ModifyWorldTransform@12 +MoveToEx@16 +NamedEscape@28 +OffsetClipRgn@12 +OffsetRgn@12 +OffsetViewportOrgEx@16 +OffsetWindowOrgEx@16 + + + + + + + + + + + + +
ClearBitmapAttributes@8 ClearBrushAttributes@8 @@ -429,54 +492,8 @@ GetBitmapAttributes@4 GetBrushAttributes@4 GetGlyphIndicesA@20 -GetStockObject@4 -GetStretchBltMode@4=NtGdiGetStretchBltMode@4 -GetStringBitmapA@20 -GetStringBitmapW@20 -GetSystemPaletteEntries@16 -GetSystemPaletteUse@4 -GetTextAlign@4=NtGdiGetTextAlign@4 -GetTextCharacterExtra@4 -GetTextCharset@4 -GetTextCharsetInfo@12=NtGdiGetTextCharsetInfo@12 -GetTextColor@4=NtGdiGetTextColor@4 -GetTextExtentExPointA@28 -GetTextExtentExPointI@28 -GetTextExtentExPointW@28 GetTextExtentExPointWPri@28 GetTextExtentPoint32A@16 -GetTextExtentPoint32W@16 -GetTextExtentPointA@16 -GetTextExtentPointI@16 -GetTextExtentPointW@16 -GetTextFaceA@12 -GetTextFaceW@12 -GetTextFaceAliasW@12 -GetTextMetricsA@8 -GetTextMetricsW@8 -GetTransform@12=NtGdiGetTransform@12 -GetViewportExtEx@8 -GetViewportOrgEx@8 -GetWinMetaFileBits@20 -GetWindowExtEx@8 -GetWindowOrgEx@8 -GetWorldTransform@8 -HT_Get8BPPFormatPalette@16 -HT_Get8BPPMaskPalette@24 -IntersectClipRect@20=NtGdiIntersectClipRect@20 -InvertRgn@8 -LPtoDP@12 -LineDDA@24 -LineTo@12 -MaskBlt@48 -MirrorRgn@8 -ModifyWorldTransform@12 -MoveToEx@16=NtGdiMoveToEx@16 -NamedEscape@32 -OffsetClipRgn@12=NtGdiOffsetClipRgn@12 -OffsetRgn@12=NtGdiOffsetRgn@12 -OffsetViewportOrgEx@16=NtGdiOffsetViewportOrgEx@16 -OffsetWindowOrgEx@16=NtGdiOffsetWindowOrgEx@16 PaintRgn@8 PatBlt@24=NtGdiPatBlt@24 PATHOBJ_bEnum@8
Modified: trunk/reactos/dll/win32/gdi32/misc/hacks.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/hacks.... ============================================================================== --- trunk/reactos/dll/win32/gdi32/misc/hacks.c (original) +++ trunk/reactos/dll/win32/gdi32/misc/hacks.c Sat Sep 1 16:52:23 2007 @@ -140,5 +140,81 @@ return NtGdiGetMapMode(hdc); }
- - +/* + * @implemented + * + */ +int +STDCALL +GetStretchBltMode(HDC hdc) +{ + return NtGdiGetStretchBltMode(hdc); +} + +/* + * @implemented + * + */ +UINT +STDCALL +GetTextAlign(HDC hdc) +{ + return NtGdiGetTextAlign(hdc); +} + + +/* + * @implemented + * + */ +COLORREF +STDCALL +GetTextColor(HDC hdc) +{ + return NtGdiGetTextColor(hdc); +} + +/* + * @implemented + * + */ +BOOL +STDCALL +MoveToEx(HDC hdc, + int X, + int Y, + LPPOINT lpPoint) +{ + return MoveToEx(hdc, X, Y, lpPoint); +} + +/* + * @implemented + * + */ +BOOL +STDCALL +OffsetViewportOrgEx(HDC hdc, + int nXOffset, + int nYOffset, + LPPOINT lpPoint) +{ + return OffsetViewportOrgEx(hdc, nXOffset, nYOffset, lpPoint); +} + +/* + * @implemented + * + */ +BOOL +STDCALL +OffsetWindowOrgEx(HDC hdc, + int nXOffset, + int nYOffset, + LPPOINT lpPoint) +{ + return NtGdiOffsetWindowOrgEx(hdc, nXOffset, nYOffset, lpPoint); +} + + +
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 Sat Sep 1 16:52:23 2007 @@ -142,15 +142,7 @@ return 0; }
-/* - * @unimplemented - */ -UINT -STDCALL -GetSystemPaletteUse(HDC hDc) -{ - return NtGdiGetSystemPaletteUse(hDc); -} +
/* * @unimplemented @@ -1073,8 +1065,39 @@
- - +/* + * @unimplemented + */ +DWORD +STDCALL +IsValidEnhMetaRecord( + DWORD a0, + DWORD a1 + ) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; + +} + +/* + * @unimplemented + */ +DWORD +STDCALL +IsValidEnhMetaRecordOffExt( + DWORD a0, + DWORD a1, + DWORD a2, + DWORD a3 + ) +{ + UNIMPLEMENTED; + SetLastError(ERROR_CALL_NOT_IMPLEMENTED); + return 0; + +}
/* * @unimplemented @@ -1569,29 +1592,7 @@ return retValue; }
-/* - * @unimplemented - */ -LONG -STDCALL -HT_Get8BPPFormatPalette(LPPALETTEENTRY pPaletteEntry, USHORT RedGamma,USHORT GreenGamma, USHORT BlueGamma) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} - -/* - * @unimplemented - */ -LONG -STDCALL -HT_Get8BPPMaskPalette(LPPALETTEENTRY pPaletteEntry, BOOL Use8BPPMaskPal,BYTE CMYMask, USHORT RedGamma, USHORT GreenGamma, USHORT BlueGamma) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} +
/* * @unimplemented @@ -1605,17 +1606,7 @@ return 0; }
-/* - * @unimplemented - */ -int -STDCALL -NamedEscape(HDC hdc,PWCHAR pDriver,int nDriver,int iEsc,int cjIn,LPSTR pjIn,int cjOut,LPSTR pjOut) -{ - UNIMPLEMENTED; - SetLastError(ERROR_CALL_NOT_IMPLEMENTED); - return 0; -} +
/* * @unimplemented @@ -2719,4 +2710,80 @@ }
- +/* + * @implemented + * + */ +INT +STDCALL +OffsetRgn( HRGN hrgn, + int nXOffset, + int nYOffset) +{ + /* FIXME some part are done in user mode */ + return NtGdiOffsetRgn(hrgn,nXOffset,nYOffset); +} + + +INT +STDCALL +GetTextCharsetInfo(HDC hdc, + LPFONTSIGNATURE lpSig, + DWORD dwFlags) +{ + /* FIXME some part are done in user mode */ + return NtGdiGetTextCharsetInfo(hdc, lpSig, dwFlags); +} + + + +INT +STDCALL +IntersectClipRect(HDC hdc, + int nLeftRect, + int nTopRect, + int nRightRect, + int nBottomRect) +{ + /* FIXME some part are done in user mode */ + return NtGdiIntersectClipRect(hdc, nLeftRect, nTopRect, nRightRect, nBottomRect); +} + +INT +STDCALL +OffsetClipRgn(HDC hdc, + int nXOffset, + int nYOffset) +{ + /* FIXME some part are done in user mode */ + return NtGdiOffsetClipRgn( hdc, nXOffset, nYOffset); +} + + +INT +STDCALL +NamedEscape(HDC hdc, + PWCHAR pDriver, + INT iEsc, + INT cjIn, + LPSTR pjIn, + INT cjOut, + LPSTR pjOut) +{ + /* FIXME metadc, metadc are done most in user mode, and we do not support it + * Windows 2000/XP/Vista ignore the current hdc, that are being pass and always set hdc to NULL + * when it calls to NtGdiExtEscape from NamedEscape + */ + return NtGdiExtEscape(NULL,pDriver,wcslen(pDriver),iEsc,cjIn,pjIn,cjOut,pjOut); + +} + + + + + + + + + +
Modified: trunk/reactos/dll/win32/gdi32/objects/coord.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/coo... ============================================================================== --- trunk/reactos/dll/win32/gdi32/objects/coord.c (original) +++ trunk/reactos/dll/win32/gdi32/objects/coord.c Sat Sep 1 16:52:23 2007 @@ -143,6 +143,9 @@ }
+/* + * @implemented + */ BOOL STDCALL GetWorldTransform( HDC hDC, LPXFORM lpXform )