gdiplus: Add clipping to GDI32_GdipDrawDriverString.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
3fd47e1be1
commit
c6afa50db6
|
@ -6321,6 +6321,8 @@ static GpStatus GDI32_GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT1
|
||||||
GpPointF pt;
|
GpPointF pt;
|
||||||
HFONT hfont;
|
HFONT hfont;
|
||||||
UINT eto_flags=0;
|
UINT eto_flags=0;
|
||||||
|
GpStatus status;
|
||||||
|
HRGN hrgn;
|
||||||
|
|
||||||
if (flags & unsupported_flags)
|
if (flags & unsupported_flags)
|
||||||
FIXME("Ignoring flags %x\n", flags & unsupported_flags);
|
FIXME("Ignoring flags %x\n", flags & unsupported_flags);
|
||||||
|
@ -6332,6 +6334,14 @@ static GpStatus GDI32_GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT1
|
||||||
SetBkMode(graphics->hdc, TRANSPARENT);
|
SetBkMode(graphics->hdc, TRANSPARENT);
|
||||||
SetTextColor(graphics->hdc, get_gdi_brush_color(brush));
|
SetTextColor(graphics->hdc, get_gdi_brush_color(brush));
|
||||||
|
|
||||||
|
status = get_clip_hrgn(graphics, &hrgn);
|
||||||
|
|
||||||
|
if (status == Ok && hrgn)
|
||||||
|
{
|
||||||
|
ExtSelectClipRgn(graphics->hdc, hrgn, RGN_AND);
|
||||||
|
DeleteObject(hrgn);
|
||||||
|
}
|
||||||
|
|
||||||
pt = positions[0];
|
pt = positions[0];
|
||||||
GdipTransformPoints(graphics, CoordinateSpaceDevice, CoordinateSpaceWorld, &pt, 1);
|
GdipTransformPoints(graphics, CoordinateSpaceDevice, CoordinateSpaceWorld, &pt, 1);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue