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