Nikolay Sivov
78b6402a08
d2d1: Fix CreateGeometryGroup() prototype.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-07 16:59:46 +01:00
Nikolay Sivov
97e52ab673
d2d1: Implement FillContainsPoint() for rectangle geometry.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-03 17:13:40 +01:00
Nikolay Sivov
aa55206626
d2d1: Fix a typo in traced error message parameter.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-01 14:38:26 +01:00
Nikolay Sivov
306d062f46
d2d1: For transformed geometry forward StrokeContainsPoint() to its source geometry.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-01 14:38:24 +01:00
Nikolay Sivov
c8eb7453a8
d2d1/tests: Test creating bitmap target from uninitialized dc target.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-31 15:40:51 +01:00
Nikolay Sivov
7bce356ef4
d2d1/tests: DrawTextLayout() ignores effects that are not brushes.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-31 15:40:49 +01:00
Nikolay Sivov
5f4bba4303
d2d1: Store gradient stop collection pointer for linear gradient brush.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-28 17:10:05 +02:00
Nikolay Sivov
0f44063006
d2d1: Support setting and getting back start and end point for linear gradient brush.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-28 17:10:02 +02:00
Andrew Eikum
aea8f9d610
d2d1/tests: Add FillContainsPoint() tests.
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-26 15:36:00 +02:00
Andrew Eikum
2e08bc0ffc
d2d1: Implement d2d_path_geometry_FillContainsPoint().
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-26 15:35:58 +02:00
Andrew Eikum
930dd951b3
d2d1: Implement d2d_transformed_geometry_FillContainsPoint().
...
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-26 15:35:55 +02:00
Nikolay Sivov
e9da184bbd
d2d1: Initial implementation of bitmap render target.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-20 06:17:39 -07:00
Nikolay Sivov
4121b223c8
d2d1: Implement GetDesktopDpi().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 16:57:47 +02:00
Nikolay Sivov
1f50b75b78
d2d1: Make some of drawing calls a wrappers over DrawGeometry().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:51:35 +02:00
Nikolay Sivov
31b162b37d
d2d1: Support shared bitmaps created from dxgi surface.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-11 16:51:35 +02:00
Nikolay Sivov
7d5bd929e2
d2d1/tests: Initial tests for bitmap render target.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-07 13:11:34 +02:00
Nikolay Sivov
f4cacf774b
d2d1: Initial implementation of HWND render target.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 13:55:27 +02:00
Nikolay Sivov
03d301cc74
d2d1: Initial implementation of DC render target.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-14 22:24:31 +09:00
Nikolay Sivov
ccc6a576d6
d2d1/tests: Test that target properties are kept during BindDC().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-08 19:51:28 +09:00
Nikolay Sivov
35bab5ce64
d2d1/tests: A DC target test for switching from one HDC to another.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-06 11:28:39 +09:00
Nikolay Sivov
3d222560b2
d2d1: Move mesh creation to mesh.c.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-01 12:48:56 +09:00
Nikolay Sivov
27d5d4caf2
d2d1: Move brush creation helpers to common location.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-04-01 12:48:54 +09:00
Nikolay Sivov
c1ea9df0a0
d2d1: Move bitmap creation helpers to common location.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 21:35:47 +09:00
Nikolay Sivov
ea7df31319
d2d1/tests: Basic test for ID2D1DCRenderTarget creation.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-30 11:53:45 +09:00
Nikolay Sivov
9cc6a6e5d6
d2d1: Don't use render target pointer directly in bitmap initialization helpers.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-29 19:32:15 +09:00
Nikolay Sivov
ec1957c359
d2d1: Use drawing effect for underlines.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-29 00:42:24 +09:00
Nikolay Sivov
90155cb1e1
d2d1: Use drawing effect at DrawGlyphRun().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-27 23:34:07 +09:00
Nikolay Sivov
4366407245
d2d1: Support underlined text in DrawTextLayout().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-25 23:56:08 +09:00
Nikolay Sivov
a612af7772
d2d1/tests: A test for DrawTextLayout() with drawing effect.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 22:50:26 +09:00
Nikolay Sivov
e2f9bc0d0b
d2d1: SetDpi() rejects negative values too.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:17 +09:00
Nikolay Sivov
d309b843fb
d2d1: Block target creation on invalid dpi values.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:17 +09:00
Nikolay Sivov
7dd7500327
d2d1: Support different measuring modes in DrawText().
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 01:26:17 +09:00
Nikolay Sivov
c05dd9e11f
d2d1: Don't update target dpi if only one SetDpi() argument is zero.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-20 21:18:56 +09:00
Francois Gouget
d08a1da22a
d2d1: Remove WINAPI on static functions where not needed.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-23 23:35:23 +09:00
Nikolay Sivov
a5612e0275
d2d1: Fix a copy-paste issue in EndDraw() (Coverity).
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-23 23:35:22 +09:00
Nikolay Sivov
39f2ed321d
d2d1: Properly free brush data buffer is created from.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 23:56:40 +09:00
Henri Verbeet
3fb1fb9616
d2d1: Calculate intersections in a more robust way in d2d_geometry_intersect_self().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 12:59:39 +09:00
Henri Verbeet
55d403deb9
d2d1: Take the recommended rendering mode into account in d2d_d3d_render_target_DrawGlyphRun().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 12:59:36 +09:00
Henri Verbeet
b5685efc80
d2d1: Add a pixel shader for triangle/solid/bitmap draws.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 12:59:32 +09:00
Henri Verbeet
ff6225c16d
d2d1/tests: Add some tests for opacity brushes.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 00:24:35 +09:00
Henri Verbeet
f1f2d0f5cc
d2d1: Add a pixel shader for triangle/bitmap/solid draws.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 00:24:33 +09:00
Henri Verbeet
8446e4530a
d2d1: Add a pixel shader for triangle/bitmap/bitmap draws.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 00:24:31 +09:00
Henri Verbeet
e6aa9f5041
d2d1: Add support for opacity brushes.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 00:24:22 +09:00
Henri Verbeet
17daa1398e
d2d1: Validate brush types in d2d_d3d_render_target_FillGeometry().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-19 00:24:19 +09:00
Alexandre Julliard
f13245295d
d2d1: Avoid an unsupported makefile variable assignment.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-11-09 16:44:50 +09:00
Henri Verbeet
a84658f928
d2d1: Properly handle collinear edges in d2d_cdt_insert_segment().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 20:57:16 +09:00
Henri Verbeet
c125612cbb
d2d1: Properly handle collinear edges in d2d_cdt_cut_edges().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-23 20:57:03 +09:00
Henri Verbeet
c575f04b68
d2d1: Properly check if a face is real in d2d_path_geometry_add_face().
...
In particular, the existing test may fail if the convex hull has only three
vertices.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-09 12:58:23 +09:00
Henri Verbeet
76aa675da3
d2d1: Only search for the initial edge for each figure in d2d_cdt_insert_segments().
...
For each subsequent segment we can just re-use the edge we just inserted.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:23 +09:00
Henri Verbeet
e6da1a780e
d2d1: Only test figures that overlap the probe in d2d_path_geometry_point_inside().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:18 +09:00
Henri Verbeet
c98d34d745
d2d1: Only test overlapping figures in d2d_geometry_intersect_self().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2015-10-08 12:53:10 +09:00
Henri Verbeet
7e6b52e88b
d2d1: Implement d2d_cdt_incircle() in a more robust way.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:03:22 +09:00
Henri Verbeet
e8b4d8e0d0
d2d1: Implement d2d_point_ccw() in a more robust way.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:01:07 +09:00
Henri Verbeet
f35bfff4fc
d2d1: Properly handle the candidate being the last vertex before the base edge origin in d2d_cdt_fixup().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
2015-10-07 13:00:53 +09:00
Piotr Caban
f5b64c0d35
d2d1: Avoid possible infinite loop in d2d_geometry_intersect_self caused by rounding errors.
2015-08-27 21:43:47 +09:00
Henri Verbeet
bdaa571c5d
d2d1: Avoid leaking "object" on an error path in d2d_factory_CreateWicBitmapRenderTarget() (Coverity).
2015-08-25 21:13:38 +09:00
Henri Verbeet
acbb0bdfac
d2d1: Implement d2d_factory_CreateTransformedGeometry().
2015-08-20 20:26:41 +09:00
Henri Verbeet
69906b59d8
d2d1: Properly cleanup in d2d_rectangle_geometry_init() failure paths.
...
This avoids leaking the factory reference in particular.
2015-08-20 20:26:36 +09:00
Henri Verbeet
57eec429c6
d2d1: Implement d2d_text_renderer_DrawInlineObject().
2015-08-18 18:28:51 +09:00
Henri Verbeet
2474f5e33a
d2d1: Implement d2d_bitmap_CopyFromMemory().
2015-08-18 18:28:49 +09:00
Henri Verbeet
1bea5f44b0
d2d1: Make d2d_geometry_sink_vtbl static const.
...
Spotted by Francois Gouget.
2015-08-17 22:50:46 +09:00
Henri Verbeet
4460006fbd
d2d1: Only draw if the geometry has any faces in d2d_d3d_render_target_FillGeometry().
2015-08-17 22:50:44 +09:00
Henri Verbeet
20ad2e397f
d2d1: Print a WARN instead of a FIXME for the glyph run description in d2d_text_renderer_DrawGlyphRun().
...
The glyph run description seems to be mostly informational, there doesn't
appear to be a lot we could do with it.
2015-08-17 22:50:41 +09:00
Henri Verbeet
d29af2e460
d2d1: Only print a FIXME/WARN for specific properties in d2d_factory_init().
2015-08-17 22:50:39 +09:00
Henri Verbeet
3e0af5f1e0
d2d1: Only print a FIXME/WARN for specific properties in d2d_d3d_render_target_init().
2015-08-17 22:50:37 +09:00
Henri Verbeet
d41f568226
d2d1: Get rid of a FIXME in d2d_wic_render_target_init().
2015-08-13 15:04:10 +09:00
Henri Verbeet
64ccd138a2
d2d1: d2d_bitmap_brush_init() can't fail.
2015-08-13 15:04:08 +09:00
Henri Verbeet
7bdc1ef899
d2d1: Get rid of a FIXME in d2d_bitmap_brush_init().
2015-08-13 15:04:06 +09:00
Henri Verbeet
7d801d67ed
d2d1: Get rid of a FIXME in d2d_solid_color_brush_init().
...
All properties for solid color brushes are implemented.
2015-08-13 15:04:04 +09:00
Francois Gouget
f8a7d6ed74
Assorted spelling fixes.
2015-08-07 23:50:48 +09:00
Henri Verbeet
cd59e3db6c
d2d1: Implement d2d_d3d_render_target_CreateSharedBitmap().
2015-08-04 09:45:59 +02:00
Henri Verbeet
f0bf9e81fa
d2d1: Use the same device for all WIC render targets from the same factory.
2015-08-04 09:45:50 +02:00
Henri Verbeet
da47b214cd
d2d1: Implement d2d_bitmap_GetFactory().
2015-08-04 09:45:48 +02:00
Henri Verbeet
91b9ce69b7
d2d1: Implement d2d_gradient_GetFactory().
2015-08-03 10:56:53 +02:00
Henri Verbeet
4e50527c17
d2d1: Implement d2d_solid_color_brush_GetFactory().
2015-08-03 10:56:51 +02:00
Henri Verbeet
8b893839bc
d2d1: Implement d2d_linear_gradient_brush_GetFactory().
2015-08-03 10:56:47 +02:00
Henri Verbeet
414d04e27d
d2d1: Implement d2d_bitmap_brush_GetFactory().
2015-08-03 10:56:44 +02:00
Henri Verbeet
47f9f09c73
d2d1: Implement d2d_rectangle_geometry_GetFactory().
2015-08-03 10:56:22 +02:00
Henri Verbeet
14c0009add
d2d1: Implement d2d_path_geometry_GetFactory().
2015-07-31 12:08:59 +02:00
Henri Verbeet
9745efaf6d
d2d1: Implement d2d_mesh_GetFactory().
2015-07-31 12:08:57 +02:00
Henri Verbeet
c1fc008493
d2d1: Implement d2d_state_block_GetFactory().
2015-07-31 12:08:55 +02:00
Henri Verbeet
68ce000df7
d2d1: Implement d2d_stroke_style_GetFactory().
2015-07-30 11:39:57 +02:00
Henri Verbeet
e5c793e637
d2d1: Don't pass NULL resource data to ID3D10Device_CreateTexture2D().
2015-07-30 11:39:55 +02:00
Henri Verbeet
4371946d94
d2d1: Fix the TRACE in d2d_bitmap_Release().
2015-07-30 11:39:53 +02:00
Henri Verbeet
c2135dd498
d2d1: Properly handle D2D1_ALPHA_MODE_PREMULTIPLIED on render targets.
2015-07-30 11:39:51 +02:00
Henri Verbeet
52c412492f
d2d1: Bitmap values are always premultiplied in practice.
...
Since creating bitmaps with D2D1_ALPHA_MODE_UNKNOWN or
D2D1_ALPHA_MODE_STRAIGHT is not possible, and D2D1_ALPHA_MODE_IGNORE
behaves as if alpha == 1.0f.
2015-07-30 11:39:46 +02:00
Henri Verbeet
230785dc32
d2d1: Force alpha to 1.0f for clears.
2015-07-29 21:44:02 +02:00
Henri Verbeet
c4503779bb
d2d1: Take the bitmap's alpha mode into account in bitmap brushes.
2015-07-29 21:44:02 +02:00
Henri Verbeet
d742887b7f
d2d1: Implement d2d_bitmap_brush_SetBitmap().
2015-07-29 21:44:02 +02:00
Henri Verbeet
a2f41ed5b6
d2d1: Implement d2d_bitmap_GetPixelFormat().
2015-07-29 21:44:01 +02:00
Henri Verbeet
1b3574ebc0
d2d1: Validate bitmap formats.
2015-07-29 21:44:01 +02:00
Henri Verbeet
ccc347038b
d2d1: Also infer the alpha mode in d2d_d3d_render_target_CreateBitmapFromWicBitmap().
2015-07-28 09:49:04 +02:00
Henri Verbeet
a4bcae0bf7
d2d1: Implement d2d_d3d_render_target_GetPixelFormat().
2015-07-21 16:33:23 +02:00
Henri Verbeet
3b400cad34
d2d1: Fix the bitmap DPI scale for bitmap brushes.
2015-07-21 16:33:23 +02:00
Henri Verbeet
4c64c76c0b
d2d1: Implement d2d_d3d_render_target_FillEllipse().
2015-07-21 16:33:23 +02:00
Henri Verbeet
9afd280d26
d2d1: Implement d2d_d3d_render_target_FillRoundedRectangle().
2015-07-21 16:33:22 +02:00
Henri Verbeet
d1e1429218
d2d1: Add a missing TRACE to d2d_d3d_render_target_FillRectangle().
...
This accidentally got lost in b92a05c84e
.
2015-07-21 16:33:22 +02:00
Henri Verbeet
fc1286aed8
d2d1: Add some FIXMEs for unimplemented functionality to d2d_d3d_render_target_DrawGlyphRun().
2015-07-20 11:50:22 +02:00
Henri Verbeet
b33786ce6d
d2d1: Implement initial support for drawing bezier curves.
2015-07-20 11:50:20 +02:00
Henri Verbeet
025c320145
d2d1: Implement d2d_geometry_sink_SetFillMode().
2015-07-20 11:50:18 +02:00
Henri Verbeet
f5b4da0ddd
d2d1/tests: Don't call compare_surface() inside ok().
2015-07-20 11:50:15 +02:00
Henri Verbeet
bebee86da6
d2d1: Properly trace "vertex_count" in d2d_path_geometry_triangulate().
2015-07-15 23:18:45 +09:00
Henri Verbeet
a8f45dff60
d2d1: Implement d2d_geometry_sink_AddLines().
2015-07-14 23:27:22 +09:00
Henri Verbeet
b92a05c84e
d2d1: Implement d2d_d3d_render_target_FillGeometry().
2015-07-14 23:27:21 +09:00
Henri Verbeet
3bb382aabb
d2d1: Introduce a separate function to construct pixel shader constant buffers for brushes.
2015-07-14 23:27:21 +09:00
Henri Verbeet
1f4e37659c
d2d1: Also bind the pixel shader and blend state in d2d_brush_bind_resources().
2015-07-14 23:27:21 +09:00
Henri Verbeet
391fda7599
d2d1: Implement d2d_factory_CreateRectangleGeometry().
2015-07-14 23:27:21 +09:00
Henri Verbeet
aed042d4dc
d2d1: Implement d2d_d3d_render_target_DrawText().
2015-07-10 22:23:11 +09:00
Henri Verbeet
b108a2ff78
d2d1: Implement d2d_path_geometry_GetSegmentCount().
2015-07-10 22:23:02 +09:00
Henri Verbeet
dfe1486e4b
d2d1: Implement d2d_path_geometry_GetFigureCount().
2015-07-10 22:23:00 +09:00
Henri Verbeet
ddec784aee
d2d1: Implement d2d_geometry_sink_BeginFigure() and d2d_geometry_sink_EndFigure().
2015-07-10 22:22:58 +09:00
Henri Verbeet
2f6f8f1242
d2d1: Only allow path geometries to be opened once.
2015-07-10 22:22:56 +09:00
Henri Verbeet
03e60da52b
d2d1: Implement d2d_text_renderer_GetPixelsPerDip().
2015-07-09 23:18:07 +09:00
Henri Verbeet
a73035c302
d2d1: Implement d2d_text_renderer_GetCurrentTransform().
2015-07-09 23:18:05 +09:00
Henri Verbeet
47260762a9
d2d1: Implement d2d_text_renderer_IsPixelSnappingDisabled().
2015-07-09 23:18:03 +09:00
Henri Verbeet
a44dfc58ab
d2d1: Implement d2d_d3d_render_target_DrawGlyphRun().
2015-07-09 23:18:00 +09:00
Henri Verbeet
1fd0cf680f
d2d1: Implement d2d_text_renderer_DrawGlyphRun().
2015-06-16 16:48:56 +09:00
Henri Verbeet
8b170f0f59
d2d1: Implement d2d_geometry_sink_AddBezier().
2015-06-16 16:48:54 +09:00
Henri Verbeet
5d5fdbc63b
d2d1: Implement d2d_geometry_sink_AddQuadraticBezier().
2015-06-16 16:48:52 +09:00
Henri Verbeet
95a12f246a
d2d1: Implement d2d_geometry_sink_AddLine().
2015-06-16 16:48:50 +09:00
Henri Verbeet
e8d41475b9
d2d1: Implement d2d_path_geometry_Open().
2015-06-15 22:10:36 +09:00
Henri Verbeet
2b1d3bfb47
d2d1: Implement d2d_factory_CreatePathGeometry().
2015-06-15 22:10:36 +09:00
Henri Verbeet
7e8c88fa1e
d2d1: Fix the ID2D1Factory::CreatePathGeometry() declaration.
2015-06-15 22:10:35 +09:00
Henri Verbeet
d3cc27f1d8
d2d1/tests: Add some extend mode tests to test_bitmap_brush().
2015-04-29 12:24:32 +09:00
Henri Verbeet
c92d7aff63
d2d1: Do not flip/mirror the rectangle in d2d_d3d_render_target_FillRectangle().
2015-04-29 12:24:28 +09:00
Henri Verbeet
abc84588d2
d2d1: Implement d2d_bitmap_brush_GetExtendModeY().
2015-04-28 15:34:10 +09:00
Henri Verbeet
0a02f346f6
d2d1: Implement d2d_bitmap_brush_SetExtendModeY().
2015-04-28 15:34:08 +09:00
Henri Verbeet
b940f2fd9e
d2d1: Implement d2d_bitmap_brush_GetExtendModeX().
2015-04-28 15:34:06 +09:00
Henri Verbeet
21a4a10879
d2d1: Implement d2d_bitmap_brush_SetExtendModeX().
2015-04-28 15:34:03 +09:00
Henri Verbeet
61a40b0d9c
d2d1/tests: Add a test for bitmap brushes.
2015-04-27 18:05:20 +09:00
Henri Verbeet
719dfff5bd
d2d1: Implement d2d_bitmap_brush_GetInterpolationMode().
2015-04-27 18:05:17 +09:00
Henri Verbeet
1014d9a105
d2d1: Implement d2d_bitmap_brush_SetInterpolationMode().
2015-04-27 18:05:15 +09:00
Henri Verbeet
168dd496cb
d2d1: Implement d2d_bitmap_brush_GetBitmap().
2015-04-24 14:29:45 +09:00
Henri Verbeet
b313680ab4
d2d1: Take scaling into account for the source offset in d2d_d3d_render_target_DrawBitmap().
2015-04-24 14:29:43 +09:00
Henri Verbeet
4b3ca58fe9
d2d1: Do not flip/mirror the bitmap in d2d_d3d_render_target_DrawBitmap().
2015-04-24 14:29:41 +09:00
Henri Verbeet
2af8e243ac
d2d1: Add opacity support to bitmap brushes.
2015-04-15 22:21:59 +09:00
Henri Verbeet
a7b2f5e889
d2d1: Take the world transform into account when calculating the bitmap brush texcoord transform.
2015-04-15 22:21:59 +09:00
Henri Verbeet
efe777c8ac
d2d1: Fix a typo in the determinant calculation in d2d_d3d_render_target_FillRectangle().
2015-03-31 18:49:29 +09:00
Henri Verbeet
ae7aee3dd6
d2d1/tests: Add a test for color brushes.
2015-03-31 18:49:28 +09:00
Henri Verbeet
d9fbb3f847
d2d1: Do not multiply color brush RGB values with the brush opacity.
2015-03-30 19:10:28 +09:00
Henri Verbeet
7baf2a0f55
d2d1/tests: Add a test for ID2D1DrawingStateBlock.
2015-03-30 19:10:28 +09:00
Henri Verbeet
59e641aa70
d2d1: Implement d2d_d3d_render_target_RestoreDrawingState().
2015-03-30 19:10:27 +09:00
Henri Verbeet
3f97056424
d2d1: Implement d2d_d3d_render_target_SaveDrawingState().
2015-03-30 19:10:27 +09:00
Henri Verbeet
70883bb0a2
d2d1: Use a D2D1_DRAWING_STATE_DESCRIPTION structure to store render target drawing state.
2015-03-27 20:40:37 +09:00
Henri Verbeet
fd4b0532d0
d2d1: Implement d2d_d3d_render_target_GetTags().
2015-03-27 20:40:37 +09:00
Henri Verbeet
e52cf640e6
d2d1: Implement d2d_d3d_render_target_SetTags().
2015-03-27 20:40:37 +09:00
Henri Verbeet
2f529b1255
d2d1: Implement d2d_d3d_render_target_GetTextAntialiasMode().
2015-03-27 20:40:37 +09:00
Henri Verbeet
345dbdc77f
d2d1: Implement d2d_d3d_render_target_SetTextAntialiasMode().
2015-03-27 20:40:36 +09:00
Henri Verbeet
cef9434cb2
d2d1: Implement d2d_d3d_render_target_GetAntialiasMode().
2015-03-27 00:11:59 +09:00
Henri Verbeet
b231013f03
d2d1: Implement d2d_d3d_render_target_SetAntialiasMode().
2015-03-27 00:11:56 +09:00
Henri Verbeet
845103c7dd
d2d1: Implement d2d_d3d_render_target_GetTextRenderingParams().
2015-03-27 00:11:52 +09:00
Henri Verbeet
060d2230fc
d2d1: Implement d2d_d3d_render_target_SetTextRenderingParams().
2015-03-27 00:11:49 +09:00
Henri Verbeet
237a0ada00
d2d1: Implement d2d_d3d_render_target_GetFactory().
2015-03-27 00:11:46 +09:00
Henri Verbeet
1b93c01048
d2d1: Implement d2d_state_block_SetDescription().
2015-03-25 19:46:14 +09:00
Henri Verbeet
95f5dc72a2
d2d1: Implement d2d_state_block_GetDescription().
2015-03-25 19:46:13 +09:00
Henri Verbeet
29af90be0c
d2d1: Implement d2d_state_block_SetTextRenderingParams().
2015-03-25 19:46:11 +09:00
Henri Verbeet
063080f747
d2d1: Implement d2d_state_block_GetTextRenderingParams().
2015-03-25 19:46:09 +09:00
Henri Verbeet
f87b0ce4d7
d2d1: Properly take the source offset into account in d2d_d3d_render_target_DrawBitmap().
2015-03-25 19:46:07 +09:00
Henri Verbeet
a6409ed027
d2d1: Implement d2d_factory_CreateDrawingStateBlock().
2015-02-18 23:21:39 +09:00
Henri Verbeet
2f2e1b98fd
d2d1: Implement d2d_d3d_render_target_DrawBitmap().
2015-02-06 22:20:24 +09:00
Henri Verbeet
287f751ae2
d2d1: Implement bitmap brush support for d2d_d3d_render_target_FillRectangle().
2015-02-06 22:20:22 +09:00
Henri Verbeet
7df055f17f
d2d1: Implement d2d_bitmap_GetSize().
2015-02-06 22:20:19 +09:00
Henri Verbeet
4b0f47cdbc
d2d1: Implement d2d_bitmap_GetDpi().
2015-02-06 22:20:17 +09:00
Henri Verbeet
b270384dfb
d2d1: Implement d2d_bitmap_GetPixelSize().
2015-02-06 22:20:13 +09:00
Henri Verbeet
81c51768a5
d2d1: Implement d2d_solid_color_brush_SetTransform().
2015-02-02 22:26:16 +09:00
Henri Verbeet
ecca626948
d2d1: Implement d2d_linear_gradient_brush_SetTransform().
2015-02-02 22:26:14 +09:00
Henri Verbeet
fce8603a39
d2d1: Implement d2d_bitmap_brush_SetTransform().
2015-02-02 22:26:12 +09:00
Henri Verbeet
88edc866ea
d2d1: Implement d2d_solid_color_brush_GetTransform().
2015-02-02 22:26:10 +09:00
Henri Verbeet
bbba52dc34
d2d1: Implement d2d_linear_gradient_brush_GetTransform().
2015-02-02 22:26:07 +09:00
Henri Verbeet
d41ee6e574
d2d1: Implement d2d_bitmap_brush_GetTransform().
2015-02-02 22:26:04 +09:00
Henri Verbeet
0cb8722837
d2d1: Implement d2d_d3d_render_target_CreateBitmapBrush().
2014-12-01 11:00:24 +01:00
Henri Verbeet
ac4bd550a5
d2d1: Make "transform" in d2d_d3d_render_target_Clear() const.
2014-12-01 11:00:23 +01:00
Henri Verbeet
5cc7996b1f
d2d1: Implement d2d_solid_color_brush_GetOpacity().
2014-11-17 19:30:34 +09:00
Henri Verbeet
743d80fea5
d2d1: Implement d2d_solid_color_brush_SetOpacity().
2014-11-06 23:47:09 +09:00
Henri Verbeet
fd8b3ae572
d2d1: Implement d2d_solid_color_brush_GetColor().
2014-11-06 23:47:08 +09:00
Henri Verbeet
94cd81a45d
d2d1: Implement d2d_solid_color_brush_SetColor().
2014-11-06 23:47:07 +09:00
Henri Verbeet
7a72eb2dcd
d2d1: Add an initial d2d_d3d_render_target_FillRectangle() implementation.
2014-11-06 23:47:06 +09:00
Henri Verbeet
8db1df5097
d2d1: Implement d2d_gradient_GetGradientStops().
2014-11-03 20:31:52 +09:00
Henri Verbeet
5279ad5b9f
d2d1: Implement d2d_gradient_GetGradientStopCount().
2014-11-03 20:31:47 +09:00
Henri Verbeet
56a0e32317
d2d1: Pass the correct vtbl in d2d_linear_gradient_brush_init().
2014-11-03 20:31:44 +09:00
Francois Gouget
9f8d221869
d2d1: Make the IDWriteTextRenderer methods static.
2014-10-07 20:22:11 +02:00
Henri Verbeet
0d962da9d3
d2d1: Implement d2d_d3d_render_target_DrawTextLayout().
2014-10-06 17:35:07 +02:00
Francois Gouget
9f97433641
d2d1: Add a trailing '\n' to a FIXME().
2014-09-29 10:36:25 +02:00
Henri Verbeet
4e73cd517a
d2d1: Implement d2d_d3d_render_target_CreateBitmapFromWicBitmap().
2014-09-16 12:24:38 +02:00
Henri Verbeet
76dd63e422
d2d1: Implement d2d_d3d_render_target_CreateBitmap().
2014-09-16 12:24:34 +02:00
Henri Verbeet
be415203c7
d2d1: Implement d2d_d3d_render_target_CreateMesh().
2014-09-16 12:24:22 +02:00
Henri Verbeet
c8f758a099
d2d1: Implement d2d_factory_CreateWicBitmapRenderTarget().
2014-09-15 12:13:50 +02:00
Henri Verbeet
240c454089
d2d1: Simplify clip stack handling.
2014-09-15 12:12:36 +02:00
Henri Verbeet
e90b49e2bc
d2d1/tests: Add a basic clipping test.
2014-09-08 11:36:20 +02:00
Henri Verbeet
a49fbeb841
d2d1: Implement initial clipping support.
2014-09-08 11:36:00 +02:00
Henri Verbeet
e2c7b442a1
d2d1: Implement d2d_d3d_render_target_Clear().
...
This is of course a fairly naive initial implementation. We'd probably want to
batch up drawing operations, and only execute them on EndDraw() or Flush() to
reduce state setup overhead.
2014-09-08 11:35:57 +02:00
Henri Verbeet
92a1ede37f
d2d1: Implement d2d_d3d_render_target_GetSize().
2014-09-08 11:35:45 +02:00
Henri Verbeet
fabfa59aea
widl: Handle aggregate returns in a MSVC compatible way.
...
Aggregates are returned through an implicit parameter after the this/interface
pointer. Note that this follows the C++ convention, affected methods are not
callable from C with the Microsoft headers.
2014-09-08 11:34:05 +02:00
Henri Verbeet
a64a3c8238
d2d1: Implement d2d_d3d_render_target_SetDpi().
2014-09-04 20:21:03 +02:00
Henri Verbeet
3e2a7493e0
d2d1: Implement d2d_d3d_render_target_GetDpi().
2014-09-04 20:21:03 +02:00
Henri Verbeet
5295edbd3a
d2d1: Implement d2d_d3d_render_target_GetPixelSize().
2014-09-03 11:22:33 +02:00
Henri Verbeet
53d0c20526
d2d1: Implement d2d_d3d_render_target_EndDraw().
...
Tag1/tag2 are "error tags". You set them with SetTags(), and if a subsequent
drawing operation generates an error, EndDraw() will return the error code and
tags that were set when the error occurred.
2014-09-03 11:22:31 +02:00
Henri Verbeet
5981ddab4d
d2d1: Get rid of a FIXME in d2d_d3d_render_target_BeginDraw().
2014-09-03 11:22:27 +02:00
Henri Verbeet
7976da345a
d2d1: Implement d2d_d3d_render_target_SetTransform().
2014-07-22 12:37:35 +02:00
Henri Verbeet
952b2575fd
d2d1: Implement d2d_d3d_render_target_GetTransform().
2014-07-22 12:37:31 +02:00