Commit Graph

1264 Commits

Author SHA1 Message Date
Vincent Povirk 9d0cd09597 gdiplus: Add a fallback method for getting HDC's from Graphics objects.
Native does this in more cases (at least for all bitmap graphics
objects), but using gdi32 objects when we can should perform better.
2010-08-18 09:42:58 +02:00
Vincent Povirk 728aaf2902 gdiplus: Add tests for the HDC's we get from bitmap objects. 2010-08-17 11:55:33 +02:00
Vincent Povirk 2a345f36e3 gdiplus: Use the software method to draw HBITMAP-less bitmaps. 2010-08-17 11:55:33 +02:00
Vincent Povirk 1a710ac36f gdiplus: Stub GdipGetPathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 41f4263277 gdiplus: Stub GdipSetPathGradientLinearBlend. 2010-08-17 11:55:33 +02:00
Vincent Povirk 462c599335 gdiplus: Stub GdipScalePathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk b56f3c3b21 gdiplus: Stub GdipRotatePathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 1fdecda9da gdiplus: Stub GdipSetPathGradientTransform. 2010-08-17 11:55:33 +02:00
Vincent Povirk 9a6eabf0b5 gdiplus: Create HBITMAP-less bitmap objects for exotic pixel formats. 2010-08-17 11:55:33 +02:00
Vincent Povirk 963c7090d5 gdiplus: Don't require an HDC to get the resolution of a graphics object. 2010-08-17 11:55:33 +02:00
Vincent Povirk c3ca6be2b9 gdiplus: Give a nice warning when we try to draw to an HDC-less graphics. 2010-08-17 11:55:33 +02:00
Vincent Povirk 5601860b76 gdiplus: Don't require an HDC in get_graphics_bounds. 2010-08-17 11:55:33 +02:00
Vincent Povirk 85a5710688 gdiplus: Don't require an HDC for the convert_unit function. 2010-08-17 11:55:33 +02:00
Vincent Povirk 00aeee6e8e gdiplus: Stub GdipMultiplyPathGradientTransform. 2010-08-03 19:24:39 +02:00
Vincent Povirk 358d382782 gdiplus: Stub GdipGetPathGradientPresetBlendCount. 2010-08-03 19:24:33 +02:00
Vincent Povirk 2da2c9fd6b gdiplus: Stub GdipGetPenTransform. 2010-08-03 19:24:28 +02:00
Vincent Povirk c1582f957a gdiplus: Stub GdipRotatePenTransform. 2010-08-03 19:24:22 +02:00
Vincent Povirk 09de12b2a3 gdiplus: Stub GdipSetPenTransform. 2010-08-03 19:24:13 +02:00
Wade Gobel cceb3dc77a gdiplus: Implemented GdipFillClosedCurve and GdipFillClosedCurveI. 2010-07-28 14:01:52 +02:00
Wade Gobel f4e2af65c5 gdiplus: Fixed GdipFillClosedCurve2 and GdipFillClosedCurve2I in the cases that count <= 1. 2010-07-28 14:01:52 +02:00
Harry Jeffery 4faf80280c Fixed various spelling mistakes. 2010-07-26 13:34:20 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Alexandre Julliard 811cdfaf27 gdi32: Reject invalid DIB depths in CreateDIBSection. 2010-07-20 14:40:32 +02:00
Vincent Povirk 2a74569230 gdiplus: Stub GdipMultiplyPenTransform. 2010-07-19 14:49:07 +02:00
Vincent Povirk 3506521f16 gdiplus: Stub GdipGetPenCompoundCount. 2010-07-19 14:49:07 +02:00
Vincent Povirk 5694825ae3 gdiplus: Return copies of fonts from GdipGetFontCollectionFamilyList. 2010-07-19 14:49:07 +02:00
Vincent Povirk 3847c2dec9 gdiplus: Stub GdipGetMetafileHeaderFromStream. 2010-07-19 14:49:07 +02:00
Vincent Povirk 688eb0688b gdiplus: Stub GdipGetMetafileHeaderFromFile. 2010-07-19 14:49:07 +02:00
Vincent Povirk 2223900cf6 gdiplus: Stub GdipGetMetafileHeaderFromEmf. 2010-07-05 11:54:57 +02:00
Vincent Povirk 0c8ac02440 gdiplus: Stub GdipRecordMetafileStream. 2010-07-05 11:54:54 +02:00
Vincent Povirk 48ceb3d67f gdiplus: Stub GdipRecordMetafile. 2010-07-05 11:54:52 +02:00
Vincent Povirk 0e06326f5d gdiplus: Set result to NULL when CreatePathGradient fails. 2010-07-05 11:54:49 +02:00
Vincent Povirk 1c41470cd0 gdiplus: Check for null pt in GdipCreateMatrix3. 2010-07-05 11:54:47 +02:00
Alexandre Julliard 415bb3c5a0 gdiplus/tests: Don't fail if we do find Microsoft Sans Serif on Wine. 2010-07-01 12:06:35 +02:00
Alexandre Julliard 5d71136611 gdiplus/tests: Use Tahoma instead of Courier New for testing font metrics. 2010-07-01 11:38:46 +02:00
Alexandre Julliard 4b9258d165 gdiplus/tests: Comment out a test that corrupts the stack on Vista. 2010-06-30 14:17:13 +02:00
Andrew Nguyen 6ea90c3c2e gdiplus: Add a few additional traces to gdiplus image functions. 2010-06-25 12:50:03 +02:00
Vincent Povirk 63fa6915ec gdiplus: Stub GdipGetEncoderParameterListSize. 2010-06-25 10:26:18 +02:00
Vincent Povirk 4c93f9f880 gdiplus: Always create path gradient brushes with blend positions. 2010-06-25 10:26:13 +02:00
Vincent Povirk 0178093576 gdiplus: Stub GdipGetPathGradientCenterColor. 2010-06-25 10:26:04 +02:00
Vincent Povirk 86f4e00fba gdiplus: Stub GdipMultiplyLineTransform. 2010-06-25 10:25:59 +02:00
Vincent Povirk 2e4eb7144c gdiplus: Stub GdipGetLineTransform. 2010-06-25 10:25:55 +02:00
Vincent Povirk 85c0e83dc5 gdiplus: Stub GdipGetRenderingOrigin. 2010-06-25 10:25:45 +02:00
Francois Gouget a56375fcb5 gdiplus: Make measure_ranges_callback() static. 2010-06-24 10:34:44 +02:00
Vincent Povirk 435762024f gdiplus: Always treat out of range string sizes as INT_MAX. 2010-05-10 10:03:00 +02:00
Vincent Povirk b7c9adcd06 gdiplus: Implement GdipIsStyleAvailable. 2010-05-10 10:02:24 +02:00
Vincent Povirk 7dfc674437 gdiplus: Implement GdipGetImageThumbnail. 2010-05-10 10:02:11 +02:00
Vincent Povirk 635fe30eac gdiplus: Add test for GdipGetImageThumbnail. 2010-05-10 10:02:00 +02:00
Vincent Povirk 0ae0c0c09e gdiplus: Implement GdipSetImageAttributesWrapMode. 2010-05-10 10:01:48 +02:00
Vincent Povirk 15ebd84daf gdiplus: Implement bitmap color keying. 2010-05-10 10:01:39 +02:00
Vincent Povirk d2a01883fc gdiplus: Quiet the GdipImageForceValidation fixme. 2010-05-08 20:20:47 +02:00
Vincent Povirk 2dbc3980ef gdiplus: Implement GdipCreateHICONFromBitmap. 2010-05-08 19:25:32 +02:00
Gerald Pfeifer 448a8bb594 gdiplus/tests: Remove variable path which is not really used from test_linei. 2010-05-03 16:46:38 +02:00
Vincent Povirk 38138784e7 gdiplus: Handle more cases in GdipCreateBitmapFromGdiDib. 2010-04-26 11:14:58 -05:00
Vincent Povirk 800e9ff6c5 gdiplus: Add test for GdipCreateBitmapFromGdiDib. 2010-04-26 11:14:53 -05:00
Vincent Povirk aa76490d07 gdiplus: Use ddb's instead of dib's to create texture brushes. 2010-04-19 14:54:14 +02:00
Vincent Povirk 68ce9e925a gdiplus: Prevent integer overflows when rounding text bounds.
Mono calls GdipMeasureString with a height so large that rounding and
converting it to an integer gives a negative result.
2010-04-19 14:54:11 +02:00
Vincent Povirk 6b53cb27bc gdiplus: Fix the non-trivial case in color_over. 2010-04-19 14:54:05 +02:00
Vincent Povirk ede103c699 gdiplus: Add fixmes for unimplemented imageattributes features. 2010-04-16 12:13:00 +02:00
Vincent Povirk 8b2543b750 gdiplus: Always use software to draw bitmaps to bitmaps. 2010-04-16 12:12:54 +02:00
Vincent Povirk 4247247787 gdiplus: Implement color remapping. 2010-04-16 12:12:48 +02:00
Vincent Povirk bb9c1878c3 gdiplus: Correct the coordinate transform for non-rectangular parallelograms.
Apparently matrices in gdiplus don't work the way I think they do.
2010-04-16 12:12:37 +02:00
Vincent Povirk 7791f02fd9 gdiplus: Transform bitmaps to non-rectangular parallelograms in software. 2010-04-16 12:12:30 +02:00
Vincent Povirk 9c380b1e8e gdiplus: Use a helper function to draw image data from bitmaps in software.
This will make it possible to use the same codepath for non-bitmap graphics
objects and to create a software implementation for other drawing operations.
2010-04-16 12:12:24 +02:00
Vincent Povirk 2f9c6091fc gdiplus: Use UnitPixel for metafile bounds when creating from HMETAFILE. 2010-04-16 12:10:13 +02:00
Vincent Povirk 531219f84d gdiplus: Do not create FontFamilies for bitmap fonts. 2010-04-16 12:01:42 +02:00
Vincent Povirk 049aa8dacd gdiplus: Ensure GdipGetGenericFontFamilySansSerif returns a truetype font. 2010-04-16 12:01:39 +02:00
Vincent Povirk 541d7a5ab2 gdiplus: Print the GdipGetFamilyName FIXME only once. 2010-04-09 18:35:00 +02:00
Vincent Povirk 9a4618a4ba gdiplus: Print the GdipCreateHalftonePalette FIXME only once. 2010-04-09 18:34:57 +02:00
Vincent Povirk ade2506029 gdiplus: Implement GdipFlush. 2010-04-02 16:53:07 +02:00
Vincent Povirk f2e3d99609 gdiplus: Implement GdipImageRotateFlip. 2010-03-31 11:41:13 +02:00
Vincent Povirk deb6466f3f gdiplus: Implement GdipMeasureCharacterRanges. 2010-03-31 11:40:20 +02:00
Vincent Povirk f860285cca gdiplus: Add tests for GdipMeasureCharacterRanges. 2010-03-31 11:40:15 +02:00
Vincent Povirk 21109a40fb gdiplus: Fix the linesfilled calculation in GdipMeasureString. 2010-03-31 11:40:08 +02:00
Vincent Povirk 2cde94a89e gdiplus: Rewrite GdipDrawString to share code with GdipMeasureString. 2010-03-31 11:39:58 +02:00
Vincent Povirk 3cee74c61d gdiplus: Rewrite GdipMeasureString using a helper function. 2010-03-31 11:39:51 +02:00
Vincent Povirk 0bc54fb4fb gdiplus: Add a test for GdipMeasureString. 2010-03-31 11:39:43 +02:00
Vincent Povirk 32d03da998 gdiplus: Add a missing NULL check to GdipMeasureString. 2010-03-31 11:37:51 +02:00
Vincent Povirk 0f919e365b gdiplus: Add tests for GdipDrawString. 2010-03-31 11:37:45 +02:00
Justin Chevrier 4027813764 gdiplus: Add GdipGetPathGradientSurroundColorCount stub with tests. 2010-03-29 15:50:21 +02:00
Justin Chevrier 88b4263a61 include: Fix GdipSetPathGradientSurroundColorsWithCount definition. 2010-03-29 15:50:21 +02:00
Vincent Povirk 5433969ec8 gdiplus: Don't use gdi32 to draw to bitmaps with formats it can't handle. 2010-03-29 12:19:48 +02:00
Vincent Povirk af7b8efc94 gdiplus: Store a reference to the image in image graphics contexts. 2010-03-29 12:19:38 +02:00
Mikhail Maroukhine 818ff38d62 gdiplus: Fix compiler warnings with flag -Wcast-qual. 2010-03-29 12:14:04 +02:00
Francois Gouget 5aca2dd964 gdiplus/tests: Fix compilation on systems that don't support nameless unions. 2010-03-29 11:45:24 +02:00
Justin Chevrier b7679da9a7 gdiplus: Handle UnitWorld in GdipGetFontHeightGivenDPI. 2010-03-26 10:31:25 +01:00
Justin Chevrier cf5c16c49e gdiplus/tests: Add GdipGetFontHeightGivenDPI tests. 2010-03-26 10:31:18 +01:00
Vincent Povirk eabce3e05f gdiplus: Add a test for TIFF image loading. 2010-03-22 11:44:38 +01:00
Vincent Povirk d24a421207 gdiplus: Add support for decoding TIFF images. 2010-03-22 11:44:33 +01:00
Vincent Povirk 738059baf8 gdiplus: Support decoders with multiple signatures. 2010-03-22 11:44:24 +01:00
Alexandre Julliard be748e0d71 gdiplus/tests: Create a window for graphics tests instead of painting over the desktop. 2010-03-19 11:59:51 +01:00
Paul Vriens 0513eb506e gdiplus/tests: Fix a test failure on Win98/WinMe. 2010-03-16 17:03:43 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Justin Chevrier 818420a378 gdiplus: Basic implementation of GdipImageGetFrameCount with updated tests. 2010-03-16 12:29:14 +01:00
Justin Chevrier 94820ff0a4 gdiplus/tests: Expand GdipImageGetFrameCount test coverage. 2010-03-16 12:29:09 +01:00
Vincent Povirk c1c555e3df gdiplus: Zero the MetafileHeader structure in GetMetafileHeader.
Since we return success, we should at least make sure the result is not
uninitialized memory.
2010-03-15 13:28:23 +01:00
Vincent Povirk 89e5c26236 gdiplus: Add a test for GdipGetMetafileHeaderFromMetafile. 2010-03-15 13:28:23 +01:00
Vincent Povirk 69e9de1867 gdiplus: Don't crash when creating a texture with NULL imageattributes. 2010-03-15 13:28:23 +01:00
Alasdair Sinclair 0ecd8daa16 gdiplus: Create a full BITMAPINFO to prevent clobbering memory with palette data. 2010-03-05 13:28:29 +01:00
Justin Chevrier 78f9177d9d gdiplus: Implement GdipSetImageAttributesRemapTable with updated test. 2010-03-04 12:30:17 +01:00
Justin Chevrier 74a3945b00 gdiplus/test: Add GdipSetImageAttributesRemapTable test and fix typo. 2010-03-04 12:29:58 +01:00
Justin Chevrier b4bfa6e1c1 gdiplus: Basic implementation of GdipGetNearestColor with changes to test to reflect fixes. 2010-02-26 14:18:59 +01:00
Justin Chevrier 56238cd70e gdiplus/test: Add GdipGetNearestColor test. 2010-02-26 14:18:59 +01:00
Vincent Povirk 10990f5898 gdiplus: Stub GdipGetRegionScansCount. 2010-02-25 12:12:11 +01:00
Vincent Povirk ab124aa6b8 gdiplus: Stub GdipGetImageItemData. 2010-02-25 12:12:08 +01:00
Vincent Povirk f62560f76c gdiplus: Free the attached HBITMAP when destroying Bitmap objects. 2010-02-25 12:12:03 +01:00
Vincent Povirk 0c319b07d7 gdiplus: Add a test for GdipImageRotateFlip. 2010-02-22 12:01:27 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Marcus Meissner 21b9049231 gdiplus: Dereference texture after checking it for NULL (Coverity). 2010-02-16 12:30:30 +01:00
Vincent Povirk 00dec58bb2 gdiplus: Convert formats that can't be drawn by gdi32 when drawing bitmaps. 2010-02-15 12:20:00 +01:00
Vincent Povirk cf4ec6e840 gdiplus: Implement GdipGetTextureImage. 2010-02-15 12:20:00 +01:00
Vincent Povirk 70c9e4fb3d gdiplus: Store an image in texture brushes, and use it when cloning. 2010-02-15 12:20:00 +01:00
Vincent Povirk 53e326a77c gdiplus: Use GdipCloneBitmapArea to get bitmap areas for texture brushes. 2010-02-15 12:20:00 +01:00
Vincent Povirk e933da4fdb gdiplus: Copy hatch brushes using the create function.
The DIB used in the LOGBRUSH doesn't last long enough.
2010-02-15 12:20:00 +01:00
Vincent Povirk 71e4af507f gdiplus: Use linear gradient brush angles. 2010-02-08 17:14:43 +01:00
Vincent Povirk 318ba28630 gdiplus: Don't use gdi32 to do pixel format conversion. 2010-02-08 17:14:43 +01:00
Dan Kegel c35c7a683e gdiplus/tests: Initialize buffer in test_GdipCreateBitmapFromHBITMAP. 2010-02-08 17:14:43 +01:00
Paul Vriens 73c244052e gdiplus/tests: Fix a test failure. 2010-02-03 15:49:47 +01:00
Vincent Povirk 4d53a4c9f5 gdiplus: Implement GetPixel for indexed color bitmaps. 2010-02-01 12:09:14 +01:00
Vincent Povirk 3815add31b gdiplus: Test getting/setting pixels of indexed color bitmaps. 2010-02-01 12:09:06 +01:00
Vincent Povirk 762845ca8c gdiplus: Implement GdipSetImageAttributesGamma. 2010-02-01 12:08:59 +01:00
Vincent Povirk db3d756c1e gdiplus: Prefer the builtin version. 2010-01-25 13:00:39 +01:00
Vincent Povirk ec8f002919 gdiplus: Add traces to unimplemented functions in pen.c. 2010-01-25 12:58:14 +01:00
Vincent Povirk 8be3e5cf29 gdiplus: Always trace pixel formats in hex. 2010-01-25 12:58:09 +01:00
Vincent Povirk 30574dd6be gdiplus: Add traces to unimplemented functions in imageattributes.c. 2010-01-25 12:58:04 +01:00
Alistair Leslie-Hughes 03e31f9b86 gdiplus: Implement GdipIsVisibleClipEmpty. 2010-01-05 12:29:43 +01:00
Vincent Povirk 7afd9603b5 gdiplus: Reset the lock count when unlocking a bitmap in write mode. 2010-01-04 11:45:21 +01:00
Vincent Povirk 495c42b617 gdiplus: Add traces to unimplemented functions in image.c. 2010-01-04 11:45:07 +01:00
Vincent Povirk d694679ab6 gdiplus: Add trace to GdipBitmapUnlockBits. 2010-01-04 11:45:01 +01:00
Vincent Povirk 221bde44de gdiplus: Add trace to unimplemented function in graphicspath.c. 2010-01-04 11:44:57 +01:00
Vincent Povirk 2005fe9881 gdiplus: Add traces to unimplemented functions in graphics.c. 2010-01-04 11:44:52 +01:00
Vincent Povirk e1f55929da gdiplus: Add traces to unimplemented functions in customlinecap.c. 2010-01-04 11:44:46 +01:00
Vincent Povirk 01b32951a5 gdiplus: Fix a memory leak in GdipCreateMetafileFromWmf. 2010-01-04 11:41:27 +01:00
Vincent Povirk 6bb300fa41 gdiplus: Implement GdipBitmapSetResolution. 2009-12-28 12:57:43 +01:00
Vincent Povirk 1aea88cac1 gdiplus: Implement GdipGetImage*Resolution. 2009-12-28 12:57:37 +01:00
Vincent Povirk f71cb580a4 gdiplus: Add test for image resolution functions. 2009-12-28 12:57:31 +01:00
Vincent Povirk c38d334266 gdiplus: Fix typo in GdipCreateMetafileFromWmf. 2009-12-28 12:57:23 +01:00
Vincent Povirk 53a3307983 gdiplus: Add test for GdipCreateMetafileFromWmf. 2009-12-28 12:57:17 +01:00
Vincent Povirk 27480405da gdiplus: Add test for size of metafiles loaded from streams. 2009-12-28 12:57:12 +01:00
Vincent Povirk f87039103f gdiplus: Test the ability to load WMF images. 2009-12-28 12:57:04 +01:00
Vincent Povirk d87b1d4980 gdiplus: Implement GdipImageGetFrameDimensionsList. 2009-12-28 11:55:20 +01:00
Vincent Povirk 7d62e1f776 gdiplus: Remove fixme from GdipImageGetFrameDimensionsCount. 2009-12-28 11:55:11 +01:00
Vincent Povirk d41f68fdb8 gdiplus: Add tests for multi-frame GIF images. 2009-12-28 11:55:06 +01:00
Vincent Povirk 00e1e5ddd5 gdiplus: Fix memory leak in GdipSetStringFormatMeasurableCharacterRanges. 2009-12-28 11:54:55 +01:00
Vincent Povirk d49510e7f0 gdiplus: Add traces to unimplemented functions in brush.c. 2009-12-28 11:54:34 +01:00
Vincent Povirk 7ded3d83c6 gdiplus: Add some traces for the values of point arguments. 2009-12-28 11:54:27 +01:00
Vincent Povirk d46eda2b29 gdiplus: Add a trace for values of new string format objects. 2009-12-28 11:54:21 +01:00
Vincent Povirk 7cb42df39b gdiplus: Add traces for values of newly-created pens. 2009-12-28 11:54:16 +01:00
Vincent Povirk e68c866956 gdiplus: Add a trace for values of new ImageAttributes objects. 2009-12-28 11:54:10 +01:00
Hans Leidekker 9f63f7d949 gdiplus: Implement GdipGet/SetStringFormatMeasurableCharacterRanges. 2009-12-22 13:48:26 +01:00
Vincent Povirk 0c9991c583 gdiplus: Implement GdipSetImageAttributesColorMatrix. 2009-12-21 15:01:23 +01:00
Vincent Povirk 70bdc43c20 gdiplus: Add a test for GdipSetImageAttributesColorMatrix. 2009-12-21 15:01:23 +01:00
Vincent Povirk 149c44eb4c gdiplus: Allocate a new ImageAttributes object in GdipCloneImageAttributes. 2009-12-21 15:01:23 +01:00
Vincent Povirk f8ca372459 gdiplus: Add trace for values of new graphics and image objects. 2009-12-21 15:01:23 +01:00
Vincent Povirk 2d8fb9ade3 gdiplus: Add traces for values of newly-created font objects. 2009-12-21 15:01:23 +01:00
Vincent Povirk d5fffdd0c4 gdiplus: Add traces for values of newly-created linecaps. 2009-12-21 15:01:22 +01:00
Vincent Povirk f141778003 gdiplus: Add traces for values of newly-created brushes. 2009-12-21 15:01:22 +01:00
Vincent Povirk 6a7fc50708 gdiplus: Add tests for the other frame functions, for memory bitmaps. 2009-12-18 11:45:13 +01:00
Paul Vriens 60ca760edd gdiplus/tests: Fix a test failure on XP/W2K3. 2009-12-17 13:25:51 +01:00
Paul Vriens ffbc346565 gdiplus/tests: Fix some test failures on older gdiplus. 2009-12-16 12:42:40 +01:00
Huw Davies 39dd4d25a4 gdiplus: Fix a memory leak in the tests.
Found by Valgrind.
2009-12-15 16:09:12 +01:00
Huw Davies 70742d5e5a gdiplus: Fix a memory leak in the tests.
Found by Valgrind.
2009-12-15 16:09:12 +01:00
Huw Davies b18cc9f680 gdiplus: Fix a memory leak in the tests.
Found by Valgrind.
2009-12-15 16:09:12 +01:00
Alexandre Julliard 8d8544fa15 gdiplus/tests: Fix parentheses in the expect() macro. 2009-12-14 16:14:37 +01:00
Vincent Povirk 25dcd43e52 gdiplus: Support reading image data from device-dependent bitmaps. 2009-12-14 12:18:18 +01:00
Vincent Povirk 3424dac386 gdiplus: Explicitly copy the bits from dib sections to new bitmaps.
On Windows, GdipCreateBitmapFromHBITMAP creates a copy of the bitmap, not
a reference. Currently, we match this behavior, but this is only because
we cannot yet create bitmap objects that reference existing memory. If
GdipCreateBitmapFromScan0 were fixed to do this, FromHBITMAP would break.

Therefore, we always pass NULL to FromScan0 so that it allocates new memory
for the bitmap.
2009-12-14 12:18:10 +01:00
Huw Davies 68bacfb8d5 gdiplus: Fix a memory leak.
Found by Valgrind.
2009-12-14 12:04:04 +01:00
Vincent Povirk 01c26d1416 gdiplus: Add test for image palette functions. 2009-12-14 12:04:04 +01:00
Vincent Povirk 6c040271c1 gdiplus: Initialize the palettes of new indexed bitmaps. 2009-12-14 12:04:04 +01:00
Vincent Povirk 9615dd8fdb gdiplus: Implement GdipGetImagePalette. 2009-12-14 12:04:03 +01:00
Vincent Povirk 59f45f2cbb gdiplus: Implement GdipGetImagePaletteSize. 2009-12-14 12:04:03 +01:00
Vincent Povirk 39dc81cc80 gdiplus: Implement GdipSetImagePalette. 2009-12-14 12:04:03 +01:00
Nikolay Sivov 29357ec024 gdiplus/tests: Fix a matrix leak in test. 2009-12-09 13:50:35 +01:00
Vincent Povirk 8b154a590e gdiplus: Fix cleanup after errors in GdipCloneImage. 2009-12-07 14:18:28 +01:00
Vincent Povirk bf04d3fa69 gdiplus: Implement GdipCloneBitmapArea. 2009-12-07 14:18:28 +01:00
Nikolay Sivov 5b7fae2ea8 gdiplus/tests: Delete Pen object after use. 2009-12-07 14:18:27 +01:00
Nikolay Sivov f9af62e36d gdiplus/tests: Free created iterator in tests. 2009-12-07 14:18:27 +01:00
Nikolay Sivov 25260e601c gdiplus/tests: Additional test to show that custom cap isn't created without stroke path. 2009-12-07 14:18:26 +01:00
Nikolay Sivov db5e3f4a05 gdiplus/tests: Free brush pointer after test. 2009-12-07 14:18:26 +01:00
Huw Davies 55bf97bba7 gdiplus: Fix a couple of memory leaks.
Found by Valgrind.
2009-12-07 14:18:24 +01:00
Kirill K. Smirnov 125c5645cb gdiplus: Avoid deleting non-existent object. 2009-10-26 11:19:32 +01:00
Alexandre Julliard 0065a115c6 gdiplus: Remove a useless inline specifier. 2009-10-19 11:44:39 +02:00
Vincent Povirk cab50432f6 gdiplus: Enable encoding of PNG images. 2009-10-09 12:00:23 +02:00
Vincent Povirk f0c99e0115 gdiplus: Add some hatch brushes not present in gdi. 2009-10-09 11:50:29 +02:00
Vincent Povirk bd86e27919 gdiplus: Use gdi texture brushes to draw hatch brushes. 2009-10-09 11:50:29 +02:00
Paul Vriens a126f0caf2 gdiplus/tests: Fix some test failures on older gdiplus versions. 2009-09-28 12:39:32 +02:00
Vincent Povirk 809f721aba gdiplus: Implement GdipBitmapSetPixel. 2009-09-24 13:26:49 +02:00
Vincent Povirk 41140a950b gdiplus: Implement GdipBitmapGetPixel. 2009-09-24 13:26:35 +02:00
Vincent Povirk e1cb441781 gdiplus: Add tests for GdipBitmap(Get|Set)Pixel. 2009-09-24 13:25:00 +02:00
Marcus Meissner e70e1249c3 gdiplus: do not memcpy over NULL ptrs (Coverity). 2009-09-22 16:15:48 +02:00
Vincent Povirk e261568652 gdiplus: Accept version 2 in GdiplusStartup. 2009-09-22 16:15:29 +02:00
Vincent Povirk ed059e1175 gdiplus/tests: Reject gdiplus versions greater than 2. 2009-09-22 16:15:24 +02:00
Vincent Povirk d2e999d2e8 gdiplus: Use the preset blend when drawing linear gradients. 2009-09-15 17:34:56 -05:00
Vincent Povirk ad6adc750e gdiplus: Add tests for linear gradient preset blends. 2009-09-15 17:34:48 -05:00
Vincent Povirk 8bdabe3a18 gdiplus: Store preset blends in linear gradient brushes. 2009-09-15 17:34:35 -05:00
Vincent Povirk 52e91927fd gdiplus: Stub GdipGetLinePresetBlend[Count]. 2009-09-15 17:34:23 -05:00
Vincent Povirk 0595fc5e03 gdiplus: Implement GdipGetImageRawFormat. 2009-09-15 17:34:12 -05:00
Vincent Povirk 377b73d022 gdiplus: Don't accept MS Sans Serif as the generic sans serif font. 2009-09-08 13:45:03 +02:00
Vincent Povirk 0acfffc17b gdiplus: Don't calculate the number of points in the arc by dividing. 2009-09-08 13:44:44 +02:00
Vincent Povirk 99012b9a4e gdiplus: Don't use the supplied rect to calculate font scaling factors. 2009-09-08 13:44:25 +02:00
Vincent Povirk 969da83ea7 gdiplus: Stub GdipScaleLineTransform. 2009-09-08 13:44:15 +02:00
Vincent Povirk cded6c8b79 gdiplus: Stub GdipResetLineTransform. 2009-09-08 13:44:08 +02:00
Vincent Povirk 94ab23377d gdiplus: Implement GdipDrawImagePointRect. 2009-09-08 13:44:01 +02:00
Vincent Povirk aef202507b gdiplus: Remove unused bitmap flipping code. 2009-09-08 12:13:07 +02:00
Vincent Povirk 0313f88794 gdiplus: Disable alpha channel support for BMP images. 2009-09-08 12:13:01 +02:00
Vincent Povirk 91e0ee260b gdiplus: Use WIC to decode PNG files. 2009-09-08 12:12:54 +02:00
Vincent Povirk 947e39dbc7 gdiplus: Use WIC to decode BMP files. 2009-09-08 12:12:45 +02:00
Vincent Povirk e23ccb787d gdiplus: Fix a copy outside allocated memory in GdipCreateTextureIA. 2009-09-08 12:12:39 +02:00
Vincent Povirk ba09567716 gdiplus: Test for the lowest rejected startup version. 2009-09-08 12:12:34 +02:00
Ge van Geldorp 1e6a80133b gdiplus/tests: Fix tests on Win7. 2009-09-08 12:12:00 +02:00
Ge van Geldorp 3b336da990 gdiplus/tests: Fix test on Win7. 2009-09-02 14:39:40 +02:00
Vincent Povirk 6c2d85ca84 gdiplus: Use WIC to decode GIF files. 2009-09-02 10:25:02 +02:00
Vincent Povirk faad683e47 gdiplus: Use WIC to decode JPEG files. 2009-09-02 10:24:53 +02:00
Vincent Povirk e4a3ad81be gdiplus: Use WIC to encode images. 2009-09-02 10:24:47 +02:00
Vincent Povirk 9d149e606b gdiplus: Use WIC to decode ICO files. 2009-09-01 12:43:48 +02:00
Vincent Povirk cb3ee716a2 gdiplus: Reimplement GdipCreateBitmapFromHICON based on RGBA bitmaps. 2009-08-29 16:48:56 +02:00
Vincent Povirk 895c6d8e1e gdiplus: Use AlphaBlend for 32-bit images with alpha channels. 2009-08-29 16:48:56 +02:00
Vincent Povirk 7fdc0208e8 gdiplus: Return the real image bits from LockBits when possible. 2009-08-29 16:48:55 +02:00
Vincent Povirk 436b3be651 gdiplus: Create DIBs instead of IPictures in CreateBitmapFromScan0. 2009-08-29 16:48:55 +02:00
Vincent Povirk d87adf2a60 gdiplus: Don't use IPicture to manage the HDC associated with a GpBitmap. 2009-08-29 16:48:55 +02:00
Vincent Povirk e48524ceb6 gdiplus: Add and use an HBITMAP field in GpBitmap objects. 2009-08-29 16:48:55 +02:00
Vincent Povirk b99abe2e91 gdiplus: Use the decoder list to decide how to load image files. 2009-08-29 16:48:55 +02:00
Vincent Povirk 2f0b4bf36b gdiplus: Add PNG to the decoders list. 2009-08-29 16:48:54 +02:00
Vincent Povirk 28e345882c gdiplus: Implement GdipCreateHBITMAPFromBitmap. 2009-08-28 11:54:50 +02:00
Vincent Povirk 88bc342612 gdiplus: Add test for GdipCreateHBITMAPFromBitmap. 2009-08-28 11:54:50 +02:00
Andrew Eikum f5896a2be0 gdiplus: Implement GdipIsVisibleRect. 2009-08-27 11:51:24 +02:00
Andrew Eikum d06dd2d7cb gdiplus: Implement GdipIsVisiblePoint. 2009-08-27 11:51:08 +02:00
Andrew Eikum 39f6f491a6 gdiplus: Add utility function get_visible_clip_region. 2009-08-27 11:50:23 +02:00
Andrew Eikum 2032b0d354 gdiplus: Implement GdipIsVisibleRegionRect. 2009-08-26 15:05:46 +02:00
Andrew Eikum 32996e0a11 gdiplus: Implement GdipIsVisibleRegionPoint. 2009-08-26 14:57:18 +02:00
Andrew Eikum 9ec5f9ad6f gdiplus: Support regions of more than one rectangle in GdipCreateRegionHrgn. 2009-08-25 10:23:48 +02:00
Vincent Povirk 7246a487d9 gdiplus: Remove an ipicture reference in GdipCreateBitmapFromStream. 2009-08-21 11:28:38 +02:00
Vincent Povirk e72defc8f7 gdiplus: Do not call IPicture_Render directly from GdipDrawImageI. 2009-08-21 11:28:29 +02:00
Vincent Povirk 69ba1415e3 gdiplus: Add codecs for the image formats we can currently decode. 2009-08-21 11:17:20 +02:00
Vincent Povirk b27c3c1983 gdiplus: Only attempt to encode if the Encoder flag is set. 2009-08-21 11:16:58 +02:00
Vincent Povirk 40df7dbc07 gdiplus: Implement GdipGetImageDecoders[Size]. 2009-08-21 11:16:50 +02:00
Vincent Povirk 96023267c8 gdiplus: Store the codec information and functions in a single structure. 2009-08-21 11:16:38 +02:00
Alexandre Julliard 186528e298 gdiplus/tests: Use the global wine_dbgstr_w instead of a local variant. 2009-08-19 13:36:22 +02:00
Vincent Povirk dad00cce44 gdiplus: Add a test for drawing to application-provided memory. 2009-08-19 12:15:22 +02:00
Francois Gouget 04105f7ff3 gdiplus/tests: Add a trailing '\n' to an ok() call. 2009-08-19 12:07:28 +02:00
Andrew Eikum 60fc01a0c4 gdiplus/tests: Add tests for GdipGetVisibleClipBounds. 2009-08-13 16:44:28 +02:00
Andrew Eikum ef0ee6e556 gdiplus: Implement GdipGetVisibleClipBounds. 2009-08-13 16:44:09 +02:00
Andrew Eikum fdf48f1d4d gdiplus: Create utility function get_graphics_bounds. 2009-08-13 16:43:41 +02:00
Vincent Povirk d76d00ea7e gdiplus: Remove an unnecessary picture reference in GdipSaveImageToFile. 2009-08-11 17:29:58 +02:00
Ken Sharp e072d36a87 gdiplus: Add GdipIsVisibleRectI stub. 2009-08-06 12:25:53 +02:00
Alistair Leslie-Hughes 7b2292fac1 gdiplus: Add GdipRecordMetafileI stub. 2009-08-04 15:21:00 +02:00
Vincent Povirk c71853cda5 gdiplus: Ignore the graphics transforms in GdipGetRegionBounds. 2009-08-04 12:49:01 +02:00
Vincent Povirk ee74501102 gdiplus: Fix rectangles of horizontal and vertical gradients. 2009-08-04 12:48:42 +02:00
Luke Benstead ea96cd3a52 gdiplus: Implement stub for GdipGetImagePalette. 2009-08-03 17:35:52 +02:00
Nikolay Sivov c562d444f5 gdiplus: Correctly forward to GdipAddPathPie. 2009-08-03 15:04:10 +02:00