Alexandre Julliard
b6f25e5250
gdi32: Remove the null driver Get/PutImage fallbacks for bitmaps.
2012-05-29 18:20:11 +02:00
Alexandre Julliard
592bfd52c9
gdi32: Always use the DIB engine for DDB rendering.
2012-05-29 18:20:10 +02:00
Alexandre Julliard
77ee0b56bb
gdi32/tests: Add some more tests for monochrome bitmap blits.
2012-05-29 18:17:47 +02:00
Alexandre Julliard
df924f6a8c
gdi32: Fix StretchBlt color mapping for monochrome bitmaps without a color table.
2012-05-29 18:17:22 +02:00
Alexandre Julliard
c2784e08fc
gdi32: Improve support of bitmaps without a color table in PutImage.
2012-05-29 18:16:30 +02:00
Alexandre Julliard
8761bb29ea
gdi32/tests: Add tests for color mappings in monochrome bitmaps.
2012-05-25 11:47:55 +02:00
Alexandre Julliard
b81a7d976e
gdi32: Always use the DIB engine for monochrome bitmap rendering.
2012-05-25 11:47:46 +02:00
Alexandre Julliard
294faf5ef3
gdi32: Check that the bitmap depth matches the DC when selecting it.
2012-05-25 11:19:36 +02:00
Alexandre Julliard
fdc4682e31
gdi32: Remove the CopyBitmap driver entry point.
2012-05-24 22:09:19 +02:00
Alexandre Julliard
a196ad8fc1
gdi32: Always store a copy of the bitmap bits for pattern brushes.
2012-05-24 19:53:23 +02:00
Alexandre Julliard
8a86f6c993
gdi32: Don't use the DC colors when drawing a monochrome pattern to a monochrome DDB.
2012-05-23 20:24:08 +02:00
Alexandre Julliard
139aeba3ef
gdi32: Implement dithering of solid brushes when drawing to DDBs.
2012-05-23 20:24:03 +02:00
Alexandre Julliard
664442ab84
gdi32: Don't store the default color table in dib_info objects.
2012-05-23 17:22:17 +02:00
Alexandre Julliard
9968f3083a
gdi32: Use the default color table when mapping colors in bitmaps that don't have one.
2012-05-23 17:22:07 +02:00
Alexandre Julliard
b8e4cd81ab
gdi32: Simplify creation of hatch masks and avoid endianness issues.
2012-05-23 17:22:03 +02:00
Alexandre Julliard
574a07e4c9
gdi32: Add a helper function to allocate the brush bits.
2012-05-22 22:03:18 +02:00
Alexandre Julliard
b708b40105
gdi32: Pass a rop_mask_bits object to the pattern_rects primitive.
2012-05-22 21:52:44 +02:00
Alexandre Julliard
524aef660e
gdi32: Use a rop_mask_bits object to store the brush bits.
2012-05-22 21:47:30 +02:00
Alexandre Julliard
3c2502a8c7
gdi32: Add support for dithering pattern brushes when painting to monochrome bitmaps.
2012-05-22 17:43:52 +02:00
Francois Gouget
fac36c55e9
Assorted typo, spelling, wording and case fixes.
2012-05-15 16:26:43 +02:00
Alexandre Julliard
1392bfce3c
gdi32: Pass OpenGL calls through to the display driver from the DIB engine.
2012-05-09 17:37:37 +02:00
Dmitry Timoshkov
82a4c5a6a3
gdi32: Set tmDigitizedAspectX/Y to 96 instead of 300 for consistency.
2012-05-09 12:06:34 +02:00
Dmitry Timoshkov
ab7fe6086e
gdi32: Add a test for ntmCellHeight calculation.
2012-05-08 19:51:12 +02:00
Alexandre Julliard
147174ff1c
winex11: Implement wglGetPbufferDCARB with a DC escape and remove it from the GDI driver interface.
2012-05-08 14:35:44 +02:00
Alexandre Julliard
eb80e6f2db
gdi32: Allow a driver to implement SelectBitmap but not CreateBitmap.
2012-05-08 14:32:32 +02:00
Alexandre Julliard
e94d3b4e08
gdi32: Add a priority mechanism for pushing drivers on the stack in a defined order.
2012-05-08 12:16:50 +02:00
Alexandre Julliard
6a19d9f252
gdi32: Support drawing to a visible rectangle smaller than the whole bitmap in the DIB engine.
2012-05-01 14:28:39 +02:00
Alexandre Julliard
025b58870e
gdi32: Always pass the actual coordinates to the get_pixel_ptr functions.
2012-05-01 11:41:19 +02:00
Alexandre Julliard
41e5bc06d8
gdi32: Add support for clipping source coordinates to the DC device rectangle.
2012-04-30 22:47:35 +02:00
Jeff Muizelaar
2da2f001cf
gdi32: Improve performance of common case of AlphaBlend.
2012-04-30 20:03:28 +02:00
Alexandre Julliard
3ea711dd7c
gdi32: Store the bounds rectangle as a pointer in the DIB driver.
2012-04-27 12:49:20 +02:00
Alexandre Julliard
3009e03df7
gdi32: Add a SetBoundsRect driver entry point.
2012-04-27 12:41:43 +02:00
Dmitry Timoshkov
5476c0e2b9
gdi32: ntmCellHeight and ntmAvgWidth should be in font units.
2012-04-24 18:44:07 +02:00
Dmitry Timoshkov
57fbf1434c
gdi32: Enumerated font size should not be too large.
...
This reverts commit f4625d1ae1
.
2012-04-24 18:43:45 +02:00
Alexandre Julliard
9674011d75
gdi32: Fix coordinates for row copies in mirrored vertical stretching.
2012-04-24 17:37:53 +02:00
Alexandre Julliard
6c2235cf98
gdi32: Fix some typos in the 4-bpp shrink_row function.
2012-04-23 14:58:12 +02:00
Alexandre Julliard
caf15dd797
gdi32/tests: Take into account multi-monitor setups in the clip region tests.
2012-04-20 12:12:21 +02:00
Daniel Lehman
2c5d7d716a
gdi32: Don't add_join if points are coincident in wide_line_segments.
2012-04-18 17:15:19 +02:00
André Hentschel
9cf97e18b4
gdi32: Remove unneeded shadow variable.
2012-04-18 17:11:39 +02:00
Alexandre Julliard
4a87722144
winex11: Add bounds rectangle tracking to all graphics entry points.
2012-04-18 13:50:56 +02:00
Alexandre Julliard
8b7760292d
gdi32/tests: Fix a test that can fail on multi-monitor setups.
2012-04-17 16:40:57 +02:00
Alexandre Julliard
34457aa4c3
gdi32: Add bounds tracking to all the DIB engine entry points.
2012-04-16 17:49:22 +02:00
Alexandre Julliard
582a2f511f
gdi32: Add a GetBoundsRect driver entry point.
2012-04-16 13:53:23 +02:00
Alexandre Julliard
b1ccff1a9c
gdi32: Add helper functions for manipulating bounds rectangles.
2012-04-16 13:41:29 +02:00
Michael Stefaniuc
7f293b00e8
gdi32/tests: Fix typo (comparison with itself).
2012-04-16 12:05:54 +02:00
Dmitry Timoshkov
34608a5108
gdi32: Add large fonts support for MS Sans Serif.
2012-04-13 16:09:45 +02:00
Alexandre Julliard
81fcb10977
gdi32/tests: Add test cases for wide pen bounding rectangles.
2012-04-13 16:09:39 +02:00
Alexandre Julliard
6c028b19c5
gdi32: Avoid redundant computation of the gradient bounding rectangle.
2012-04-13 13:41:16 +02:00
Alexandre Julliard
ea5fa7ddbe
gdi32: Map all the points at once in PolyPolyline, similarly to what PolyPolygon does.
2012-04-13 13:39:06 +02:00
Alexandre Julliard
568afc210e
gdi32: Move the pen/brush_region helpers to graphics.c and avoid redundant clipping.
2012-04-13 13:36:23 +02:00
Dmitry Timoshkov
31f6f48bfd
gdi32: Add a test for bitmap fonts selected for not existing font sizes.
2012-04-10 19:54:34 +02:00
Alexandre Julliard
88bcd13d7f
gdi32: Store the reference DC in the enhanced metafile and use it to retrieve device caps.
2012-04-10 16:21:24 +02:00
Alexandre Julliard
2776a97931
gdi32: Add explicit fields for the DC flags.
2012-04-10 16:21:23 +02:00
Alexandre Julliard
b762fcc9a7
gdi32: Clip the returned DC bounds to the device rectangle.
2012-04-10 16:21:11 +02:00
Alexandre Julliard
5917bd3959
gdi32: SaveDC doesn't save the DC bounds.
2012-04-10 16:19:20 +02:00
Alexandre Julliard
80f68d4442
gdi32/tests: Add tests for DC bounds handling across various DC manipulations.
2012-04-10 16:17:47 +02:00
Alexandre Julliard
a186a8b170
gdi32/tests: Add tests for DC bounds on various device types.
2012-04-10 13:20:01 +02:00
Alexandre Julliard
399ab6f1f2
gdi32/tests: Add tests for DC bounds to the DIB graphics tests.
2012-04-09 22:59:11 +02:00
Alexandre Julliard
514e952827
gdi32/tests: Automatically reset the bits after comparing the hash.
2012-04-09 21:28:50 +02:00
Dmitry Timoshkov
1f00c01ea5
gdi32: Add more verbose messages to indicate when a font is being added/replaced/refused to load.
2012-04-09 17:28:46 +02:00
Dmitry Timoshkov
e7a1362880
gdi32: Fix a typo in faces_equal() preventing loading all sizes of a bitmap font.
2012-04-09 17:28:43 +02:00
Alexandre Julliard
1ca6ed7748
gdi32: Fix GetClipBox return value for non-memory DCs.
2012-04-09 17:15:59 +02:00
Ken Thomases
9cb7a97981
gdi32: On Mac OS X, find fonts using Core Text rather than FontConfig, by default.
2012-04-05 14:51:34 +02:00
Ken Thomases
272cf2a973
Revert "gdi32: Load fonts from default Mac external font paths.".
...
This reverts commit 85a71387da
.
2012-04-05 14:51:33 +02:00
Kusanagi Kouichi
c0c7547f37
gdi32: Improve font cache.
2012-04-02 18:37:48 +02:00
Dmitry Timoshkov
62b9c26bb5
gdi32: Refuse to load a large .fot file earlier.
2012-04-02 12:42:22 +02:00
Dmitry Timoshkov
b2af51956d
gdi32: Remove a no longer needed shortcut in CreateScalableFontResource test.
2012-04-02 12:41:40 +02:00
Kusanagi Kouichi
35c84cddcc
gdi32: Use helper functions when loading font from cache.
2012-03-30 15:30:01 +02:00
Huw Davies
88a2620b14
gdi32: Add support for loading scalable font resources.
2012-03-30 15:29:40 +02:00
Huw Davies
105caa28bf
gdi32: Implement CreateScalableFontResource.
...
Based on patches by Jeremy White and Dmitry Timoshkov.
2012-03-29 18:16:06 +02:00
Huw Davies
7ac623f380
gdi32: Add a helper to create a new FreeType face.
2012-03-29 18:15:39 +02:00
Huw Davies
0318951aac
gdi32: Separate face creation from face insertion.
2012-03-27 13:43:53 +02:00
Huw Davies
2489c3285c
gdi32: Remove the loop over bitmap sizes. FreeType lists different sizes as separate faces.
...
Windows format bitmap fonts have been enumerated as separate faces
since FreeType 2.1.5, since we require 2.1.9 for bitmap support we can
safely drop this loop.
2012-03-27 13:43:50 +02:00
Huw Davies
8d50bb6711
gdi32: Add a helper to free a face object and fix a potential memory leak.
2012-03-27 13:43:46 +02:00
Huw Davies
b5115f77bc
gdi32: Add a helper to retrieve the fontsignature.
2012-03-27 13:43:42 +02:00
Huw Davies
45d79feaf5
gdi32: Add a helper to retrieve a bitmap font's internal leading.
2012-03-27 13:43:36 +02:00
Huw Davies
afae44da25
gdi32: Add a helper to retrieve the ntm flags.
2012-03-27 13:43:34 +02:00
Huw Davies
37eb386739
gdi32: Add a helper to retrieve the font version.
2012-03-27 13:43:31 +02:00
Huw Davies
e27a633b93
gdi32: Add a helper to create a family.
2012-03-27 13:43:29 +02:00
Huw Davies
7ad330deef
gdi32: Add a helper to retrieve the family pointer.
2012-03-27 13:43:26 +02:00
Huw Davies
c6af1d5416
gdi32: Add a helper to retrieve the family names and simplify the logic.
2012-03-27 13:43:24 +02:00
Huw Davies
18d19e7f18
gdi32: Remove unused variable.
2012-03-16 16:52:51 +01:00
Huw Davies
41fb856961
gdi32: Correctly propagate the enumproc's return value.
2012-03-14 17:33:54 +01:00
Kusanagi Kouichi
6a49adeee6
gdi32: find_face_from_filename() needs to take font replacements into account.
2012-03-14 17:28:05 +01:00
Kusanagi Kouichi
d77104b93d
gdi32: Remove unused parameters and code, and a useless wrapper function.
2012-03-13 10:38:04 +01:00
Kusanagi Kouichi
eab0257492
gdi32: Simplify font replacement loading.
2012-03-13 10:37:51 +01:00
Kusanagi Kouichi
4bb0e2d076
gdi32: Add a helper function to get face list from family.
2012-03-13 10:37:45 +01:00
Kusanagi Kouichi
fc03398cd5
gdi32: Add a helper function to create a full name from a family name and a style name.
2012-03-13 10:37:01 +01:00
Kusanagi Kouichi
d696d5fee8
gdi32: Move font signature of font link from Face to SYSTEM_LINKS.
2012-03-13 10:36:45 +01:00
Kusanagi Kouichi
e86519c9b3
gdi32: Add a helper function to find font link.
2012-03-13 10:36:19 +01:00
Alexandre Julliard
53c53126d5
gdi32: Fix rounding error for odd ellipse sizes in CreateRoundRectRgn.
2012-03-09 11:38:12 +01:00
Alexandre Julliard
78c3af9f18
gdi32: Fix missing increment of integer data in GetCharABCWidthsFloat.
2012-03-02 17:03:45 +01:00
Alexandre Julliard
fd40d65cfa
gdi32: Avoid using uninitialized value in DIB pattern enhmetafile record.
2012-02-24 17:04:06 +01:00
Alexandre Julliard
c65de04789
gdi32: Use 64-bit values when computing ellipses to avoid overflows.
2012-02-24 15:55:45 +01:00
Alexandre Julliard
556267bde4
gdi32: Avoid overflows for invalid coordinates in line clipping.
2012-02-22 11:28:33 +01:00
Alexandre Julliard
32057bf132
gdi32: Don't paint the text rectangle in transparent mode unless a rectangle is explicitly specified.
2012-02-21 17:20:48 +01:00
Kusanagi Kouichi
4dc04ae867
gdi32: Initialize font signature of "System" font link.
2012-02-21 15:01:03 +01:00
Alexandre Julliard
21498d6c11
gdi32: Paint everything in ExtFloodFill when the DIB doesn't have a clip region.
2012-02-19 20:34:27 +01:00
Alexander Kochetkov
86de76b9e1
gdi32: Fix text baseline calculation in compatible mode.
2012-02-16 18:51:55 +01:00
Alexandre Julliard
691c37ca9f
gdi32: Fix font orientation when mirroring in compatible mode.
...
Inspired by a patch from Alexander Kochetkov.
2012-02-16 18:51:55 +01:00
Kusanagi Kouichi
758796e704
gdi32: Add traces for skipped font replacements.
2012-02-15 16:27:11 +01:00
Kusanagi Kouichi
15a6aefb8f
gdi32: Use find_family_from_any_name to find a replacement family.
2012-02-15 16:27:11 +01:00
Aric Stewart
05a9d4ce94
gdi32: Rebuild the internal SystemLink every time.
2012-02-14 19:15:48 +01:00
Alexandre Julliard
b3ab012a42
gdi32: Don't clip to the visible rectangle for screen DCs.
2012-02-14 12:31:47 +01:00
Aric Stewart
85a71387da
gdi32: Load fonts from default Mac external font paths.
2012-02-09 11:58:48 -06:00
Akihiro Sagawa
39f748f083
gdi32/tests: Reorder tests to avoid side-effects.
2012-02-09 11:54:39 -06:00
Huw Davies
d3bfa44d53
gdi32: Intersect the background text box with the clip rectangle in device units.
2012-02-09 09:34:43 -06:00
Huw Davies
1eca24bd6b
gdi32: Rename a shadow variable.
2012-02-09 09:34:38 -06:00
Akihiro Sagawa
286854fb06
gdi32: Consider whether the logical font face is vertical when selecting.
2012-02-08 13:54:40 -06:00
Akihiro Sagawa
c683ad72b2
gdi32/tests: Add tests for East Asian font selection.
2012-02-08 13:54:33 -06:00
Aric Stewart
f83762e678
gdi32: Allow font replacements to be specified either in localized name or English name.
2012-02-08 10:53:40 -06:00
Akihiro Sagawa
d53dc01143
gdi32: Restore the vertical font flag from the cache.
2012-02-07 14:03:12 -06:00
Aric Stewart
e7a79b5565
gdi32: Keep our internal generated system links separate and append them to any user defined system links.
2012-02-07 09:35:50 -06:00
Aric Stewart
a8a2f87135
gdi32: In update_system_links if the font we are trying to link has already been substituted or localized we need to check against that name also.
2012-02-01 16:42:43 +01:00
Alistair Leslie-Hughes
c5235eeab0
gdi32: Add EnhMetafile PolyBezier, PolyBezierTo support.
2012-01-19 21:08:55 +01:00
Huw Davies
3dc4f259e9
gdi32: The clip region should stop the flooding.
2012-01-19 21:08:50 +01:00
Huw Davies
b2c3ca090f
gdi32/tests: Add tests for ExtFloodFill.
2012-01-18 16:27:45 +01:00
Huw Davies
d69868e464
gdi32: Implement ExtFloodFill.
2012-01-18 16:27:42 +01:00
Huw Davies
ff4045b110
gdi32: Use separate x and y parameters in the get_pixel primitive.
2012-01-18 16:27:39 +01:00
Alexandre Julliard
7e9d5a1771
gdi32: Negative destination sizes are allowed after coordinate mapping in GdiAlphaBlend.
2012-01-18 16:03:36 +01:00
Alexandre Julliard
f8fa169da0
gdi32: Store foreground/background color even when passed CLR_INVALID.
2012-01-12 15:53:07 +01:00
Alexandre Julliard
9ecc1e0702
gdi32: Simplify the CreateCompatibleBitmap implementation.
2012-01-12 15:53:04 +01:00
Alexandre Julliard
fbbf3ba408
gdi32: Get rid of the CreateDIBSection driver entry point.
2012-01-10 16:13:29 +01:00
Alexandre Julliard
71ea68b657
gdi32: Use the bitmap part of the DIBSECTION structure for the DDB object information.
2012-01-10 16:13:29 +01:00
Alexandre Julliard
e896af4065
gdi32: Always store a DIBSECTION structure in the bitmap object.
2012-01-10 16:13:29 +01:00
Alexandre Julliard
8a9be0a30b
gdi32: Get rid of the get_bitmap_funcs function.
...
DIBs no longer use the display driver functions.
2012-01-10 16:13:28 +01:00
Alexandre Julliard
66774baba3
gdi32: Use the bpp info from the bitmap structure now that it's identical to the DIB one.
2012-01-10 16:13:28 +01:00
Alexandre Julliard
8946a33c4b
gdi32: Simplify CreateDIBSection and avoid using the reference DC if not needed.
2012-01-10 16:13:27 +01:00
Alexandre Julliard
a51b2c8bd5
gdi32: Add a separate set of GDI object functions for DIBs.
2012-01-10 16:13:27 +01:00
Kusanagi Kouichi
fecb1d8b6f
gdi32: GetGlyphIndices doesn't substitute glyph.
2012-01-10 11:22:41 +01:00
Alexandre Julliard
62eaaa796b
gdi32/tests: Remove device capabilities test that fails on XP.
2012-01-09 16:27:41 +01:00
Huw Davies
7994f2c03b
gdi32: Don't create the outline region twice.
2012-01-09 15:23:17 +01:00
Alexandre Julliard
9c112996d0
gdi32: Stop forwarding object selection calls to x11drv.
2012-01-09 12:14:34 +01:00
Alexandre Julliard
dc1aeeb2f8
gdi32: Get rid of the SetDIBColorTable driver entry point.
2012-01-07 13:27:08 +01:00
Alexandre Julliard
867be0e3e3
gdi32: Add an empty ExtEscape DIB driver entry point.
2012-01-06 19:24:12 +01:00
Alexandre Julliard
56331e2a9a
gdi32: Don't allow Get/SetDeviceGammaRamp on DIBs or memory DCs.
2012-01-06 19:24:12 +01:00
Alexandre Julliard
bf718448f3
gdi32: Add a stub for the ExtFloodFill entry point.
2012-01-06 19:24:11 +01:00
Alexandre Julliard
ff31a448b3
gdi32: Implement Arc, ArcTo, Chord, and Pie, using line segments for now.
2012-01-06 19:24:02 +01:00
Alexandre Julliard
92d5b41599
gdi32: Add a helper function for computing the device rect for PS_INSIDEFRAME.
2012-01-06 19:22:22 +01:00
Alexandre Julliard
5ff285629e
gdi32: Implement Ellipse and RoundRect, using line segments for now.
2012-01-06 19:22:12 +01:00
Alexandre Julliard
3e51dd7515
gdi32: Use a better algorithm for CreateRoundRectRgn.
2012-01-06 12:53:20 +01:00
Alexandre Julliard
94ffc49e02
gdi32: Draw rectangles in the order specified by the current arc direction.
2012-01-05 20:54:07 +01:00
Alexandre Julliard
4b524f91e2
gdi32/tests: Add some tests for brushed and dashed wide pens.
2012-01-04 18:17:05 +01:00
Alexandre Julliard
d858041a19
gdi32: Get rid of the pen deferring support, all pen styles are implemented now.
2012-01-04 16:53:17 +01:00
Alexandre Julliard
c82d2a034f
gdi32: Implement dashed wide lines.
2012-01-04 16:06:21 +01:00
Alexandre Julliard
bc5428600b
gdi32: Add a helper function for drawing multiple line segments.
2012-01-04 16:06:01 +01:00
Alexandre Julliard
a59c53b312
gdi32: Add a helper function for drawing a wide line segment.
2012-01-04 15:50:31 +01:00
Alexandre Julliard
8b1bab524b
gdi32: Skip empty segments at the beginning and end of a line to make sure the caps are correct.
2012-01-04 15:10:10 +01:00
Alexandre Julliard
5f2371c229
gdi32: Only create the round cap region once per call.
2012-01-04 15:02:05 +01:00
Alexandre Julliard
618425ac4c
gdi32: Fix skipping of zero-length dashes.
2012-01-04 14:57:52 +01:00
Marcus Meissner
15162ddf3c
gdi32: Check return value of REGION_UnionRectWithRegion (Coverity).
2012-01-03 12:37:57 +01:00
Alexandre Julliard
5721cbf0e8
gdi32: Add stubs for the OpenGL entry points in the DIB driver.
2012-01-03 12:37:16 +01:00
Alexandre Julliard
ccfbcfaf53
gdi32: Calculate the image size in GradientFill only once we have the correct bit count.
2012-01-02 21:46:46 +01:00
Alexandre Julliard
2c9c9f78fb
gdi32: Don't bother computing interior regions when the brush is null.
2011-12-30 12:53:35 +01:00
Alexandre Julliard
488bf107a9
gdi32: Implement brushed pens.
2011-12-30 11:04:35 +01:00
Alexandre Julliard
4e03247427
gdi32: Define a structure to make the brush state independent from the physdev.
2011-12-30 11:04:33 +01:00
Alexandre Julliard
cc9836bda0
gdi32: Pass a brush_pattern structure to the SelectPen entry point for brushed pens.
2011-12-30 11:04:29 +01:00
Alexandre Julliard
f85bb35280
gdi32: Pass a brush_pattern structure to the SelectBrush entry point.
2011-12-30 11:04:26 +01:00
Alexandre Julliard
a1fdd5856f
gdi32: Store the pattern brush information for geometric pens.
2011-12-30 11:04:23 +01:00
Alexandre Julliard
ee89ce2982
gdi32: Add sanity checks for brush hatch styles.
2011-12-30 11:04:16 +01:00
Alexandre Julliard
8bf48557ef
gdi32: Add a structure to store all the extra information needed for a pattern brush.
2011-12-29 19:20:55 +01:00
Alexandre Julliard
5a67227078
gdi32/tests: Get rid of Win9x compatibility in the pen tests.
2011-12-29 19:20:50 +01:00
Alexandre Julliard
63a9217539
gdi32: Add checks for invalid color usage values.
2011-12-29 16:18:39 +01:00
Alexandre Julliard
c1c8c92875
gdi32: Add helpers to paint a region with the brush or pen.
2011-12-29 10:10:45 +01:00
Alexandre Julliard
579afe5cc6
gdi32: Implement PolyPolygon in the DIB driver.
2011-12-29 09:57:58 +01:00
Alexandre Julliard
f5549ae1d0
gdi32: Use a region to render geometric and wide pens in LineTo.
2011-12-29 09:57:41 +01:00
Alexandre Julliard
da8ae11300
gdi32: Use a region to render geometric and wide pens in Rectangle.
2011-12-29 09:53:25 +01:00
Alexandre Julliard
64ed56366c
gdi32: Use a region to render geometric and wide pens in PolyPolyline.
2011-12-29 00:02:24 +01:00
Alexandre Julliard
9ee690c984
gdi32: Implement returning a region for 1-pixel wide dashed pen lines.
2011-12-28 23:03:03 +01:00
Alexandre Julliard
3188c30229
gdi32: Implement returning a region for 1-pixel wide solid pen lines.
2011-12-28 23:02:42 +01:00
Alexandre Julliard
0429d9181f
gdi32: Add support for updating a region from the pen backend functions instead of painting directly.
2011-12-28 23:02:10 +01:00
Alexandre Julliard
f155db574f
gdi32: Add support for 1-pixel wide PS_USERSTYLE pens.
2011-12-28 17:42:32 +01:00
Alexandre Julliard
305be80e2f
gdi32: Add support for PS_ALTERNATE pens.
2011-12-28 17:42:27 +01:00
Alexandre Julliard
e364809a90
gdi32: Add support for 1-pixel wide geometric dashed pens.
2011-12-28 17:42:14 +01:00
Alexandre Julliard
bbd7f4e0e3
gdi32: Fix handling of invalid pen styles.
2011-12-28 16:33:35 +01:00
Alexandre Julliard
881f635ce9
gdi32: Extended pens are always transparent.
2011-12-28 16:33:31 +01:00
Alexandre Julliard
5f03c6c81b
gdi32: Wide cosmetic pens don't support dashes.
2011-12-28 13:53:15 +01:00
Alexandre Julliard
ab63eb5c40
gdi32: Fix the scaling of the width of cosmetic pens.
2011-12-28 13:53:12 +01:00
Alexandre Julliard
9b8d920cb7
gdi32: Pass the clip region to the brush_rect helper and add a similar helper for pens.
2011-12-28 11:28:21 +01:00
Alexandre Julliard
18c20964e1
gdi32: Add support for PS_INSIDEFRAME pens when drawing rectangles.
2011-12-28 11:17:41 +01:00
Alexandre Julliard
c861284a02
gdi32: Add a helper function to add a rectangle to a region.
2011-12-28 11:04:30 +01:00
Alexandre Julliard
0c840f66ed
gdi32: Compute the correct rectangle interior when using wide pens.
2011-12-27 20:53:35 +01:00
Akihiro Sagawa
70c2222180
gdi32: Avoid making a DBCS character in range.
2011-12-27 16:55:09 +01:00
Alexandre Julliard
a80eafe8d7
gdi32: Re-create the brush bits only when the ROP has really changed.
2011-12-27 16:55:02 +01:00
Alexandre Julliard
8b3271c3b0
gdi32: Avoid making a copy of the device clipping region in the DIB driver.
2011-12-27 15:48:29 +01:00
Alexandre Julliard
56373bc491
gdi32: Use the get_clipped_rects helper in the blitting functions.
2011-12-27 15:41:21 +01:00
Alexandre Julliard
d0f110e2a9
gdi32: Use the get_clipped_rects helper in the pen functions.
2011-12-27 15:00:00 +01:00
Alexandre Julliard
63ebfc591e
gdi32: Use the get_clipped_rects helper in the text functions.
2011-12-27 14:58:52 +01:00
Alexandre Julliard
b761d0e1c6
gdi32: Add a helper function to compute the list of rectangles to paint after clipping.
2011-12-27 14:57:23 +01:00
Alexandre Julliard
4333b7d370
gdi32/tests: Add tests for PALETTEINDEX colors.
2011-12-23 13:43:49 +01:00
Alexandre Julliard
73b9c86384
gdi32: Always use proper RGB colors for monochrome DDB pattern brushes.
2011-12-22 21:18:38 +01:00
Alexandre Julliard
8f929ae04d
gdi32: Add a common helper for computing pen and brush masks.
2011-12-22 20:10:31 +01:00
Alexandre Julliard
56532d0cf7
gdi32: Recompute the foreground masks on every use to support PALETTEINDEX colors.
2011-12-22 19:50:29 +01:00
Alexandre Julliard
e166ec0bb0
gdi32: Recompute the background masks on every use to support PALETTEINDEX colors.
2011-12-22 19:50:07 +01:00
Alexandre Julliard
9237638c0e
gdi32: Recompute the pen masks on every use to support PALETTEINDEX colors.
2011-12-22 19:49:23 +01:00
Alexandre Julliard
43373c29ef
gdi32: Recompute the brush masks on every use to support PALETTEINDEX colors.
2011-12-22 19:47:40 +01:00
Huw Davies
8caa0a05bd
gdi32/tests: Add tests for geometric solid pens.
2011-12-22 17:19:19 +01:00
Huw Davies
7c2351566a
gdi32: Add support for geometric solid pens.
2011-12-22 17:19:19 +01:00
Alexandre Julliard
7f3a7ae585
gdi32: Fix handling of COLORREFs with illegal values for the high byte.
2011-12-22 17:19:13 +01:00
Kusanagi Kouichi
53385314d0
gdi32: Substitute glyph for vertical font only.
2011-12-20 20:06:33 +01:00
Kusanagi Kouichi
69a26387b3
gdi32: Add vertical fonts to font list.
2011-12-20 20:06:32 +01:00
Kusanagi Kouichi
65f809248f
gdi32: Split AddFontToList into two functions.
2011-12-20 20:06:32 +01:00
Kusanagi Kouichi
4dfe084bba
gdi32: Merge two ifs.
2011-12-20 20:06:31 +01:00
Kusanagi Kouichi
6c268cf1c5
gdi32: Use find_family_from_name and LIST_FOR_EACH instead of open-coding them.
2011-12-20 20:06:31 +01:00
Kusanagi Kouichi
5bdbf6c681
gdi32: Add a helper function to convert a string from A to W.
2011-12-20 20:06:30 +01:00
Alexandre Julliard
a585659e31
gdi32: Remove support for deferring brush calls to X11, all brush types are supported now.
2011-12-19 20:15:42 +01:00
Francois Gouget
2ae10acb61
gdi32: Avoid hardcoding the Unicode string literal lengths.
2011-12-16 17:40:41 +01:00
Alexandre Julliard
19fe3f0c77
gdi32/tests: Add tests for device capabilities on memory DCs.
2011-12-16 12:09:02 +01:00
Alexandre Julliard
6752d3478f
gdi32/tests: Add some tests for behavior of 32-bit DDBs.
2011-12-14 17:54:45 +01:00
Kusanagi Kouichi
b5446ddb45
gdi32: Don't remove leading '@' from face name.
2011-12-13 18:59:12 +01:00
Kusanagi Kouichi
bf8a100639
gdi32: Don't use preferred family name.
2011-12-13 18:59:11 +01:00
Kusanagi Kouichi
ad58ca235c
gdi32/tests: Add tests for vertical font.
2011-12-13 18:59:10 +01:00
Alexandre Julliard
38766d4d19
gdi32/tests: Fix some test failures on old Windows versions.
2011-12-13 14:00:20 +01:00
Alexandre Julliard
9f410413a6
gdi32: Implement GetPixel in the null driver using GetImage.
2011-12-13 14:00:05 +01:00
Alexandre Julliard
0c194895a2
gdi32: Remove some color table size checks, we use full-size color tables now.
2011-12-12 20:52:59 +01:00
Alexandre Julliard
49ae736022
gdi32: Implement GetNearestColor in the DIB driver.
2011-12-12 20:20:06 +01:00
Alexandre Julliard
cae4ef81e6
gdi32: init_dib_info() can no longer fail, and no longer requires freeing.
2011-12-12 20:02:22 +01:00
Alexandre Julliard
d357392b8b
gdi32: Remove support for private color maps.
2011-12-12 20:02:17 +01:00
Alexandre Julliard
70d8341a67
gdi32: Pass the correct depth to PutImage for SetBitmapBits on a DIB.
2011-12-12 15:50:38 +01:00
Alexandre Julliard
f85a28faf6
gdi32/tests: Add tests for 1-bpp DDB pattern brushes.
2011-12-12 15:50:38 +01:00
Alexandre Julliard
65a2c885f1
gdi32: Don't create a default color table for pattern brushes, use the DC colors instead.
2011-12-12 15:50:37 +01:00
Alexandre Julliard
d5fe87e2e8
gdi32: Select the pattern brush only when first used.
2011-12-12 15:50:37 +01:00
Alexandre Julliard
d353c95d47
gdi32: Add a flag to request a default color table from init_dib_info.
2011-12-12 15:50:33 +01:00
Alexandre Julliard
c5895ead6a
gdi32: Use the default DIB color table to create system and halftone palettes.
2011-12-12 11:30:50 +01:00
Alexandre Julliard
3a9cabb8c4
gdi32: Store the default color tables as static data.
2011-12-12 11:21:52 +01:00
Alexandre Julliard
27eb63b082
gdi32: GetCharABCWidthsFloatW must succeed with non-TrueType fonts.
2011-12-12 11:14:25 +01:00
Alexandre Julliard
2e42ab1527
gdi32/tests: Fix some test failures on Windows.
2011-12-10 18:08:35 +01:00
Alexandre Julliard
8db263d2eb
gdi32: Simplify computation of the DIB header size for internal BITMAPINFO structures.
2011-12-10 13:35:59 +01:00
Alexandre Julliard
82e1a4616c
gdi32: Make sure that biSizeImage always contains the correct size in internal BITMAPINFO structures.
2011-12-10 13:35:59 +01:00
Alexandre Julliard
25e2fae2a8
gdi32: Always use biClrUsed for the number of colors of internal BITMAPINFO structures.
2011-12-10 13:35:42 +01:00
Huw Davies
ac7e9f6dcc
gdi32/tests: Add some tests for wide pens.
2011-12-09 21:15:31 +01:00
Huw Davies
e155a8054b
gdi32: Add support for wide cosmetic pens.
2011-12-09 21:15:30 +01:00
Alexandre Julliard
98670510f4
gdi32/tests: Add tests for DIB_PAL_COLORS and DIB palettes with missing entries.
2011-12-09 21:15:23 +01:00
Alexandre Julliard
494bfa866a
gdi32: Remove the nb_colors fields in the bitmap object, we always allocate a full size color table.
2011-12-09 21:15:22 +01:00
Alexandre Julliard
c441ebc21d
gdi32: Fix handling of DIB_PAL_COLORS in the various DIB functions.
2011-12-09 21:15:22 +01:00
Alexandre Julliard
647a4d5844
gdi32: Always allocate a full-size color table when creating a DIB section.
2011-12-09 21:15:16 +01:00
Alexandre Julliard
91d19b4b17
gdi32: Add a helper to build a color table from the DIB_PAL_COLORS bitmap info.
2011-12-08 21:31:59 +01:00
Alexandre Julliard
71199eab77
gdi32: Don't make a copy of the DIB color table when selecting it into a DC.
2011-12-08 20:00:55 +01:00
Alexandre Julliard
910fb48291
gdi32: Use PutImage directly to set the initial bitmap bits.
2011-12-08 19:58:47 +01:00
Alexandre Julliard
df9e0ccf5c
gdi32: Use the convert_bits helper function in SetDIBits and SetDIBitsToDevice.
2011-12-08 19:53:44 +01:00
Alexandre Julliard
72fae39ce0
gdi32: Add missing check for empty visible rects in the non-stretching case.
2011-12-08 18:00:00 +01:00
Alexandre Julliard
5b17ba887b
gdi32: Rename the CLIPPING_UpdateGCRegion function.
...
We haven't used a GC here for a long time now.
2011-12-07 17:49:54 +01:00
Alexandre Julliard
b9f09abdcc
gdi32: Don't store the metaclip region, recompute it as needed.
2011-12-07 17:49:47 +01:00
Alexandre Julliard
fb37752f53
gdi32: Only store a total visible region when it's a combination of other regions.
2011-12-07 17:48:29 +01:00
Alexandre Julliard
ddfe35867d
gdi32: Only create the DC visible region when necessary.
...
Most DCs can simply use the visible rectangle instead.
2011-12-07 16:50:57 +01:00
Alexandre Julliard
1f15ffa1e6
gdi32: Make sure DCs are fully zero-initialized.
2011-12-07 15:53:54 +01:00
Francois Gouget
22cb047ed4
gdi32: Make init_dib_info() static.
2011-12-06 17:53:15 +01:00
Alexandre Julliard
7534d47b1b
gdi32: Pass the total visible region in the SetDeviceClipping driver entry point.
2011-12-06 15:51:00 +01:00
Alexandre Julliard
5a1a6e935a
gdi32: Maintain a region inside gdi32 to keep track of the total visible region.
2011-12-06 15:50:59 +01:00
Alexandre Julliard
1e2dd7cad8
gdi32: Add a helper function to clip a rectangle to the DC visible rect.
2011-12-06 15:50:59 +01:00
Alexandre Julliard
25e300dcad
gdi32: Add a null driver implementation for Polyline and Polygon.
2011-12-05 22:29:16 +01:00
Alexandre Julliard
360d4bc548
gdi32: Use the DIB engine and PutImage for the null driver triangular gradient implementation.
2011-12-05 17:19:32 +01:00
Alexandre Julliard
8e8cdc78e6
gdi32: Add more parameter checks in GdiGradientFill.
2011-12-05 16:36:08 +01:00
Alexandre Julliard
7ea59c107f
gdi32: Use dithering also for 1-bpp gradients.
2011-12-05 16:36:08 +01:00
Alexandre Julliard
59f347b75c
gdi32/tests: Add more gradient tests.
2011-12-05 16:36:07 +01:00
Alexandre Julliard
743b37df3d
gdi32: Implement triangular gradients in the DIB engine.
2011-12-05 16:36:03 +01:00
Huw Davies
4ce3af3fad
gdi32: Add support for checking the font's gasp flags.
2011-12-02 17:25:54 +01:00
Alexandre Julliard
c5bddce3aa
gdi32: Add some parameter checks in GdiGradientFill.
2011-12-02 14:00:18 +01:00
Alexandre Julliard
4c6807199e
gdi32: Use the DIB engine and PutImage for the null driver rectangular gradient implementation.
2011-11-30 12:59:11 +01:00
Alexandre Julliard
f2ec760a80
gdi32/tests: Add tests for rectangular gradients in DIBs.
2011-11-29 15:12:31 +01:00
Alexandre Julliard
a135e47167
gdi32: Don't set gradient alpha channel for 8888 bitmaps created with bitfields.
2011-11-29 15:12:28 +01:00
Alexandre Julliard
a869fc47bd
gdi32: Implement 8-bpp and 4-bpp gradient dithering.
2011-11-29 15:12:26 +01:00
Alexandre Julliard
ce2f542267
gdi32: Implement 16-bpp gradient dithering.
2011-11-29 15:12:23 +01:00
Alexandre Julliard
e19a362407
gdi32: Implement rectangular gradients in the DIB engine.
2011-11-29 15:12:20 +01:00
Huw Davies
0ab46cd5e9
gdi32: Avoid reading past the end of the indices array.
...
Spotted by Marcus Meissner.
2011-11-24 17:17:07 +01:00
Huw Davies
224e51fcf5
gdi32: Add an option to allow pen_lines to draw a closed figure.
2011-11-24 17:17:04 +01:00
Alexandre Julliard
79691e7afa
gdi32: Specify an initial allocation size for paths to avoid some reallocations.
2011-11-23 14:00:22 +01:00
Alexandre Julliard
c2491ccc2d
gdi32: Get rid of the Hungarian line noise in the gdi_path structure.
2011-11-23 13:37:14 +01:00
Alexandre Julliard
aefb608752
gdi32: Get rid of the GdiPath typedef.
2011-11-23 13:32:22 +01:00
Alexandre Julliard
ccc3b9caae
gdi32: Get rid of the no longer needed path states.
2011-11-23 13:25:31 +01:00
Alexandre Julliard
2201d08834
gdi32: Only store the path in the DC when it's closed.
...
Open paths are stored only in the path physdev.
2011-11-23 13:24:12 +01:00
Alexandre Julliard
a214a3c3da
gdi32: Store a pointer to the path in the DC and make the path structure opaque.
2011-11-22 12:07:24 +01:00
Alexandre Julliard
ddc9860a42
gdi32: Return a new path from PATH_WidenPath instead of replacing the DC path.
2011-11-22 12:07:18 +01:00
Alexandre Julliard
f388827c8d
gdi32: Return a new path from PATH_FlattenPath instead of replacing the DC path.
2011-11-22 12:05:35 +01:00
Alexandre Julliard
ac1643caec
gdi32: Return the region directly from PATH_PathToRegion.
2011-11-22 11:31:27 +01:00
Alexandre Julliard
7698b636e7
gdi32: Add helper functions for allocating and freeing paths.
2011-11-22 11:25:21 +01:00
Alexandre Julliard
26b1bfa52b
gdi32: Use reallocs when growing a path instead of doing it by hand.
2011-11-22 11:23:53 +01:00
Alexandre Julliard
670f25cc8f
gdi32: Add support for anti-aliasing in the null driver text output fallback.
2011-11-21 12:15:53 +01:00
Alexandre Julliard
1b63d5a610
gdi32: Add a helper function to determine anti-aliasing flags.
2011-11-21 11:52:30 +01:00
Alexandre Julliard
5282ffadad
gdi32: Add a null driver fallback implementation for non-antialiased text output.
2011-11-21 11:52:26 +01:00
Huw Davies
04396063c8
gdi32: Add solid_line primitives.
2011-11-21 11:51:47 +01:00
Huw Davies
f168f838f1
gdi32: Simplify the Bresenham line drawing.
2011-11-21 11:51:23 +01:00
Alexandre Julliard
ffaf0c4966
gdi32: Don't mark a local variable static.
2011-11-17 17:34:14 +01:00
Huw Davies
666f83bc0f
gdi32: Add a helper to retrieve the octant bias.
2011-11-16 17:00:23 +01:00
Huw Davies
48b1e66309
gdi32: Use an array of masks to simplify the bitmap conversion.
2011-11-16 17:00:19 +01:00
Huw Davies
6c9c9107d4
gdi32: Return valid anti-alias format bitmaps if the glyph is a monochrome bitmap.
2011-11-16 17:00:15 +01:00
Huw Davies
f3fab96393
gdi32: Add a helper to return the maximum level to use for a given anti-aliasing format.
2011-11-16 17:00:10 +01:00
Huw Davies
d43d17e248
gdi32/tests: Add tests for text rendering.
2011-11-14 15:25:28 +01:00
Huw Davies
e9612c1af0
gdi32: Add support for drawing text in the dib driver.
2011-11-14 15:25:28 +01:00
Huw Davies
5c6f630b98
gdi32: Add draw_glyph primitives.
2011-11-14 15:25:28 +01:00
Huw Davies
18520f2e63
gdi32: Calculate the min/max color component intensities for 17 glyph levels.
2011-11-14 15:25:27 +01:00
Huw Davies
f284f5970a
gdi32: Move the ETO_OPAQUE rectangle drawing to the dib driver.
2011-11-14 15:25:27 +01:00
Huw Davies
5990091bbf
gdi32: Expose a solid_rects function.
2011-11-14 15:25:27 +01:00
Huw Davies
15fabcdefe
gdi32: Keep track of the text pixel color.
2011-11-14 15:25:27 +01:00
Marcus Meissner
4222ccf1cf
gdi32: Fixed loop end setting (Coverity).
2011-11-14 15:25:19 +01:00
Dmitry Timoshkov
6acf226fa1
gdi32: Remove a duplicated line of code.
2011-11-09 11:39:02 +01:00
Alexandre Julliard
5e1599d8c0
gdi32: Don't set the bitmap owner when selecting a pattern brush.
2011-11-08 20:13:18 +01:00
Alexandre Julliard
0c5d619bd3
gdi32: Use the CopyBitmap entry point to copy the bitmap of a pattern brush.
2011-11-08 19:26:30 +01:00
Alexandre Julliard
26f5e2c6e7
gdi32: Implement the CopyBitmap entry point in the null driver.
2011-11-08 19:25:37 +01:00
Alexandre Julliard
9391c6a757
gdi32: Add a CopyBitmap driver entry point.
2011-11-08 19:25:05 +01:00
Alexandre Julliard
cc673f44c7
gdi32: Grab the bits directly for DIB pattern brushes instead of duplicating the bitmap.
2011-11-08 19:24:17 +01:00
Alexandre Julliard
c88f4d452f
gdi32: Get rid of the get_bitmap_image helper.
2011-11-08 19:24:13 +01:00
Alexandre Julliard
03496d6fba
gdi32: Avoid copying the brush pattern if the format matches the DC.
2011-11-08 13:32:36 +01:00
Alexandre Julliard
bb162ba4b4
gdi32: Reselect the pattern brush on every use if it's mapped with DIB_PAL_COLORS.
2011-11-08 13:18:01 +01:00
Alexandre Julliard
b47debddf5
gdi32: Return the original brush data in GetObject.
2011-11-07 21:06:21 +01:00
Akihiro Sagawa
35a928a0f8
gdi32: Use the translated string as a charset name.
2011-11-07 19:34:47 +01:00
Akihiro Sagawa
b5db70f1ca
gdi32: Add a string table resource for the translation.
2011-11-07 17:28:00 +01:00
Alexandre Julliard
03e0d96b9e
gdi32: Retrieve the brush pattern bits from the cache for enhanced metafiles.
2011-11-07 13:43:30 +01:00
Alexandre Julliard
7d0b65c4d1
gdi32: Retrieve the brush pattern bits from the cache for metafiles.
2011-11-07 13:42:57 +01:00
Alexandre Julliard
199409a27b
gdi32: Fix positioning of font underlines and strikeouts.
2011-11-07 13:41:18 +01:00
Alexandre Julliard
6098a0457b
gdi32/tests: Avoid some array bounds warnings.
2011-11-07 11:43:46 +01:00
Alexandre Julliard
bfb41db3a2
gdi32: Set the mono color map in BitBlt also for the initial PutImage attempt.
2011-11-04 13:24:03 +01:00
Alexandre Julliard
278899d1e8
gdi32: Return failure when GetPixel is not supported.
2011-11-04 11:00:57 +01:00
Alexandre Julliard
37b56554a6
gdi32: Add support for pattern brushes in the DIB driver.
2011-11-03 12:50:13 +01:00
Alexandre Julliard
457c9650de
gdi32: Retrieve the bits of a pattern brush when it's selected into a different type of DC.
2011-11-03 12:50:13 +01:00
Alexandre Julliard
8277ac3f7c
gdi32: Don't free bitmap bits when changing the owner, we may still have pointers to them.
2011-11-03 12:50:10 +01:00
Alexandre Julliard
24ac8c66bb
gdi32: Pass the full brush contents in the SelectBrush driver entry point.
2011-11-02 21:41:15 +01:00
Alexandre Julliard
20ecd97bee
gdi32: Store internal brush data in separate fields in the brush object.
2011-11-02 21:04:53 +01:00
Alexandre Julliard
7f7dd82c7b
gdi32: Sanitize the DIB information for DIB pattern brushes.
2011-11-02 12:22:44 +01:00
Alexandre Julliard
6bf6575c5c
gdi32: Store a pointer instead of a global handle for DIB pattern brushes.
2011-11-02 12:02:27 +01:00
Alexandre Julliard
8afcff3c79
gdi32/tests: Add some tests for palette-relative pattern brushes.
2011-11-02 11:47:43 +01:00
Alexandre Julliard
4ec87b3e8d
gdi32: Add some brush tests.
2011-11-01 14:12:16 +01:00
Alexandre Julliard
95cba0c0f4
gdi32: Add a DC driver entry point for GdiGradientFill.
2011-10-31 23:51:38 +01:00
Alexandre Julliard
afd962121b
gdi32/tests: Add some tests for the behavior of a printer DC.
2011-10-31 20:23:20 +01:00
Alexandre Julliard
f1f5f33468
gdi32: Emulate DDB support using the DIB driver when the graphics driver doesn't support bitmaps.
2011-10-31 20:21:15 +01:00
Alexandre Julliard
c9bdcbafab
gdi32: Allocate the bits for a DDB the first time it's used in any DIB driver call.
2011-10-31 20:06:37 +01:00
Huw Davies
1c1fff557d
gdi32: Pass a NULL user-style array to ExtCreatePen if the user-style count is zero.
2011-10-28 17:26:44 +02:00
Alexandre Julliard
418424d362
gdi32: Add path entry points for functions that behave differently with an open path.
2011-10-28 13:18:42 +02:00
Alexandre Julliard
e5db8969ac
gdi32: Always start a new stroke when the path ends with a closed figure.
2011-10-28 13:18:23 +02:00
Alexandre Julliard
e5ff45992e
gdi32: Add a helper function to add multiple points at once to a path.
2011-10-28 13:18:10 +02:00
Alexandre Julliard
fbafa45e84
gdi32: Pass a HDC instead of a DC pointer to internal path functions.
2011-10-28 13:07:52 +02:00
Alexandre Julliard
26aaaa1269
gdi32: Fix a misplaced release_dc_ptr call.
2011-10-28 11:29:34 +02:00
Alexandre Julliard
bb21ac85b3
gdi32: Add a helper function to copy BITMAPINFO structures to avoid copying uninitialized data.
2011-10-27 14:19:44 +02:00
Ken Thomases
14efc6eb24
gdi32: Allow ~-based paths in HKCU\Software\Wine\Fonts:Path.
2011-10-27 12:24:52 +02:00
Alexandre Julliard
c441d57452
gdi32: Implement the ExtTextOut entry point in the path driver.
2011-10-26 23:16:52 +02:00
Alexandre Julliard
613972efe5
gdi32: Implement the polyline entry points in the path driver.
2011-10-26 23:16:51 +02:00
Alexandre Julliard
d4889bef47
gdi32: Implement the polygon entry points in the path driver.
2011-10-26 23:16:51 +02:00
Alexandre Julliard
ac00dfc984
gdi32: Implement the Bezier entry points in the path driver.
2011-10-26 23:16:19 +02:00
Alexandre Julliard
4d9cc24128
gdi32: Implement the arc entry points in the path driver.
2011-10-26 20:10:00 +02:00
Alexandre Julliard
f8040958f5
gdi32: Implement the Rectangle and RoundRect entry points in the path driver.
2011-10-26 20:05:24 +02:00
Alexandre Julliard
364e216462
gdi32: Add a helper function to start a new path stroke.
2011-10-26 20:02:10 +02:00
Alexandre Julliard
fc5e29486d
gdi32: Implement the LineTo entry point in the path driver.
2011-10-26 19:58:51 +02:00
Alexandre Julliard
2c1ec7fc3b
gdi32: Implement the MoveTo entry point in the path driver.
2011-10-26 19:57:28 +02:00
Alexandre Julliard
8a7bf0a2ab
gdi32: Push a path driver on the DC stack when a path is opened.
2011-10-26 19:53:22 +02:00
Alexandre Julliard
97a261d573
gdi32: Avoid directly modifying the cursor position in the DC structure in PolyDraw.
2011-10-26 19:47:27 +02:00
Alexandre Julliard
ba2ea23574
gdi32: Always use a polygon to draw text strike-outs and underlines.
2011-10-26 14:14:36 +02:00
Alexandre Julliard
ef34c47c4b
gdi32: Move internal path functions to the top of the file to avoid forward declarations.
2011-10-26 14:14:32 +02:00
Alexandre Julliard
f44c1e6533
gdi32/tests: Add tests for path open/closed states.
2011-10-26 12:41:56 +02:00
Henri Verbeet
aa7bbe1376
gdi32: Update the DC in ExtEscape().
...
Specifically, X11DRV_FLUSH_GL_DRAWABLE needs correct clip rects.
2011-10-26 12:41:33 +02:00
Alexandre Julliard
7fbb16d4ba
gdi32: Implement GdiRealizationInfo as a standard driver entry point.
2011-10-26 12:41:32 +02:00
Alexandre Julliard
8796831a9f
gdi32: Implement FontIsLinked as a standard driver entry point.
2011-10-26 12:41:32 +02:00
Alexandre Julliard
e31c51b65e
gdi32: Implement GetFontData as a standard driver entry point.
2011-10-26 12:41:31 +02:00
Alexandre Julliard
441d6cfcd4
gdi32: Implement GetTextFace as a standard driver entry point.
2011-10-26 12:41:31 +02:00
Alexandre Julliard
a2de6a8766
gdi32: Implement GetTextExtentExPointI as a standard driver entry point.
2011-10-26 12:41:30 +02:00
Alexandre Julliard
1740f34ffb
gdi32: Implement GetTextCharsetInfo as a standard driver entry point.
2011-10-26 12:41:30 +02:00
Alexandre Julliard
ce8d7b4601
gdi32: Implement GetOutlineTextMetrics as a standard driver entry point.
2011-10-26 12:41:29 +02:00
Alexandre Julliard
0c96820104
gdi32: Implement GetKerningPairs as a standard driver entry point.
2011-10-26 12:41:29 +02:00
Alexandre Julliard
6376b4cf6f
gdi32: Implement GetGlyphOutline as a standard driver entry point.
2011-10-25 16:57:28 +02:00
Alexandre Julliard
ff96c4dd4e
gdi32: Implement GetGlyphIndices as a standard driver entry point.
2011-10-25 16:57:27 +02:00
Alexandre Julliard
90ecea9739
gdi32: Implement GetFontUnicodeRanges as a standard driver entry point.
2011-10-25 16:57:27 +02:00
Alexandre Julliard
23c7c0469c
gdi32: Reimplement GetCharABCWidthsFloat using the integer version.
2011-10-25 16:57:27 +02:00
Alexandre Julliard
27208a0ec5
gdi32: Implement GetCharABCWidthsI as a standard driver entry point.
2011-10-25 16:57:27 +02:00
Alexandre Julliard
e5a0fa7089
gdi32: Implement GetCharABCWidths as a standard driver entry point.
2011-10-25 16:57:26 +02:00
Alexandre Julliard
a8444d7fd1
gdi32: Add driver entry points for a number of font functions.
2011-10-24 23:45:37 +02:00
Alexandre Julliard
2b1b11d681
gdi32: Rename the EnumDeviceFonts entry point to EnumFonts since it's not limited to device fonts.
2011-10-24 23:34:33 +02:00
Alexandre Julliard
cbd81d391c
gdi32: Implement EnumDeviceFonts as a standard driver entry point.
2011-10-24 23:34:28 +02:00
Alexandre Julliard
873bf81d3b
gdi32: Don't return outline metrics for bitmap fonts.
2011-10-24 23:34:05 +02:00
Alexandre Julliard
20070d0838
gdi32: Implement GetTextMetrics as a standard driver entry point.
2011-10-24 20:03:53 +02:00
Alexandre Julliard
ca4177997c
gdi32: Add a few helper functions for computing font metrics.
2011-10-24 20:03:09 +02:00
Thomas Faber
0a44501a4e
gdi32/tests: Test GetTextExtentExPoint behavior with zero and negative max extent values.
2011-10-24 19:37:07 +02:00
Huw Davies
f53d73a017
gdi32: Add a fake 1-entry color table for 1-bpp ddbs.
2011-10-21 16:46:19 +02:00
Alexandre Julliard
5c1c7a6576
gdi32: Implement GetCharWidthW as a standard driver entry point.
2011-10-20 17:05:11 +02:00
Alexandre Julliard
6ad9eb805c
gdi32: Implement GetTextExtentExPointW as a standard driver entry point.
2011-10-20 17:04:35 +02:00
Alexandre Julliard
328328bb2c
gdi32: Add an intermediate variable to avoid array bounds warnings.
2011-10-20 12:46:21 +02:00
Alexandre Julliard
86b4fe7b0e
gdi32/tests: Add intermediate pointers to color tables to simplify the code and avoid array bounds warnings.
2011-10-20 12:34:58 +02:00
Alexandre Julliard
ef0fe44327
gdi32: Implement SelectFont as a standard driver entry point.
2011-10-19 18:22:05 +02:00
Alexandre Julliard
885a4a5c08
gdi32: Add an initial Freetype font driver.
2011-10-19 18:22:01 +02:00
Alexandre Julliard
6bb001da6f
gdi32: Add support for pushing a font driver on the DC driver stack.
2011-10-19 18:21:56 +02:00
Huw Davies
595dbe2eba
gdi32: Fix character code metrics for bitmap fonts.
2011-10-19 17:38:33 +02:00
Huw Davies
6aece157a0
gdi32/tests: Remove the no longer used todo functionality of the test_color macro.
2011-10-19 16:59:32 +02:00
Huw Davies
2e72434340
gdi32/tests: Add tests for GetPixel.
2011-10-19 16:59:29 +02:00
Huw Davies
f6c7e96a61
gdi32: Implement GetPixel.
2011-10-19 16:59:25 +02:00
Huw Davies
70be58c17d
gdi32: Add get_pixel primitives.
2011-10-19 16:59:21 +02:00
Huw Davies
07e652b330
gdi32/tests: Add tests for SetPixel.
2011-10-19 16:59:04 +02:00
Huw Davies
2ac6a1bbf6
gdi32: Implement SetPixel.
2011-10-19 16:58:57 +02:00
Huw Davies
ddbaa9491a
gdi32: Add pixel_to_colorref primitives.
2011-10-19 16:58:51 +02:00
Huw Davies
b700660075
gdi32/tests: Add tests for non-rgb colorrefs.
2011-10-19 16:58:46 +02:00
Huw Davies
a3b5f270a8
gdi32: Add support for non-rgb colorrefs.
2011-10-19 16:58:40 +02:00
Huw Davies
0967de74db
gdi32: Introduce a unified function to perform COLORREF to pixel color mapping.
2011-10-19 16:58:31 +02:00
Marcus Meissner
06935e9323
gdi32: Remove a incorrect sizeof from pointer arithmetic (Coverity).
2011-10-18 15:17:07 +02:00
Huw Davies
ffe5e20b78
gdi32/tests: Remove unused legacy values.
2011-10-18 15:13:04 +02:00
Alexandre Julliard
013f5a9b23
gdi32: Return the correct error code when selecting objects in a metafile.
2011-10-18 15:03:29 +02:00
Alexandre Julliard
5267c1316b
gdi32: Get rid of the DC_FUNCTIONS typedef.
2011-10-17 20:39:54 +02:00
Huw Davies
4dbc0690ef
gdi32/tests: Add some StretchDIBits tests.
2011-10-17 17:45:09 +02:00
Huw Davies
c9a7bb715d
gdi32: Implement nulldrv_StretchDIBits using the PutImage gdi driver function.
2011-10-17 17:45:08 +02:00
Huw Davies
a01844b013
gdi32: Make the convert_bits and stretch_bits helpers external.
2011-10-17 17:45:08 +02:00
Huw Davies
64f6e9bc58
gdi32: Move the intersection of vis rects into a separate function.
2011-10-17 17:45:08 +02:00
Huw Davies
2127e9444d
gdi32: Allow a caller to build_rle_bitmap to not request the clip region.
2011-10-17 17:45:08 +02:00
Alexandre Julliard
bfdac3e885
gdi32: Add a fall back implementation of BlendImage using client-side blending.
2011-10-17 17:45:05 +02:00
Alexandre Julliard
78d50cafb2
gdi32/tests: Add test cases for DIB blending.
2011-10-17 17:44:25 +02:00