Commit Graph

56 Commits

Author SHA1 Message Date
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 901c1997cb gdi32: Make the push/pop_dc_driver functions available to the drivers. 2011-09-07 14:39:46 +02:00
Alexandre Julliard e7c523b135 gdi32: Use SetDIBits to set the initial bits of a DDB. 2011-08-31 11:36:23 +02:00
Alexandre Julliard 6f066ec18a gdi32: Forward the null driver PutImage to the DIB driver since the bits are in DIB format. 2011-08-31 11:36:05 +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 a13df5ce6c gdi32: Store the initial bitmap bits with DIB alignment. 2011-08-29 19:44:17 +02:00
Huw Davies a55ec17b74 gdi32: Use the dib driver GetImage and PutImage implementations in GetBitmapBits and SetBitmapBits when appropriate. 2011-08-22 16:18:08 +02:00
Huw Davies cb82c45b3a gdi32: Allow SetBitmapBits to set incomplete scanlines. 2011-08-22 16:16:08 +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 805f083f34 gdi32: Add a missing release in the error path. 2011-08-05 10:58:16 +02:00
Alexandre Julliard 91976a5b74 gdi32: Use GetImage to retrieve the brush bits in metafiles. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 6d00196aea gdi32: Get rid of the SetBitmapBits driver entry point. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 09eb59d3c6 gdi32: Set the initial bits of a bitmap from the gdi side. 2011-08-03 14:15:47 +02:00
Alexandre Julliard 107849916f gdi32: Reimplement SetBitmapBits using the PutImage driver entry point. 2011-08-03 14:15:28 +02:00
Alexandre Julliard 76b5c1dcac gdi32: Partial implementation of PutImage in the null driver for DDBs. 2011-08-03 12:31:52 +02:00
Alexandre Julliard 366174b213 gdi32: Get rid of the GetBitmapBits driver entry point. 2011-07-25 20:32:41 +02:00
Alexandre Julliard 1724c73534 gdi32: Reimplement GetBitmapBits using the GetImage driver function. 2011-07-25 19:56:52 +02:00
Alexandre Julliard d33e0d2c86 gdi32: Add an inline helper to retrieve a DDB byte width. 2011-07-25 19:56:43 +02:00
Alexandre Julliard bb3a1bdcac gdi32: Implement GetImage in the null driver. 2011-07-25 19:50:19 +02:00
Alexandre Julliard 8a906250eb gdi32: Get rid of the SetDIBits driver entry point. 2011-07-25 19:47:03 +02:00
Alexandre Julliard b01eb19511 gdi32: Remove the GetDIBits entry point from the graphics driver. 2011-07-18 17:07:51 +02:00
Alexandre Julliard c7a8ff26d3 gdi32: Graphics driver functions no longer need to be CDECL. 2011-07-13 14:56:12 +02:00
Huw Davies 4cffb2d0a9 gdi32: Add a skeleton dib driver. 2011-04-04 13:38:19 +02:00
Alexandre Julliard 122b5bf784 gdi32: Add null driver entry points for the bitmap functions. 2011-03-16 11:20:30 +01:00
Alexandre Julliard adc63287b5 gdi32: Add null driver entry points for the object selection functions. 2011-03-10 12:39:03 +01:00
Maarten Lankhorst 720bc3fa53 gdi32: Handle BITMAP_CopyBitmap correctly for negative heights. 2011-02-22 13:30:11 +01:00
Alexandre Julliard 1914f3ecae gdi32: Copy a DIB section as a DIB section in BITMAP_CopyBitmap. 2010-09-28 22:44:36 +02:00
Alexandre Julliard 69c8f0b67d gdi32: Store the total visible rectangle in the DC. 2010-07-26 18:38:31 +02:00
Dmitry Timoshkov c7b45aa8d3 gdi32: Fix GDI locking in SetBitmapBits. 2010-03-15 13:28:24 +01:00
Henri Verbeet 9ab004d56a gdi32: GetObject() should return the DIB's absolute height in dsBmih.biHeight. 2010-03-01 14:03:34 +01:00
Alexandre Julliard 29d68b3fa7 gdi32: Move the 16-bit DIB pointer support to gdi16.c. 2009-09-26 13:50:37 +02:00
Rob Shearman ccce11d2c3 gdi32: Move 16-bit functions not exported in gdi32.dll into files compiled only when 16-bit functionality is enabled. 2009-02-19 12:51:50 +01:00
Alexandre Julliard 73593cbf5a gdi32: Store a separate flag to mark a GDI object for delayed destruction. 2009-01-29 21:45:01 +01:00
Alexandre Julliard de831f334c gdi32: Release GDI handles before freeing the object.
This makes it unnecessary to hold the GDI lock during destruction.
2009-01-28 18:45:21 +01:00
Alexandre Julliard 311c53db4f gdi32: Allocate and initialize GDI objects before giving them a handle.
This makes it unnecessary to hold the GDI lock since the object
cannot be accessed before it has a handle.
2009-01-28 18:43:06 +01:00
Alexandre Julliard 5811a2ccb4 gdi32: Use the official constants instead of the old Win9x magic numbers for GDI object types. 2009-01-28 16:20:56 +01:00
Alexandre Julliard 68d19b9552 gdi32: Don't hold the GDI lock while calling the GetObjectA/W methods for GDI objects. 2009-01-27 16:30:43 +01:00
Alexandre Julliard f03871094c gdi32: Don't hold the GDI lock while calling the DeleteObject method for GDI objects. 2009-01-27 16:19:37 +01:00
Lei Zhang 6d790d6ed0 gdi32: Prevent integer overflow in CreateBitmapIndirect. 2008-12-17 13:52:41 +01:00
Michael Stefaniuc 2d94915f27 gdi32: Don't cast the void pointer returned by GDI_GetObjPtr(). 2008-10-24 14:24:59 +02:00
Andrew Talbot 44be6c7cbf gdi32: Sign-compare warnings fix. 2008-10-06 13:48:53 +02:00
Alexandre Julliard aa500d266f gdi32: Get rid of the 16-bit GetObject functions. 2008-02-18 17:50:35 +01:00
Alexandre Julliard 31576d408e gdi32: Avoid locking in BITMAP_CopyBitmap. 2008-02-05 18:26:25 +01:00
Alexandre Julliard 630c976f88 gdi32: Don't hold the GDI lock when calling DC_InitDC. 2008-02-05 18:26:18 +01:00
Alexandre Julliard b962fca75c gdi32: Avoid locking in CreateCompatibleBitmap. 2008-02-05 17:34:56 +01:00
Dmitry Timoshkov d5456de058 gdi32: Do not allow to create too large device dependent bitmaps like Windows does. 2008-01-15 12:39:50 +01:00
Stefan Dösinger d5d8a5be48 gdi32: Test bitmap depths. 2007-12-12 13:48:06 +01:00
Alexandre Julliard af6c0a09c5 gdi32: Move the object refcount handling to the SelectObject backend functions. 2007-09-27 20:57:02 +02:00
Alexandre Julliard a1e31397e1 gdi32: Don't pass an object pointer to the SelectObject backend functions. 2007-09-27 20:14:13 +02:00
Alexandre Julliard d88ff791ef gdi32: New DC locking mechanism that doesn't require holding the global GDI lock. 2007-08-31 15:58:38 +02:00