From: Nikolay Sivov nsivov@codeweavers.com
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- include/d2d1_3.idl | 63 ++++++++++++++++++++++++++++++++++++++++++++ include/dwrite_3.idl | 3 +++ 2 files changed, 66 insertions(+)
diff --git a/include/d2d1_3.idl b/include/d2d1_3.idl index a4868889012..c4955a71775 100644 --- a/include/d2d1_3.idl +++ b/include/d2d1_3.idl @@ -587,6 +587,43 @@ interface ID2D1DeviceContext6 : ID2D1DeviceContext5 ); }
+cpp_quote("#ifndef DWRITE_PAINT_FEATURE_LEVEL_DEFINED") +cpp_quote("#define DWRITE_PAINT_FEATURE_LEVEL_DEFINED") +typedef enum DWRITE_PAINT_FEATURE_LEVEL +{ + DWRITE_PAINT_FEATURE_LEVEL_NONE = 0, + DWRITE_PAINT_FEATURE_LEVEL_COLR_V0 = 1, + DWRITE_PAINT_FEATURE_LEVEL_COLR_V1 = 2, +} DWRITE_PAINT_FEATURE_LEVEL; +cpp_quote("#endif /* DWRITE_PAINT_FEATURE_LEVEL_DEFINED */") + +[ + object, + uuid(ec891cf7-9b69-4851-9def-4e0915771e62), + local, +] +interface ID2D1DeviceContext7 : ID2D1DeviceContext6 +{ + DWRITE_PAINT_FEATURE_LEVEL GetPaintFeatureLevel(); + void DrawPaintGlyphRun( + [in] D2D1_POINT_2F origin, + [in] const DWRITE_GLYPH_RUN *run, + [in, defaultvalue(NULL)] ID2D1Brush *brush, + [in, defaultvalue(0)] UINT32 palette_index, + [in, defaultvalue(DWRITE_MEASURING_MODE_NATURAL)] DWRITE_MEASURING_MODE measuring_mode + ); + void DrawGlyphRunWithColorSupport( + [in] D2D1_POINT_2F origin, + [in] const DWRITE_GLYPH_RUN *run, + [in] const DWRITE_GLYPH_RUN_DESCRIPTION *run_desc, + [in] ID2D1Brush *brush, + [in] ID2D1SvgGlyphStyle *style, + [in, defaultvalue(0)] UINT32 palette_index, + [in, defaultvalue(DWRITE_MEASURING_MODE_NATURAL)] DWRITE_MEASURING_MODE measuring_mode, + [in, defaultvalue(D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DEFAULT)] D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION snap_option + ); +} + [ object, uuid(a44472e1-8dfb-4e60-8492-6e2861c9ca8b), @@ -662,6 +699,19 @@ interface ID2D1Device6 : ID2D1Device5 ); }
+[ + object, + uuid(f07c8968-dd4e-4ba6-9cbd-eb6d3752dcbb), + local, +] +interface ID2D1Device7 : ID2D1Device6 +{ + HRESULT CreateDeviceContext( + [in] D2D1_DEVICE_CONTEXT_OPTIONS options, + [out] ID2D1DeviceContext7 **context + ); +} + [ object, uuid(0869759f-4f00-413f-b03e-2bda45404d0f), @@ -727,6 +777,19 @@ interface ID2D1Factory7 : ID2D1Factory6 ); }
+[ + object, + uuid(677c9311-f36d-4b1f-ae86-86d1223ffd3a), + local, +] +interface ID2D1Factory8 : ID2D1Factory7 +{ + HRESULT CreateDevice( + [in] IDXGIDevice *dxgi_device, + [out] ID2D1Device7 **d2d_device + ); +} + [ object, uuid(3bab440e-417e-47df-a2e2-bc0be6a00916), diff --git a/include/dwrite_3.idl b/include/dwrite_3.idl index 470763e9a45..db9da98c1a8 100644 --- a/include/dwrite_3.idl +++ b/include/dwrite_3.idl @@ -186,12 +186,15 @@ typedef enum DWRITE_PAINT_TYPE DWRITE_PAINT_TYPE_COMPOSITE, } DWRITE_PAINT_TYPE;
+cpp_quote("#ifndef DWRITE_PAINT_FEATURE_LEVEL_DEFINED") +cpp_quote("#define DWRITE_PAINT_FEATURE_LEVEL_DEFINED") typedef enum DWRITE_PAINT_FEATURE_LEVEL { DWRITE_PAINT_FEATURE_LEVEL_NONE = 0, DWRITE_PAINT_FEATURE_LEVEL_COLR_V0 = 1, DWRITE_PAINT_FEATURE_LEVEL_COLR_V1 = 2, } DWRITE_PAINT_FEATURE_LEVEL; +cpp_quote("#endif /* DWRITE_PAINT_FEATURE_LEVEL_DEFINED */")
typedef enum DWRITE_PAINT_ATTRIBUTES {
From: Nikolay Sivov nsivov@codeweavers.com
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- include/dwrite_3.idl | 64 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+)
diff --git a/include/dwrite_3.idl b/include/dwrite_3.idl index db9da98c1a8..fa3b1a1f63f 100644 --- a/include/dwrite_3.idl +++ b/include/dwrite_3.idl @@ -1242,3 +1242,67 @@ interface IDWriteFactory7 : IDWriteFactory6 DWRITE_FONT_FAMILY_MODEL family_model, IDWriteFontCollection3 **collection); } + +[ + local, + object, + uuid(ee0a7fb5-def4-4c23-a454-c9c7dc878398) +] +interface IDWriteFactory8 : IDWriteFactory7 +{ + HRESULT TranslateColorGlyphRun( + D2D1_POINT_2F origin, + DWRITE_GLYPH_RUN const *glyph_run, + DWRITE_GLYPH_RUN_DESCRIPTION const *glyph_run_desc, + DWRITE_GLYPH_IMAGE_FORMATS image_formats, + DWRITE_PAINT_FEATURE_LEVEL feature_level, + DWRITE_MEASURING_MODE measuring_mode, + DWRITE_MATRIX const *world_and_dpi_transform, + UINT32 palette_index, + IDWriteColorGlyphRunEnumerator1 **enumerator); +} + +typedef struct DWRITE_BITMAP_DATA_BGRA32 +{ + UINT32 width; + UINT32 height; + UINT32 *pixels; +} DWRITE_BITMAP_DATA_BGRA32; + +[ + local, + object, + uuid(c553a742-fc01-44da-a66e-b8b9ed6c3995) +] +interface IDWriteBitmapRenderTarget2 : IDWriteBitmapRenderTarget1 +{ + HRESULT GetBitmapData(DWRITE_BITMAP_DATA_BGRA32 *bitmap_data); +} + +[ + local, + object, + uuid(aeec37db-c337-40f1-8e2a-9a41b167b238) +] +interface IDWriteBitmapRenderTarget3 : IDWriteBitmapRenderTarget2 +{ + DWRITE_PAINT_FEATURE_LEVEL GetPaintFeatureLevel(); + HRESULT DrawPaintGlyphRun( + FLOAT origin_x, + FLOAT origin_y, + DWRITE_MEASURING_MODE measuring_mode, + DWRITE_GLYPH_RUN const *run, + DWRITE_GLYPH_IMAGE_FORMATS image_format, + COLORREF text_color, + UINT32 palette_index, + RECT *black_box); + HRESULT DrawGlyphRunWithColorSupport( + FLOAT origin_x, + FLOAT origin_y, + DWRITE_MEASURING_MODE measuring_mode, + DWRITE_GLYPH_RUN const *run, + IDWriteRenderingParams *params, + COLORREF text_color, + UINT32 palette_index, + RECT *black_box); +}
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=150342
Your paranoid android.
=== debian11b (64 bit WoW report) ===
user32: input.c:4305: Test succeeded inside todo block: button_down_hwnd_todo 1: got MSG_TEST_WIN hwnd 0000000000590100, msg WM_LBUTTONDOWN, wparam 0x1, lparam 0x320032