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
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
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
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
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
de37cedb70
gdiplus: Add partial support for GdipFillPath 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:25 +02:00
Piotr Caban
8608bf532e
gdiplus: Add DrawPath stub for 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:17 +02:00
Piotr Caban
683315d111
gdiplus: Support GdipSetTextRenderingHint 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-07-11 20:55:15 +02:00
Piotr Caban
ac231b14b9
gdiplus: Add function for managing metafile objects id.
...
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-10 20:51:11 +02:00
Piotr Caban
e1e4dd2023
gdiplus: Add partial support for GdipDrawImagePointsRect on 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-10 20:51:11 +02:00
Nikolay Sivov
c89de1dd08
gdiplus: Use better naming for line alignment format field.
...
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-04-28 18:40:13 +02:00
Nikolay Sivov
69b41e7cf3
gdiplus: Fix generic string formats behavior.
...
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-04-28 18:40:11 +02:00
Francois Gouget
43e36d62a1
gdiplus: Simplify and standardize the heap_xxx() declarations.
...
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-02-27 10:14:09 +01:00
Piotr Caban
5673d82b8e
gdiplus: GpBitmap can be only locked once, get rid of numlocks field.
...
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-02-16 08:30:46 +01:00
Piotr Caban
0eaaa15144
gdiplus: Make GpBitmap->bitmapbits access thread safe.
...
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-02-16 08:30:40 +01:00
Nikolay Sivov
4e685ebb9b
gdiplus: Added GdipGetCustomLineCapType().
...
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-02-03 19:05:13 +01:00
Vincent Povirk
28cfa306b4
gdiplus: Implement EMR_SETWORLDTRANSFORM playback.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:13:13 +02:00
Vincent Povirk
410163a9f2
gdiplus: Implement BeginContainer metafile record.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-19 10:59:51 +09:00
Dmitry Timoshkov
2f7a2fdea3
gdiplus: Reimplement metafile loading using gdi32 instead of IPicture.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:39:12 +09:00
Vincent Povirk
3f6faddd56
gdiplus: Implement playback/recording for SetClipRect.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 11:54:08 +09:00
Vincent Povirk
f28803c0a4
gdiplus: Add support for containers in metafiles.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-16 12:00:55 +09:00
Vincent Povirk
af500612f2
gdiplus: Implement recording/playback for TranslateWorldTransform.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-15 12:55:05 +09:00
Vincent Povirk
690e0f269c
gdiplus: Implement recording/playback for SetWorldTransform.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:21 +09:00
Vincent Povirk
cfae34a7e2
gdiplus: Implement recording/playback for RotateWorldTransform.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:19 +09:00
Vincent Povirk
69a7c2c6a2
gdiplus: Implement recording/playback for MultiplyWorldTransform.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:35:17 +09:00
Vincent Povirk
a65718a3e7
gdiplus: Implement ResetWorldTransform metafile playback/recording.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 16:43:11 -05:00
Vincent Povirk
271c2bd62c
gdiplus: Implement metafile recording for ScaleWorldTransform.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-03 16:43:05 -05:00
Vincent Povirk
da31ddb797
gdiplus: Account for GDI+ drawing operations in the metafile frame.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:35 +09:00
Vincent Povirk
5c6247f7e2
gdiplus: Implement writing Clear operation to metafiles.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:26 +09:00
Vincent Povirk
10516308a8
gdiplus: Clip metafile drawing to destination points.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-03 10:22:20 +09:00
Vincent Povirk
7fbf0deede
gdiplus: Implement GdipGetImageAttributesAdjustedPalette.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 12:16:59 +09:00
Andrey Gusev
bddba301be
gdiplus: Fix a typo in struct GpAdjustableArrowCap.
...
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>
2016-06-04 13:37:44 +09:00
Vincent Povirk
a9e4e3b403
gdiplus: Implement GdipRecordMetafileStream.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 12:58:20 +09:00
Alistair Leslie-Hughes
b8449062eb
gdiplus: Implement GdipGetPenTransform.
...
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>
2016-02-04 14:41:05 +09:00
Sebastian Lackner
1250af4986
gdiplus: Use helper function for HeapReAlloc calls.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 10:49:17 +09:00
Sebastian Lackner
ff1b209be8
gdiplus: Use helper function for HeapAlloc calls.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-29 10:49:14 +09:00
Sebastian Lackner
aa70a90c6e
gdiplus: Do not use GdipAlloc and GdipFree in internal functions.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:44:22 +09:00
Nikolay Sivov
0a15e163db
gdiplus: Implement trivial case of GdipCreateRegionRgnData for empty and infinite regions.
2015-06-10 15:50:44 +09:00
Andrew Eikum
1d5914b777
gdiplus: Avoid unnecessary pre-multiplied alpha conversions in GdipDrawImagePointsRect.
...
We can avoid doing a pre-multiplied alpha conversion by detecting
whether we need to perform any graphics operations ahead of time.
2015-04-06 12:04:15 +09:00
Piotr Caban
821932dab9
gdiplus: Fix animated gif frames composition.
2015-03-13 21:52:48 +09:00
Piotr Caban
b3a9c698e8
gdiplus: Don't store stream reference in GpImage, it's done by IWICBitmapDecoder.
2015-03-13 21:52:45 +09:00
Piotr Caban
a181997855
gdiplus: Don't create new instance of IWICBitmapDecoder to encode every frame of animation.
2015-03-13 21:52:40 +09:00
Vincent Povirk
2d487e22d6
gdiplus: Move metafile functions to metafile.c.
2014-01-29 12:38:46 +01:00
Vincent Povirk
6518edfa5f
gdiplus: Implement writing SetPageTransform records.
2014-01-17 11:00:28 +01:00
Vincent Povirk
681cd545ea
gdiplus: Set world transform when drawing metafiles.
2013-11-25 15:15:52 +01:00
Vincent Povirk
c491d52821
gdiplus: Write FillRects records to metafiles.
2013-11-25 15:15:52 +01:00
Dmitry Timoshkov
f5d807b7d7
gdiplus: Get rid of no longer needed path and region fields.
2013-11-12 14:14:46 +01:00
Michael Stefaniuc
9fefae61da
gdiplus: Avoid using CONST.
2013-09-23 11:54:47 +02:00
Dmitry Timoshkov
14f34c15d1
gdiplus: Store graphics clipping region in device coordinates.
2013-07-19 11:58:23 +02:00