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 {