diff --git a/reactos/dll/win32/gdiplus/brush.c b/reactos/dll/win32/gdiplus/brush.c index 45de0344237..7f324f33bd3 100644 --- a/reactos/dll/win32/gdiplus/brush.c +++ b/reactos/dll/win32/gdiplus/brush.c @@ -653,3 +653,47 @@ GpStatus WINGDIPAPI GdipSetTextureTransform(GpTexture *texture, return Ok; } + +GpStatus WINGDIPAPI GdipSetLineColors(GpLineGradient *brush, ARGB color1, + ARGB color2) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetLineLinearBlend(GpLineGradient *brush, REAL focus, + REAL scale) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetLinePresetBlend(GpLineGradient *brush, + GDIPCONST ARGB *blend, GDIPCONST REAL* positions, INT count) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetLineTransform(GpLineGradient *brush, + GDIPCONST GpMatrix *matrix) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} diff --git a/reactos/dll/win32/gdiplus/customlinecap.c b/reactos/dll/win32/gdiplus/customlinecap.c index e161e1bb51d..54005a8157b 100644 --- a/reactos/dll/win32/gdiplus/customlinecap.c +++ b/reactos/dll/win32/gdiplus/customlinecap.c @@ -129,3 +129,58 @@ GpStatus WINGDIPAPI GdipSetCustomLineCapStrokeCaps(GpCustomLineCap* custom, return NotImplemented; } + +GpStatus WINGDIPAPI GdipSetCustomLineCapBaseCap(GpCustomLineCap* custom, + GpLineCap base) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipGetCustomLineCapBaseInset(GpCustomLineCap* custom, + REAL* inset) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetCustomLineCapBaseInset(GpCustomLineCap* custom, + REAL inset) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetCustomLineCapStrokeJoin(GpCustomLineCap* custom, + GpLineJoin join) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetCustomLineCapWidthScale(GpCustomLineCap* custom, + REAL width) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} diff --git a/reactos/dll/win32/gdiplus/gdiplus.rbuild b/reactos/dll/win32/gdiplus/gdiplus.rbuild index 518cb70a3c8..dd0b0ca94e6 100644 --- a/reactos/dll/win32/gdiplus/gdiplus.rbuild +++ b/reactos/dll/win32/gdiplus/gdiplus.rbuild @@ -29,5 +29,6 @@ pathiterator.c pen.c stringformat.c + region.c gdiplus.spec \ No newline at end of file diff --git a/reactos/dll/win32/gdiplus/gdiplus.spec b/reactos/dll/win32/gdiplus/gdiplus.spec index 4aac0df3f85..337ffb2da9a 100644 --- a/reactos/dll/win32/gdiplus/gdiplus.spec +++ b/reactos/dll/win32/gdiplus/gdiplus.spec @@ -75,7 +75,7 @@ @ stdcall GdipCreateBitmapFromFileICM(wstr ptr) @ stub GdipCreateBitmapFromGdiDib @ stdcall GdipCreateBitmapFromGraphics(long long ptr ptr) -@ stub GdipCreateBitmapFromHBITMAP +@ stdcall GdipCreateBitmapFromHBITMAP(ptr ptr ptr) @ stub GdipCreateBitmapFromHICON @ stub GdipCreateBitmapFromResource @ stdcall GdipCreateBitmapFromScan0(long long long long ptr ptr) @@ -250,7 +250,7 @@ @ stdcall GdipGetCompositingMode(ptr ptr) @ stdcall GdipGetCompositingQuality(ptr ptr) @ stub GdipGetCustomLineCapBaseCap -@ stub GdipGetCustomLineCapBaseInset +@ stdcall GdipGetCustomLineCapBaseInset(ptr ptr) @ stub GdipGetCustomLineCapStrokeCaps @ stub GdipGetCustomLineCapStrokeJoin @ stub GdipGetCustomLineCapType @@ -510,41 +510,41 @@ @ stub GdipSetClipHrgn @ stub GdipSetClipPath @ stub GdipSetClipRect -@ stub GdipSetClipRectI -@ stub GdipSetClipRegion +@ stdcall GdipSetClipRectI(ptr long long long long long) +@ stdcall GdipSetClipRegion(ptr ptr long) @ stdcall GdipSetCompositingMode(ptr long) @ stdcall GdipSetCompositingQuality(ptr long) -@ stub GdipSetCustomLineCapBaseCap -@ stub GdipSetCustomLineCapBaseInset +@ stdcall GdipSetCustomLineCapBaseCap(ptr long) +@ stdcall GdipSetCustomLineCapBaseInset(ptr long) @ stdcall GdipSetCustomLineCapStrokeCaps(ptr long long) -@ stub GdipSetCustomLineCapStrokeJoin -@ stub GdipSetCustomLineCapWidthScale -@ stub GdipSetEffectParameters -@ stub GdipSetEmpty -@ stub GdipSetImageAttributesCachedBackground +@ stdcall GdipSetCustomLineCapStrokeJoin(ptr long) +@ stdcall GdipSetCustomLineCapWidthScale(ptr long) +@ stdcall GdipSetEffectParameters(ptr ptr long) +@ stdcall GdipSetEmpty(ptr) +@ stdcall GdipSetImageAttributesCachedBackground(ptr long) @ stdcall GdipSetImageAttributesColorKeys(ptr long long long long) @ stdcall GdipSetImageAttributesColorMatrix(ptr long long ptr ptr long) -@ stub GdipSetImageAttributesGamma -@ stub GdipSetImageAttributesNoOp -@ stub GdipSetImageAttributesOutputChannel -@ stub GdipSetImageAttributesOutputChannelColorProfile -@ stub GdipSetImageAttributesRemapTable -@ stub GdipSetImageAttributesThreshold -@ stub GdipSetImageAttributesToIdentity +@ stdcall GdipSetImageAttributesGamma(ptr long long long) +@ stdcall GdipSetImageAttributesNoOp(ptr long long) +@ stdcall GdipSetImageAttributesOutputChannel(ptr long long long) +@ stdcall GdipSetImageAttributesOutputChannelColorProfile(ptr long long ptr) +@ stdcall GdipSetImageAttributesRemapTable(ptr long long long ptr) +@ stdcall GdipSetImageAttributesThreshold(ptr long long long) +@ stdcall GdipSetImageAttributesToIdentity(ptr long) @ stdcall GdipSetImageAttributesWrapMode(ptr long long long) @ stdcall GdipSetImagePalette(ptr ptr) -@ stub GdipSetInfinite +@ stdcall GdipSetInfinite(ptr) @ stdcall GdipSetInterpolationMode(ptr long) @ stdcall GdipSetLineBlend(ptr ptr ptr long) -@ stub GdipSetLineColors +@ stdcall GdipSetLineColors(ptr long long) @ stdcall GdipSetLineGammaCorrection(ptr long) -@ stub GdipSetLineLinearBlend -@ stub GdipSetLinePresetBlend +@ stdcall GdipSetLineLinearBlend(ptr long long) +@ stdcall GdipSetLinePresetBlend(ptr ptr ptr long) @ stdcall GdipSetLineSigmaBlend(ptr long long) -@ stub GdipSetLineTransform +@ stdcall GdipSetLineTransform(ptr ptr) @ stdcall GdipSetLineWrapMode(ptr long) @ stdcall GdipSetMatrixElements(ptr long long long long long long) -@ stub GdipSetMetafileDownLevelRasterizationLimit +@ stdcall GdipSetMetafileDownLevelRasterizationLimit(ptr long) @ stdcall GdipSetPageScale(ptr long) @ stdcall GdipSetPageUnit(ptr long) @ stdcall GdipSetPathFillMode(ptr long) diff --git a/reactos/dll/win32/gdiplus/graphics.c b/reactos/dll/win32/gdiplus/graphics.c index 4609a31323d..47bb03568ad 100644 --- a/reactos/dll/win32/gdiplus/graphics.c +++ b/reactos/dll/win32/gdiplus/graphics.c @@ -2088,3 +2088,37 @@ GpStatus WINGDIPAPI GdipTranslateWorldTransform(GpGraphics *graphics, REAL dx, return GdipTranslateMatrix(graphics->worldtrans, dx, dy, order); } + +GpStatus WINGDIPAPI GdipSetClipRectI(GpGraphics *graphics, INT x, INT y, + INT width, INT height, + CombineMode combineMode) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetClipRegion(GpGraphics *graphics, GpRegion *region, + CombineMode combineMode) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetMetafileDownLevelRasterizationLimit(GpGraphics *graphics, + UINT limitDpi) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} diff --git a/reactos/dll/win32/gdiplus/graphicspath.c b/reactos/dll/win32/gdiplus/graphicspath.c index 69a95263063..adeaa891872 100644 --- a/reactos/dll/win32/gdiplus/graphicspath.c +++ b/reactos/dll/win32/gdiplus/graphicspath.c @@ -179,7 +179,7 @@ GpStatus WINGDIPAPI GdipAddPathEllipse(GpPath *path, REAL x, REAL y, REAL width, memset(&path->pathdata.Types[old_count + 1], PathPointTypeBezier, MAX_ARC_PTS - 1); - /* An ellipse is an instrinsic figure (always its own subpath). */ + /* An ellipse is an intrinsic figure (always is its own subpath). */ path->pathdata.Types[old_count] = PathPointTypeStart; path->pathdata.Types[old_count + MAX_ARC_PTS - 1] |= PathPointTypeCloseSubpath; path->newfigure = TRUE; diff --git a/reactos/dll/win32/gdiplus/image.c b/reactos/dll/win32/gdiplus/image.c index b1ec2c7bcc8..3de6ff01e1d 100644 --- a/reactos/dll/win32/gdiplus/image.c +++ b/reactos/dll/win32/gdiplus/image.c @@ -1096,3 +1096,14 @@ GpStatus WINGDIPAPI GdipCreateBitmapFromHBITMAP(HBITMAP hbm, HPALETTE hpal, GpBi return retval; } + +GpStatus WINGDIPAPI GdipSetEffectParameters(CGpEffect *effect, + const VOID *params, const UINT size) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} diff --git a/reactos/dll/win32/gdiplus/imageattributes.c b/reactos/dll/win32/gdiplus/imageattributes.c index ac6caa5d41f..858ea15e8cd 100644 --- a/reactos/dll/win32/gdiplus/imageattributes.c +++ b/reactos/dll/win32/gdiplus/imageattributes.c @@ -90,3 +90,93 @@ GpStatus WINGDIPAPI GdipSetImageAttributesWrapMode(GpImageAttributes *imageAttr, return NotImplemented; } + +GpStatus WINGDIPAPI GdipSetImageAttributesCachedBackground(GpImageAttributes *imageAttr, + BOOL enableFlag) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesGamma(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag, REAL gamma) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesNoOp(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesOutputChannel(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag, ColorChannelFlags channelFlags) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesOutputChannelColorProfile(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag, + GDIPCONST WCHAR *colorProfileFilename) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesRemapTable(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag, UINT mapSize, + GDIPCONST ColorMap *map) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesThreshold(GpImageAttributes *imageAttr, + ColorAdjustType type, BOOL enableFlag, REAL threshold) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetImageAttributesToIdentity(GpImageAttributes *imageAttr, + ColorAdjustType type) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} diff --git a/reactos/dll/win32/gdiplus/region.c b/reactos/dll/win32/gdiplus/region.c new file mode 100644 index 00000000000..92da5809a8d --- /dev/null +++ b/reactos/dll/win32/gdiplus/region.c @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2008 Google (Lei Zhang) + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include + +#include "windef.h" +#include "winbase.h" +#include "wingdi.h" + +#include "objbase.h" + +#include "gdiplus.h" +#include "gdiplus_private.h" +#include "wine/debug.h" + +WINE_DEFAULT_DEBUG_CHANNEL(gdiplus); + +GpStatus WINGDIPAPI GdipSetEmpty(GpRegion *region) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + +GpStatus WINGDIPAPI GdipSetInfinite(GpRegion *region) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +}