gdiplus: Added GdipSetCompositingMode/GdipGetCompositingMode.
This commit is contained in:
parent
6790cdb8f5
commit
e807eb9ad6
|
@ -247,7 +247,7 @@
|
||||||
@ stub GdipGetClip
|
@ stub GdipGetClip
|
||||||
@ stub GdipGetClipBounds
|
@ stub GdipGetClipBounds
|
||||||
@ stub GdipGetClipBoundsI
|
@ stub GdipGetClipBoundsI
|
||||||
@ stub GdipGetCompositingMode
|
@ stdcall GdipGetCompositingMode(ptr ptr)
|
||||||
@ stdcall GdipGetCompositingQuality(ptr ptr)
|
@ stdcall GdipGetCompositingQuality(ptr ptr)
|
||||||
@ stub GdipGetCustomLineCapBaseCap
|
@ stub GdipGetCustomLineCapBaseCap
|
||||||
@ stub GdipGetCustomLineCapBaseInset
|
@ stub GdipGetCustomLineCapBaseInset
|
||||||
|
@ -512,7 +512,7 @@
|
||||||
@ stub GdipSetClipRect
|
@ stub GdipSetClipRect
|
||||||
@ stub GdipSetClipRectI
|
@ stub GdipSetClipRectI
|
||||||
@ stub GdipSetClipRegion
|
@ stub GdipSetClipRegion
|
||||||
@ stub GdipSetCompositingMode
|
@ stdcall GdipSetCompositingMode(ptr long)
|
||||||
@ stdcall GdipSetCompositingQuality(ptr long)
|
@ stdcall GdipSetCompositingQuality(ptr long)
|
||||||
@ stub GdipSetCustomLineCapBaseCap
|
@ stub GdipSetCustomLineCapBaseCap
|
||||||
@ stub GdipSetCustomLineCapBaseInset
|
@ stub GdipSetCustomLineCapBaseInset
|
||||||
|
|
|
@ -79,6 +79,7 @@ struct GpGraphics{
|
||||||
CompositingQuality compqual;
|
CompositingQuality compqual;
|
||||||
InterpolationMode interpolation;
|
InterpolationMode interpolation;
|
||||||
PixelOffsetMode pixeloffset;
|
PixelOffsetMode pixeloffset;
|
||||||
|
CompositingMode compmode;
|
||||||
GpUnit unit; /* page unit */
|
GpUnit unit; /* page unit */
|
||||||
REAL scale; /* page scale */
|
REAL scale; /* page scale */
|
||||||
GpMatrix * worldtrans; /* world transform */
|
GpMatrix * worldtrans; /* world transform */
|
||||||
|
|
|
@ -760,6 +760,7 @@ GpStatus WINGDIPAPI GdipCreateFromHDC(HDC hdc, GpGraphics **graphics)
|
||||||
(*graphics)->compqual = CompositingQualityDefault;
|
(*graphics)->compqual = CompositingQualityDefault;
|
||||||
(*graphics)->interpolation = InterpolationModeDefault;
|
(*graphics)->interpolation = InterpolationModeDefault;
|
||||||
(*graphics)->pixeloffset = PixelOffsetModeDefault;
|
(*graphics)->pixeloffset = PixelOffsetModeDefault;
|
||||||
|
(*graphics)->compmode = CompositingModeSourceOver;
|
||||||
(*graphics)->unit = UnitDisplay;
|
(*graphics)->unit = UnitDisplay;
|
||||||
(*graphics)->scale = 1.0;
|
(*graphics)->scale = 1.0;
|
||||||
|
|
||||||
|
@ -1421,6 +1422,18 @@ GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics *graphics, GpBrush *brush,
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* FIXME: Compositing mode is not used anywhere except the getter/setter. */
|
||||||
|
GpStatus WINGDIPAPI GdipGetCompositingMode(GpGraphics *graphics,
|
||||||
|
CompositingMode *mode)
|
||||||
|
{
|
||||||
|
if(!graphics || !mode)
|
||||||
|
return InvalidParameter;
|
||||||
|
|
||||||
|
*mode = graphics->compmode;
|
||||||
|
|
||||||
|
return Ok;
|
||||||
|
}
|
||||||
|
|
||||||
/* FIXME: Compositing quality is not used anywhere except the getter/setter. */
|
/* FIXME: Compositing quality is not used anywhere except the getter/setter. */
|
||||||
GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics *graphics,
|
GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics *graphics,
|
||||||
CompositingQuality *quality)
|
CompositingQuality *quality)
|
||||||
|
@ -1523,6 +1536,17 @@ GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics *graphics, GraphicsState *state)
|
||||||
return NotImplemented;
|
return NotImplemented;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipSetCompositingMode(GpGraphics *graphics,
|
||||||
|
CompositingMode mode)
|
||||||
|
{
|
||||||
|
if(!graphics)
|
||||||
|
return InvalidParameter;
|
||||||
|
|
||||||
|
graphics->compmode = mode;
|
||||||
|
|
||||||
|
return Ok;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics *graphics,
|
GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics *graphics,
|
||||||
CompositingQuality quality)
|
CompositingQuality quality)
|
||||||
{
|
{
|
||||||
|
|
|
@ -198,6 +198,12 @@ enum EmfType
|
||||||
EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
|
EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum CompositingMode
|
||||||
|
{
|
||||||
|
CompositingModeSourceOver,
|
||||||
|
CompositingModeSourceCopy
|
||||||
|
};
|
||||||
|
|
||||||
#ifndef __cplusplus
|
#ifndef __cplusplus
|
||||||
|
|
||||||
typedef enum Unit Unit;
|
typedef enum Unit Unit;
|
||||||
|
@ -219,6 +225,7 @@ typedef enum WrapMode WrapMode;
|
||||||
typedef enum MetafileType MetafileType;
|
typedef enum MetafileType MetafileType;
|
||||||
typedef enum LinearGradientMode LinearGradientMode;
|
typedef enum LinearGradientMode LinearGradientMode;
|
||||||
typedef enum EmfType EmfType;
|
typedef enum EmfType EmfType;
|
||||||
|
typedef enum CompositingMode CompositingMode;
|
||||||
|
|
||||||
#endif /* end of c typedefs */
|
#endif /* end of c typedefs */
|
||||||
|
|
||||||
|
|
|
@ -81,6 +81,7 @@ GpStatus WINGDIPAPI GdipFillPolygonI(GpGraphics*,GpBrush*,GDIPCONST GpPoint*,INT
|
||||||
GpFillMode);
|
GpFillMode);
|
||||||
GpStatus WINGDIPAPI GdipFillRectangle(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL);
|
GpStatus WINGDIPAPI GdipFillRectangle(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL);
|
||||||
GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics*,GpBrush*,INT,INT,INT,INT);
|
GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics*,GpBrush*,INT,INT,INT,INT);
|
||||||
|
GpStatus WINGDIPAPI GdipGetCompositingMode(GpGraphics*,CompositingMode*);
|
||||||
GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics*,CompositingQuality*);
|
GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics*,CompositingQuality*);
|
||||||
GpStatus WINGDIPAPI GdipGetInterpolationMode(GpGraphics*,InterpolationMode*);
|
GpStatus WINGDIPAPI GdipGetInterpolationMode(GpGraphics*,InterpolationMode*);
|
||||||
GpStatus WINGDIPAPI GdipGetPageScale(GpGraphics*,REAL*);
|
GpStatus WINGDIPAPI GdipGetPageScale(GpGraphics*,REAL*);
|
||||||
|
@ -90,6 +91,7 @@ GpStatus WINGDIPAPI GdipGetSmoothingMode(GpGraphics*,SmoothingMode*);
|
||||||
GpStatus WINGDIPAPI GdipGetWorldTransform(GpGraphics*,GpMatrix*);
|
GpStatus WINGDIPAPI GdipGetWorldTransform(GpGraphics*,GpMatrix*);
|
||||||
GpStatus WINGDIPAPI GdipRestoreGraphics(GpGraphics*,GraphicsState);
|
GpStatus WINGDIPAPI GdipRestoreGraphics(GpGraphics*,GraphicsState);
|
||||||
GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics*,GraphicsState*);
|
GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics*,GraphicsState*);
|
||||||
|
GpStatus WINGDIPAPI GdipSetCompositingMode(GpGraphics*,CompositingMode);
|
||||||
GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics*,CompositingQuality);
|
GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics*,CompositingQuality);
|
||||||
GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics*,InterpolationMode);
|
GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics*,InterpolationMode);
|
||||||
GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics*,REAL);
|
GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics*,REAL);
|
||||||
|
|
Loading…
Reference in New Issue