gdiplus: Store color key information in ImageAttributes.
diff --git a/dlls/gdiplus/gdiplus_private.h b/dlls/gdiplus/gdiplus_private.h
index be881c7..dccc834 100644
--- a/dlls/gdiplus/gdiplus_private.h
+++ b/dlls/gdiplus/gdiplus_private.h
@@ -223,8 +223,15 @@
     GpImage *image;
 };
 
+struct color_key{
+    BOOL enabled;
+    ARGB low;
+    ARGB high;
+};
+
 struct GpImageAttributes{
     WrapMode wrap;
+    struct color_key colorkeys[ColorAdjustTypeCount];
 };
 
 struct GpFont{
diff --git a/dlls/gdiplus/imageattributes.c b/dlls/gdiplus/imageattributes.c
index 55bff18..8f49c67 100644
--- a/dlls/gdiplus/imageattributes.c
+++ b/dlls/gdiplus/imageattributes.c
@@ -68,15 +68,16 @@
 GpStatus WINGDIPAPI GdipSetImageAttributesColorKeys(GpImageAttributes *imageattr,
     ColorAdjustType type, BOOL enableFlag, ARGB colorLow, ARGB colorHigh)
 {
-    static int calls;
+    TRACE("(%p,%u,%i,%08x,%08x)\n", imageattr, type, enableFlag, colorLow, colorHigh);
 
-    if(!imageattr)
+    if(!imageattr || type >= ColorAdjustTypeCount)
         return InvalidParameter;
 
-    if(!(calls++))
-        FIXME("not implemented\n");
+    imageattr->colorkeys[type].enabled = enableFlag;
+    imageattr->colorkeys[type].low = colorLow;
+    imageattr->colorkeys[type].high = colorHigh;
 
-    return NotImplemented;
+    return Ok;
 }
 
 GpStatus WINGDIPAPI GdipSetImageAttributesColorMatrix(GpImageAttributes *imageattr,