Commit Graph

105 Commits

Author SHA1 Message Date
Alexandre Julliard 7bcd8fa20e gdi32: Copy bits in the correct order for the overlap case in the individual copy_rect functions. 2011-09-22 10:22:56 +02:00
Alexandre Julliard 5fd305c31f gdi32: Add helper functions for copying a DIB line. 2011-09-22 10:18:14 +02:00
Alexandre Julliard 3ace501190 gdi32: Copy DIB rectangles in the correct order when source and destination overlap. 2011-09-22 10:11:27 +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 7696168dce gdi32: Add a placeholder function for DIB stretching. 2011-09-14 11:17:02 +02:00
Huw Davies fcea548464 gdi32: The offsets should be signed. 2011-09-09 17:33:11 +02:00
Huw Davies 5bd003edaa gdi32: When creating a dib_info from a ddb, always make a copy of the colour map. 2011-09-08 11:10:55 +02:00
Alexandre Julliard 2a5cabc22d gdi32: Move DIB driver definitions to dibdrv.h. 2011-09-08 10:41:35 +02:00
Alexandre Julliard d12d98511c gdi32: Allocate the DIB driver on first use, and free it only upon DC destruction. 2011-09-08 10:41:19 +02:00
Alexandre Julliard cef1832bfb gdi32: Add a driver entry point for CreateCompatibleDC. 2011-09-07 18:13:06 +02:00
Alexandre Julliard f4e9bdb904 gdi32: Always set biClrUsed in internal BITMAPINFO structures. 2011-09-07 12:07:15 +02:00
Alexandre Julliard bff79eb2b9 gdi32: Forward the null driver GetImage to the DIB driver since the bits are in DIB format. 2011-08-30 20:13:52 +02:00
Alexandre Julliard 79ef408cd7 gdi32: Add a helper function to initialize DIB info from a bitmap object. 2011-08-29 19:51:24 +02:00
Alexandre Julliard 987a18a55c gdi32: Remove an unused variable. 2011-08-29 12:08:26 +02:00
Huw Davies 75e2e9cf3f gdi32: Add an exception handler to catch bad pointers passed by an application. 2011-08-23 16:53:56 +02:00
Huw Davies 1def8d635a gdi32: Add support for all of the ternary rops. 2011-08-23 16:53:55 +02:00
Huw Davies 95f1abc8d8 gdi32: Add a copy_rect helper function. 2011-08-23 16:53:55 +02:00
Huw Davies ff307d573a gdi32: Move the dib driver's GetImage and PutImage to a new source file. 2011-08-23 16:53:55 +02:00
Huw Davies 925fa10865 gdi32: Change the object-level brush function to accept a stand-alone dib and a separate clip region. 2011-08-22 16:19:40 +02:00
Huw Davies c6f6c3f727 gdi32: Implement Polyline and PolyPolyline in the dib driver. 2011-08-22 16:19:24 +02:00
Huw Davies 0f40ad8a3d gdi32: Move to using a multi-line pen object-level function. 2011-08-22 16:19:15 +02:00
Huw Davies 1e83fd0076 gdi32: Use the gdi_image_bits structure to maintain the dib driver's bits. 2011-08-22 16:18:54 +02:00
Huw Davies 2e908e067c gdi32: Simplify dibdrv_PutImage a little. 2011-08-22 16:18:24 +02:00
Huw Davies de213f2c66 gdi32: Avoid directly accessing the bits ptr where possible. 2011-08-22 16:18:13 +02:00
Huw Davies bdc3b9c0a9 gdi32: Avoid a possible unnecessary conversion if PutImage is called with zero biClrUsed. 2011-08-22 16:15:45 +02:00
Huw Davies 40742c2f72 gdi32: Fix colour table comparison. 2011-08-22 16:15:13 +02:00
Huw Davies c5f484597f gdi32: Simplify dibdrv_GetImage by merging the stand-alone and selected bitmap cases. 2011-08-05 15:24:58 +02:00
Huw Davies 37423cec7c gdi32: Fix dibdrv_PutImage for the selected bitmap case. 2011-08-05 15:22:48 +02:00
Alexandre Julliard 3a1194edd7 gdi32: Always use BI_BITFIELDS for 16-bpp in GetImage. 2011-08-05 15:22:43 +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
Alexandre Julliard 2ba1a43703 gdi32: Use the visrect coordinates in dibdrv_PutImage. 2011-08-03 19:59:46 +02:00
Alexandre Julliard 6d00196aea gdi32: Get rid of the SetBitmapBits driver entry point. 2011-08-03 14:15:47 +02:00
Huw Davies d4076d438c gdi32: Add a PutImage implementation to the dib driver. 2011-08-02 20:47:52 +02:00
Huw Davies 1da138ced0 gdi32: Move the colour setting to a separate function. 2011-08-02 20:47:52 +02:00
Huw Davies 2521bf3cc2 gdi32: Add a copy_rect primitive. 2011-08-02 20:47:52 +02:00
Huw Davies 76b0626ff2 gdi32: Add a function to retrieve the rop codes. 2011-08-02 20:47:51 +02:00
Huw Davies 4b50743f87 gdi32: Simplify the calculation of the rop masks. 2011-08-02 20:47:51 +02:00
Huw Davies 3460665c50 gdi32: Add an inline helper to return the number of colour entries in a dib. 2011-07-28 18:37:39 +02:00
Alexandre Julliard 366174b213 gdi32: Get rid of the GetBitmapBits driver entry point. 2011-07-25 20:32:41 +02:00
Alexandre Julliard dcfe0c48ea gdi32: Implement GetImage in the DIB driver. 2011-07-25 19:51:55 +02:00
Alexandre Julliard 8a906250eb gdi32: Get rid of the SetDIBits driver entry point. 2011-07-25 19:47:03 +02:00
Alexandre Julliard 07528a24b9 gdi32: Add a special case for converting dibs to 1-bpp using the background color. 2011-07-20 11:44:58 +02:00
Alexandre Julliard eb87e694a2 gdi32: Add inline helpers to compute DIB stride and total size. 2011-07-19 14:54:14 +02:00
Alexandre Julliard b01eb19511 gdi32: Remove the GetDIBits entry point from the graphics driver. 2011-07-18 17:07:51 +02:00
Huw Davies 09a1418449 gdi32: Export a bitmap conversion function. 2011-07-18 16:35:20 +02:00
Huw Davies 9b56cec9c5 gdi32: Zero-pad the end of the scanlines. 2011-07-15 16:36:00 +02:00
Alexandre Julliard cf05fca878 gdi32: Add driver entry points for GetImage and PutImage. 2011-07-14 11:30:58 +02:00
Huw Davies ba33f5e667 gdi32: Add conversion routines for source dibs with an arbitrary order of red and blue 5-bit and green 5 or 6-bit channels. 2011-07-13 15:00:17 +02:00
Huw Davies 4c3cec75f2 gdi32: Add conversion routines for source dibs with an arbitrary order of 8-bit channels. 2011-07-13 15:00:16 +02:00
Huw Davies dddc079d4f gdi32: Implement the conversion between two identical bitfield dibs. 2011-07-13 15:00:14 +02:00