Bruno Jesus
29a55bc4d1
gdiplus: Use software mode to draw semi-transparent lines when necessary.
...
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-03 22:58:02 +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
Nikolay Sivov
8b649fe2f4
gdiplus/tests: Fix copy/paste error in format tests.
...
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:09 +02:00
Ken Thomases
a3f0a59132
gdiplus: Avoid infinite recursion in flatten_bezier().
...
If either of the recursive calls would have the same x2, y2, x3, and y3
arguments as the current call, the path is as flat as the precision of floats
allows.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-25 08:45:10 +02:00
Owen Rudge
1ddf2b4db8
gdiplus/tests: Add tests for invalid parameter handling for GdipGetFontHeight.
...
Signed-off-by: Owen Rudge <orudge@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 21:40:33 +01:00
Owen Rudge
36c9ac3968
gdiplus: Check for null in GdipGetFontHeight.
...
Signed-off-by: Owen Rudge <orudge@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 21:40:31 +01:00
Nikolay Sivov
371c43550c
gdiplus/tests: Fix region 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-02-27 21:22:29 +01:00
André Hentschel
7f2543180e
gdiplus: Fix GdipCreateStreamOnFile spec file entry.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 10:14:17 +01: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
e1006611cd
gdiplus: Add GdipCreateHBITMAPFromBitmap tests when bitmap bits are locked.
...
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:49 +01:00
Piotr Caban
b58276af4d
gdiplus: Reimplement GdipCreateHBITMAPFromBitmap so it can work on locked bitmaps.
...
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:47 +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
André Hentschel
36bb9d905a
gdiplus: Fix some spec file entries.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-31 22:31:00 +01:00
Francois Gouget
f870708c66
gdiplus: Make some GdipDraw*Path() functions static.
...
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-01-09 21:29:55 +01:00
Alex Henrie
046fc19cd1
gdiplus: Fix memory leak in format_string_callback error path.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-03 20:07:51 +01:00
Nikolay Sivov
134cb70fed
gdiplus/tests: Test for initial properties of adjustable 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>
2016-12-19 19:08:19 +01:00
Vincent Povirk
50185949d8
gdiplus: Create the FontFamily before checking for duplicates.
...
Sometimes GdipCreateFontFamilyFromName stores a different name in the
GpFontFamily object, which breaks the duplicate check.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-02 11:43:03 +01:00
Vincent Povirk
0d6a4b06f9
gdiplus: Don't include rotated fonts in the installed font collection.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-02 11:42:57 +01:00
Nikolay Sivov
8e8c991cd7
gdiplus/tests: A couple more GdipSetPenCompoundArray() tests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-29 17:56:26 +01:00
Nikolay Sivov
919d9facea
gdiplus/tests: Some tests for GdipGetPenCompoundCount().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-29 17:56:24 +01:00
Nikolay Sivov
f7187ecbd6
gdiplus: Use static data for identity check in GdipIsMatrixIdentity().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-04 18:42:45 +01:00
Nikolay Sivov
da2021e46f
gdiplus: Return success from GdipImageSetAbort().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-04 18:42:39 +01:00
Nikolay Sivov
509ba80bcb
gdiplus: Implement GdipBitmapGetHistogram().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-03 11:43:02 +01:00
Nikolay Sivov
8de0275e48
resend patch 1/2: Gdiplus: Implement GdipBitmapGetHistogramSize.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-03 11:42:50 +01:00
Piotr Caban
befb8603e2
gdiplus: Fix GdipCreateLineBrushFromRectWithAngle implementation.
...
The patch fixes isAngleScalable==TRUE argument handling. It also fixes a
mistake when width was used instead of height.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-25 18:33:33 +02:00
Vincent Povirk
88168d4b3d
gdiplus: Implement GdipIsOutlineVisiblePathPoint.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-21 13:38:18 +02:00
Vincent Povirk
6920cf68e6
gdiplus: Reimplement GdipDrawPolygon based on GdipDrawPath.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-19 08:12:15 -07:00
Vincent Povirk
6e054e43c6
gdiplus: Add a software path for thin line drawing.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:17:31 +02:00
Vincent Povirk
092531df71
gdiplus: Add non-gdi32 implementation of GdipDrawPath.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:17:28 +02:00
Vincent Povirk
dd5fd46c63
gdiplus/tests: Add tests for 0-pixel pens.
...
It turns out that GdipDrawLine behaves differently from GdipDrawPath, only
in the case of a 0 pixel pen.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:17:14 +02:00
Vincent Povirk
99e5f24b6d
gdiplus: GdipDrawLine ignores 0-pixel pens.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:17:08 +02:00
Vincent Povirk
96eac4876c
gdiplus: Allow widening a "closed" line segment.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:16:56 +02:00
Vincent Povirk
069f20d1b3
gdiplus: Implement EMR_EXTSELECTCLIPRGN playback.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 18:38:09 +02: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
094516d47a
gdiplus/tests: Add test for gdi32 SetWorldTransform record.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:13:06 +02:00
Vincent Povirk
2054c8fe6f
gdiplus: Add FIXME for EMF records we need to implement.
...
These records cause state tracking in gdi32, but the state tracking doesn't
work correctly because we didn't pass a DC to EnumEnhMetaFile.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-10 21:12:53 +02:00
Marcus Meissner
4c3f494aa0
gdiplus: Assign error return (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>
2016-10-10 21:11:42 +02:00
Vincent Povirk
f696e431ad
gdiplus: Add clipping to GdipDrawImage.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-20 10:36:22 +09:00
Vincent Povirk
c6afa50db6
gdiplus: Add clipping to GDI32_GdipDrawDriverString.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-20 10:36:18 +09:00
Vincent Povirk
3fd47e1be1
gdiplus: Add clipping to GDI32_GdipFillRegion.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-20 10:36:10 +09:00
Vincent Povirk
8b7520ce6d
gdiplus/tests: Check record types in playback tests.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-19 10:59:51 +09: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
Vincent Povirk
18964c9665
gdiplus/tests: Add tests for GdipBeginContainer.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-19 10:59:51 +09:00
Vincent Povirk
f5b14a7ab6
gdiplus: Implement GdipBeginContainer.
...
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
b7956a89bd
gdiplus: Implement GdipGetMetafileHeaderFromFile.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-15 21:02:34 +09:00
Dmitry Timoshkov
368b4c47bb
gdiplus: Implement GdipGetMetafileHeaderFromStream.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-15 21:02:34 +09:00
Dmitry Timoshkov
8c1ded6164
gdiplus: Implement GdipGetMetafileHeaderFromWmf.
...
Signed-off-by: Vincent Povirk <vincent@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-15 21:02:33 +09:00