Fix : RemoveFontResourceA : let it call to RemoveFontResourceExA

Fix : RemoveFontResourceW : let it call to RemoveFontResourceExW
Fix : a comment in SetWorldTransform
Fix : Redirect STROBJ_bEnum@12 to win32k
Fix : Redirect STROBJ_bEnumPositionsOnly@12 to win32k
Fix : Redirect STROBJ_bGetAdvanceWidths@16 to win32k
Fix : Redirect STROBJ_dwGetCodePage@4 to win32k
Fix : Redirect STROBJ_vEnumStart@4 to win32k
Fix : Redirect SetFontEnumeration to win32k
Fix : Redirect SetMagicColors to win32k
Fix : Redirect SetSystemPaletteUse to win32k
Fix : Redirect SetVirtualResolution@20 to win32k
Fix : PtInRegion : Make smaller code in gdi32 for sharememory/metadc
Fix : RectInRegion : Make smaller code in gdi32 for sharememory/metadc 
Fix : SetBrushOrgEx : Make smaller code in gdi32 for sharememory/metadc
Fix : SetDIBits : Make smaller code in gdi32 for sharememory/metadc
Fix : SetGraphicsMode : Make smaller code in gdi32 for sharememory/metadc
Implement RemoveFontResourceExA : it is partly implement it miss flags, and pdv and we also need fix win32k
Implement RemoveFontResourceExW : it is partly implement it miss flags, and pdv and we also need fix win32k

and more stuff

svn path=/trunk/; revision=29154
This commit is contained in:
Magnus Olsen
2007-09-23 11:33:47 +00:00
parent a2ae628e84
commit 76a688a2e2
6 changed files with 655 additions and 591 deletions
+90 -98
View File
@@ -437,14 +437,96 @@ PolyPatBlt@20
PolyPolygon@16
PolyPolyline@16
PolyTextOutA@12
PolyTextOutW@12
Polygon@12
Polyline@12
PolylineTo@12
PtInRegion@12
PtVisible@12=NtGdiPtVisible@12
QueryFontAssocStatus@0
RealizePalette@4
RectInRegion@8
RectVisible@8=NtGdiRectVisible@8
Rectangle@20
RemoveFontMemResourceEx@4
RemoveFontResourceA@4
RemoveFontResourceExA@12
RemoveFontResourceExW@12
RemoveFontResourceTracking@8
RemoveFontResourceW@4
ResetDCA@8
ResetDCW@8
ResizePalette@8
RestoreDC@8
RoundRect@28
STROBJ_bEnum@12=NtGdiSTROBJ_bEnum@12
STROBJ_bEnumPositionsOnly@12=NtGdiSTROBJ_bEnumPositionsOnly@12
STROBJ_bGetAdvanceWidths@16=NtGdiSTROBJ_bGetAdvanceWidths@16
STROBJ_dwGetCodePage@4=NtGdiSTROBJ_dwGetCodePage@4
STROBJ_vEnumStart@4=NtGdiSTROBJ_vEnumStart@4
SaveDC@4
ScaleViewportExtEx@24
ScaleWindowExtEx@24
SelectBrushLocal@8
SelectClipPath@8
SelectClipRgn@8
SelectFontLocal@8
SelectObject@8
SelectPalette@12
SetAbortProc@8
SetArcDirection@8
SetBitmapBits@12=NtGdiSetBitmapBits@12
SetBitmapDimensionEx@16=NtGdiSetBitmapDimension@16
SetBkColor@8
SetBkMode@8
SetBoundsRect@12
SetBrushOrgEx@16
SetColorAdjustment@8
SetColorSpace@8
SetDCBrushColor@8
SetDCPenColor@8
SetDIBColorTable@16
SetDIBits@28
SetDIBitsToDevice@48
SetDeviceGammaRamp@8
SetEnhMetaFileBits@8
SetFontEnumeration@4=NtGdiSetFontEnumeration@4
SetGraphicsMode@8
SetICMMode@8
SetICMProfileA@8
SetICMProfileW@8
SetLayout@8
SetLayoutWidth@12
SetMagicColors@12=NtGdiSetMagicColors@12
SetMapMode@8
SetMapperFlags@8
SetMetaFileBitsEx@8
SetMetaRgn@4
SetMiterLimit@12
SetPaletteEntries@16
SetPixel@16
SetPixelFormat@12
SetPixelV@16
SetPolyFillMode@8
SetROP2@8
SetRectRgn@20
SetRelAbs@8
SetStretchBltMode@8
SetSystemPaletteUse@8=NtGdiSetSystemPaletteUse@8
SetTextAlign@8
SetTextCharacterExtra@8
SetTextColor@8
SetTextJustification@12
SetViewportExtEx@16
SetViewportOrgEx@16
SetVirtualResolution@20=NtGdiSetVirtualResolution@20
SetWinMetaFileBits@16
SetWindowExtEx@16
SetWindowOrgEx@16
SetWorldTransform@8
StartDocA@8
StartDocW@8
@@ -512,102 +594,12 @@ GetBrushAttributes@4
GetGlyphIndicesA@20
GetTextExtentExPointWPri@28
GetTextExtentPoint32A@16
PolyTextOutA@12
PolyTextOutW@12
Polygon@12
Polyline@12
PolylineTo@12
PtInRegion@12=NtGdiPtInRegion@12
PtVisible@12=NtGdiPtVisible@12
QueryFontAssocStatus@0
RealizePalette@4
RectInRegion@8=NtGdiRectInRegion@8
RectVisible@8=NtGdiRectVisible@8
Rectangle@20
RemoveFontMemResourceEx@4
RemoveFontResourceA@4
RemoveFontResourceExA@12
RemoveFontResourceExW@12
RemoveFontResourceW@4
RemoveFontResourceTracking@8
ResetDCA@8
ResetDCW@8
ResizePalette@8
RestoreDC@8=NtGdiRestoreDC@8
RoundRect@28
SaveDC@4=NtGdiSaveDC@4
ScaleViewportExtEx@24
ScaleWindowExtEx@24
SelectBrushLocal@8
SelectClipPath@8
SelectClipRgn@8
SelectFontLocal@8
SelectObject@8
SelectPalette@12
SetAbortProc@8
SetArcDirection@8
SetBitmapAttributes@8
SetBitmapBits@12=NtGdiSetBitmapBits@12
SetBitmapDimensionEx@16=NtGdiSetBitmapDimension@16
SetBkColor@8
SetBkMode@8
SetBoundsRect@12
SetBrushAttributes@8
SetBrushOrgEx@16=NtGdiSetBrushOrg@16
SetColorAdjustment@8
SetColorSpace@8
SetDCBrushColor@8
SetDCPenColor@8
SetDIBColorTable@16
SetDIBits@28=NtGdiSetDIBits@28
SetDIBitsToDevice@48
SetDeviceGammaRamp@8
SetEnhMetaFileBits@8
SetFontEnumeration@4
SetGraphicsMode@8=NtGdiSetGraphicsMode@8
SetICMMode@8
SetICMProfileA@8
SetICMProfileW@8
SetLayout@8
SetLayoutWidth@12
SetMagicColors@12
SetMapMode@8
SetMapperFlags@8
SetMetaFileBitsEx@8
SetMetaRgn@4
SetMiterLimit@12
SetPaletteEntries@16
SetPixel@16
SetPixelFormat@12
SetPixelV@16
SetPolyFillMode@8=NtGdiSetPolyFillMode@8
SetROP2@8=NtGdiSetROP2@8
SetRectRgn@20=NtGdiSetRectRgn@20
SetRelAbs@8
SetStretchBltMode@8=NtGdiSetStretchBltMode@8
SetSystemPaletteUse@8
SetTextAlign@8=NtGdiSetTextAlign@8
SetTextCharacterExtra@8
SetTextColor@8
SetTextJustification@12
SetViewportExtEx@16=NtGdiSetViewportExtEx@16
SetViewportOrgEx@16=NtGdiSetViewportOrgEx@16
SetVirtualResolution@20
SetWinMetaFileBits@16
SetWindowExtEx@16=NtGdiSetWindowExtEx@16
SetWindowOrgEx@16=NtGdiSetWindowOrgEx@16
SetWorldTransform@8
StartDocA@8
StartDocW@8
StartFormPage@4
StartPage@4
StretchBlt@44
StretchDIBits@52=NtGdiStretchDIBits@52
STROBJ_bEnum@12
STROBJ_bEnumPositionsOnly@12
STROBJ_bGetAdvanceWidths@16
STROBJ_dwGetCodePage@4
STROBJ_vEnumStart@4
StrokeAndFillPath@4
StrokePath@4
SwapBuffers@4
File diff suppressed because it is too large Load Diff
-17
View File
@@ -235,23 +235,6 @@ UpdateICMRegKeyA(
return FALSE;
}
/*
* @unimplemented
*/
BOOL
STDCALL
RemoveFontResourceExA(
LPCSTR lpFileName,
DWORD fl,
PVOID pdv
)
{
UNIMPLEMENTED;
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return 0;
}
/*
* @unimplemented
*/
+1 -15
View File
@@ -271,21 +271,7 @@ GetEUDCTimeStampExW(LPWSTR lpBaseFaceName)
return retValue;
}
/*
* @unimplemented
*/
BOOL
STDCALL
RemoveFontResourceExW(
LPCWSTR lpFileName,
DWORD fl,
PVOID pdv
)
{
UNIMPLEMENTED;
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return 0;
}
/*
* @unimplemented
+2 -1
View File
@@ -158,7 +158,8 @@ BOOL
STDCALL
SetWorldTransform( HDC hDC, CONST XFORM *Xform )
{
return ModifyWorldTransform( hDC, Xform, MWT_MAX+1); // MWT_SETXFORM?
/* FIXME shall we add undoc #define MWT_SETXFORM 4 ?? */
return ModifyWorldTransform( hDC, Xform, MWT_MAX+1);
}
+44 -15
View File
@@ -1173,11 +1173,9 @@ AddFontResourceW ( LPCWSTR lpszFilename )
*/
BOOL
STDCALL
RemoveFontResourceW(
LPCWSTR lpFileName
)
RemoveFontResourceW(LPCWSTR lpFileName)
{
return NtGdiRemoveFontResource ( lpFileName );
return RemoveFontResourceExW(lpFileName,0,0);
}
@@ -1186,27 +1184,58 @@ RemoveFontResourceW(
*/
BOOL
STDCALL
RemoveFontResourceA(
LPCSTR lpFileName
)
RemoveFontResourceA(LPCSTR lpFileName)
{
NTSTATUS Status;
LPWSTR lpFileNameW;
BOOL rc = 0;
return RemoveFontResourceExA(lpFileName,0,0);
}
Status = HEAP_strdupA2W ( &lpFileNameW, lpFileName );
if (!NT_SUCCESS (Status))
/*
* @implemented
*/
BOOL
STDCALL
RemoveFontResourceExA(LPCSTR lpFileName,
DWORD fl,
PVOID pdv
)
{
NTSTATUS Status;
LPWSTR lpFileNameW;
BOOL rc = 0;
/* FIXME the flags */
/* FIXME the pdv */
/* FIXME NtGdiRemoveFontResource handle flags and pdv */
Status = HEAP_strdupA2W ( &lpFileNameW, lpFileName );
if (!NT_SUCCESS (Status))
SetLastError (RtlNtStatusToDosError(Status));
else
else
{
rc = NtGdiRemoveFontResource ( lpFileNameW );
rc = NtGdiRemoveFontResource ( lpFileNameW );
HEAP_free ( lpFileNameW );
HEAP_free ( lpFileNameW );
}
return rc;
}
/*
* @unimplemented
*/
BOOL
STDCALL
RemoveFontResourceExW(LPCWSTR lpFileName,
DWORD fl,
PVOID pdv)
{
/* FIXME the flags */
/* FIXME the pdv */
/* FIXME NtGdiRemoveFontResource handle flags and pdv */
return NtGdiRemoveFontResource ( lpFileName);
}
/***********************************************************************
* GdiGetCharDimensions
*