gdiplus: Added solid-color path gradient brush implementation.
diff --git a/dlls/gdiplus/brush.c b/dlls/gdiplus/brush.c
index ce01ccb..da432fd 100644
--- a/dlls/gdiplus/brush.c
+++ b/dlls/gdiplus/brush.c
@@ -23,6 +23,9 @@
#include "gdiplus.h"
#include "gdiplus_private.h"
+#include "wine/debug.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(gdiplus);
GpStatus WINGDIPAPI GdipCloneBrush(GpBrush *brush, GpBrush **clone)
{
@@ -45,6 +48,29 @@
return Ok;
}
+/* FIXME: path gradient brushes not truly supported (drawn as solid brushes) */
+GpStatus WINGDIPAPI GdipCreatePathGradientFromPath(GDIPCONST GpPath* path,
+ GpPathGradient **grad)
+{
+ COLORREF col = ARGB2COLORREF(0xffffffff);
+
+ if(!path || !grad)
+ return InvalidParameter;
+
+ *grad = GdipAlloc(sizeof(GpPathGradient));
+ if (!*grad) return OutOfMemory;
+
+ (*grad)->brush.lb.lbStyle = BS_SOLID;
+ (*grad)->brush.lb.lbColor = col;
+ (*grad)->brush.lb.lbHatch = 0;
+
+ (*grad)->brush.gdibrush = CreateSolidBrush(col);
+ (*grad)->brush.bt = BrushTypeSolidColor;
+ (*grad)->centercolor = 0xffffffff;
+
+ return Ok;
+}
+
GpStatus WINGDIPAPI GdipCreateSolidFill(ARGB color, GpSolidFill **sf)
{
COLORREF col = ARGB2COLORREF(color);