Commit Graph

1359 Commits

Author SHA1 Message Date
Alexandre Julliard 98670510f4 gdi32/tests: Add tests for DIB_PAL_COLORS and DIB palettes with missing entries. 2011-12-09 21:15:23 +01:00
Alexandre Julliard 494bfa866a gdi32: Remove the nb_colors fields in the bitmap object, we always allocate a full size color table. 2011-12-09 21:15:22 +01:00
Alexandre Julliard c441ebc21d gdi32: Fix handling of DIB_PAL_COLORS in the various DIB functions. 2011-12-09 21:15:22 +01:00
Alexandre Julliard 647a4d5844 gdi32: Always allocate a full-size color table when creating a DIB section. 2011-12-09 21:15:16 +01:00
Alexandre Julliard 91d19b4b17 gdi32: Add a helper to build a color table from the DIB_PAL_COLORS bitmap info. 2011-12-08 21:31:59 +01:00
Alexandre Julliard 71199eab77 gdi32: Don't make a copy of the DIB color table when selecting it into a DC. 2011-12-08 20:00:55 +01:00
Alexandre Julliard 910fb48291 gdi32: Use PutImage directly to set the initial bitmap bits. 2011-12-08 19:58:47 +01:00
Alexandre Julliard df9e0ccf5c gdi32: Use the convert_bits helper function in SetDIBits and SetDIBitsToDevice. 2011-12-08 19:53:44 +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 5b17ba887b gdi32: Rename the CLIPPING_UpdateGCRegion function.
We haven't used a GC here for a long time now.
2011-12-07 17:49:54 +01:00
Alexandre Julliard b9f09abdcc gdi32: Don't store the metaclip region, recompute it as needed. 2011-12-07 17:49:47 +01:00
Alexandre Julliard fb37752f53 gdi32: Only store a total visible region when it's a combination of other regions. 2011-12-07 17:48:29 +01:00
Alexandre Julliard ddfe35867d gdi32: Only create the DC visible region when necessary.
Most DCs can simply use the visible rectangle instead.
2011-12-07 16:50:57 +01:00
Alexandre Julliard 1f15ffa1e6 gdi32: Make sure DCs are fully zero-initialized. 2011-12-07 15:53:54 +01:00
Francois Gouget 22cb047ed4 gdi32: Make init_dib_info() static. 2011-12-06 17:53:15 +01:00
Alexandre Julliard 7534d47b1b gdi32: Pass the total visible region in the SetDeviceClipping driver entry point. 2011-12-06 15:51:00 +01:00
Alexandre Julliard 5a1a6e935a gdi32: Maintain a region inside gdi32 to keep track of the total visible region. 2011-12-06 15:50:59 +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 25e300dcad gdi32: Add a null driver implementation for Polyline and Polygon. 2011-12-05 22:29:16 +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 8e8cdc78e6 gdi32: Add more parameter checks in GdiGradientFill. 2011-12-05 16:36:08 +01:00
Alexandre Julliard 7ea59c107f gdi32: Use dithering also for 1-bpp gradients. 2011-12-05 16:36:08 +01:00
Alexandre Julliard 59f347b75c gdi32/tests: Add more gradient tests. 2011-12-05 16:36:07 +01:00
Alexandre Julliard 743b37df3d gdi32: Implement triangular gradients in the DIB engine. 2011-12-05 16:36:03 +01:00
Huw Davies 4ce3af3fad gdi32: Add support for checking the font's gasp flags. 2011-12-02 17:25:54 +01:00
Alexandre Julliard c5bddce3aa gdi32: Add some parameter checks in GdiGradientFill. 2011-12-02 14:00:18 +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 f2ec760a80 gdi32/tests: Add tests for rectangular gradients in DIBs. 2011-11-29 15:12:31 +01:00
Alexandre Julliard a135e47167 gdi32: Don't set gradient alpha channel for 8888 bitmaps created with bitfields. 2011-11-29 15:12:28 +01:00
Alexandre Julliard a869fc47bd gdi32: Implement 8-bpp and 4-bpp gradient dithering. 2011-11-29 15:12:26 +01:00
Alexandre Julliard ce2f542267 gdi32: Implement 16-bpp gradient dithering. 2011-11-29 15:12:23 +01:00
Alexandre Julliard e19a362407 gdi32: Implement rectangular gradients in the DIB engine. 2011-11-29 15:12:20 +01:00
Huw Davies 0ab46cd5e9 gdi32: Avoid reading past the end of the indices array.
Spotted by Marcus Meissner.
2011-11-24 17:17:07 +01:00
Huw Davies 224e51fcf5 gdi32: Add an option to allow pen_lines to draw a closed figure. 2011-11-24 17:17:04 +01:00
Alexandre Julliard 79691e7afa gdi32: Specify an initial allocation size for paths to avoid some reallocations. 2011-11-23 14:00:22 +01:00
Alexandre Julliard c2491ccc2d gdi32: Get rid of the Hungarian line noise in the gdi_path structure. 2011-11-23 13:37:14 +01:00
Alexandre Julliard aefb608752 gdi32: Get rid of the GdiPath typedef. 2011-11-23 13:32:22 +01:00
Alexandre Julliard ccc3b9caae gdi32: Get rid of the no longer needed path states. 2011-11-23 13:25:31 +01:00
Alexandre Julliard 2201d08834 gdi32: Only store the path in the DC when it's closed.
Open paths are stored only in the path physdev.
2011-11-23 13:24:12 +01:00
Alexandre Julliard a214a3c3da gdi32: Store a pointer to the path in the DC and make the path structure opaque. 2011-11-22 12:07:24 +01:00
Alexandre Julliard ddc9860a42 gdi32: Return a new path from PATH_WidenPath instead of replacing the DC path. 2011-11-22 12:07:18 +01:00
Alexandre Julliard f388827c8d gdi32: Return a new path from PATH_FlattenPath instead of replacing the DC path. 2011-11-22 12:05:35 +01:00
Alexandre Julliard ac1643caec gdi32: Return the region directly from PATH_PathToRegion. 2011-11-22 11:31:27 +01:00
Alexandre Julliard 7698b636e7 gdi32: Add helper functions for allocating and freeing paths. 2011-11-22 11:25:21 +01:00
Alexandre Julliard 26b1bfa52b gdi32: Use reallocs when growing a path instead of doing it by hand. 2011-11-22 11:23:53 +01:00
Alexandre Julliard 670f25cc8f gdi32: Add support for anti-aliasing in the null driver text output fallback. 2011-11-21 12:15:53 +01:00
Alexandre Julliard 1b63d5a610 gdi32: Add a helper function to determine anti-aliasing flags. 2011-11-21 11:52:30 +01:00
Alexandre Julliard 5282ffadad gdi32: Add a null driver fallback implementation for non-antialiased text output. 2011-11-21 11:52:26 +01:00
Huw Davies 04396063c8 gdi32: Add solid_line primitives. 2011-11-21 11:51:47 +01:00
Huw Davies f168f838f1 gdi32: Simplify the Bresenham line drawing. 2011-11-21 11:51:23 +01:00