Commit Graph

1934 Commits

Author SHA1 Message Date
Vincent Povirk 0943fcf376 gdiplus: Silently ignore empty rectangles in GdipAddPathRectangles.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 19:39:29 +01:00
Nikolay Sivov 279cad2352 gdiplus/tests: Add some invalid arguments tests for GdipLoadImageFromStream().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 19:39:28 +01:00
Louis Lenders 1ac02c2385 gdiplus: Fix argument check in GdipLoadImageFromStream().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 19:39:28 +01:00
Michael Stefaniuc fb12076e1a gdiplus: Use the global HeapAlloc() wrappers.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 18:45:27 +01:00
Francois Gouget 3939fd554f gdiplus/tests: Add a trailing '\n' to ok() calls.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-04 21:46:59 +01:00
Nikolay Sivov b1ccf61f22 gdiplus/tests: Check more return values (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 20:44:33 +01:00
Fabian Maurer 89366f740f gdiplus: In GdipPrivateAddMemoryFont allow loading fonts with long names.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 20:44:33 +01:00
Nikolay Sivov 4616954a9d gdiplus/tests: Some tests for GdipGetFontCollectionFamilyList() and system collection.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 23:07:00 +01:00
Nikolay Sivov 394e15e39c gdiplus/metafile: Support linear gradient brushes in playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:21:29 +01:00
Nikolay Sivov baba9a8e48 gdiplus/metafile: Implement playback for EmfPlusRecordTypeSetCompositingMode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-07 21:24:45 +01:00
Nikolay Sivov 784fe04994 gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillClosedCurve.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-07 21:24:45 +01:00
Nikolay Sivov 3186df2b02 gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawEllipse.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-06 19:54:25 +01:00
Nikolay Sivov 2f2cbd4150 gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawArc.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-06 19:54:22 +01:00
Nikolay Sivov fd8185132e gdiplus/metafile: Add brush object if needed in FillRectangles().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-03 23:44:52 +01:00
Nikolay Sivov 9c47baa3fc gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillPie.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-03 23:44:52 +01:00
Nikolay Sivov f75b57ad81 gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillEllipse.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-03 23:44:52 +01:00
Nikolay Sivov e934c4c06f gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawRects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-03 23:44:52 +01:00
Nikolay Sivov 6931e629cd gdiplus/metafile: Implement EmfPlusRecordTypeDrawPie playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-03 23:44:52 +01:00
Nikolay Sivov 5787727f9e gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawImage.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:08 +01:00
Nikolay Sivov f25f0fa2ac gdiplus/metafile: Support hatch brushes for recording.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:08 +01:00
Nikolay Sivov 905bd23b2e gdiplus/metafile: Support texture brushes playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:08 +01:00
Nikolay Sivov 6d0ca495b8 gdiplus/metafile: Support hatch brushes in playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:07 +01:00
Nikolay Sivov 0625b33834 gdiplus/metafile: Simplify EmfPlusARGB definition.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:07 +01:00
Nikolay Sivov ab31b59f45 gdiplus: Implement GdipSetImageAttributesNoOp.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-24 19:09:31 +02:00
Andrey Gusev ef5a3ffe51 gdiplus: Fix misplaced parentheses.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-24 19:09:29 +02:00
Nikolay Sivov d0f2361170 gdiplus/metafile: Implement EmfPlusRecordTypeSetClipPath playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 21:08:28 +02:00
Nikolay Sivov bf9305f635 gdiplus/metafile: Implement EmfPlusRecordTypeSetClipRegion playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 21:08:28 +02:00
Zebediah Figura 35dacf52dd gdiplus/tests: Mark broken bitmap background tests.
This bug is present in gdiplus.dll version 5.1 and absent in version 5.2.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 21:08:28 +02:00
Nikolay Sivov aef2f0799f gdiplus/metafile: Implement EmfPlusRegion deserialization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 19:00:41 +02:00
Nikolay Sivov 363d24d458 gdiplus/metafile: Implement playback for EmfPlusRecordTypeDrawPath records.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 19:00:38 +02:00
Nikolay Sivov 9f45ef729c gdiplus/metafile: Partially implement EmfPlusPen support for playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-20 19:00:35 +02:00
Nikolay Sivov 7b99fe6f09 gdiplus/metafile: Added support for EmfPlusFont objects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-18 09:44:14 +02:00
Nikolay Sivov b203b76190 gdiplus/metafile: Validate data size when playing back EmfPlusClear.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-18 09:44:12 +02:00
Nikolay Sivov 57ca6b90bb gdiplus/metafile: Support serialized brushes in EmfPlusFillRects.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 21:00:14 +02:00
Nikolay Sivov 6cde9952f2 gdiplus/metafile: Implement playback for EmfPlusRecordTypeFillPath.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 21:00:12 +02:00
Nikolay Sivov 2a2f61dfe9 gdiplus/metafile: Partially implement EmfPlusPath deserialization.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 21:00:10 +02:00
Nikolay Sivov 440efc8244 gdiplus/metafile: Implement EmfPlusRecordTypeDrawImagePoints record playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 21:00:08 +02:00
Nikolay Sivov 81459d6526 gdiplus/metafile: Implement EmfPlusImage deserialization for bitmaps.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-16 21:00:05 +02:00
Nikolay Sivov ce315b9f86 gdiplus/metafile: Support solid brushes in EmfPlusRecordTypeObject record playback.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-14 01:04:33 +02:00
Nikolay Sivov 825f393299 gdiplus/metafile: Implement EmfPlusRecordTypeObject for image attributes object.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-12 19:40:48 +02:00
Nikolay Sivov 4b028bb09c gdiplus/metafile: Support playback for EmfPlusRecordTypeSetAntiAliasMode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 20:33:23 +02:00
Nikolay Sivov 6010b52a2e gdiplus/metafile: Support playback for EmfPlusRecordTypeSetTextRenderingHint.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 20:31:20 +02:00
Nikolay Sivov 30ba465786 gdiplus/metafile: Fix flags handling for EMF+ property records.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 20:31:13 +02:00
Nikolay Sivov 1df5f2fab7 gdiplus/tests: Test EMF+ records flags.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 20:31:10 +02:00
Vincent Povirk 2ea6c93bc4 gdiplus/tests: Add tests for gdi32 transform and clip caching.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 21:56:07 +02:00
Vincent Povirk 3558dea0bd gdiplus: Store the gdi32 clip region at Graphics creation time.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 21:56:04 +02:00
Vincent Povirk 31e4dede0f gdiplus: Store the gdi32 transform at Graphics creation time.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 21:56:00 +02:00
Nikolay Sivov 160f5b2387 gdiplus/tests: Fix matrix leak (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 19:37:22 +02:00
Hugh Bellamy b8f56c0b86 gdiplus: Add GdipCreateLineBrushFromRectWithAngle tests.
Signed-off-by: Hugh Bellamy <hughbellars@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-21 18:29:18 +02:00
Michael Stefaniuc 3a42c84e0f gdiplus: Remove a wrapper around GdipFree().
GdipFree() already deals with NULL input.

Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-20 19:03:14 +02:00
Hugh Bellamy c022c46613 gdiplus: Define GpHatchStyle.
Signed-off-by: Hugh Bellamy <hughbellars@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 18:44:34 +02:00
Hugh Bellamy e0601829e1 gdiplus: Fix validation of HatchStyle in GdipCreateHatchBrush.
Signed-off-by: Hugh Bellamy <hughbellars@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 18:27:07 +02:00
Nikolay Sivov 071d7c3fbe gdiplus: Implement playback for EmfPlusRecordTypeSetInterpolationMode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 18:26:52 +02:00
Nikolay Sivov 024750b182 gdiplus: Implement playback for EmfPlusRecordTypeSetCompositingQuality.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 18:26:51 +02:00
Nikolay Sivov 10a80b8c1b gdiplus: Implement playback for EmfPlusRecordTypeSetPixelOffsetMode.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-18 18:26:49 +02:00
Francois Gouget cbacc556ec gdiplus: Add a trailing linefeed to an ERR() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 18:54:02 +02:00
Vincent Povirk b32c324378 gdiplus: Account for gdi32 transform in GdipSetClipHrgn.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 21:35:31 +02:00
Vincent Povirk 9e1c110585 gdiplus: Account for gdi32 transforms in text functions.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 21:35:30 +02:00
Vincent Povirk ac51280b1f gdiplus: Account for gdi32 transform in SOFTWARE_GdipDrawPath.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 21:35:28 +02:00
Vincent Povirk 6bf1b638cb gdiplus: Account for gdi32 transform in SOFTWARE_GdipDrawThinPath.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:39 +02:00
Vincent Povirk e127101122 gdiplus: Send paths to gdi32 in device coordinates.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:34 +02:00
Vincent Povirk 93e8507aea gdiplus: Account for gdi32 transform in GdipDrawImage.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:30 +02:00
Vincent Povirk be952527f2 gdiplus: Use SOFTWARE_GdipDrawPath with alpha hdc's.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:24 +02:00
Vincent Povirk 0914f626af gdiplus: Account for gdi transform in brush_fill_pixels.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-01 07:34:20 +02:00
Vincent Povirk 399fd55f5c gdiplus: Account for gdi transform in SOFTWARE_GdipFillRegion.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 19:51:26 +02:00
Changhui Liu 24f109072c gdiplus/tests: Add drawing tests for GdipFillRegion with gdi transform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 19:51:22 +02:00
Vincent Povirk 0241da1c2d gdiplus: Test that GdipGetRegionHRgn includes gdi32 transform.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 19:51:04 +02:00
Vincent Povirk 016dc76ab2 gdiplus: Transform clipping region to gdi device coordinates.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 19:51:02 +02:00
Vincent Povirk c579661006 gdiplus: Test that clip region doesn't account for gdi32 transform changes.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-30 19:51:00 +02:00
Changhui Liu cbaa358d6d gdiplus/tests: Add test for hdc with window origin point changed.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:28 +02:00
Vincent Povirk cfa4f088ee gdiplus: Replace DPtoLP with an internal coordinate space constant.
This will allow us to temporarily remove gdi transforms later, without
affecting internal logic that accounts for them.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:27 +02:00
Vincent Povirk 5c12cede8d gdiplus: Check for invalid coordinate space in GdipTransformPoints.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:27 +02:00
Dmitry Timoshkov 8c593bd37a gdiplus: Set correct color space flags for grayscale images.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:27 +02:00
Dmitry Timoshkov 221c04d0df gdiplus/tests: Add a test for image flags to PNG grayscale image tests.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-29 15:51:27 +02:00
Andrew Eikum 7860d11e6c gdiplus: Don't call PlayEnhMetaFileRecord for records handled by gdiplus.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 18:30:16 +02:00
Dmitry Timoshkov 5870431ad9 gdiplus: Force conversion of 8 bpp grayscale PNG images to 32 bpp BGRA.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 08:06:35 +02:00
Nikolay Sivov 42e5d2702e gdiplus: Use defined constants for wrap modes.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 17:46:07 +02:00
Andrew Eikum 79ebd3f3bf gdiplus: Fix copy-paste typo.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:42:27 +09:00
Dmitry Timoshkov ae65558ba1 gdiplus/tests: Add a test for loading PNG grayscale images.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-24 08:36:45 +09:00
Andrew Eikum a4ab858a96 gdiplus: GdipCreateMetafileFromWmfFile will also load EMFs.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-18 08:07:56 +09:00
Andrew Eikum aac33dab2a gdiplus: Implement transform matrix for line gradient brushes.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-18 08:07:54 +09:00
Piotr Caban 14bb8df8a5 gdiplus: Support GdipSetClipRegion in metafiles.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:14:44 +09:00
Piotr Caban 4a02870296 gdiplus: Add write_region_data helper and use it in GdipGetRegionData.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:14:41 +09:00
Piotr Caban 595959c771 gdiplus: Add more accurate algorithm for inverting scaling and translation matrices in GdipInvertMatrix.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:12:07 +09:00
Andrew Eikum 1744277bee gdiplus: Implement stub for GdipGraphicsSetAbort.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-27 21:59:41 +02:00
Vincent Povirk 8f54e2034e gdiplus/tests: Enable floating point exceptions.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 10:10:10 +02:00
Vincent Povirk 331a7af37a gdiplus: Fix a possible floating point exception in path gradients.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 10:10:06 +02:00
Fabian Maurer 400cfb0fd9 gdiplus: Avoid division by zero in SOFTWARE_GdipDrawThinPath.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-25 21:03:10 +02:00
Piotr Caban 2176348998 gdiplus: Return success saving path to metafile.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 20:05:40 +02:00
Piotr Caban 70afb4ecd0 gdiplus: Fix saving pen dashed line cap style to metafile.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 20:05:38 +02:00
Marcus Meissner a172cc6c6e gdiplus: Free dash_pattern_scaled (Coverity).
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 20:05:34 +02:00
Piotr Caban 58eb74c43d gdiplus: Use write_path_data helper in GdipGetRegionData.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 20:53:41 +02:00
Piotr Caban a892b68016 gdiplus: Add write_path_data helper to create EMF+ path object.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 20:53:37 +02:00
Piotr Caban 55453327f5 gdiplus: Store newer gdi+ version in created GdipRegions.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 20:53:31 +02:00
Vincent Povirk cfe2b3fa0e gdiplus: Don't require specific gdi+ versions in metafile structures.
Based on testing of manually edited metafiles, only the signature portion
of version fields are tested, not the version number.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:34 +02:00
Piotr Caban a8b5fdda32 gdiplus: Use VERSION_MAGIC2 constant in metafiles functions.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-17 22:28:47 +02:00
Piotr Caban 9c20a1130e gdiplus/tests: Test drawing metafile image to emf+ file.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-17 22:28:36 +02:00
Piotr Caban 8498aa3dfa gdiplus: Add support for creating image object containing metafile.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-17 22:28:22 +02:00
Vincent Povirk 9f22041b31 gdiplus: Fix leak in widen_dashed_figure.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-14 11:10:38 +02:00
Piotr Caban f9b881e30c gdiplus: Fix GdipGetVisibleClipBounds behavior on metafiles.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 21:04:27 +02:00