mirror of
https://github.com/reactos/reactos.git
synced 2025-06-20 00:06:26 +00:00
- Sync gdiplus with Wine 1.1.23
svn path=/trunk/; revision=41318
This commit is contained in:
parent
c1e38ff75f
commit
fa1396e85b
4 changed files with 162 additions and 22 deletions
|
@ -29,15 +29,15 @@
|
||||||
@ stdcall GdipAddPathRectangleI(ptr long long long long)
|
@ stdcall GdipAddPathRectangleI(ptr long long long long)
|
||||||
@ stdcall GdipAddPathRectangles(ptr ptr long)
|
@ stdcall GdipAddPathRectangles(ptr ptr long)
|
||||||
@ stdcall GdipAddPathRectanglesI(ptr ptr long)
|
@ stdcall GdipAddPathRectanglesI(ptr ptr long)
|
||||||
@ stub GdipAddPathString
|
@ stdcall GdipAddPathString(ptr wstr long ptr long long ptr ptr)
|
||||||
@ stub GdipAddPathStringI
|
@ stdcall GdipAddPathStringI(ptr wstr long ptr long long ptr ptr)
|
||||||
@ stdcall GdipAlloc(long)
|
@ stdcall GdipAlloc(long)
|
||||||
@ stdcall GdipBeginContainer2(ptr ptr)
|
@ stdcall GdipBeginContainer2(ptr ptr)
|
||||||
@ stub GdipBeginContainer
|
@ stdcall GdipBeginContainer(ptr ptr ptr long ptr)
|
||||||
@ stub GdipBeginContainerI
|
@ stdcall GdipBeginContainerI(ptr ptr ptr long ptr)
|
||||||
@ stub GdipBitmapApplyEffect
|
@ stdcall GdipBitmapApplyEffect(ptr ptr ptr long ptr ptr)
|
||||||
@ stub GdipBitmapConvertFormat
|
@ stub GdipBitmapConvertFormat
|
||||||
@ stub GdipBitmapCreateApplyEffect
|
@ stdcall GdipBitmapCreateApplyEffect(ptr long ptr ptr ptr ptr long ptr ptr)
|
||||||
@ stub GdipBitmapGetHistogram
|
@ stub GdipBitmapGetHistogram
|
||||||
@ stub GdipBitmapGetHistogramSize
|
@ stub GdipBitmapGetHistogramSize
|
||||||
@ stdcall GdipBitmapGetPixel(ptr long long ptr)
|
@ stdcall GdipBitmapGetPixel(ptr long long ptr)
|
||||||
|
@ -46,7 +46,7 @@
|
||||||
@ stdcall GdipBitmapSetResolution(ptr long long)
|
@ stdcall GdipBitmapSetResolution(ptr long long)
|
||||||
@ stdcall GdipBitmapUnlockBits(ptr ptr)
|
@ stdcall GdipBitmapUnlockBits(ptr ptr)
|
||||||
@ stdcall GdipClearPathMarkers(ptr)
|
@ stdcall GdipClearPathMarkers(ptr)
|
||||||
@ stub GdipCloneBitmapArea
|
@ stdcall GdipCloneBitmapArea(long long long long long ptr ptr)
|
||||||
@ stdcall GdipCloneBitmapAreaI(long long long long long ptr ptr)
|
@ stdcall GdipCloneBitmapAreaI(long long long long long ptr ptr)
|
||||||
@ stdcall GdipCloneBrush(ptr ptr)
|
@ stdcall GdipCloneBrush(ptr ptr)
|
||||||
@ stdcall GdipCloneCustomLineCap(ptr ptr)
|
@ stdcall GdipCloneCustomLineCap(ptr ptr)
|
||||||
|
@ -65,7 +65,7 @@
|
||||||
@ stdcall GdipCombineRegionRect(ptr ptr long)
|
@ stdcall GdipCombineRegionRect(ptr ptr long)
|
||||||
@ stdcall GdipCombineRegionRectI(ptr ptr long)
|
@ stdcall GdipCombineRegionRectI(ptr ptr long)
|
||||||
@ stdcall GdipCombineRegionRegion(ptr ptr long)
|
@ stdcall GdipCombineRegionRegion(ptr ptr long)
|
||||||
@ stub GdipComment
|
@ stdcall GdipComment(ptr long ptr)
|
||||||
@ stdcall GdipConvertToEmfPlus(ptr ptr ptr long ptr ptr)
|
@ stdcall GdipConvertToEmfPlus(ptr ptr ptr long ptr ptr)
|
||||||
@ stub GdipConvertToEmfPlusToFile
|
@ stub GdipConvertToEmfPlusToFile
|
||||||
@ stub GdipConvertToEmfPlusToStream
|
@ stub GdipConvertToEmfPlusToStream
|
||||||
|
@ -94,7 +94,7 @@
|
||||||
@ stdcall GdipCreateFromHWND(long ptr)
|
@ stdcall GdipCreateFromHWND(long ptr)
|
||||||
@ stdcall GdipCreateFromHWNDICM(long ptr)
|
@ stdcall GdipCreateFromHWNDICM(long ptr)
|
||||||
@ stdcall GdipCreateHBITMAPFromBitmap(ptr ptr long)
|
@ stdcall GdipCreateHBITMAPFromBitmap(ptr ptr long)
|
||||||
@ stub GdipCreateHICONFromBitmap
|
@ stdcall GdipCreateHICONFromBitmap(ptr ptr)
|
||||||
@ stdcall GdipCreateHalftonePalette()
|
@ stdcall GdipCreateHalftonePalette()
|
||||||
@ stdcall GdipCreateHatchBrush(long long long ptr)
|
@ stdcall GdipCreateHatchBrush(long long long ptr)
|
||||||
@ stdcall GdipCreateImageAttributes(ptr)
|
@ stdcall GdipCreateImageAttributes(ptr)
|
||||||
|
@ -109,8 +109,8 @@
|
||||||
@ stdcall GdipCreateMatrix3I(ptr ptr ptr)
|
@ stdcall GdipCreateMatrix3I(ptr ptr ptr)
|
||||||
@ stdcall GdipCreateMatrix(ptr)
|
@ stdcall GdipCreateMatrix(ptr)
|
||||||
@ stdcall GdipCreateMetafileFromEmf(ptr long ptr)
|
@ stdcall GdipCreateMetafileFromEmf(ptr long ptr)
|
||||||
@ stub GdipCreateMetafileFromFile
|
@ stdcall GdipCreateMetafileFromFile(ptr ptr)
|
||||||
@ stub GdipCreateMetafileFromStream
|
@ stdcall GdipCreateMetafileFromStream(ptr ptr)
|
||||||
@ stdcall GdipCreateMetafileFromWmf(ptr long ptr ptr)
|
@ stdcall GdipCreateMetafileFromWmf(ptr long ptr ptr)
|
||||||
@ stdcall GdipCreateMetafileFromWmfFile(wstr ptr ptr)
|
@ stdcall GdipCreateMetafileFromWmfFile(wstr ptr ptr)
|
||||||
@ stdcall GdipCreatePath2(ptr ptr long long ptr)
|
@ stdcall GdipCreatePath2(ptr ptr long long ptr)
|
||||||
|
@ -139,7 +139,7 @@
|
||||||
@ stdcall GdipDeleteBrush(ptr)
|
@ stdcall GdipDeleteBrush(ptr)
|
||||||
@ stdcall GdipDeleteCachedBitmap(ptr)
|
@ stdcall GdipDeleteCachedBitmap(ptr)
|
||||||
@ stdcall GdipDeleteCustomLineCap(ptr)
|
@ stdcall GdipDeleteCustomLineCap(ptr)
|
||||||
@ stub GdipDeleteEffect
|
@ stdcall GdipDeleteEffect(ptr)
|
||||||
@ stdcall GdipDeleteFont(ptr)
|
@ stdcall GdipDeleteFont(ptr)
|
||||||
@ stdcall GdipDeleteFontFamily(ptr)
|
@ stdcall GdipDeleteFontFamily(ptr)
|
||||||
@ stdcall GdipDeleteGraphics(ptr)
|
@ stdcall GdipDeleteGraphics(ptr)
|
||||||
|
@ -175,10 +175,10 @@
|
||||||
@ stdcall GdipDrawImage(ptr ptr long long)
|
@ stdcall GdipDrawImage(ptr ptr long long)
|
||||||
@ stub GdipDrawImageFX
|
@ stub GdipDrawImageFX
|
||||||
@ stdcall GdipDrawImageI(ptr ptr long long)
|
@ stdcall GdipDrawImageI(ptr ptr long long)
|
||||||
@ stub GdipDrawImagePointRect
|
@ stdcall GdipDrawImagePointRect(ptr ptr long long long long long long long)
|
||||||
@ stub GdipDrawImagePointRectI
|
@ stdcall GdipDrawImagePointRectI(ptr ptr long long long long long long long)
|
||||||
@ stub GdipDrawImagePoints
|
@ stdcall GdipDrawImagePoints(ptr ptr ptr long)
|
||||||
@ stub GdipDrawImagePointsI
|
@ stdcall GdipDrawImagePointsI(ptr ptr ptr long)
|
||||||
@ stdcall GdipDrawImagePointsRect(ptr ptr ptr long long long long long long ptr ptr ptr)
|
@ stdcall GdipDrawImagePointsRect(ptr ptr ptr long long long long long long ptr ptr ptr)
|
||||||
@ stdcall GdipDrawImagePointsRectI(ptr ptr ptr long long long long long long ptr ptr ptr)
|
@ stdcall GdipDrawImagePointsRectI(ptr ptr ptr long long long long long long ptr ptr ptr)
|
||||||
@ stdcall GdipDrawImageRect(ptr ptr long long long long)
|
@ stdcall GdipDrawImageRect(ptr ptr long long long long)
|
||||||
|
@ -199,7 +199,7 @@
|
||||||
@ stdcall GdipDrawRectangles(ptr ptr ptr long)
|
@ stdcall GdipDrawRectangles(ptr ptr ptr long)
|
||||||
@ stdcall GdipDrawRectanglesI(ptr ptr ptr long)
|
@ stdcall GdipDrawRectanglesI(ptr ptr ptr long)
|
||||||
@ stdcall GdipDrawString(ptr ptr long ptr ptr ptr ptr)
|
@ stdcall GdipDrawString(ptr ptr long ptr ptr ptr ptr)
|
||||||
@ stub GdipEmfToWmfBits
|
@ stdcall GdipEmfToWmfBits(ptr long ptr long long)
|
||||||
@ stdcall GdipEndContainer(ptr ptr)
|
@ stdcall GdipEndContainer(ptr ptr)
|
||||||
@ stub GdipEnumerateMetafileDestPoint
|
@ stub GdipEnumerateMetafileDestPoint
|
||||||
@ stub GdipEnumerateMetafileDestPointI
|
@ stub GdipEnumerateMetafileDestPointI
|
||||||
|
|
|
@ -1116,6 +1116,20 @@ GpStatus WINGDIPAPI GdipCreateMetafileFromWmfFile(GDIPCONST WCHAR *file,
|
||||||
return GdipCreateMetafileFromWmf(hmf, TRUE, placeable, metafile);
|
return GdipCreateMetafileFromWmf(hmf, TRUE, placeable, metafile);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipCreateMetafileFromFile(GDIPCONST WCHAR *file,
|
||||||
|
GpMetafile **metafile)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p): stub\n", file, metafile);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipCreateMetafileFromStream(IStream *stream,
|
||||||
|
GpMetafile **metafile)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p): stub\n", stream, metafile);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipCreateStreamOnFile(GDIPCONST WCHAR * filename,
|
GpStatus WINGDIPAPI GdipCreateStreamOnFile(GDIPCONST WCHAR * filename,
|
||||||
UINT access, IStream **stream)
|
UINT access, IStream **stream)
|
||||||
{
|
{
|
||||||
|
@ -1590,6 +1604,36 @@ GpStatus WINGDIPAPI GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x,
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image,
|
||||||
|
REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight,
|
||||||
|
GpUnit srcUnit)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %f, %f, %f, %f, %f, %f, %d): stub\n", graphics, image, x, y, srcx, srcy, srcwidth, srcheight, srcUnit);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image,
|
||||||
|
INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight,
|
||||||
|
GpUnit srcUnit)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %d, %d, %d, %d, %d, %d, %d): stub\n", graphics, image, x, y, srcx, srcy, srcwidth, srcheight, srcUnit);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipDrawImagePoints(GpGraphics *graphics, GpImage *image,
|
||||||
|
GDIPCONST GpPointF *dstpoints, INT count)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %p, %d): stub\n", graphics, image, dstpoints, count);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image,
|
||||||
|
GDIPCONST GpPoint *dstpoints, INT count)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %p, %d): stub\n", graphics, image, dstpoints, count);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
/* FIXME: partially implemented (only works for rectangular parallelograms) */
|
/* FIXME: partially implemented (only works for rectangular parallelograms) */
|
||||||
GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image,
|
GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image,
|
||||||
GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth,
|
GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth,
|
||||||
|
@ -2045,7 +2089,7 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
|
||||||
POINT corners[4];
|
POINT corners[4];
|
||||||
WCHAR* stringdup;
|
WCHAR* stringdup;
|
||||||
REAL angle, ang_cos, ang_sin, rel_width, rel_height;
|
REAL angle, ang_cos, ang_sin, rel_width, rel_height;
|
||||||
INT sum = 0, height = 0, fit, fitcpy, save_state, i, j, lret, nwidth,
|
INT sum = 0, height = 0, offsety = 0, fit, fitcpy, save_state, i, j, lret, nwidth,
|
||||||
nheight;
|
nheight;
|
||||||
SIZE size;
|
SIZE size;
|
||||||
RECT drawcoord;
|
RECT drawcoord;
|
||||||
|
@ -2061,9 +2105,22 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
|
||||||
return NotImplemented;
|
return NotImplemented;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(format)
|
if(format){
|
||||||
TRACE("may be ignoring some format flags: attr %x\n", format->attr);
|
TRACE("may be ignoring some format flags: attr %x\n", format->attr);
|
||||||
|
|
||||||
|
/* Should be no need to explicitly test for StringAlignmentNear as
|
||||||
|
* that is default behavior if no alignment is passed. */
|
||||||
|
if(format->vertalign != StringAlignmentNear){
|
||||||
|
RectF bounds;
|
||||||
|
GdipMeasureString(graphics, string, length, font, rect, format, &bounds, 0, 0);
|
||||||
|
|
||||||
|
if(format->vertalign == StringAlignmentCenter)
|
||||||
|
offsety = (rect->Height - bounds.Height) / 2;
|
||||||
|
else if(format->vertalign == StringAlignmentFar)
|
||||||
|
offsety = (rect->Height - bounds.Height);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(length == -1) length = lstrlenW(string);
|
if(length == -1) length = lstrlenW(string);
|
||||||
|
|
||||||
stringdup = GdipAlloc(length * sizeof(WCHAR));
|
stringdup = GdipAlloc(length * sizeof(WCHAR));
|
||||||
|
@ -2074,9 +2131,9 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
|
||||||
SetTextColor(graphics->hdc, brush->lb.lbColor);
|
SetTextColor(graphics->hdc, brush->lb.lbColor);
|
||||||
|
|
||||||
rectcpy[3].X = rectcpy[0].X = rect->X;
|
rectcpy[3].X = rectcpy[0].X = rect->X;
|
||||||
rectcpy[1].Y = rectcpy[0].Y = rect->Y;
|
rectcpy[1].Y = rectcpy[0].Y = rect->Y + offsety;
|
||||||
rectcpy[2].X = rectcpy[1].X = rect->X + rect->Width;
|
rectcpy[2].X = rectcpy[1].X = rect->X + rect->Width;
|
||||||
rectcpy[3].Y = rectcpy[2].Y = rect->Y + rect->Height;
|
rectcpy[3].Y = rectcpy[2].Y = rect->Y + offsety + rect->Height;
|
||||||
transform_and_round_points(graphics, corners, rectcpy, 4);
|
transform_and_round_points(graphics, corners, rectcpy, 4);
|
||||||
|
|
||||||
if (roundr(rect->Width) == 0)
|
if (roundr(rect->Width) == 0)
|
||||||
|
@ -3152,6 +3209,24 @@ GpStatus WINGDIPAPI GdipBeginContainer2(GpGraphics *graphics, GraphicsContainer
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipBeginContainer(GpGraphics *graphics, GDIPCONST GpRectF *dstrect, GDIPCONST GpRectF *srcrect, GpUnit unit, GraphicsContainer *state)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %p, %d, %p): stub\n", graphics, dstrect, srcrect, unit, state);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipBeginContainerI(GpGraphics *graphics, GDIPCONST GpRect *dstrect, GDIPCONST GpRect *srcrect, GpUnit unit, GraphicsContainer *state)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %p, %d, %p): stub\n", graphics, dstrect, srcrect, unit, state);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipComment(GpGraphics *graphics, UINT sizeData, GDIPCONST BYTE *data)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %d, %p): stub\n", graphics, sizeData, data);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipEndContainer(GpGraphics *graphics, GraphicsState state)
|
GpStatus WINGDIPAPI GdipEndContainer(GpGraphics *graphics, GraphicsState state)
|
||||||
{
|
{
|
||||||
FIXME("(%p, 0x%x)\n", graphics, state);
|
FIXME("(%p, 0x%x)\n", graphics, state);
|
||||||
|
|
|
@ -831,6 +831,18 @@ GpStatus WINGDIPAPI GdipAddPathPolygonI(GpPath *path, GDIPCONST GpPoint *points,
|
||||||
return status;
|
return status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipAddPathString(GpPath* path, GDIPCONST WCHAR* string, INT length, GDIPCONST GpFontFamily* family, INT style, REAL emSize, GDIPCONST RectF* layoutRect, GDIPCONST GpStringFormat* format)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %d, %p, %d, %f, %p, %p): stub\n", path, string, length, family, style, emSize, layoutRect, format);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipAddPathStringI(GpPath* path, GDIPCONST WCHAR* string, INT length, GDIPCONST GpFontFamily* family, INT style, REAL emSize, GDIPCONST Rect* layoutRect, GDIPCONST GpStringFormat* format)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p, %d, %p, %d, %f, %p, %p): stub\n", path, string, length, family, style, emSize, layoutRect, format);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipClonePath(GpPath* path, GpPath **clone)
|
GpStatus WINGDIPAPI GdipClonePath(GpPath* path, GpPath **clone)
|
||||||
{
|
{
|
||||||
TRACE("(%p, %p)\n", path, clone);
|
TRACE("(%p, %p)\n", path, clone);
|
||||||
|
|
|
@ -70,6 +70,29 @@ static INT ipicture_pixel_width(IPicture *pic)
|
||||||
return x;
|
return x;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipBitmapApplyEffect(GpBitmap* bitmap, CGpEffect* effect,
|
||||||
|
RECT* roi, BOOL useAuxData, VOID** auxData, INT* auxDataSize)
|
||||||
|
{
|
||||||
|
FIXME("(%p %p %p %d %p %p): stub\n", bitmap, effect, roi, useAuxData, auxData, auxDataSize);
|
||||||
|
/*
|
||||||
|
* Note: According to Jose Roca's GDI+ docs, this function is not
|
||||||
|
* implemented in Windows's GDI+.
|
||||||
|
*/
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipBitmapCreateApplyEffect(GpBitmap** inputBitmaps,
|
||||||
|
INT numInputs, CGpEffect* effect, RECT* roi, RECT* outputRect,
|
||||||
|
GpBitmap** outputBitmap, BOOL useAuxData, VOID** auxData, INT* auxDataSize)
|
||||||
|
{
|
||||||
|
FIXME("(%p %d %p %p %p %p %d %p %p): stub\n", inputBitmaps, numInputs, effect, roi, outputRect, outputBitmap, useAuxData, auxData, auxDataSize);
|
||||||
|
/*
|
||||||
|
* Note: According to Jose Roca's GDI+ docs, this function is not
|
||||||
|
* implemented in Windows's GDI+.
|
||||||
|
*/
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipBitmapGetPixel(GpBitmap* bitmap, INT x, INT y,
|
GpStatus WINGDIPAPI GdipBitmapGetPixel(GpBitmap* bitmap, INT x, INT y,
|
||||||
ARGB *color)
|
ARGB *color)
|
||||||
{
|
{
|
||||||
|
@ -271,10 +294,18 @@ GpStatus WINGDIPAPI GdipBitmapUnlockBits(GpBitmap* bitmap,
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipCloneBitmapArea(REAL x, REAL y, REAL width, REAL height,
|
||||||
|
PixelFormat format, GpBitmap* srcBitmap, GpBitmap** dstBitmap)
|
||||||
|
{
|
||||||
|
FIXME("(%f,%f,%f,%f,%i,%p,%p): stub\n", x, y, width, height, format, srcBitmap, dstBitmap);
|
||||||
|
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipCloneBitmapAreaI(INT x, INT y, INT width, INT height,
|
GpStatus WINGDIPAPI GdipCloneBitmapAreaI(INT x, INT y, INT width, INT height,
|
||||||
PixelFormat format, GpBitmap* srcBitmap, GpBitmap** dstBitmap)
|
PixelFormat format, GpBitmap* srcBitmap, GpBitmap** dstBitmap)
|
||||||
{
|
{
|
||||||
FIXME("(%i,%i,%i,%i,%i,%p,%p)\n", x, y, width, height, format, srcBitmap, dstBitmap);
|
FIXME("(%i,%i,%i,%i,%i,%p,%p): stub\n", x, y, width, height, format, srcBitmap, dstBitmap);
|
||||||
|
|
||||||
return NotImplemented;
|
return NotImplemented;
|
||||||
}
|
}
|
||||||
|
@ -655,6 +686,13 @@ GpStatus WINGDIPAPI GdipCreateCachedBitmap(GpBitmap *bitmap, GpGraphics *graphic
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipCreateHICONFromBitmap(GpBitmap *bitmap, HICON *hicon)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %p)\n", bitmap, hicon);
|
||||||
|
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipDeleteCachedBitmap(GpCachedBitmap *cachedbmp)
|
GpStatus WINGDIPAPI GdipDeleteCachedBitmap(GpCachedBitmap *cachedbmp)
|
||||||
{
|
{
|
||||||
TRACE("%p\n", cachedbmp);
|
TRACE("%p\n", cachedbmp);
|
||||||
|
@ -679,6 +717,13 @@ GpStatus WINGDIPAPI GdipDrawCachedBitmap(GpGraphics *graphics,
|
||||||
return GdipDrawImage(graphics, cachedbmp->image, (REAL)x, (REAL)y);
|
return GdipDrawImage(graphics, cachedbmp->image, (REAL)x, (REAL)y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipEmfToWmfBits(HENHMETAFILE hemf, UINT cbData16,
|
||||||
|
LPBYTE pData16, INT iMapMode, INT eFlags)
|
||||||
|
{
|
||||||
|
FIXME("(%p, %d, %p, %d, %d): stub\n", hemf, cbData16, pData16, iMapMode, eFlags);
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipDisposeImage(GpImage *image)
|
GpStatus WINGDIPAPI GdipDisposeImage(GpImage *image)
|
||||||
{
|
{
|
||||||
HDC hdc;
|
HDC hdc;
|
||||||
|
@ -1586,6 +1631,14 @@ GpStatus WINGDIPAPI GdipCreateBitmapFromHBITMAP(HBITMAP hbm, HPALETTE hpal, GpBi
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipDeleteEffect(CGpEffect *effect)
|
||||||
|
{
|
||||||
|
FIXME("(%p): stub\n", effect);
|
||||||
|
/* note: According to Jose Roca's GDI+ Docs, this is not implemented
|
||||||
|
* in Windows's gdiplus */
|
||||||
|
return NotImplemented;
|
||||||
|
}
|
||||||
|
|
||||||
/*****************************************************************************
|
/*****************************************************************************
|
||||||
* GdipSetEffectParameters [GDIPLUS.@]
|
* GdipSetEffectParameters [GDIPLUS.@]
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue