Commit Graph

1700 Commits

Author SHA1 Message Date
Dmitry Timoshkov cca41207c1 gdi32: Fix parameters of some GDI stock fonts. 2012-06-04 12:17:53 +02:00
Dmitry Timoshkov 4fa2945544 gdi32/tests: GetGlyphOutline should fail for a bitmap font. 2012-06-01 13:25:52 +02:00
Alexandre Julliard 6d23f3e7e1 gdi32: Keep the source DC locked until the end in StretchBlt and AlphaBlend. 2012-05-31 15:33:12 +02:00
Alexandre Julliard 61f4767ade gdi32: Don't implement the gamma ramp functions in the DIB driver. 2012-05-31 13:44:32 +02:00
Alexandre Julliard af4871f862 gdi32: Make sure the bounds are always updated in ExtTextOutW. 2012-05-30 21:35:22 +02:00
Alexandre Julliard 93758c43fd gdi32: Remove the CreateBitmap and DeleteBitmap driver entry points. 2012-05-29 21:06:41 +02:00
Alexandre Julliard 1416d0e6f1 gdi32: Remove the bitmap parameter from the Get/PutImage entry points. 2012-05-29 21:05:52 +02:00
Alexandre Julliard 7c4c233d12 gdi32: Add a helper function that implements PutImage on a bitmap. 2012-05-29 18:20:12 +02:00
Alexandre Julliard cf85fb14ab gdi32: Add a helper function that implements GetImage on a bitmap. 2012-05-29 18:20:11 +02:00
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