Huw Davies
41f763ea87
gdi32: Add an internal version of GetTextCharsetInfo() that takes a DC pointer.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:43:32 +09:00
Huw Davies
22202eae59
gdi32: Use a buffer on the stack if the number of points is small.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:43:32 +09:00
Huw Davies
5118d1312c
gdi32: Access a few more properties directly from the DC in the dib driver.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:09 +09:00
Huw Davies
d8e353f99f
gdi32: Pass a DC pointer to get_pixel_color().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:09 +09:00
Huw Davies
cf386b8b64
gdi32: Pass a DC pointer to get_mono_dc_colors().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:08 +09:00
Huw Davies
9efe66a83a
gdi32: Use lp_to_dp() instead of LPtoDP() in the dib driver.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:10 +09:00
Huw Davies
7fa6dfecc9
gdi32: Pass a DC pointer to get_device_rect() to avoid accesses via the handle.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:09 +09:00
Huw Davies
36a0bb0f52
gdi32: Avoid unnecessary calls to get_dc_ptr().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:09 +09:00
Huw Davies
6a8cfea99b
gdi32: Use POINT and SIZE to hold positions and extents.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:08 +09:00
Huw Davies
f4bc213ce5
gdi32: Use an internal version of LPtoDP that takes a DC * where possible.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 19:38:14 +09:00
Huw Davies
af5014f4c8
gdi32: Add a small rectangle buffer to reduce memory allocation.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 19:38:12 +09:00
Huw Davies
01c33fb983
gdi32: Add helpers to allocate, grow and free regions.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 19:38:09 +09:00
Huw Davies
778faedbae
gdi32: Copy 1-bpp pixels one byte at a time.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 19:56:38 +09:00
Huw Davies
da8834609a
gdi32: Reduce the number of memory allocations required for gdi paths.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:26:10 +09:00
Huw Davies
54ec86021a
gdi32: Change get_gdi_flat_path() to return an opaque path pointer.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:26:10 +09:00
Huw Davies
23751e0ac2
gdi32: Use alloc_gdi_path() to create the path.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:18:31 +09:00
Jacek Caban
585f6074b0
gdi32: Make CreateDIBSection hotpatchable.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:18:27 +09:00
Huw Davies
a8044bebe8
gdi32: Add a mask_rect primitive for use when the src is 1bpp.
...
This essentially combines the format conversion with a copy_rect.
It cannot be used when stretching, since stretching of 1bpp is
slightly special. Similarly, it cannot be used if the dst is also
1bpp (hence there is no mask_rect_1) or if the rop involves the brush.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 17:52:35 +09:00
Huw Davies
f5bffe0ef7
gdi32: Use the get_mono_dc_colors() helper.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 17:52:35 +09:00
Huw Davies
622c01c5e1
gdi32: Add back the extents test.
...
Spotted by Sebastian Lackner.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-09 11:03:55 +09:00
Huw Davies
fc2d310949
gdi32: Add get_any_obj_ptr() to retrieve the ptr and type of a GDI handle.
...
This enables get_dc_obj() to check the type without calling GetObjectType()
and thus it saves additional calls to Enter/LeaveCriticalSection().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 23:07:22 +09:00
Michael Stefaniuc
0b96693f75
gdi32: Remove a redundant NULL check before HeapFree().
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 20:12:19 +09:00
Huw Davies
f7b6a7d77a
gdi32: Precompute the destination colours for sources with a colour table.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:24 +09:00
Huw Davies
f59d3f60e1
gdi32: Use a binary search for PtInRegion() and RectInRegion().
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:24 +09:00
Huw Davies
7fd44a511f
gdi32: Use a binary search to generate the clipped rects.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:24 +09:00
Sebastian Lackner
69d895ac86
gdi32: Fix copy & paste mistake in a comment.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 19:55:57 +09:00
Michael Stefaniuc
8acdf5e7bf
gdi32: Use wine_dbgstr_rect() to trace a RECT.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:04 +09:00
Huw Davies
6526ac1999
gdi32: Try to compact the region.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 21:03:58 +09:00
Huw Davies
27375d8476
gdi32: Try to coalesce into wider bands.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 21:03:42 +09:00
Huw Davies
0e93387d9b
gdi32: Use the add_rect() helper to add a rectangle.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 21:03:33 +09:00
Francois Gouget
d7e18f6540
mfdrv: Fix a typo in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 11:01:25 +09:00
Alexandre Julliard
b70cda9a1e
gdi32/tests: Add a test to run once through all functions supported on paths.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-24 15:33:04 +09:00
Alexandre Julliard
06234a081a
gdi32: Reimplement Ellipse in paths to avoid calling imprecise arc helper functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-24 15:33:04 +09:00
Alexandre Julliard
0b38f16767
gdi32: Reimplement RoundRect in paths to avoid calling imprecise arc helper functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-24 15:33:04 +09:00
Alexandre Julliard
1fcf8f547a
gdi32: Compatibility fixes for Rectangle in paths, with tests.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-24 15:33:03 +09:00
Alexandre Julliard
57d2009035
gdi32: Add a helper function to reverse an array of points in paths.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-24 13:21:47 +09:00
Alexandre Julliard
117f862ce5
gdi32: Validate the point count in Polyline and Polygon.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 12:36:23 +09:00
Alexandre Julliard
b2702b2d6f
gdi32/tests: Get rid of the todo mechanism in the path tests.
...
All the tests succeed now.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 12:36:15 +09:00
Michael Stefaniuc
6d21655ed9
gdi32/tests: Use SetRect() instead of open coding it.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:09:17 +09:00
Alexandre Julliard
84ce9dfba7
gdi32: Start a new path stroke when the current position differs from the last.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:09:17 +09:00
Alexandre Julliard
e68d68fb7d
gdi32: Fix setting the path flags in PolyPolyline and PolyPolygon.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:09:17 +09:00
Alexandre Julliard
c7bbc83062
gdi32: Implement bounds for FillPath, StrokeAndFillPath and StrokePath in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 00:58:54 +09:00
Alexandre Julliard
625ff9b528
gdi32: Implement a path driver for enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 14:54:49 +09:00
Alexandre Julliard
6bab6ad40d
gdi32: Add a helper function to return the metafile device.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 14:54:02 +09:00
Alexandre Julliard
234daa7522
gdi32: Implement DeleteDC in the path driver.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 14:53:06 +09:00
Michael Stefaniuc
75426bb926
gdi32/tests: Use wine_dbgstr_rect() to print RECTs.
...
Two old (win95 and winnt) broken() removed en passant.
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:56 +09:00
Alexandre Julliard
c500713dd3
gdi32: Fix updating the current position in PolyDraw.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-21 00:23:50 +09:00
Alexandre Julliard
dfa3c68854
gdi32: Don't modify the DC arc direction in AngleArc.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:39 +09:00
Alexandre Julliard
4ea7190361
gdi32: Keep track of the last move position in a path.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:39 +09:00
Alexandre Julliard
3c63993f7e
gdi32: Add path helper functions to add points and close figures.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:39 +09:00
Michael Stefaniuc
27f80dab77
gdi32/tests: Compare RECTs with EqualRect instead of memcmp.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:39 +09:00
Alexandre Julliard
ef3494c623
gdi32: Implement AngleArc in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:27:49 +09:00
Alexandre Julliard
b06e6147d1
gdi32: Implement PolyDraw in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:27:49 +09:00
Alexandre Julliard
1f004c42bf
gdi32: Add a few helper functions to manipulate point arrays in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:27:49 +09:00
Alexandre Julliard
91ef88a9e3
gdi32: Implement PolylineTo in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 14:00:17 +09:00
Alexandre Julliard
e92e5ec376
gdi32: Implement ArcTo in enhanced metafiles.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 13:51:05 +09:00
Alexandre Julliard
7cfcd23878
gdi32: Take the transform rotation into account to compute pen width.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:20 +09:00
Alexandre Julliard
04e7215faf
gdi32: Remove the no longer needed (and broken) null driver implementation of some path functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:20 +09:00
Alexandre Julliard
b5cf73edd9
gdi32: Implement FillPath, StrokeAndFillPath and StrokePath in the DIB driver.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:20 +09:00
Alexandre Julliard
7373a7c71d
gdi32: Fix PathToRegion and SelectClipPath behavior with an empty path.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-16 01:21:47 +09:00
Alexandre Julliard
bd53a012b4
gdi32/tests: Add a few more path tests.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-16 00:25:34 +09:00
Huw Davies
078f192c66
gdi32: Rename the struct representing an embedded WMF in an EMF.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:25:16 +09:00
Huw Davies
19d1416cef
gdi32: If the WMF was created by GetWinMetaFileBits() then return the original EMF.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:25:16 +09:00
Huw Davies
7be1c53d82
gdi32: Rename the struct representing an embedded EMF in a WMF.
...
Also, use an array rather than a pointer to represent the start of the data.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-08 23:08:00 +09:00
Alexandre Julliard
d341b0c381
user32: Completely free owned DCEs when the corresponding window/class is destroyed.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 09:55:03 +09:00
Andrey Gusev
9a80284e1a
gdi32: Fix a typo in a pointer name in primitive_funcs.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 23:42:23 +09:00
Andrey Gusev
6fae520e1c
gdi32/tests: Fix a typo in trace() message.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-02 12:27:18 +09:00
Piotr Caban
dfb750b9c2
gdi32/enhmfdrv: Don't update document bounds in PolyPolyline within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Piotr Caban
67e26bec8d
gdi32/enhmfdrv: Don't update document bounds in Polyline within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Piotr Caban
0d84feaf49
gdi32/enhmfdrv: Don't update document bounds in RoundRect within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Piotr Caban
661bc10bfe
gdi32/enhmfdrv: Don't update document bounds in Ellipse within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Piotr Caban
c36f365329
gdi32/enhmfdrv: Don't update document bounds in Arc/Chord/Pie within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:44 +09:00
Piotr Caban
d307bba0f4
gdi32/enhmfdrv: Add enhanced metafile bounds tests.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
c019c68b45
gdi32/enhmfdrv: Don't update document bounds in LineTo within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
44f860daff
gdi32/enhmfdrv: Don't update document bounds in Rectangle within a path.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
3a12eb2083
gdi32/enhmfdrv: Add ExtTextOut tests with unmatched BeginPath/EndPath calls.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
269b2519a7
gdi32/enhmfdrv: Always set ExtTextOut bounding rect if we're not inside path bracket.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
a3e741fd4c
gdi32/enhmfdrv: Fix PolyBezierTo bounding box computation.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-29 20:02:43 +09:00
Piotr Caban
d9e7c4d820
gdi32/enhmfdrv: Don't drop viewport/window transformation in StretchBlt.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-22 21:04:35 +09:00
Michael Stefaniuc
4b7adc087a
gdi32: Use wine_dbgstr_rect() to trace RECTs.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:42:02 +09:00
Piotr Caban
69e37ff05e
gdi32: Use advanced graphics mode when setting world transform in PlayEnhMetaFileRecord.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-21 18:26:52 +09:00
Francois Gouget
bf5508f9e0
gdi32/tests: A spelling fix in a comment.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-19 21:30:22 +09:00
Huw Davies
ef34222131
gdi32/tests: Allocate the font enum data structures.
...
These are in excess of 250kB and may overflow the stack.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-14 19:26:11 +09:00
Henri Verbeet
0a41694b53
gdi32: Implement DC creation from pre-existing memory.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-13 23:01:07 +09:00
Huw Davies
bb4ead4c7c
gdi32: Use abs() on an integer argument to avoid a clang warning.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-12 21:00:52 +09:00
Huw Davies
66351b3de3
gdi32: Implement playback of the GradientFill EMF record.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-08 23:01:38 +09:00
Huw Davies
ac0959cdf6
gdi32: Implement recording of the GradientFill EMF record.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-08 23:01:28 +09:00
Nikolay Sivov
4161f5120b
gdi32: Increase first gdi handle value.
...
Due to 32->16bit handle truncation low enough handle values could be
misinterpreted as stock brushes indices in FillRect().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-08 23:00:58 +09:00
Jactry Zeng
5bf4345824
gdi32: Load system fonts on Android.
...
Signed-off-by: Jactry Zeng <jzeng@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-07 17:08:30 +09:00
Alexandre Julliard
1eac54ef7d
gdi32: Take into account the fontdir directory specified at build time.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-17 19:44:01 +09:00
Huw Davies
a36b4a6abb
gdi32/tests: Add tests for EMF PolyPolyline record creation.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-09 21:22:34 +09:00
Huw Davies
6e05189ba4
gdi32: Don't update the bounds if any poly{line|gon} has fewer than two points.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-09 21:22:32 +09:00
Huw Davies
2e4a37f2cf
gdi32: Generate EMR_POLYPOLY{LINE|GON}16 records if the co-ords fit.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-09 21:22:28 +09:00
Michael Stefaniuc
a23038217d
gdi32/tests: Use SetRectEmpty() instead of open coding it.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-04 18:43:04 +09:00
Nikolay Sivov
4b05cac391
gdi32: Use a macro instead of accessing FT_Face flags directly.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-01 19:20:50 +09:00
Alexandre Julliard
0bbeaae678
make_unicode: Mark most data tables as hidden.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-25 00:25:01 +09:00
Alistair Leslie-Hughes
bd571e7d1d
gdi32/tests: Add tests for GetPath using metafile.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-23 20:24:17 +09:00
Alistair Leslie-Hughes
9ac1744b80
gdi32/tests: Check values returned from GetPath.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-19 19:59:07 +09:00
Charles Davis
c94336f381
gdi32: Declare our intent explicitly to the compiler.
...
Clang warns about this abs(3) call because the argument is of unsigned
type.
Signed-off-by: Charles Davis <cdavis5x@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-18 02:06:11 +09:00
Nikolay Sivov
932838faa3
gdi32: Only REG_SZ and REG_MULTI_SZ types make sense for font replacement, ignore the rest.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-12 23:06:54 +09:00
Nikolay Sivov
10437c027f
gdi32/tests: Simplify tests using todo_wine_if().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:17:28 +09:00
Nikolay Sivov
c98f40e227
gdi32: Fix otmfsSelection to have bold style set in case of bold simulation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-10 13:40:28 +09:00
Nikolay Sivov
11be16ca79
gdi32/tests: Turn some asserts in font tests into regular tests.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 23:27:16 +09:00
Nikolay Sivov
6389f41135
gdi32: Fix otmfsSelection to have italic style set in case of oblique simulation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 23:27:13 +09:00
Alexandre Julliard
232dc29ff8
make_unicode: Update vertical orientation table to the latest version.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 17:23:31 +09:00
Akihiro Sagawa
a8d426e93a
gdi32: Implement synthesizing bold glyphs for bitmap fonts.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:54 +09:00
Akihiro Sagawa
ba79c19d09
gdi32: Return an boolean value whether synthesizing bold glyph is success.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:49 +09:00
Akihiro Sagawa
34e7361790
gdi32: Fix the advance width in synthetic bold glyphs with scaling.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:43 +09:00
Akihiro Sagawa
f0831ecd2f
gdi32: Add a helper function to calculate the glyph advance metric.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-15 23:49:39 +09:00
Akihiro Sagawa
79ab7456ed
gdi32: Fixup the internal ntmFlags for bitmap fonts.
...
The value is used not for APIs, but for our fake-bold implementation.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 11:48:47 +01:00
Akihiro Sagawa
37fdc50097
gdi32/tests: Add font advance tests for synthetic bold face with scaling.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 11:48:44 +01:00
Akihiro Sagawa
6cd42f3df7
gdi32/tests: Refactor test_fake_bold_font() to avoid code duplications.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-05 11:48:41 +01:00
Nikolay Sivov
1aa53bc470
gdi32: Initialize 'param' field (Coverity).
...
For consistency with the rest of the code, initialize both
'free' and 'param' fields.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-22 10:46:35 +01:00
Andrey Melnikov
d4d304f436
gdi32: Handle NULL filename in GetICMProfileA().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Andrey Melnikov <temnota.am@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-21 18:18:45 +01:00
Nikolay Sivov
f0223182af
gdi32/tests: Some tests for GetICMProfile().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-15 09:12:40 +01:00
Alexandre Julliard
eddc4609ec
gdi32: Fix StretchDIBits color mapping for monochrome bitmaps without a color table.
...
This is the equivalent of df924f6a8c
for
the StretchDIBits case.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-12-04 21:56:20 +09:00
Alexandre Julliard
89f12fc101
gdi32: Periodically flush a window surface if the app is continuously painting.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-27 20:53:31 +09:00
Sebastian Lackner
a1790df348
gdi32: Add check for NULL pointer in dibdrv_wglDescribePixelFormat.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-26 23:57:49 +09:00
Nikolay Sivov
0e92f07f41
gdi32/tests: Some empty string tests for GetTextExtentPoint.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-16 17:09:31 +09:00
Qian Hong
e50cd3b06b
gdi32: Initialize system font link registry.
...
Signed-off-by: Qian Hong <qhong@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 23:10:06 +09:00
Huw Davies
3d58c354ae
gdi32: Take into account the mask's offset.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-03 21:11:26 +09:00
Anton Baskanov
18dc14ed9a
gdi32: Return default palette entries from GetSystemPaletteEntries for non-palette-based devices.
...
Signed-off-by: Anton Baskanov <baskanov@gmail.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 19:19:09 +09:00
Dmitry Timoshkov
d774442e8d
gdi32: Fix heap corruption.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-21 00:25:34 +09:00
Sebastian Lackner
04bd68409a
gdi32: Use RtlIsCriticalSectionLockedByThread to check lock owner.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-11 13:47:40 +09:00
Nikolay Sivov
819d36786e
gdi32: Improve structure layout of data returned by GetFontRealizationInfo().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 13:00:32 +09:00
Aric Stewart
fc94e5dd5f
gdi32/tests: Mark Hebrew stock font test as different, like Arabic.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-06 00:01:56 +09:00
Michael Müller
cde2fbb08e
gdi32: Make BitBlt and StretchDIBits hotpatchable.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
2015-10-05 22:27:13 +09:00
Nikolay Sivov
6f7dfe2cea
gdi32: Implement GetFontFileInfo().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2015-10-05 22:27:11 +09:00
Aric Stewart
781b88b7c5
gdi32/tests: Expand tests skipped in Arabic to also skip in Hebrew.
...
Signed-off-by: Aric Stewart <aric@codeweavers.com>
2015-10-01 23:29:57 +09:00
Nikolay Sivov
7f4c158a39
gdi32: Return font ids from GetFontRealizationInfo().
2015-10-01 23:00:24 +09:00
Ken Thomases
a05cdaa1b8
gdi32: Antialias fake bold or italic fonts regardless of GASP table.
...
If the client requests a bold typeface of a font which doesn't actually provide
a bold typeface, Wine fakes it using FT_Outline_Embolden(). Likewise, it fakes
italic by apply a shear transform.
These techniques work passably when antialiasing is in effect. However, when
antialiasing is disabled at small sizes by the font's GASP table, the results
are horrible. The glyphs have many spurs or appear furry.
On the theory that fonts disable antialiasing via the GASP table at small sizes
because hinting should produce pixel-perfect results and that that rationale is
voided by the application of procedural bolding or italicizing, we ignore the
GASP table and always antialias for fake bold or italic fonts.
There is a new registry setting to disable this and revert to the previous
behavior:
[HKEY_CURRENT_USER\Software\Wine\Fonts]
"AntialiasFakeBoldOrItalic"="n"
Signed-off-by: Ken Thomases <ken@codeweavers.com>
2015-10-01 16:31:54 +09:00
Nikolay Sivov
af5884ffe5
gdi32/freetype: Handle fonts with broken usWinDescent values.
2015-10-01 16:29:40 +09:00
Nikolay Sivov
efb8afcfdc
gdi32/tests: Avoid excessive traces for fonts with OS/2 version 4 tables.
2015-09-11 16:05:23 +09:00
Alexandre Julliard
58fe3afff5
gdi32: Add an intermediate pointer to avoid a compiler warning.
2015-09-10 19:47:24 +09:00
Gerald Pfeifer
775de7922e
gdi32: Avoid two cases of shift overflow in get_glyph_indices.
2015-09-08 15:10:59 +09:00
Alistair Leslie-Hughes
8348c0ebe0
gdi32/tests: Add enhanced metafile GetPath test.
2015-09-01 21:12:10 +09:00
Nikolay Sivov
7889b17425
gdi32: Added GetFontRealizationInfo() export.
2015-09-01 19:28:16 +09:00
Nikolay Sivov
adb0f582e0
gdi32/tests: Add names to data structure GetFontRealizationInfo returns, explicitly test with older variant fields.
2015-09-01 19:27:20 +09:00
Huw Davies
5021e91940
gdi32/tests: 64-bit GetFontFileInfo may fail with error ERROR_NOACCESS.
2015-08-20 20:35:20 +09:00
Huw Davies
76c321d5e6
gdi32: Add tests for GetFontRealizationInfo, GetFontFileInfo and GetFontFileData.
2015-08-17 14:52:15 +09:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Daniel Lehman
22c51eeabf
gdi32: Check for NULL pointer in GetOutlineTextMetrics.
2015-07-28 13:41:46 +02:00
Dmitry Timoshkov
50b6b376cb
gdi32: EnumFontFamilies should enumerate substituted fonts only when directly asked for.
2015-07-17 19:29:10 +09:00
Dmitry Timoshkov
5289c9fd92
gdi32: Add a test for enumerating substituted fonts.
...
EnumFontFamilies(NULL) should not enumerate substituted fonts,
but EnumFontFamilies("MS Shell Dlg") should do.
2015-07-17 19:28:32 +09:00
Jactry Zeng
c015447d07
gdi32: Add multiple font replacement support.
2015-07-17 16:40:29 +09:00
Jactry Zeng
cb59350ed9
gdi32: Add a helper to map font replacement.
2015-07-17 16:40:29 +09:00
Nikolay Sivov
d5c9a8a57a
gdi32: Clarify offsets and sizes in vdmx table lookup code.
2015-06-30 14:36:41 +09:00
Nikolay Sivov
7ebdd58556
gdi32: Add a separate helper to load FT_Short values (Coverity).
2015-06-29 19:07:45 +09:00
Nikolay Sivov
885394bb0a
gdi32/freetype: Properly handle loading of FT_Long-sized types (Valgrind).
2015-06-22 19:16:48 +09:00
Huw Davies
c81ff0f8cf
gdi32/tests: Japanese Win 7 uses MS Shell Dlg as its default GUI font.
2015-06-19 20:14:38 +09:00
Huw Davies
002cf965e1
gdi32/tests: Fix Courier test on Arabic locales.
2015-06-18 21:41:02 +09:00
Nikolay Sivov
ce58518c6e
gdi32: Return GCP_USEKERNING if font has kerning pairs support.
2015-06-08 15:29:53 +09:00
Thomas Faller
9244cac3af
gdi32: Prevent unneeded operations by flag check.
2015-06-04 15:57:41 +09:00
Huw Davies
0c1f329053
gdi32: Prevent the underline / strikeout width getting rounded to zero.
2015-05-19 19:24:43 +09:00
Francois Gouget
150d920310
gdi32/tests: Silence some font traces that generate too many lines.
2015-05-11 15:19:04 +09:00
Patrick Rudolph
d2a91a3aed
gdi32: Add stub functions.
2015-04-17 17:32:46 +09:00
Bruno Jesus
5c323a540c
gdi32: Support negative count values in GetBitmapBits.
2015-04-08 16:23:49 +09:00
Thomas Faber
8a390c8661
gdi32: Avoid uninitialized variable use in EnumEnhMetaFile (MSVC).
2015-03-30 20:05:16 +09:00
Michael Stefaniuc
8293cf33e0
gdi32: Remove double parentheses, not a misplaced pair (PVS-Studio).
2015-03-06 20:32:00 +09:00
Alexandre Julliard
336be2f694
gdi32: Use shorter constants for byte and word masks to avoid warnings.
2015-03-04 21:50:35 +09:00
Michael Müller
e618ab65ed
gdi32: Fix arguments for OSMesaMakeCurrent when using 16 bit formats.
2015-02-26 20:10:08 +09:00
Thomas Faber
656bc70f80
gdi32/tests: Avoid variable length arrays (MSVC).
2015-02-17 22:28:14 +09:00
Ken Thomases
e9c36154e3
gdi32: Change an ERR to a WARN for fonts with too-long names.
...
The situation is commonplace on Macs and benign.
2015-02-16 19:18:39 +09:00
Aric Stewart
ecbda5686d
gdi32: Do not install fonts with a family name that is too long.
2015-01-20 16:34:22 +01:00
Nikolay Sivov
88202b3d9b
gdi32: Remove some useless returns.
2014-12-15 13:40:27 +01:00
Michael Stefaniuc
80218d19ef
gdi32/tests: Don't clear a variable before it goes out of scope (PVS-Studio).
2014-11-28 17:04:21 +01:00
Nikolay Sivov
0c507a1768
gdi32: Clarify read length values used with get_font_data().
2014-11-26 17:35:14 +01:00
André Hentschel
d83ae0ef40
gdi32: Remove unused function (Clang).
2014-11-25 19:49:36 +01:00
Nikolay Sivov
2f0a4a4425
gdi32: Remove undefs for names that are never defined.
2014-11-25 19:49:30 +01:00
André Hentschel
d9d1725295
gdi32: Remove unused string (Clang).
2014-11-20 22:32:04 +09:00
Amine Khaldi
b9f18b3431
gdi32/tests: Add basic tests for the handling of dwCount parameter in ExtCreateRegion.
2014-11-03 16:35:11 +09:00
Michael Stefaniuc
b5a405af2f
gdi32: Remove a basically unused variable (PVS-Studio).
2014-11-03 16:34:52 +09:00
André Hentschel
88e8102570
gdi32: Fix typo in a condition (PVS-Studio).
2014-10-28 14:05:19 +09:00
Alexandre Julliard
55f24da978
gdi32: Check the hatch masks instead of the rop masks for the null and mask optimization case.
2014-10-27 17:35:44 +09:00
Matteo Bruni
a71f25d239
gdi32/tests: Add a test for GetGlyphOutline with an insufficient buffer.
2014-10-09 18:24:53 +02:00
Matteo Bruni
112a7f7f97
gdi32: Don't overflow the buffer in GetGlyphOutline.
2014-10-09 18:24:47 +02:00
Gerald Pfeifer
ff05f2dec6
gdi32: Remove unused constant bit_fields_565.
2014-08-11 23:55:19 +02:00
Thomas Faber
07ca1afbd3
gdi32: Do not omit mandatory argument to WriteFile.
2014-07-14 17:22:39 +02:00
Qian Hong
887a6832bb
gdi32/tests: Improve font name localization tests by not requiring a strict language match.
2014-07-10 12:40:44 +02:00
Alexandre Julliard
18d410dec1
tools: Don't include wine/unicode.h if not necessary.
2014-07-08 17:00:22 +02:00
Alexander Almaleh
8762842cd3
gdi32: Fix XFORM.eM22 calculation in PlgBlt.
2014-06-26 21:19:25 +02:00
Frédéric Delanoy
2ab8729020
Assorted spelling/grammar fixes.
2014-06-20 12:19:31 +02:00
Alexandre Julliard
ec3f8a76d5
gdi32/tests: Silence some noisy traces.
2014-06-17 10:58:51 +02:00
Alexandre Julliard
7d21dd26c8
gdi32/tests: Remove some noisy traces.
2014-06-13 10:12:28 +02:00
Huw Davies
80a29e2d31
gdi32: CLIP_DFA_DISABLE should disable the font association mechanism.
2014-06-11 19:15:28 +02:00
Huw Davies
0987e77089
gdi32/tests: tmLastChar is solely governed by the last entry before 0xffff in the cmap.
2014-06-11 16:04:55 +02:00
Alex Henrie
0fb88f8d01
gdi32/tests: Add MS Shell Dlg tests.
2014-05-13 19:58:09 +02:00
Stefan Dösinger
a373c35371
gdi32/tests: Test RGBQUAD.rgbReserved in SetDIBColorTable.
2014-05-07 20:21:52 +02:00
Huw Davies
c66f0019ff
gdi32: In a Hebrew locale the last char of a symbol font is reported as 0xf896 rather than 0xf0ff.
2014-05-07 18:57:35 +02:00
Alex Henrie
d2dce849b5
gdi32: Simplify family_matches and face_matches.
2014-05-07 10:22:08 +02:00
Henri Verbeet
9016d1eda0
gdi32: Use FIELD_OFFSET to calculate the structure size in GetRegionData().
2014-05-06 13:51:40 +02:00
Akihiro Sagawa
b6ef7274c5
gdi32/tests: Make bmi structure const.
2014-05-02 16:29:03 +02:00
Frédéric Delanoy
2e5cb7aac8
Assorted spelling/grammar fixes.
2014-04-30 18:34:20 +02:00
Alexandre Julliard
47ed5655c5
gdi32/tests: Don't fetch the bits into the DIB itself.
2014-04-28 14:37:02 +02:00
Nikolay Sivov
8a3f3c0817
gdi32/dibdrv: Fix a clipped_rects leak (Valgrind).
2014-04-25 11:05:19 +02:00
Alexandre Julliard
955676bc05
gdi32: Pass the full DC handle to the hook in DeleteDC.
2014-04-14 09:38:01 +02:00
Austin English
d0fa8cbc74
gdi32/tests: Skip some tests if Times New Roman is not installed.
2014-04-11 19:12:31 +02:00
Thomas Faber
ff3d728d74
gdi32: Avoid variable-length arrays.
2014-03-25 13:55:45 +01:00
Akihiro Sagawa
f548ce29ed
gdi32/tests: GetGlyphOutlineA is broken for johab charset on windows.
2014-03-20 10:41:48 +01:00
André Hentschel
87d85357cd
gdi32/tests: GetCharABCWidthsA is broken for johab charset on windows.
2014-03-18 11:40:30 +01:00
Akihiro Sagawa
04e8b00ab0
gdi32: Improve the font enumeration order for complex script locales.
2014-03-12 20:27:43 +01:00
Henri Verbeet
cf5023bfff
gdi32/tests: Fix test_device_caps() on multihead setups.
...
Unfortunately this currently mostly fails on Wine.
2014-03-11 19:39:36 +01:00
Henri Verbeet
d8ec2b5d95
gdi32/tests: Fix test_window_dc_clipping() when the virtual screen origin is not (0, 0).
2014-03-11 19:39:35 +01:00
Akihiro Sagawa
1e7116ca9f
gdi32/tests: Avoid using GetGlyphIndices directly.
2014-02-19 16:39:29 +01:00
Akihiro Sagawa
efe7a9763f
gdi32/tests: Improve the font search method for test_EnumFontFamiliesEx_default_charset.
2014-02-19 16:39:29 +01:00
Akihiro Sagawa
feaf554778
gdi32/tests: Mark Win2k result as broken.
2014-02-19 16:39:28 +01:00
Frédéric Delanoy
0f2bed51bd
Assorted spelling fixes.
2014-02-10 15:47:29 +01:00
André Hentschel
540d1459f9
gdi32: Use boolean return values in boolean functions.
2014-01-30 14:51:36 +01:00
Alexandre Julliard
cf0e96c6d0
configure: Rename substituted variables to a standard _CFLAGS and _LIBS format.
2014-01-30 14:51:33 +01:00
Alexandre Julliard
db2be9dc0b
configure: Add a pkg-config check for fontconfig.
2014-01-30 14:51:30 +01:00
Alexandre Julliard
8aa64e3580
configure: Automatically expand _CFLAGS and _LIBS variables in all makefiles.
2014-01-30 12:42:56 +01:00
Akihiro Sagawa
e06d2dbc67
gdi32: Fix regression due to sub-pixel shift calculations fixes.
2014-01-27 14:13:28 +01:00
Alexandre Julliard
36301db4d3
gdi32/tests: Update a few more failing DIB cases.
2014-01-14 20:18:15 +01:00
Akihiro Sagawa
f6475ace5f
gdi32: Improve vertical writing metrics.
2014-01-13 17:37:38 +01:00
Akihiro Sagawa
a221654aae
gdi32/tests: Add tests for vertical writing metrics.
2014-01-13 17:37:37 +01:00
Akihiro Sagawa
f6bc356860
gdi32: Fix ABC metrics for rotated font.
2014-01-13 17:37:35 +01:00
Akihiro Sagawa
b8f22f4755
gdi32/tests: Add more GetCharABCWidths tests for rotated font.
2014-01-13 17:37:34 +01:00
Akihiro Sagawa
e9188970a7
gdi32: Fix sub-pixel shift calculations for vertical writing.
2014-01-13 17:37:33 +01:00
Akihiro Sagawa
d33602564b
gdi32: Use the vertAdvance value for cellIncX if vertical metrics are available.
2014-01-13 17:37:32 +01:00
Akihiro Sagawa
ebccff8225
gdi32: Relax vertical face requirements.
2014-01-09 18:07:15 +01:00
Akihiro Sagawa
142a0f7af0
gdi32: Fix DBCS mask value in GetFontLanguageInfo.
2014-01-09 18:06:11 +01:00
Akihiro Sagawa
ab32c657ed
gdi32: Use defined names in GetFontLanguageInfo.
2014-01-09 18:06:05 +01:00
Frédéric Delanoy
91f2435469
Assorted spelling fixes.
2014-01-09 17:39:59 +01:00
Alexandre Julliard
d1463cc44b
gdi32/tests: Run all DIB tests with a hardcoded palette.
2014-01-09 17:39:53 +01:00
Alexandre Julliard
eba26475fb
gdi32/tests: Don't test unreliable palette entries.
2014-01-09 17:39:52 +01:00
Frédéric Delanoy
e7594272fe
gdi32: Use BOOL type where appropriate.
2014-01-06 17:14:32 +01:00
Alexandre Julliard
99ef0d6ff0
makefiles: Get rid of the MAKE_TEST_RULES variable.
2014-01-02 12:13:16 +01:00
Alexandre Julliard
5e7416e5c8
makefiles: Get rid of the MAKE_DLL_RULES variable.
2014-01-02 12:08:18 +01:00
André Hentschel
4573aecf5b
gdi32: Fix a comment.
2014-01-02 11:52:11 +01:00
Francois Gouget
b6ba53e572
gdi32/tests: Fix a flood of failures on Windows XP SP1 and 2003 pre-SP1.
2014-01-01 11:45:00 +01:00
Alexandre Julliard
200eb1d30b
gdi32: Trigger the display driver load for CreateCompatibleDC(0).
2013-12-30 19:01:53 +01:00
Alexandre Julliard
7c3bb6070a
gdi32: Don't bother returning the driver module from DRIVER_load_driver.
2013-12-30 19:01:52 +01:00
Alexandre Julliard
64b21eee94
makedep: Generate rules for TrueType fonts in maintainer mode.
2013-12-27 14:31:51 +01:00
Frédéric Delanoy
cc97a2385a
gdi32/tests: Constify a character string.
2013-12-23 11:54:31 +01:00
Alexandre Julliard
4f3d71cef3
makefiles: Get rid of the no longer used PO_SRCS variables.
2013-12-15 10:23:04 +01:00
Akihiro Sagawa
a88a121059
gdi32: Use ANSI character code as glyph index for bitmap fonts.
2013-12-11 18:16:59 +01:00
Akihiro Sagawa
882398b0a9
gdi32: Return ANSI character code as glyph index for bitmap fonts.
2013-12-11 16:30:22 +01:00
Aric Stewart
ff0717d004
gdi32: Use vertical orientation table to determine rotation.
2013-12-04 21:18:55 +01:00
Aric Stewart
742cde4fab
tools: Build vertical orientation table.
...
Based on data related to UTR #50 Unicode Vertical Text Layout.
2013-12-04 16:34:04 +01:00
Frédéric Delanoy
5ba7f79bad
Assorted spelling fixes.
2013-12-03 19:41:53 +01:00
Alexandre Julliard
67f9b6e3c5
configure: Update FreeType configure checks for the changed headers location.
2013-11-30 11:55:26 +01:00
Alexandre Julliard
456c8f435a
makefiles: Remove the no longer needed EXTRASUBDIRS variables.
2013-11-09 22:10:52 +01:00
Frédéric Delanoy
259cb3c8cd
gdi32/tests: Use BOOL type where appropriate.
2013-11-07 13:13:12 +01:00
Frédéric Delanoy
adee328a50
gdi32: Use BOOL type where appropriate.
2013-11-07 13:13:05 +01:00
Frédéric Delanoy
4da17dbf5d
gdi32/tests: Align return type from SetVirtualResolution prototype with its definition.
2013-11-07 13:12:42 +01:00
Alexandre Julliard
5756ee09f3
makefiles: Add makedep pragmas for rc files that contain translations.
2013-11-05 20:38:19 +01:00
Alexandre Julliard
3bd1e59cfb
gdi32: Remove no longer used default driver name.
2013-10-30 09:47:22 +01:00
Alexandre Julliard
e650da3570
gdi32: Get rid of the driver module in the DC.
2013-10-29 12:51:26 +01:00
Alexandre Julliard
74efeab238
gdi32: Trigger creation of the desktop window when the display driver is needed.
2013-10-29 12:51:26 +01:00
Alexandre Julliard
9675aa173a
gdi32: Allow user32 to specify the display driver to use.
2013-10-29 12:51:26 +01:00
Akihiro Sagawa
99ceb599bb
gdi32: Synthesize bold glyphs for outline fonts.
2013-10-21 20:23:55 +02:00
Akihiro Sagawa
cab2cacb8e
gdi32: Adjust fake bold outline font metrics.
2013-10-21 20:23:55 +02:00
Akihiro Sagawa
b6666014c5
gdi32/tests: Add tests for fake bold outline fonts.
2013-10-21 20:23:54 +02:00
Alexandre Julliard
67d452d8ac
gdi32: Always initialize the em_scale variable.
2013-10-21 17:08:54 +02:00
Alexandre Julliard
3e88582a78
gdi32: Determine the virtual resolution dynamically if it hasn't been set.
2013-10-17 12:12:48 +02:00
Dmitry Timoshkov
87ae85f1b4
gdi32/tests: Enable gdi32 tests compilation with __WINESRC__ defined.
2013-10-17 10:47:00 +02:00
Dmitry Timoshkov
8c22e66217
gdi32/tests: Fix font tests compilation with __WINESRC__ defined.
2013-10-17 10:46:51 +02:00
Dmitry Timoshkov
f81c2e1caf
gdi32/tests: Fix pen tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
0c63f40bdc
gdi32/tests: Fix metafile tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
c58072833e
gdi32/tests: Fix GDI object tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
85b42085a4
gdi32/tests: Fix DIB tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
120ee4e058
gdi32/tests: Fix DC tests compilation with __WINESRC__ defined.
2013-10-16 11:41:21 +02:00
Dmitry Timoshkov
dd579e4c78
gdi32/tests: Fix brush tests compilation with __WINESRC__ defined.
2013-10-16 11:41:20 +02:00
Dmitry Timoshkov
c99b264300
gdi32/tests: Fix bitmap tests compilation with __WINESRC__ defined.
2013-10-16 11:41:20 +02:00
Dmitry Timoshkov
352c8d0215
tools/winapi: Remove OLDFONTENUMPROC from the list of tested types.
2013-10-16 11:41:20 +02:00
Frédéric Delanoy
28be1f7853
gdi32: Use BOOL type where appropriate.
2013-10-14 10:44:31 +02:00
Frédéric Delanoy
98e4c98eff
gdi32: Use BOOL type where appropriate.
2013-10-10 10:44:45 +02:00
Akihiro Sagawa
0b58ab7ac9
gdi32/tests: Skip linked font like SimSun-ExtB in fixed-pitch font selection.
2013-10-09 10:08:06 +02:00
Alexandre Julliard
6fb92b79fa
gdi32: Remove freetype compatibility cruft that doesn't compile.
2013-10-07 13:32:06 +02:00
Akihiro Sagawa
88acc9c899
gdi32: Don't modify output glyph metrics unless the function succeeds.
2013-10-03 20:06:51 +02:00
Frédéric Delanoy
3b2f85e0b6
gdi32/tests: Use BOOL type where appropriate.
2013-10-03 12:54:23 +02:00
Akihiro Sagawa
042b39a82b
gdi32: Fix the B spacing value of empty glyph.
2013-10-02 20:17:03 +02:00
Michael Stefaniuc
0e681027a2
tests: Compile the tests by default with -D__WINESRC__.
2013-10-02 11:04:02 +02:00
Akihiro Sagawa
db86409db6
gdi32: Return fake BBox when requesting empty glyph metrics.
2013-10-01 19:26:17 +02:00
Akihiro Sagawa
b138c36c11
gdi32: Fix empty glyph handling in the dib driver.
2013-10-01 19:26:11 +02:00
Akihiro Sagawa
24e0e4d150
gdi32/tests: Fix copy&paste issues related to gmBlackBoxY.
2013-10-01 19:25:25 +02:00
Francois Gouget
d3672524ed
Assorted spelling fixes.
2013-10-01 19:09:08 +02:00
Akihiro Sagawa
e2bce62a6d
gdi32: Return GDI_ERROR when requested empty glyph bitmaps.
2013-09-26 19:56:57 +02:00
Akihiro Sagawa
31a6fce46b
gdi32: Fix empty glyph handling.
2013-09-23 20:32:28 +02:00
Akihiro Sagawa
cc7b39681d
gdi32/tests: Add more empty glyph tests.
2013-09-23 20:32:23 +02:00
Michael Stefaniuc
7589bbeee4
gdi32: Avoid using CONST.
2013-09-23 11:53:59 +02:00
Aric Stewart
3f4ef58b0f
gdi32: ABC value signs remain the same despite any changes in layout direction or viewport.
2013-09-12 21:31:09 +02:00
Alexandre Julliard
69abf20fcd
gdi32: Add a check for overflow in DIB dimensions.
2013-09-11 18:33:06 +02:00
Alexandre Julliard
08e82d4686
gdi32: Add more helpers for converting font sizes to logical coordinates.
2013-09-11 18:33:05 +02:00
Aric Stewart
4a300d2423
gdi32: GetCharWidth32A/W return positive widths for all layouts and various DC transforms.
2013-09-11 18:33:04 +02:00
Aric Stewart
5aa1f6b7a5
Unicode Private Use Area is also rotated by tategaki.
2013-09-09 22:09:58 +02:00
Ralf Habacker
39629a3d35
gdi32: Fixed Rectangle() rotation with GM_ADVANCED graphics mode in dib driver.
2013-09-05 20:58:24 +02:00
Huw Davies
774f57ca24
gdi32/tests: Add vdmx tests.
2013-08-28 16:14:40 +02:00
Huw Davies
7310bdb498
gdi32/tests: Mark some tests as exact.
2013-08-28 16:14:40 +02:00
Huw Davies
2f20032dd3
gdi32: Skip vdmx records with charset == 0.
2013-08-28 16:14:40 +02:00
Huw Davies
d089ca67e3
gdi32: Reset ppem to zero if we fail to find a matching height.
2013-08-28 16:14:39 +02:00
Huw Davies
bb5aa8862c
Revert "gdi32: Do not use VDMX for mapping of negative font heights, based on a test case.".
...
This reverts commit 7d3cb53cf1
.
2013-08-28 16:14:39 +02:00
Huw Davies
18edb16ace
gdi32/tests: Add an option to match metrics exactly.
2013-08-28 16:14:38 +02:00
Huw Davies
820c14cafc
gdi32/tests: Separate out the metrics checking code.
2013-08-28 16:14:38 +02:00
Huw Davies
2f76829c84
gdi32/tests: Split write_ttf_file() into a resource loader and tmp file writer.
2013-08-28 16:14:37 +02:00
Michael Stefaniuc
4f94913e04
gdi32/tests: Replace FIELD_OFFSET with offsetof for the sake of consistency.
2013-08-19 13:48:43 +02:00
Michael Stefaniuc
14e20162f9
gdi32/tests: Use offsetof instead of sizeof on structs with VLA.
2013-08-19 13:30:43 +02:00
Michael Stefaniuc
da425748bb
gdi32/tests: Use the standard way of allocating a struct with VLA on the stack.
2013-08-19 13:30:11 +02:00
Alexandre Julliard
87c2581c54
gdi32: Use Microsoft and Unicode encodings in priority for font names.
2013-08-16 19:11:33 +02:00
Ken Thomases
1f2d556373
gdi32: Link against AppKit on the Mac to avoid later crash in the Mac driver.
2013-08-15 16:12:58 +02:00
Akihiro Sagawa
7444c1d6b0
gdi32: Adjust bitmap font height when it has an external leading.
...
This fixes wine test failures in Japanese locale.
2013-07-31 22:26:56 +02:00
Akihiro Sagawa
dc241a8371
gdi32: Add a helper function to get bitmap size.
2013-07-31 22:26:56 +02:00
Akihiro Sagawa
01280cff91
Revert "gdi32: Use the default character when the glyph is missing.".
...
This reverts commit 15aa8daf64
.
It breaks the default character rendering in some bitmap fonts, e.g. Fixedsys.
2013-07-31 22:26:56 +02:00
Huw Davies
cf9cb6c118
gdi32: Ignore max_extent if nfit is NULL.
2013-07-22 17:16:04 +02:00
André Hentschel
20bf02910b
gdi32: Remove superfluous cast.
2013-07-01 19:51:23 +02:00
Alexandre Julliard
60d29d1d0d
gdi32: Don't load linked fonts only to look up control characters.
2013-07-01 19:51:17 +02:00
Alexandre Julliard
a973df3324
gdi32: Fix off-by-one error in the extent of arcs when the size is even.
2013-07-01 19:51:14 +02:00
Alexandre Julliard
e4300d6165
gdi32: Cache the font smoothing parameters.
2013-06-24 21:52:28 +02:00
Marcus Meissner
ff1bd6da35
gdi32: Close handle in mfdrv (Coverity).
2013-06-24 11:46:40 +02:00
Marcus Meissner
1cf9939dc0
gdi32: Close handle in error path (Coverity).
2013-06-24 11:46:34 +02:00
Aric Stewart
37d216cc56
gdi32/tests: Add a test case for vertical fonts enumeration order.
2013-06-20 22:14:35 +02:00
Alexandre Julliard
e531306f7a
gdi32: Put vertical font families after their horizontal counterpart in the font list.
2013-06-20 22:14:35 +02:00
Alexandre Julliard
102b2785f4
gdi32: Add support for loading name strings in Apple Unicode format.
2013-06-20 22:14:35 +02:00
Alexandre Julliard
3d0f044883
gdi32: Add support for loading name strings in Macintosh format.
2013-06-20 22:14:34 +02:00
Alexandre Julliard
b05b637c91
gdi32: Improve font name localization by not requiring a strict language match.
2013-06-20 22:14:32 +02:00
Dmitry Timoshkov
924fad9d25
gdi32: ExtSelectClipRgn(hdc, 0, RGN_DIFF) is supposed to fail.
2013-06-18 10:40:34 +02:00
Dmitry Timoshkov
705a0f0238
gdi32: Scale default GUI fonts to match screen resolution changes.
2013-06-17 19:30:49 +02:00
Dmitry Timoshkov
6834a44dc4
gdi32/tests: Add a test for default font height scaling with screen resolution changes.
2013-06-17 19:30:49 +02:00
Dmitry Timoshkov
288f3be439
gdi32/tests: Skip the bitmap font max width test on not 96 dpi resolutions.
2013-06-17 19:30:48 +02:00
Aric Stewart
f5ec65ad8e
gdi32: Update Arabic font defaults.
...
With help from Mosaab Alzoubi <moceap@hotmail.com>.
2013-06-11 18:07:59 +02:00
Aric Stewart
ceb81eee20
gdi32: Turn off tategaki if the unicode code point is outside of the rotated ranges.
2013-06-05 20:30:58 +02:00
Matěj Laitl
84c07af48e
gdi32: More specific error messages in osmesa opengl initialization.
2013-05-30 20:19:32 +02:00
Aric Stewart
3108f3cf3d
gdi32/tests: Do not try to test OS/2 win metrics on non-windows fonts.
2013-05-29 18:12:54 +02:00
Aric Stewart
72f584aef8
gdi32: Fix up glyph metrics for tategaki glyphs.
2013-05-28 19:42:24 +02:00
Aric Stewart
cf891b04a0
gdi32: Fix Tategaki rotation.
...
Tategaki does not ignore orientation rotation, instead it always
rotates affect glyphs by 90 degrees inside their cell.
2013-05-28 19:42:15 +02:00
Akihiro Sagawa
15aa8daf64
gdi32: Use the default character when the glyph is missing.
2013-05-22 19:32:26 +02:00
Akihiro Sagawa
f6ea5c8a0f
gdi32: Add a helper to get the default character index.
2013-05-22 19:32:23 +02:00
Aric Stewart
1ff63bb893
gdi32: Vertical glyphs can be written tategaki even without a vertical GSUB feature.
...
It is only based on the presence of the '@' character in the font name.
2013-05-21 12:07:43 +02:00
Aric Stewart
accad0957c
gdi32: Load the vertical feature when loading the GSUB table.
2013-05-21 12:07:30 +02:00
Aric Stewart
70cdd2ff9a
gdi32: Vertical glyph replacements are not applied in GetGlyphOutline if glyph is specified by index.
2013-05-21 12:06:42 +02:00
Aric Stewart
546c587036
gdi32: GetGlyphIndices does substitute glyph.
2013-05-20 12:06:25 +02:00
Aric Stewart
adfa3c0c57
gdi32/tests: Update the vertical font to be a proper windows vertical font.
2013-05-20 12:06:21 +02:00
Akihiro Sagawa
8f8363ede6
gdi32: Ignore the lfHeight value when it exceeds the limit.
2013-05-08 14:29:06 +02:00
Alexandre Julliard
100806e473
configure: Use the pkg-config helper macro for freetype.
2013-05-03 20:45:32 +02:00
Sam Edwards
21dbe1c949
gdi32: Clip font glyphs to fit within text metrics.
2013-05-02 12:32:53 +02:00
Sam Edwards
a7dee44c24
gdi32: Improve glyph positioning for the subpixel case in get_glyph_outline.
2013-05-02 12:31:13 +02:00
Sam Edwards
53ec9b3291
gdi32: Prevent another possible buffer overflow in get_glyph_outline.
2013-04-30 12:34:27 +02:00
Alexandre Julliard
31f0079f1c
gdi32: Convert the edges list to a standard list in CreatePolyPolygonRgn.
2013-04-23 15:34:53 +02:00
Alexandre Julliard
6a9b775f36
gdi32: Add helper functions to manage blocks of points in CreatePolyPolygonRgn.
2013-04-22 21:57:32 +02:00
Alexandre Julliard
a34c6f436d
gdi32: Replace some macros by inline functions in the region code.
2013-04-22 21:40:05 +02:00
Sam Edwards
147765a505
gdi32: Prevent possible buffer overflows in get_glyph_outline.
2013-04-19 10:42:36 +02:00
André Hentschel
741f7b6f0c
gdi32: Copy gamma ramp validation from winex11 to make it driver independent.
2013-04-17 16:31:31 +02:00
Akihiro Sagawa
f50e649578
gdi32/tests: Fix tests for fixed-pitch full-width character advance. It's double of tmAveCharWidth.
...
For instance, 19 ppem "VL Gothic" on Windows, the advance value is 10
for half-width characters, but 18 for full-width characters. In this
case, tmAveCharWidth is 9. Thus using tmAveCharWidth is reasonable.
2013-04-04 19:39:00 +02:00
Akihiro Sagawa
e5f1508031
gdi32: Improve fixed-pitch advance calculation as well as outline text metrics.
2013-04-04 19:38:46 +02:00
Akihiro Sagawa
3a96891061
gdi32: Improve outline text metrics calculation, especially if unitsPerEm is not power of 2.
2013-04-04 19:38:43 +02:00
Akihiro Sagawa
786b931e45
gdi32: Introduce macros to calculate outline text metrics.
2013-04-04 19:38:40 +02:00
Alexandre Julliard
2f48b12c57
gdi32: Use the Mac driver by default.
2013-04-02 12:47:28 +02:00
Huw Davies
5713311657
gdi32: Printer drivers don't use the character extra spacing if lpdx is supplied.
2013-03-26 17:07:37 +01:00
Dmitry Timoshkov
8744c10a38
gdi32: Add support for disk-based metafiles to GetMetaFileBitsEx.
2013-03-25 13:56:09 +01:00
Alexandre Julliard
591a31ba67
gdi32: Increment the face refcount when loading the same font file multiple times.
2013-03-04 11:36:04 +01:00
Alexandre Julliard
93c1389b7c
gdi32: Store the font stat information when loading it.
2013-03-04 11:35:28 +01:00
Byeongsik Jeon
1c846e70f0
gdi32: Fix the GdiGetCodePage() support ANSI_CHARSET font associated charset.
2013-02-27 19:23:44 +01:00
Alexandre Julliard
eaf78eadf0
gdi32/tests: Define the required Windows version before including anything.
2013-02-18 14:51:04 +01:00
Dmitry Timoshkov
e069662c0c
gdi32: SelectClipPath should update actual clipping region for a EMF DC.
2013-02-15 11:50:32 +01:00
Dmitry Timoshkov
88b9ae1ec2
gdi32: ExcludeClipRect should update actual clipping region for a EMF DC.
2013-02-14 11:14:47 +01:00
Dmitry Timoshkov
47b89a8fac
gdi32: IntersectClipRect should update actual clipping region for a EMF DC.
2013-02-14 11:14:45 +01:00
Dmitry Timoshkov
756736ae42
gdi32: OffsetClipRgn should update actual clipping region for a EMF DC.
2013-02-14 11:14:43 +01:00
Dmitry Timoshkov
498b18f25f
gdi32: Add more EMF clipping tests.
2013-02-14 11:14:41 +01:00
Dmitry Timoshkov
9a2688e690
gdi32: Make sure that actual clipping region is updated for a EMF DC.
2013-02-13 16:13:54 +01:00
Akihiro Sagawa
9aa8300f99
gdi32: Ensure a fixed-pitch full-width character has double advance of a half-width character.
2013-02-07 15:53:48 +01:00
Alexandre Julliard
0d7108c629
gdi32: Return the correct module handle for the initial display driver load.
2013-02-06 12:21:33 +01:00
Dmitry Timoshkov
753c9362c1
gdi32: Add a bunch of tests for CreateDC/ResetDC with a custom DEVMODE.
2013-02-05 10:56:47 +01:00
Dmitry Timoshkov
c7d33e1d44
gdi32: Add support for 16-bit QUERYESCSUPPORT queries.
2013-02-05 10:54:23 +01:00
Stefan Leichter
83846cd131
gdi32: Add stub for GetFontResourceInfoW.
2013-01-22 20:02:00 +01:00
Alexandre Julliard
f496a5a0e6
gdi32: Fix copy/paste typo in get_char_positions_indices.
2013-01-22 12:13:19 +01:00
Andrew Talbot
f98f70fb41
gdi32: Avoid signed-unsigned integer comparisons.
2013-01-21 12:51:15 +01:00
Alexandre Julliard
0b10f0b854
gdi32: Initialize fontconfig even when fonts are cached.
2013-01-15 14:30:36 +01:00
Alexandre Julliard
8681774a4f
gdi32: Support for hidden flag of CreateScalableFontResource.
2013-01-15 14:30:35 +01:00
Alexandre Julliard
46532e8d8a
gdi32: Add support for .fot files in RemoveFontResource.
2013-01-15 14:30:35 +01:00
Alexandre Julliard
4fc8bf18f3
gdi32: Implement RemoveFontResource.
2013-01-15 14:30:22 +01:00
Alexandre Julliard
4d72b082ed
gdi32: Keep the main font cache key open.
2013-01-15 14:30:09 +01:00
Alexandre Julliard
ab0ad4f5d8
gdi32: Add helper functions to compute font paths for AddFontResource.
2013-01-15 14:30:09 +01:00
Alexandre Julliard
0f40a031e7
gdi32: Store the vertical flag together with the other font flags.
2013-01-15 14:30:04 +01:00
Alexandre Julliard
f90696e813
gdi32: Store the full flags in the face object, and add a flag for fonts added through AddFontResource.
2013-01-15 14:29:12 +01:00
Alexandre Julliard
865078b05a
gdi32: Add ref counting to the face and family objects.
2013-01-14 15:19:14 +01:00
Alexandre Julliard
634840579c
gdi32: Avoid creating a family object just to retrieve the font data.
2013-01-14 14:48:20 +01:00
Alexandre Julliard
227fc26e63
gdi32: Use the correct physdev for each driver call (Coverity).
2012-12-27 20:53:25 +01:00
Alexandre Julliard
57f84bc7bb
gdi32: Avoid duplicate computation of text extents in ExtTextOut.
2012-12-20 15:08:31 +01:00
Alexandre Julliard
0da8c0d92e
gdi32: Compute the extents of the whole string at once in ExtTextOut.
2012-12-20 14:32:58 +01:00
Alexandre Julliard
bbf3e8621a
gdi32: Remove from the GetTextExtentExPoint entry points parameters that can't be handled by the driver.
2012-12-18 19:26:25 +01:00
Alexandre Julliard
1c2f23cf2f
gdi32: Add helper functions for GetTextExtentExPoint and fix handling of text justification.
2012-12-18 19:21:44 +01:00
Andrew Talbot
0653f7a64d
gdi32: Indentation fix.
2012-12-17 11:48:03 +01:00
Alexandre Julliard
5215895a11
gdi32: Support wrongly ordered rectangles in RectVisible.
2012-12-14 17:37:41 +01:00
Alexandre Julliard
456b4c876e
gdi32: Add a helper function to order the points of a rectangle.
2012-12-14 17:37:33 +01:00
Alexandre Julliard
ff5d68ccb2
gdi32: Fix handling of rotation matrices in GetGlyphOutline.
2012-12-14 13:12:19 +01:00
Alexandre Julliard
351e58318a
gdi32: Fix text justification to properly handle logical coordinates.
2012-12-11 20:45:38 +01:00
Alexandre Julliard
a3cf48afad
gdi32: Add a level of pointers to the glyph cache to avoid the need for locking individual glyphs.
2012-12-11 12:03:33 +01:00
Alexandre Julliard
b057c5f140
gdi32: Fix handling of font orientation in advanced graphics mode.
2012-12-10 17:36:23 +01:00
Alexandre Julliard
75fff47f94
gdi32: Add ref counting to the font objects and simplify the cache management.
2012-12-10 13:42:23 +01:00
Alexandre Julliard
06dced4eaa
gdi32: Keep track of the number of fonts on the unused list.
2012-12-07 14:39:49 +01:00
Alexandre Julliard
d3c128346b
gdi32: Simplify list processing by using the LIST_FOR_EACH_ENTRY macro.
2012-12-07 14:29:28 +01:00
Francois Gouget
166e7c7381
gdi32: Make make_rgb_colorref() static.
2012-12-07 12:35:29 +01:00
Alexandre Julliard
8cca615f02
gdi32: Don't store a font pointer in the generic part of the DC.
2012-12-05 21:13:54 +01:00
Alexandre Julliard
baedf81b11
gdi32: Don't create a separate font handle for linked fonts.
2012-12-05 21:13:29 +01:00
Alexandre Julliard
6144824965
gdi32: Remove special handling for linked fonts in ExtTextOut.
2012-12-05 20:23:50 +01:00
Alexandre Julliard
491123e17b
gdi32: Support getting character codes instead of glyphs in ExtTextOut for the path driver.
2012-12-05 17:46:53 +01:00
Alexandre Julliard
78626cdbaa
gdi32: Support caching glyphs by character code and not only by glyph index.
2012-12-05 17:46:47 +01:00
Alexandre Julliard
e8b6701fe1
gdi32: Store and return ABC metrics from get_glyph_outline.
2012-12-04 18:14:56 +01:00
Alexandre Julliard
3a4864714d
gdi32: Don't copy unnecessary rows when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
db3a8d6c0c
gdi32: Avoid binary ROPs when shrinking in DELETESCANS mode.
2012-12-03 18:24:46 +01:00
Alexandre Julliard
6f6e919e2b
gdi32: Avoid binary ROPs when stretching in DELETESCANS mode.
2012-12-03 18:24:45 +01:00
Alexandre Julliard
2d3385eec9
gdi32: Avoid computing grayscale glyph intensities when not needed.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
abdce5c2c8
gdi32: Use the faster memset for vertical gradients.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
d10d95608c
gdi32: Make blend_subpixel inline.
2012-11-30 19:12:17 +01:00
Alexandre Julliard
a796ad5ed8
gdi32: Avoid creating a copy of the pattern bits for the R2_COPYPEN case.
2012-11-29 19:40:19 +01:00
Alexandre Julliard
7339308e16
gdi32: Add faster implementation of the pattern_rects primitive when we don't need an AND mask.
2012-11-29 19:40:13 +01:00
Alexandre Julliard
2aff4696b6
gdi32: Add assembly helpers for filling solid rectangles.
2012-11-29 12:31:13 +01:00
Alexandre Julliard
cb7917f9c8
gdi32: Add faster implementations of the solid_rects primitive for the common case of R2_COPYPEN.
2012-11-29 12:17:55 +01:00
Alexandre Julliard
6050a025bb
gdi32: Add a font glyph cache in the DIB engine.
2012-11-28 12:22:40 +01:00
Alexandre Julliard
4ad5287496
gdi32: Fully reset the DC state before deleting it.
2012-11-27 19:45:30 +01:00
Huw Davies
e6f1930116
gdi32: Simplify the point type checking logic.
2012-11-27 17:00:05 +01:00
Alexandre Julliard
1c4cf1a2db
gdi32: Fix coordinate mapping of arc limits.
2012-11-19 16:35:23 +01:00
Alexandre Julliard
ebaf5ea176
gdi32: Don't load bitmap glyphs when using subpixel rendering in GetGlyphOutline.
2012-11-15 21:21:39 +01:00
Piotr Caban
4f07c49547
gdi32: Added GetGlyphOutlineW tests on glyph that contains empty contour.
2012-11-13 16:57:02 +01:00
Piotr Caban
b696558f04
gdi32: Ignore contours containing one point in get_glyph_outline function.
2012-11-13 16:55:55 +01:00
Alexandre Julliard
af3f3cb1b2
gdi32: Avoid using the system GL headers.
2012-11-07 18:12:03 +01:00
Alexandre Julliard
86c41dc468
gdi32: Take into account the FontSmoothing key for anti-aliasing.
2012-11-06 16:02:27 +01:00
Alexandre Julliard
ff8647ea39
gdi32: Avoid opening the desktop registry key multiple times.
2012-11-06 16:02:19 +01:00
Alexandre Julliard
7fdba1f3dd
gdi32: Use the fontconfig anti-aliasing setup even for non-fontconfig fonts.
2012-11-06 11:47:28 +01:00
Alexandre Julliard
ddba05547f
gdi32: Get rid of the non-standard flags in GetRasterizerCaps.
2012-11-06 11:00:48 +01:00
Alexandre Julliard
5c02c352d9
gdi32: Determine the default anti-aliasing parameters in the null driver SelectFont entry point.
2012-11-05 16:15:25 +01:00
Alexandre Julliard
9d888b371f
gdi32: Set the font anti-aliasing flags from the fontconfig information if available.
2012-11-02 19:47:09 +01:00
Alexandre Julliard
123da6f888
gdi32: Move checking of the subpixel support and gasp flags to freetype.c.
2012-11-02 17:21:45 +01:00
Alexandre Julliard
9cdb0e1ca6
gdi32: Disable anti-aliasing when necessary in the various drivers.
2012-11-02 16:41:26 +01:00
Alexandre Julliard
ccc034c27e
gdi32: Store the anti-aliasing flags in the DC when selecting a font.
2012-11-02 16:41:23 +01:00
Alexandre Julliard
6164d533a9
gdi32: Add a parameter to return anti-aliasing flags in the SelectFont driver entry point.
2012-11-02 16:41:21 +01:00
Alexandre Julliard
a04f73808e
gdi32: Store the fontconfig anti-aliasing flags for each font.
2012-11-01 15:09:16 +01:00
Alexandre Julliard
24cdd74c6f
gdi32: Store the font file name in Unicode in the font cache.
2012-11-01 15:09:15 +01:00
Alexandre Julliard
c1f8a0bf61
gdi32: Avoid some redundant registry calls while loading the font cache.
2012-11-01 15:09:15 +01:00
Huw Davies
9247328371
gdi32: Implement sub-pixel glyph smoothing.
2012-10-30 18:09:00 +01:00
André Hentschel
0f7bc2d8cc
gdi32: Avoid memory leaks (coverity).
2012-10-29 10:34:54 +01:00
Huw Davies
7cd8dc6bf2
gdi32: Use a symbol charmap if all else fails.
2012-10-26 16:29:29 +02:00
Huw Davies
8ef70039d3
gdi32: Simplify the code for charmap selection.
2012-10-26 16:29:26 +02:00
Alexandre Julliard
86abd84167
gdi32: Fix mapping of symbol font glyphs even when no encoding is specified.
2012-10-25 11:54:33 +02:00
André Hentschel
f5df798611
gdi32: Fix free of address-of expression (coverity).
2012-10-25 11:48:15 +02:00
André Hentschel
cf95218f08
gdi32: Fix copy-paste error (coverity).
2012-10-24 19:38:20 +02:00
Alexandre Julliard
4396a79ede
gdi32: Add a DC hook flag to reset the DC state.
2012-10-24 18:24:03 +02:00
Alexandre Julliard
77c1856d43
gdi32: Remove an unused DC field.
2012-10-24 18:22:29 +02:00
Alexandre Julliard
5c1a752d61
gdi32: Export a function to retrieve the module handle of the graphics driver for a DC.
2012-10-22 15:16:00 +02:00
Alexandre Julliard
b0ba7c765e
gdi32: Update the ref count of stock objects when deleting a DC.
2012-10-21 12:18:46 +02:00
Huw Davies
aa9827b08e
gdi32: Move the string rendering code to a common function.
2012-10-19 18:09:52 +02:00
Huw Davies
e6c349d69f
gdi32: Use the helper to draw the glyphs.
2012-10-19 18:09:49 +02:00
Huw Davies
3e7517328d
gdi32: Pass individual x, y co-ords to draw_glyph rather than a POINT.
2012-10-19 18:09:46 +02:00
Huw Davies
3ef520650c
gdi32: Pass a dib_info structure to draw_glyph.
2012-10-19 18:09:44 +02:00
Qian Hong
648a8ce40e
gdi32/tests: Fixed typo in localized name tests.
2012-10-19 11:18:20 +02:00
Qian Hong
16f2a1948e
gdi32/tests: Declared system_lang_id as a global variable.
2012-10-19 11:18:11 +02:00
Qian Hong
f9546329b6
gdi32/tests: Marked EnumFontFamiliesEx_default_charset test on Arabic locale as broken.
2012-10-19 11:17:59 +02:00
Qian Hong
284b382aba
gdi32/tests: Skip some broken bitmap font metrics tests on Arabic locale.
2012-10-19 11:17:47 +02:00
Qian Hong
b31dababde
gdi32/tests: Fixed broken value in bitmap font metrics on Arabic locale.
2012-10-19 11:17:38 +02:00
Qian Hong
ec9166b1ac
gdi32/tests: Fixed broken bitmap font metrics test on CJK locales.
2012-10-19 11:17:25 +02:00