Commit Graph

1950 Commits

Author SHA1 Message Date
Alistair Leslie-Hughes cf3362afb1 gdiplus: Display the GUID of the image type in GdipSaveImageToStream.
Based on a patch by Dmitry Timoshkov.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-24 19:12:03 +02:00
Dmitry Timoshkov cc119b9464 gdiplus: Pass the correct GUID to encode_image_wic for GIF images.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-24 19:12:03 +02:00
Nikolay Sivov 9ffc6e600e gdiplus: Only draw filled arrows with positive height.
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-05-14 23:51:41 +02:00
Nikolay Sivov 39c8ebddcc gdiplus: Implement unfilled mode for arrow caps.
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-05-14 23:51:36 +02:00
Nikolay Sivov 1da650a1cb gdiplus: Partially implement arrow caps.
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-05-14 23:51:31 +02:00
Nikolay Sivov 8463159344 gdiplus: Use ARRAY_SIZE() macro.
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-05-14 23:51:27 +02:00
Nikolay Sivov 3d8bd66511 gdiplus: Draw using actual point data for custom caps.
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-05-11 19:41:15 +02:00
Nikolay Sivov cd228c2815 gdiplus: Fix the number of transformed points for round caps.
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-05-11 19:41:11 +02:00
Nikolay Sivov 5436cfc9b6 gdiplus: Convert actually used points for anchored round caps.
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-05-11 19:41:06 +02:00
Nikolay Sivov aad491b0cf gdiplus: Fix the number of transformed points for squared caps.
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-05-11 19:41:00 +02:00
Nikolay Sivov b809b19f84 gdiplus: Implement GdipTranslatePenTransform.
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-03-26 21:05:39 +02:00
André Hentschel e7b16bcb57 gdiplus: Add stub for GdipSetPathGradientPath.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-26 21:05:26 +02:00
Vincent Povirk 989c29870f gdiplus: Optimize clip region transforms.
Testing shows that this affects behavior. Transforming a region turns
empty rectangles (with negative width or height) into non-empty
rectangles. If an empty rectangle is set, it's treated as non-empty
only when there is a world transform.

Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 11:48:00 -06:00
Vincent Povirk 2329a2fa3d gdiplus: Transform region rects as rects when possible.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-07 11:47:57 -06:00
Andrey Gusev 71e2c4b429 gdiplus/tests: Fix copy-paste typos.
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>
2018-03-02 18:05:18 +01:00
Alistair Leslie-Hughes 51fe44ed42 gdiplus/tests: Check the correct value.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-02 18:05:12 +01:00
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