diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index 3716207834..7e7bfbfea0 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -609,8 +609,8 @@ @ stdcall GdipTransformPoints(ptr long long ptr long) @ stdcall GdipTransformPointsI(ptr long long ptr long) @ stdcall GdipTransformRegion(ptr ptr) -@ stub GdipTranslateClip -@ stub GdipTranslateClipI +@ stdcall GdipTranslateClip(ptr long long) +@ stdcall GdipTranslateClipI(ptr long long) @ stdcall GdipTranslateLineTransform(ptr long long long) @ stdcall GdipTranslateMatrix(ptr long long long) @ stub GdipTranslatePathGradientTransform diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index 5193334e32..039739b539 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -3318,3 +3318,29 @@ HPALETTE WINGDIPAPI GdipCreateHalftonePalette(void) return NULL; } + +/***************************************************************************** + * GdipTranslateClip [GDIPLUS.@] + */ +GpStatus WINGDIPAPI GdipTranslateClip(GpGraphics *graphics, REAL dx, REAL dy) +{ + TRACE("(%p, %.2f, %.2f)\n", graphics, dx, dy); + + if(!graphics) + return InvalidParameter; + + return GdipTranslateRegion(graphics->clip, dx, dy); +} + +/***************************************************************************** + * GdipTranslateClipI [GDIPLUS.@] + */ +GpStatus WINGDIPAPI GdipTranslateClipI(GpGraphics *graphics, INT dx, INT dy) +{ + TRACE("(%p, %d, %d)\n", graphics, dx, dy); + + if(!graphics) + return InvalidParameter; + + return GdipTranslateRegion(graphics->clip, (REAL)dx, (REAL)dy); +}