Commit Graph

1621 Commits

Author SHA1 Message Date
Dmitry Timoshkov 7a1ccd8abe gdiplus: Do not convert range_rect.X twice. 2012-08-24 18:25:12 +02:00
Dmitry Timoshkov 144a692ffa gdiplus: Filter tabs out until they are properly supported using stringformat. 2012-08-23 21:36:56 +02:00
Dmitry Timoshkov e6c77a7c7a gdiplus: Clarify in the tests where 1/3 of extra text height comes from. 2012-08-23 21:36:56 +02:00
Dmitry Timoshkov c8055b5b7b gdiplus: GdipMeasureCharacterRanges should respect device units and transformations. 2012-08-22 12:12:27 +02:00
Dmitry Timoshkov 1418cd796c gdiplus: GdipMeasureCharacterRanges shouldn't treat empty layout rectangle as infinite bounds. 2012-08-22 12:12:11 +02:00
Dmitry Timoshkov 32d37c832d gdiplus: Add a bunch of tests for GdipMeasureCharacterRanges. 2012-08-22 12:12:04 +02:00
Dmitry Timoshkov acc4623fd0 gdiplus: Use set_rect_empty() helper to make the code slightly more compact and readable. 2012-08-21 11:47:15 +02:00
Dmitry Timoshkov 10c84dfe3b gdiplus: Rename roundr() to gdip_round() to make it clearer that it's an internal helper. 2012-08-21 11:47:11 +02:00
Dmitry Timoshkov 6e63a478b3 gdiplus: StringFormatFlagsLineLimit doesn't allow line wrapping. 2012-08-20 17:06:27 +02:00
Dmitry Timoshkov de6c150d98 gdiplus: Add a test for extra space added by GdipMeasureString. 2012-08-20 17:06:13 +02:00
Dmitry Timoshkov 6f630a4091 gdiplus: GdipGetImageThumbnail should return image in 32bppPARGB format. 2012-08-20 17:06:00 +02:00
Dmitry Timoshkov 62724c9d57 gdiplus: Return error code of the failed API to the caller. 2012-08-20 17:05:46 +02:00
Dmitry Timoshkov e9aef40c26 gdiplus: Round the layout rectangle down instead of up in gdip_format_string(). 2012-08-20 17:05:39 +02:00
Dmitry Timoshkov 003333e6cb gdiplus: Add a test for measuring string that doesn't fit into layout rectangle. 2012-08-20 17:05:22 +02:00
Dmitry Timoshkov 466dfee115 gdiplus: If there is no hbitmap associated with GpBitmap then create one. 2012-08-20 17:05:07 +02:00
Francois Gouget 1051a107a4 gdiplus/tests: Make pixels_to_units() static. 2012-08-16 17:08:00 +02:00
Dmitry Timoshkov e3d27c42d9 gdiplus: Make GdipSetPropertyItem return Ok. 2012-08-16 11:59:12 +02:00
Dmitry Timoshkov 7c8e8fc5e2 gdiplus: Dump the matrix passed to GdipSetWorldTransform. 2012-08-16 11:58:57 +02:00
Dmitry Timoshkov e7b5e69843 gdiplus: Properly convert source coordinates to device units in GdipDrawImagePointsRect. 2012-08-16 11:58:51 +02:00
Dmitry Timoshkov 938d42c148 gdiplus: When there is no target rectangle specified DrawImage should scale image to device dpi. 2012-08-16 11:58:42 +02:00
Dmitry Timoshkov 7f1cb3bca2 gdiplus: Destination points passed to GdipDrawImagePointsRect should be in device units. 2012-08-16 11:58:34 +02:00
Dmitry Timoshkov fa7a34b907 gdiplus: Forward GdipDrawImage to GdipDrawImagePointRect. 2012-08-15 13:55:11 +02:00
Dmitry Timoshkov 3b8f437f44 gdiplus: Add a test for GdipDrawImage scaling. 2012-08-15 13:54:59 +02:00
Dmitry Timoshkov 50931d8985 gdiplus: Add a test for font height scaling. 2012-08-15 13:54:55 +02:00
Dmitry Timoshkov 6bb353858e gdiplus: Replace convert_unit() by a clearer units_to_pixels() helper. 2012-08-15 13:53:31 +02:00
Dmitry Timoshkov 6f4625559e gdiplus: GdipMeasureString should apply its internal scaling factors to layout rectangle. 2012-08-15 13:52:52 +02:00
Dmitry Timoshkov 889be9d447 gdiplus: get_font_hfont helper should transform returned font height using font and device unit/resolution/scale. 2012-08-14 16:41:56 +02:00
Dmitry Timoshkov f8b1154226 gdiplus: GdipGetLogFontW should transform returned font height using font and device unit/resolution/scale. 2012-08-14 16:41:55 +02:00
Dmitry Timoshkov e9af648aeb Revert commit b20a1f56b0. 2012-08-14 16:41:55 +02:00
Dmitry Timoshkov b953011f9e gdiplus: Add more tests for GdipMeasureString using device with custom resolution. 2012-08-14 16:41:53 +02:00
Michael Stefaniuc 60bef14094 gdiplus: Remove unreachable break after return (Smatch). 2012-08-13 12:07:46 +02:00
Dmitry Timoshkov af042f2754 gdiplus: Correct GdipSaveImageToFile spec entry. 2012-08-13 11:49:27 +02:00
Dmitry Timoshkov 3298a30211 gdiplus: Improve precision of calculated pixel to units transformation. 2012-07-31 17:59:12 +02:00
Dmitry Timoshkov e6c69e9685 gdiplus: Add some GdipTransformPoints tests for a device with different x/y resolutions. 2012-07-26 11:08:02 +02:00
Dmitry Timoshkov e536a128f7 gdiplus: Store device resolution in the graphics object. 2012-07-26 11:07:41 +02:00
Dmitry Timoshkov 9697829511 gdiplus: Add missing 'break'. 2012-07-26 11:07:24 +02:00
Dmitry Timoshkov c67951c70a gdiplus: Handle image loading failures under some XP versions. 2012-07-25 20:14:57 +02:00
Dmitry Timoshkov 0b40df2990 gdiplus: Make get_palette() usable for generating predefined palettes. 2012-07-25 20:13:58 +02:00
Dmitry Timoshkov f165e2725f gdiplus: Add 8bppGray to the list of supported formats. 2012-07-25 20:13:55 +02:00
Dmitry Timoshkov 271d801ea4 gdiplus: Use predefined palette if an image doesn't provide one. 2012-07-25 20:13:52 +02:00
Dmitry Timoshkov 45cdafc5e8 gdiplus: Add 8bppIndexed to the list of supported formats. 2012-07-25 20:13:18 +02:00
Dmitry Timoshkov dce93479ea gdiplus: Retrieve image palette from WIC. 2012-07-25 20:13:07 +02:00
Dmitry Timoshkov 7bcfb02169 gdiplus: Set actual resolution of an image being encoded. 2012-07-20 21:30:03 +02:00
Dmitry Timoshkov b20a1f56b0 gdiplus: GdipMeasureString operates internally in pixels but in/out rectangles are in device units. 2012-07-18 17:17:46 +02:00
Dmitry Timoshkov 9288acda1d gdiplus: GdipGetFontHeight should convert height from font to device units. 2012-07-18 17:17:38 +02:00
Dmitry Timoshkov ed8a3304c4 gdiplus: Factor out units_to_pixels() helper. 2012-07-18 17:17:31 +02:00
Dmitry Timoshkov 9da37c769e gdiplus: Add a test for font and graphics using different base units. 2012-07-18 17:17:14 +02:00
Dmitry Timoshkov d104741a3c gdiplus: Add support for converting RGB formats to 1bpp indexed. 2012-07-17 13:09:41 +02:00
Dmitry Timoshkov 2ed1aaa930 gdiplus: Add support for converting RGB formats to 8bpp indexed. 2012-07-17 13:09:41 +02:00
Dmitry Timoshkov d9f4df0619 gdiplus: Pass palette instead of bitmap to setpixel helpers. 2012-07-17 13:09:40 +02:00
Dmitry Timoshkov 87f8e560c2 gdiplus: Pass complete palette info to convert_pixels(). 2012-07-17 13:09:40 +02:00
Dmitry Timoshkov a46c1f780a gdiplus: Use public ColorPalette structure to store image palette. 2012-07-17 13:09:39 +02:00
Dmitry Timoshkov 85d3d760d7 gdiplus: Add some tests for GdipBitmapLockBits/GdipBitmapUnlockBits. 2012-07-17 13:09:21 +02:00
Dmitry Timoshkov c108fd6bf9 gdiplus: Make sure that GdipBitmapLockBits stores valid lockmode. 2012-07-17 12:54:20 +02:00
Dmitry Timoshkov ebf31c0ac6 gdiplus: Fix palette flags for a not indexed 1-bpp image. 2012-07-16 18:19:46 +02:00
Dmitry Timoshkov eca107412c gdiplus: Make sure that 1bpp bitmap images get loaded in native format. 2012-07-16 18:19:38 +02:00
Alexandre Julliard 9ff2bbc3c8 gdiplus: Avoid out of bounds access warning. 2012-07-16 14:28:31 +02:00
Vincent Povirk 12f1ed2b3e gdiplus: Accept a transformation matrix in GdipFlattenPath. 2012-07-12 14:07:39 -05:00
Vincent Povirk cbfc79aae5 gdiplus: Implement LineJoinMiterClipped and partially implement LineJoinMiter. 2012-07-12 14:07:33 -05:00
Vincent Povirk 198fb25d17 gdiplus: Fix memory leak in GdipImageRotateFlip. 2012-07-12 11:48:56 -05:00
Vincent Povirk 577740f0d7 gdiplus: Fix GdipImageRotateFlip for images from streams. 2012-07-12 11:48:52 -05:00
Dmitry Timoshkov dfefd3a3b4 gdiplus: Add a test for palette associated with black&white TIFF image. 2012-07-12 11:48:27 -05:00
Dmitry Timoshkov 1f3b53c5d8 gdiplus: Fix the convert_unit() comment to reflect its functionality. 2012-07-03 12:59:01 +02:00
Dmitry Timoshkov 56621638df gdiplus: Add parameter checks to GdipSetPropertyItem, print item contents in the trace. 2012-07-03 12:58:56 +02:00
Dmitry Timoshkov b61a1ba322 gdiplus: Add some tests for GdipGetPropertySize and GdipGetAllPropertyItems. 2012-07-02 11:00:37 +02:00
Dmitry Timoshkov 3c9805d471 gdiplus: Implement GdipGetAllPropertyItems. 2012-07-02 11:00:22 +02:00
Dmitry Timoshkov 430355ef83 gdiplus: Implement GdipGetPropertySize. 2012-07-02 11:00:11 +02:00
Dmitry Timoshkov eb564a3160 gdiplus: Add a test for 'value' pointer in the PropertyItem structure. 2012-07-02 10:59:59 +02:00
Dmitry Timoshkov c7ea378f6a gdiplus: Add a test to show that GdipCloneImage is not supposed to increase refcount of the source image. 2012-07-02 10:59:51 +02:00
Dmitry Timoshkov 91cf72f00f gdiplus: Add GdipSaveAdd stub. 2012-06-29 20:41:47 +02:00
Dmitry Timoshkov f88231b96b gdiplus: Add a bunch of tests for TIFF image properties. 2012-06-29 20:41:34 +02:00
Dmitry Timoshkov 0c681b1478 gdiplus: Add some tests for GdipGetPropertyItemSize and GdipGetPropertyItem. 2012-06-29 20:41:19 +02:00
Dmitry Timoshkov 670445b22b gdiplus: Implement GdipGetPropertyItem. 2012-06-29 10:46:50 +02:00
Dmitry Timoshkov 9d953c5f79 gdiplus: Implement GdipGetPropertyItemSize. 2012-06-29 10:46:50 +02:00
Dmitry Timoshkov bd1adf9e0b gdiplus: Comment out a test that crashes some gdiplus implementations. 2012-06-28 19:43:09 +02:00
Dmitry Timoshkov 174b74bab2 gdiplus: Increase refcount of the source stream when loading a bitmap instead of cloning it. 2012-06-28 11:37:03 +02:00
Dmitry Timoshkov 55f160db34 gdiplus: Add a test for image stream refcount. 2012-06-28 11:37:02 +02:00
Alexandre Julliard 09a5f0f1c5 gdiplus/tests: Add back some necessary casts. 2012-06-28 01:38:47 +02:00
Dmitry Timoshkov d079b66ba5 gdiplus: Avoid casting IWICBitmapFrameDecode to IWICBitmapSource. 2012-06-26 19:44:27 +02:00
Dmitry Timoshkov 7f9230c566 gdiplus: Add some tests for image properties. 2012-06-26 19:44:21 +02:00
Dmitry Timoshkov fb6b27de77 gdiplus: Implement GdipGetPropertyIdList. 2012-06-26 19:41:11 +02:00
Dmitry Timoshkov b9132b6815 gdiplus: Implement GdipGetPropertyCount. 2012-06-26 19:40:59 +02:00
Dmitry Timoshkov b72d236ca8 gdiplus: When loading a bitmap frame save its IWICMetadataReader interface. 2012-06-26 19:40:44 +02:00
Vincent Povirk 697dd42ed2 gdiplus: Remove FIXME from GdipAddPathString. 2012-06-26 12:25:41 +02:00
Vincent Povirk fe000c773c gdiplus: Fix vertical alignment calculation in GdipAddPathString. 2012-06-22 14:09:47 +02:00
Vincent Povirk 3cde67e144 gdiplus: Don't position characters by glyph metrics in GdipAddPathString. 2012-06-22 14:09:46 +02:00
Vincent Povirk cae52d078a gdiplus: Scale all points in GdipAddPathString instead of the font. 2012-06-22 14:09:46 +02:00
Dmitry Timoshkov 450e09c8c6 gdiplus: Make some data const. 2012-06-21 08:36:28 +02:00
Dmitry Timoshkov 755c19f3e7 gdiplus: Implement GdipImageSelectActiveFrame. 2012-06-20 11:07:15 +02:00
Dmitry Timoshkov 9e12bc0175 gdiplus: Create a copy of the source stream when loading an image. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 8b1bbd4fe5 gdiplus: Add active frame parameter to the WIC decoder interface. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 9de1d86132 gdiplus: Fix parameter order in expect() calls. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 527cae47e3 gdiplus: Remove a redundant cast. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov 3439f28679 gdiplus: GdipCreateFontFromLogfont also returns NotTrueTypeFont for a not present font. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov eeb52474c1 gdiplus: Add a test for creating a nonexistent font with GdipCreateFontFromLogfont. 2012-06-19 13:44:07 +02:00
Dmitry Timoshkov ac38e69a92 gdiplus: Accept wider range of fonts. 2012-06-14 19:16:00 +02:00
Vincent Povirk b5ef70c583 gdiplus: Check for NULL image in GdipImageRotateFlip. 2012-06-14 19:13:27 +02:00
Francois Gouget 15846adef0 gdiplus: Make get_font_hfont() static. 2012-06-12 11:11:32 +02:00
Dmitry Timoshkov a33d34b83e gdiplus: Avoid needless gotos. 2012-05-25 13:44:01 +02:00
Dmitry Timoshkov 4060716dc4 gdiplus: Return correct status code if GdipAlloc fails. 2012-05-25 13:43:57 +02:00
Dmitry Timoshkov a7d14b0d2c gdiplus: Reimplement GdipIsEmptyRegion. 2012-05-25 13:41:14 +02:00
Dmitry Timoshkov a4f79c347e gdiplus: Use font emSize to map to pixel size instead of using gdi32 font metrics. 2012-05-21 11:34:37 +02:00
Dmitry Timoshkov eeee536ad6 gdiplus: Implement GdipImageGetFrameCount. 2012-05-17 17:44:26 +02:00
Dmitry Timoshkov 007d642e53 gdiplus: Save total and current frame in the image structure. 2012-05-17 17:44:25 +02:00
Dmitry Timoshkov d0fcc19e7e gdiplus: Fix the clipping region calculation. 2012-05-15 17:02:05 +02:00
Dmitry Timoshkov bf9aed6f5c gdiplus: Measure the passed in string without height clipping in order to compute correct Y offset. 2012-05-15 17:02:04 +02:00
Francois Gouget fac36c55e9 Assorted typo, spelling, wording and case fixes. 2012-05-15 16:26:43 +02:00
Dmitry Timoshkov 5e4d64d18e gdiplus: Create 'const' friendly internal entries for font APIs. 2012-05-14 17:49:02 +02:00
Dmitry Timoshkov a90fcbff00 gdiplus: Add a bunch of tests for internal font metrics. 2012-05-11 15:43:55 +02:00
Dmitry Timoshkov 83e88af325 gdiplus: Fetch font family metrics from truetype font data. 2012-05-11 15:43:42 +02:00
Dmitry Timoshkov c626528a91 gdiplus: Use OUTLINETEXTMETRIC instead of LOGFONT to store GpFont metrics. 2012-05-11 15:42:09 +02:00
Dmitry Timoshkov 915cd7b5b2 gdiplus: Use appropriate accessors to calculate font height instead of accessing GpFont internals directly. 2012-05-11 15:40:41 +02:00
Dmitry Timoshkov 2c93bf7e4e gdiplus: Retrieve LOGFONT from a GpFont using GdipGetLogFontW instead of accessing it directly. 2012-05-11 15:40:13 +02:00
Dmitry Timoshkov 54b69043eb gdiplus: Derive GpFont from GpFontFamily. 2012-05-09 12:03:33 +02:00
Alexandre Julliard 039c85346c gdiplus: CreateDIBSection doesn't need a DC for the DIB_RGB_COLORS case. 2012-05-02 12:02:17 +02:00
Dmitry Timoshkov 542e30b531 gdiplus: Add more traces to font APIs. 2012-05-01 14:45:38 +02:00
Vincent Povirk 7b5af23604 gdiplus: Implement GdipWidenPath for closed figures. 2012-04-26 19:27:24 +02:00
Vincent Povirk 930cdab2e9 gdiplus: Add basic implementation of GdipWidenPath. 2012-04-26 19:27:17 +02:00
Vincent Povirk 3a3ca55ffa gdiplus: Return OutOfMemory when creating a path gradient from a NULL path. 2012-04-26 19:27:01 +02:00
Vincent Povirk ea3e26e32d gdiplus: Return OutOfMemory when creating a path gradient with NULL points. 2012-04-26 19:26:57 +02:00
Vincent Povirk e2b59a87b0 gdiplus: Store only one surround color if all colors are the same. 2012-04-25 12:16:36 +02:00
Vincent Povirk 8273d58a96 gdiplus: Implement GdipSetPathGradientSigmaBlend. 2012-04-25 12:16:24 +02:00
Vincent Povirk d0a85604d5 gdiplus: Implement GdipSetPathGradientLinearBlend. 2012-04-25 12:16:20 +02:00
Vincent Povirk b66fd44080 gdiplus: Implement GdipSetPathGradientBlend, with tests. 2012-04-25 12:16:15 +02:00
Vincent Povirk 4a78d7c6b4 gdiplus: Remove FIXME on implemented function. 2012-04-25 12:16:09 +02:00
Dmitry Timoshkov 1e12570d72 gdiplus: Use symbolic name of the font style. 2012-04-24 19:10:42 +02:00
Dmitry Timoshkov e43fce0da9 gdiplus: Do not rely on an enumerated font size being equal to otmEMSquare. 2012-04-24 18:42:17 +02:00
Vincent Povirk 075775a81b gdiplus: Implement accessors for graphics rendering origin. 2012-04-24 11:37:46 +02:00
Dmitry Timoshkov 4b9e1db09f gdiplus: Use Tahoma instead of Arial for gdiplus font tests. 2012-04-23 11:41:25 +02:00
Dmitry Timoshkov 44ec1a2e52 gdiplus: Use symbolic names of font styles. 2012-04-23 11:40:52 +02:00
Dmitry Timoshkov 9b5b04c1c1 gdiplus: Avoid saving negative values in pixel_size and emSize. 2012-04-23 11:40:37 +02:00
Francois Gouget 84bc0f7888 gdiplus/tests: Make test_pathgradientpresetblend() static. 2012-04-20 12:00:29 +02:00
Dmitry Timoshkov 600cbb7874 gdiplus: Use StretchBlt instead of GdiAlphaBlend if device doesn't support alpha blending. 2012-04-19 19:28:10 +02:00
Vincent Povirk 57e4912108 gdiplus: Add support for JPEG encoding. 2012-04-18 17:15:53 +02:00
Vincent Povirk c374fe9bdb gdiplus: Implement path gradient transform setters. 2012-04-04 19:02:42 +02:00
Vincent Povirk 09b7aed7a2 gdiplus: Set the wrap mode in the path gradient constructor. 2012-04-04 19:02:36 +02:00
Vincent Povirk b228426d8e gdiplus: Default path gradient center color depends on the constructor. 2012-04-04 19:02:30 +02:00
Vincent Povirk ad9976eb22 gdiplus: Forbid creating path gradients with fewer than 2 points. 2012-04-02 12:38:01 +02:00
Vincent Povirk 52bf030b84 gdiplus: Implement GdipGetPathGradientTransform. 2012-04-02 12:37:55 +02:00
Vincent Povirk aed62dbff1 gdiplus: Add tests for preset blend accessors. 2012-04-02 12:37:49 +02:00
Vincent Povirk 5254a76a0c gdiplus: Implement path gradient preset blend accessors. 2012-04-02 12:37:43 +02:00
Vincent Povirk a85bb87cc3 gdiplus: Implement GdipGetPathGradientCenterColor. 2012-04-02 12:37:35 +02:00
Vincent Povirk 93a0897660 gdiplus: Support bitmap creation from 16-bit ddb's. 2012-03-30 17:33:46 +02:00
Alistair Leslie-Hughes 0b2ea8aaf5 gdiplus: Add GdipResetPageTransform stub. 2012-03-29 20:49:22 +02:00
Vincent Povirk e2e77545ff gdiplus: Measure strings at device size, then rescale to world size. 2012-03-28 11:36:20 +02:00
Vincent Povirk 673377a7b9 gdiplus: Store copies of remap tables in ImageAttributes objects. 2012-03-26 18:15:02 +02:00
Vincent Povirk 8a0b57a9a1 gdiplus: Draw hotkey underlines in GdipDrawString. 2012-03-26 18:13:52 +02:00
Vincent Povirk eef459968a gdiplus: Detect hotkey prefixes when drawing strings. 2012-03-26 12:41:28 +02:00
Vincent Povirk 3cd51c0acf gdiplus: Use the surround colors in path gradient rendering. 2012-03-15 19:56:20 +01:00
Vincent Povirk 7e90dc3dc7 gdiplus: Implement path gradient surround color accessors. 2012-03-15 19:56:13 +01:00
Vincent Povirk 7a9f6abd85 gdiplus: Test SetSurroundColors with fewer colors than points on the path. 2012-03-15 19:56:04 +01:00
Vincent Povirk 1f6f84c7bb gdiplus: Don't add control points to the result in GdipFlattenPath. 2012-03-14 11:50:20 +01:00
Vincent Povirk b54d38a536 gdiplus: Add test for GdipGetPathGradientSurroundColorsWithCount. 2012-03-14 11:50:15 +01:00
Vincent Povirk 5d64f16bec gdiplus: Add fixme's for unimplemented path gradient features. 2012-03-14 11:50:11 +01:00
Vincent Povirk 5ed5daf4da gdiplus: Do some actual color blending when drawing path gradients. 2012-03-14 11:50:07 +01:00
Vincent Povirk 703b31b2e8 gdiplus: Fill path gradients with a solid color. 2012-03-14 11:50:02 +01:00
Vincent Povirk 7fd6ccd19e gdiplus: Add tests for path gradient center point functions. 2012-03-13 10:27:56 +01:00
Vincent Povirk 1515a4b89c gdiplus: Set path gradient center points based on the path's bounding rect. 2012-03-13 10:27:50 +01:00
Vincent Povirk 116665d7fc gdiplus: Add stub GdipGetPathGradientPath with tests. 2012-03-13 10:27:44 +01:00
Vincent Povirk 96d66f1666 gdiplus: Store a real path in path gradient brushes. 2012-03-13 10:27:35 +01:00
Vincent Povirk dc3a08d840 gdiplus: Rewrite SOFTWARE_GdipFillRegion to call brush_fill_pixels less. 2012-03-13 10:27:22 +01:00
Dmitry Timoshkov 5fd16ddedc gdiplus: Implement GdipCreateMetafileFromEmf. 2012-03-12 16:37:26 +01:00
Dmitry Timoshkov b39425f3cf gdiplus: Create GDI bitmap only when needed. 2012-03-12 10:43:53 +01:00
Dmitry Timoshkov 0d7bc4b325 gdiplus: Create GDI brush only when needed. 2012-03-09 11:30:46 +01:00
Dan Kegel 8f073bf4c7 gdiplus: Make GdipTranslateLineTransform stub lie and return Ok. 2012-02-16 11:57:27 +01:00
Vincent Povirk 2540049777 gdiplus: Implement GdipCreateBitmapFromHBITMAP for 16-bit dibs. 2012-01-12 12:27:04 +01:00
Vincent Povirk 52150d2194 gdiplus: Test GdipCreateBitmapFromHBITMAP with 16-bit dib's. 2012-01-12 12:26:53 +01:00
Vincent Povirk aba9ddc4a0 gdiplus: Implement GdipDrawImagePoints. 2012-01-11 20:11:40 +01:00
Vincent Povirk 006e2d97b3 gdiplus: Fix center point calculation in GdipAddPathPie. 2011-11-08 18:19:18 +01:00
Andrew Talbot 51804165aa gdiplus: Remove unneeded address-of operators from array names. 2011-10-31 23:54:00 +01:00
Alexandre Julliard 7c1f665627 gdiplus/tests: Add an intermediate variable to avoid array bounds warnings. 2011-10-20 12:50:04 +02:00
Dan Kegel fa4cafd80e gdiplus/tests: Must define biClrUsed when calling CreateDIBSection. 2011-10-14 13:12:28 +02:00
Louis Lenders 8435e40874 gdiplus: Return zero properties in stubbed GdipGetPropertyCount. 2011-10-06 16:46:41 -05:00
Vincent Povirk 203d29d93a gdiplus: Fix pointer math for the 64-bit tests. 2011-10-04 15:19:02 -05:00
Vincent Povirk 5f94653159 gdiplus: Include an alpha channel in HBITMAPs created from Bitmaps. 2011-10-03 09:45:09 -05:00
André Hentschel 6b7ccdb734 gdiplus: Fix height calculation.
Spotted by Roman Shchekin.
2011-09-23 12:34:57 +02:00
Francois Gouget 4c13e84a7c gdiplus: Use Liberation Mono as a fallback for Courier New for the monospace family. 2011-09-13 11:27:42 +02:00
Francois Gouget bcd793bf3b gdiplus/tests: Don't check for hardcoded family font names.
Only check that each font family is different and that we can create fonts from them.
2011-09-13 11:27:38 +02:00
Alexandre Julliard 835e74a5f0 gdiplus: Add a WinSxS manifest resource. 2011-08-25 17:21:05 +02:00
Vincent Povirk 380abdeb10 gdiplus: Fix vertical string alignment. 2011-08-02 21:16:38 +02:00
Frédéric Delanoy b5a33dab88 dlls: Assorted spelling fixes. 2011-08-02 20:47:51 +02:00
Vincent Povirk ae6ce97db0 gdiplus: Don't use a gdi32 brush for semi-transparent hatch brushes. 2011-07-27 19:03:51 +02:00
Vincent Povirk 171e832839 gdiplus: Fix use of uninitialized memory. 2011-07-18 16:23:29 +02:00
Marcus Meissner f0392c77bc gdiplus: Check return values of GdipCreateMatrix(2) (Coverity). 2011-07-14 14:14:04 +02:00
Vincent Povirk fda2fc7684 gdiplus: Implement GdipPlayMetafileRecord for EMF records. 2011-07-08 13:40:42 +02:00
Vincent Povirk 3a6ba94011 gdiplus: Add test showing scaling does not affect returned HDC objects. 2011-07-08 11:26:31 +02:00
Vincent Povirk 71325800dc gdiplus: Add tests for GdipPlayMetafileRecord. 2011-07-08 11:26:27 +02:00
Vincent Povirk 351a78bb4a gdiplus: Add test for recording emf-only metafiles. 2011-07-08 11:26:20 +02:00
Vincent Povirk 44c57121ea gdiplus: Implement GetDC for metafiles. 2011-07-08 11:26:14 +02:00
Vincent Povirk fd7475546b gdiplus: Stub GdipPlayMetafileRecord. 2011-07-08 11:26:06 +02:00
Vincent Povirk d59c3d45e3 gdiplus: Use DrawDriverString to draw the text in DrawString. 2011-06-28 16:52:21 -05:00
Vincent Povirk 6cc7e7f7c4 gdiplus: Implement GdipMeasureDriverString. 2011-06-28 16:46:16 -05:00
Vincent Povirk 640c7b5e4f gdiplus: Test MeasureDriverString with a character that has an underhang. 2011-06-28 16:46:12 -05:00
Vincent Povirk 0ec9d398a5 gdiplus: Fix the order of arguments to expectf in test_string_functions. 2011-06-28 16:46:05 -05:00
Vincent Povirk c0682a26d2 gdiplus: Add test for GdipMeasureDriverString. 2011-06-27 16:59:08 -05:00
Vincent Povirk 698fddf99b gdiplus: Properly clean up the new metafile data. 2011-06-22 11:25:46 +02:00
Marcus Meissner 9af15023a2 gdiplus: Convert and pass in 3 points, not 1 (Coverity). 2011-05-30 11:15:56 +02:00
Vincent Povirk 9793ab9fa6 gdiplus: Implement DriverStringOptionsRealizedAdvance in software. 2011-05-24 11:56:53 +02:00
Vincent Povirk 11754452d2 gdiplus: Change the sign we use for origin.x in DrawDriverString.
Apparently characters whose black boxes extend to the left of the origin have
a negative x value, but characters whose black boxes extend above the origin
have a positive y value.
2011-05-24 11:56:46 +02:00
Vincent Povirk 29b6b75edb gdiplus: Add test for GdipGetDC on metafiles. 2011-05-23 11:16:11 +02:00
Vincent Povirk fd9c5d7d01 gdiplus: Implement GdipEnumerateMetafileSrcRectDestPoints. 2011-05-23 11:16:06 +02:00
Vincent Povirk 06b23138e2 gdiplus: Remove is_emfplus field from test structure, as it's redundant. 2011-05-23 11:15:59 +02:00
Vincent Povirk 11248262be gdiplus: Add test for metafile enumeration. 2011-05-23 11:15:48 +02:00
Vincent Povirk d436e51872 gdiplus: Add basic metafile recording support. 2011-05-23 11:15:41 +02:00
Marcus Meissner 4892adb414 gdiplus: Mark image_format_dimensions as static. 2011-05-18 10:54:32 +02:00
Vincent Povirk 73e50ba60e gdiplus: Set export ordinals to match Windows 7. 2011-05-16 16:35:28 +02:00
Francois Gouget 5920de5ffb Assorted spelling and case fixes. 2011-05-09 12:09:27 +02:00
Marcus Meissner 3ed1339219 gdiplus: Mark internal symbols as having hidden visibility. 2011-04-26 15:31:27 +02:00
André Hentschel 66f212e667 gdiplus: Add a FIXME. 2011-04-13 14:13:52 +02:00
Vincent Povirk 1544640763 gdiplus: Add support for encoding TIFF images. 2011-04-11 19:32:53 +02:00
Vincent Povirk 14f925d5af gdiplus: Validate MatrixOrder in matrix functions. 2011-04-07 13:50:42 +02:00
Vincent Povirk 64841aac83 gdiplus: Respect the CmapLookup flag in GDI32_GdipDrawDriverString. 2011-04-05 13:36:56 +02:00
Vincent Povirk 11f0662c60 gdiplus: Don't settle on a font size until absolutely necessary.
When we create a new font, we should store its height in a REAL field so
we don't have to round it. Further, when we calculate the width, we should
base the calculation on the metrics of a font at the height we will use, to
prevent rounding errors when the graphics transform will enlarge the font.
2011-04-05 13:36:56 +02:00
Vincent Povirk be0af56be3 gdiplus: Add a software implementation of GdipDrawDriverString. 2011-04-05 13:36:56 +02:00
Vincent Povirk 32baa8ba4e gdiplus: Add helper for translating GpFont to HFONT. 2011-04-05 13:36:56 +02:00
Gerald Pfeifer 25764d79c0 gdiplus: Initialize a variable in SOFTWARE_GdipFillRegion to avoid a compiler warning. 2011-04-04 14:55:10 +02:00
Vincent Povirk 15140a722e gdiplus: Add basic implementation of GdipDrawDriverString. 2011-04-01 10:48:25 +02:00
Vincent Povirk ca5b5d2a05 gdiplus: Fall back to Liberation Serif if Times New Roman is missing. 2011-03-30 13:28:04 +02:00
Vincent Povirk b3dfe973ad gdiplus: Add test for GdipSetTextRenderingHint and make it pass. 2011-03-29 12:37:03 +02:00
Vincent Povirk 204253b6ba gdiplus: Add test for GdipDrawDriverString. 2011-03-29 12:36:59 +02:00
Vincent Povirk a7444e8e2c gdiplus: Use the given HPALETTE in GdipCreateBitmapFromHBITMAP. 2011-03-29 12:35:06 +02:00
Vincent Povirk 19b71b035e gdiplus: Implement gamma adjustment. 2011-03-28 17:16:26 +02:00
Vincent Povirk 805f0321eb gdiplus: Implement color transforms. 2011-03-28 17:16:23 +02:00
Vincent Povirk 4266b154be gdiplus: Initialize the ImageAttributes in GdipCreateTexture2I. 2011-03-28 17:08:53 +02:00
Vincent Povirk 42d1d9e9e0 gdiplus: Clean up HRGN when GdipGetRegionBounds succeeds too. 2011-03-28 17:08:53 +02:00
Vincent Povirk 314ec7178d gdiplus: Select the font into the appropriate hdc in GdipMeasureString. 2011-03-18 16:05:09 +01:00
Vincent Povirk 504b7c34d6 gdiplus: Remove the gdi32 line gradient drawing code.
It's unused now.
2011-03-17 10:42:45 +01:00
Vincent Povirk 71eb248c30 gdiplus: Implement GdipFillRectangle based on GdipFillPath. 2011-03-17 10:42:32 +01:00
Vincent Povirk 5190f8a5f1 gdiplus: Use GdipFillPath to implement GdipFillPolygonI. 2011-03-17 10:42:22 +01:00
Vincent Povirk 86d55d43c5 gdiplus: Use GdipFillPath to implement GdipFillPolygon. 2011-03-17 10:42:17 +01:00
Francois Gouget ca988fa401 gdiplus: Remove GdiplusShutdown() as it is redudant with GdiplusShutdown_wrapper(). 2011-03-16 14:14:23 +01:00
Francois Gouget 769dcd8447 gdiplus: Make load_ttf_name_id() static. 2011-03-16 14:14:23 +01:00
Vincent Povirk 2ce5be2ce3 gdiplus: Use GdipFillPath to implement GdipFillPie. 2011-03-15 17:14:06 +01:00
Vincent Povirk 4aa99eaf3b gdiplus: Use GdipFillPath to implement GdipFillEllipse. 2011-03-15 17:14:06 +01:00
Vincent Povirk b5c2015999 gdiplus: Add software implementation of GdipFillPath. 2011-03-15 17:14:06 +01:00
Vincent Povirk 833316f91d gdiplus: Call GdiAlphaBlend only once per GdipFillRegion call. 2011-03-15 17:14:06 +01:00
Vincent Povirk 77f5a07c1b gdiplus: Remove gdi32 fallback for bitmaps from GdipFillRegion.
We can always do a fill directly to the image bits when gdi32 can do it.
2011-03-15 17:14:06 +01:00
Vincent Povirk 4edff21ea2 gdiplus: Prefer to not use gdi32 for gradient and texture brushes. 2011-03-11 11:48:18 +01:00
Vincent Povirk 8a036abc5c gdiplus: Implement software rendering of texture brushes. 2011-03-11 11:48:08 +01:00
Vincent Povirk 2302e80cc9 gdiplus: Don't use gdi32 to scale or draw from outside bitmaps. 2011-03-11 11:47:50 +01:00
Vincent Povirk 8b6dafda45 gdiplus: Implement bilinear interpolation. 2011-03-11 11:47:34 +01:00
Vincent Povirk 51cf90d8ca gdiplus: Move bitmap interpolation into a separate function. 2011-03-11 11:47:32 +01:00
Vincent Povirk 5488ea1468 gdiplus: Implement tiling wrap modes. 2011-03-10 14:10:16 +01:00
Vincent Povirk d891a8c16c gdiplus: Apply image attributes to bitmaps before resampling them. 2011-03-10 14:10:16 +01:00
Vincent Povirk 870fdaf6ce gdiplus: Read drawn bitmaps in one step instead of using getpixel. 2011-03-10 14:10:15 +01:00
Vincent Povirk a7f95eeb7e gdiplus: Move ImageAttributes mapping into a helper function. 2011-03-10 14:10:15 +01:00
Vincent Povirk a2631ae1d2 gdiplus: Add tests for interpolation mode and make them pass. 2011-03-10 14:10:15 +01:00
Alexandre Julliard b3c333e916 gdiplus: Use signed types in convert_pixels to avoid problems on 64-bit. 2011-03-10 14:10:11 +01:00
Austin English 3ac2c9eea0 gdiplus: Avoid shadowing a parameter. 2011-03-09 14:08:08 +01:00
Vincent Povirk d0e6aa0204 gdiplus: Fix a handle leak in GdipDrawString. 2011-03-09 12:31:05 +01:00
Maarten Lankhorst b8a1e6c687 gdiplus: Implement GdipAddPathString. 2011-03-03 17:47:15 +01:00
Maarten Lankhorst c057694883 gdiplus: Add tests and fix GdipDrawImagePointsRect. 2011-03-03 17:47:15 +01:00
Maarten Lankhorst fe8e08a5d6 gdiplus: Clean up gdip_format_string. 2011-03-03 17:47:15 +01:00
Vincent Povirk 21d6fc9643 gdiplus: Implement ImageLockModeUserInputBuf. 2011-02-25 11:06:42 +01:00
Vincent Povirk 546b1a5cb4 gdiplus: Copy only the area requested when (un)locking bitmaps. 2011-02-25 11:06:36 +01:00
Vincent Povirk 9497e9380b gdiplus: Don't copy bits into the buffer when a bitmap is locked write-only. 2011-02-25 11:06:30 +01:00
Vincent Povirk 58eb96c9e7 gdiplus: Copy the bits on bitmap unlock if the write flag is set.
The read and write flags are independent, so a read flag being set doesn't
imply we can quit early.
2011-02-25 11:06:25 +01:00
Vincent Povirk d086af1d36 gdiplus: Test writes with conversion and without a user buffer. 2011-02-25 11:06:12 +01:00
Maarten Lankhorst 8794f8f708 gdiplus: Implement in-memory font storage. 2011-02-22 12:27:59 +01:00
Austin English f817e547f9 gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-17 17:30:00 +01:00
Vincent Povirk 88ce03103b gdiplus: Add tests for locked image bit reading/writing. 2011-02-15 17:01:43 +01:00
Vincent Povirk 732aa89c08 gdiplus: Add test for ImageLockModeUserInputBuf. 2011-02-15 17:01:43 +01:00
Vincent Povirk 86d58dc6c8 gdiplus: Store an ImageAttributes in texture brushes. 2011-02-15 17:01:43 +01:00
Austin English 2ebcaf1a51 gdiplus/tests: Remove redundant assignments (LLVM/Clang). 2011-02-10 10:27:55 -06:00
Austin English e77d27a2eb gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-10 10:27:39 -06:00
Austin English 273065cebe gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-10 09:57:39 -06:00
Austin English 1a24d1c0f1 gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-09 09:28:55 -06:00
Vincent Povirk 4fd76b0995 gdiplus: Fix error path in GdipAddPathRectangle. 2011-02-07 10:12:54 -06:00
Vincent Povirk cd3855f384 gdiplus: Allow adding rectangles with negative sizes to paths. 2011-02-07 10:12:33 -06:00
EG Galano fbf9494b89 gdiplus/tests: Make sure return value is used (LLVM/Clang). 2011-02-07 10:11:53 -06:00
Austin English 0d8f2b364c gdiplus/tests: Make sure to use return values (LLVM/Clang). 2011-02-07 10:11:30 -06:00
Vincent Povirk 757012cd3c gdiplus: Test the types of records in an empty EMF+. 2011-01-27 14:16:47 +01:00
Vincent Povirk a06b4bc59b gdiplus: Test for EMF+ recording. 2011-01-27 14:16:38 +01:00
Vincent Povirk e029d71c4b gdiplus: Stub GdipGetHemfFromMetafile. 2011-01-27 14:15:59 +01:00
Vincent Povirk 0c17a0b5bb gdiplus: Add a software implementation of line gradient brushes. 2011-01-24 12:13:57 +01:00
Vincent Povirk b7e664bc5c gdiplus: Add a software implementation of hatch brushes. 2011-01-24 12:13:54 +01:00
Vincent Povirk 60cd477342 gdiplus: Add a software implementation of GdipFillRegion. 2011-01-24 12:13:51 +01:00
Vincent Povirk 6acffba564 gdiplus: Factor the matrix creation code out of GdipTransformPoints. 2011-01-24 12:13:09 +01:00
Vincent Povirk b689e63a86 gdiplus: Factor out the gdi32 code of GdipFillRegion. 2011-01-24 12:13:00 +01:00
Vincent Povirk d7379712e7 gdiplus: Rewrite GdipCreateMatrix3. 2011-01-17 13:22:05 +01:00
Martin Petricek ee3c179026 gdiplus: Support for indexed formats in GdipBitmapSetPixel. 2011-01-12 15:02:38 +01:00
Vincent Povirk 32bbb0bbcf gdiplus: Correctly store the given stride in created bitmaps. 2010-11-12 17:47:43 +01:00
Vincent Povirk 8f1b722790 gdiplus: Allow more drawing operations to succeed without an HDC.
This should bring things to the mostly-regression-free-but-easier-to-debug
state I was expecting when I removed DIBs from many bitmaps.
2010-11-10 17:18:40 +01:00
Vincent Povirk f49d56fef3 gdiplus: Add tests for GdipGetLineTransform. 2010-11-01 11:33:58 +01:00
Vincent Povirk 3e86d43030 gdiplus: Don't rely on an HDC in GdipMeasureString. 2010-11-01 11:33:51 +01:00
Vincent Povirk 867f3d39e7 gdiplus: Don't rely on an HDC in GdipMeasureCharacterRanges. 2010-11-01 11:33:40 +01:00
Vincent Povirk cb21d1caf4 gdiplus: Don't rely on an HDC in GdipGetFontHeight. 2010-11-01 11:33:31 +01:00
Vincent Povirk 4fff9a7a52 gdiplus: Add a test for GdipCreateMatrix3. 2010-11-01 11:33:25 +01:00
Vincent Povirk bb444e81cc gdiplus: Fix point conversion in GdipCreateLineBrushI. 2010-11-01 11:33:19 +01:00
Vincent Povirk 2661ce79d6 gdiplus: Reject linear gradients where the start and end points are equal. 2010-10-28 11:41:45 +02:00
Vincent Povirk bb5f5dba93 gdiplus: Make get_path_hrgn work with HDC-less graphics objects. 2010-10-28 11:41:39 +02:00
Vincent Povirk 5f327f7812 gdiplus: Implement GdipGetRegionScans. 2010-10-28 11:41:32 +02:00
Austin Lund ae0a484945 gdiplus/tests: Fix GetLogFont charset tests for Asian platforms. 2010-10-25 13:52:51 +02:00
Vincent Povirk c8a48f237e gdiplus: Don't create a DIB section for non-alpha or reference bitmaps. 2010-10-01 13:44:39 +02:00
Vincent Povirk 473afa4b8c gdiplus: Implement GdipGetRegionScansCount. 2010-10-01 13:44:06 +02:00
Vincent Povirk 40d8876fc4 gdiplus: Implement GdipTransformRegion. 2010-10-01 13:44:00 +02:00
Vincent Povirk 1eb12cb08d gdiplus: Return 0 from GdiplusShutdown. 2010-10-01 13:43:49 +02:00
Vincent Povirk 9326fc13ca gdiplus: Don't try to free invalid or already-freed images. 2010-10-01 13:43:33 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Vincent Povirk 77a5b635aa gdiplus: Set flags and dpi when images are loaded. 2010-09-02 11:53:33 +02:00