Commit Graph

47 Commits

Author SHA1 Message Date
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
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
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 b7a15ae7fa gdi32: Overlapping rectangles are not allowed in GdiAlphaBlend. 2011-10-14 20:26:43 +02:00
Alexandre Julliard 8f4d50ea4b gdi32: Add an all-one alpha channel when converting a DIB for blending. 2011-10-12 20:52:46 +02:00
Huw Davies a7b5d86655 gdi32: Add a helper to retrieve the bounding rectangle. 2011-10-11 15:43:18 +02:00
Alexandre Julliard 2adcb2b94a gdi32/tests: Add tests for GdiAlphaBlend with source alpha. 2011-10-11 13:37:42 +02:00
Alexandre Julliard 7029559ed6 gdi32: Avoid rounding errors with visible rectangles in mirroring blits. 2011-09-23 14:17:05 +02:00
Alexandre Julliard 514b006df2 gdi32: Force colors to black and white for 1-bpp source in AlphaBlend. 2011-09-20 16:21:40 +02:00
Alexandre Julliard c819e4bdea gdi32: Add a null driver fallback for AlphaBlend, using a new BlendImage driver entry point. 2011-09-14 11:57:45 +02:00
Alexandre Julliard 27516babd6 gdi32: Add a couple of helper functions for converting and stretching DIBs. 2011-09-14 11:25:19 +02:00
Alexandre Julliard 7696168dce gdi32: Add a placeholder function for DIB stretching. 2011-09-14 11:17:02 +02:00
Alexandre Julliard 497c3982b6 gdi32: Move coordinate checks into the common part of GdiAlphaBlend. 2011-09-13 17:17:52 +02:00
Alexandre Julliard c309883a70 gdi32: Update the coordinates in convert_bitmapinfo to reflect the position in the destination bitmap. 2011-08-03 20:26:44 +02:00
Huw Davies 3cb26488bd gdi32: Rewrite SetDIBits to use the PutImage gdi driver function. 2011-07-25 13:40:53 +02:00
Alexandre Julliard 0d9dde7953 gdi32: Add an optional clip region to the PutImage entry point. 2011-07-21 18:49:47 +02:00
Alexandre Julliard faa1f7371e gdi32: Get rid of the StretchDIBits-based fallback for StretchBlt. 2011-07-21 15:43:53 +02:00
Alexandre Julliard 7dc8f48ef8 gdi32: Get rid of the offset in the gdi_image_bits structure now that we are passing the full rectangles. 2011-07-21 15:36:34 +02:00
Alexandre Julliard 97c30bdd6c gdi32: Allow the PutImage entry point to optionally support stretching. 2011-07-21 15:35:48 +02:00
Alexandre Julliard 73dc9833b7 gdi32: Pass the full bitblt_coords structure to the Get/PutImage entry points. 2011-07-21 15:35:30 +02:00
Alexandre Julliard 01e12ec9f9 gdi32: Move the checks for empty visible rects in PatBlt/StretchBlt back to gdi32. 2011-07-20 19:23:04 +02:00
Alexandre Julliard 414fe85c8a gdi32: Set the color maps to the destination DC colors for 1-bpp images. 2011-07-20 19:22:44 +02:00
Alexandre Julliard cc8c831c4d gdi32: Add format conversion to the null driver StretchBlt implementation. 2011-07-19 14:54:14 +02:00
Alexandre Julliard ba168763b2 gdi32: Move a couple of rectangle helper functions to the header. 2011-07-18 16:50:25 +02:00
Alexandre Julliard a64a549b4c gdi32: Use the original StretchBlt rectangle if a DC doesn't have a visible region. 2011-07-18 11:00:55 +02:00
Alexandre Julliard 79d3f29061 gdi32: Add a null driver StretchBlt fallback using GetImage/PutImage. 2011-07-14 12:19:13 +02:00
Alexandre Julliard c7a8ff26d3 gdi32: Graphics driver functions no longer need to be CDECL. 2011-07-13 14:56:12 +02:00
Alexandre Julliard bfc12c0c94 gdi32: Pass the source/dest visible rectangles to the AlphaBlend driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard 1ac1d7c69b gdi32: Pass the dest visible rectangle to the PatBlt driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard 8bd130b923 gdi32: Pass the source/dest visible rectangles to the StretchBlt driver entry point. 2011-07-11 17:12:49 +02:00
Alexandre Julliard 1805f123b0 gdi32: Compute StretchBlt rectangles in gdi32. 2011-07-11 17:12:33 +02:00
Alexandre Julliard 3d34f01f3c gdi32: Add null driver entry points for StretchBlt and AlphaBlend. 2011-03-18 16:05:09 +01:00
Alexandre Julliard 33e27fca77 gdi32: Get rid of the BitBlt driver entry point. 2011-03-17 15:01:11 +01:00
Alexandre Julliard ef676d6d7d gdi32: Add a null driver entry point for PatBlt. 2011-03-17 14:54:56 +01:00
Alexandre Julliard 5eb105f6e1 gdi32: Always call the PatBlt entry point for blits that don't use a source. 2011-03-17 14:48:46 +01:00
Alexandre Julliard ab15d13290 gdi32: Fall back to StretchBlt if the driver doesn't export PatBlt or BitBlt. 2009-09-30 20:55:26 +02:00
Markus Stockhausen e51b20bf05 gdi32: Check for NULL pointer in GdiAlphaBlend. 2009-09-18 09:14:16 -05:00
Igor Tarasov 1b17c8d057 gdi32: Add logcal points to device points conversion for source bitmap before bit stretching. 2009-01-28 14:28:01 +01:00
Francois Gouget 56aab13ecc gdi32: Include config.h before using HAVE_XXX. 2008-07-28 11:34:23 +02:00
Alexandre Julliard 93cbb7a5db gdi32: Perform coordinate transformations using doubles instead of floats to avoid precision loss. 2008-05-22 17:43:01 +02:00
Huw Davies 68420896eb gdi32: Move a couple of TRACEs to the beginning of functions. 2008-05-13 20:16:27 +02:00
Nikolay Sivov caafb52559 gdi32: PlgBlt implementation. 2008-04-02 13:30:15 +02:00
Alexandre Julliard baa8d22543 gdi32: Replace DC_GetDCUpdate by get_dc_ptr+update_dc in the bitmap functions. 2007-09-18 09:34:08 +02:00
Alexandre Julliard 1476e34645 gdi32: Add separate functions for releasing/freeing DCs to replace the standard GDI ones.
This should make it possible to use a different locking mechanism for DCs.
2007-08-21 21:37:40 +02:00
Alexandre Julliard 75b8f88875 gdi32: Get rid of the gdi.h include. 2006-11-17 14:52:07 +01:00
Alexandre Julliard 7dfc447741 gdi32: Renamed the gdi directory to gdi32. 2006-10-20 12:25:29 +02:00