Akihiro Sagawa
566b92320c
gdi32: Fix negative width/height handling in stretch bitblt family.
...
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>
2018-10-15 13:55:05 +02:00
Akihiro Sagawa
bdfbd32e85
gdi32: Use the helper function to order the points of a rectangle.
...
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>
2018-10-12 09:48:29 +02:00
Huw Davies
de9d224996
gdi32: Ignore the alpha channel for blits to DDBs too.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-06 21:48:49 +02:00
Alexandre Julliard
474f9ff1fa
gdi32: Avoid having the source alpha channel interfere with color comparisons in GdiTransparentBlt.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-12 11:43:50 +02:00
Alexandre Julliard
c54b667e25
gdi32: Add support for DIBINDEX colors in 1-bpp blits.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 21:29:51 +01:00
Alexandre Julliard
89d31e42fc
gdi32: Fix color conversion when blitting to 1-bpp by matching pixels instead of color values.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 21:07:46 +01:00
Alexandre Julliard
c0b30432ea
gdi32: Support PALETTEINDEX colors for 1-bpp DIB blits.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-27 20:09:02 +01:00
Huw Davies
0f2a776a59
gdi32: Convert a few uses of get_dc_ptr() to get_physdev_dc().
...
In these cases we have the PHYSDEV meaning we own the DC already.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:43:35 +09:00
Huw Davies
199ca9258a
gdi32: Access several more properties directly from the DC.
...
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:43:35 +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
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
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
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
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
Alexandre Julliard
58fe3afff5
gdi32: Add an intermediate pointer to avoid a compiler warning.
2015-09-10 19:47:24 +09:00
Alexander Almaleh
8762842cd3
gdi32: Fix XFORM.eM22 calculation in PlgBlt.
2014-06-26 21:19:25 +02:00
Alexandre Julliard
6e325afaa7
gdi32: Handle a missing source alpha directly in the blend_rect primitive instead of modifying the source data.
2012-10-10 20:34:08 +02:00
Alexandre Julliard
76272e0773
gdi32: Use BI_BITFIELDS to indicate that a 32-bpp DIB doesn't have an alpha channel.
2012-10-10 20:34:08 +02:00
Alexandre Julliard
34b70728f3
gdi32: Limit the allocation size to the useful data when converting DIB bits.
2012-10-10 20:34:07 +02:00
Alexandre Julliard
e95cff0332
gdi32: Always update the DC before looking for the physdev pointer.
2012-09-20 21:07:04 +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
1416d0e6f1
gdi32: Remove the bitmap parameter from the Get/PutImage entry points.
2012-05-29 21:05:52 +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
41e5bc06d8
gdi32: Add support for clipping source coordinates to the DC device rectangle.
2012-04-30 22:47:35 +02:00
Alexandre Julliard
b1ccff1a9c
gdi32: Add helper functions for manipulating bounds rectangles.
2012-04-16 13:41:29 +02: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
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
9f410413a6
gdi32: Implement GetPixel in the null driver using GetImage.
2011-12-13 14:00:05 +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
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
72fae39ce0
gdi32: Add missing check for empty visible rects in the non-stretching case.
2011-12-08 18:00:00 +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
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
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
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
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