Signed-off-by: Ziqing Hui zhui@codeweavers.com ---
D2D1_PATCH_EDGE_MODE are moved to make all enums together.
include/d2d1_3.idl | 60 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 52 insertions(+), 8 deletions(-)
diff --git a/include/d2d1_3.idl b/include/d2d1_3.idl index 643212e1a27..d1030d19d9e 100644 --- a/include/d2d1_3.idl +++ b/include/d2d1_3.idl @@ -25,6 +25,34 @@ typedef enum D2D1_INK_NIB_SHAPE D2D1_INK_NIB_SHAPE_FORCE_DWORD = 0xffffffff } D2D1_INK_NIB_SHAPE;
+typedef enum D2D1_PATCH_EDGE_MODE +{ + D2D1_PATCH_EDGE_MODE_ALIASED = 0x0, + D2D1_PATCH_EDGE_MODE_ANTIALIASED = 0x1, + D2D1_PATCH_EDGE_MODE_ALIASED_INFLATED = 0x2, + D2D1_PATCH_EDGE_MODE_FORCE_DWORD = 0xffffffff +} D2D1_PATCH_EDGE_MODE; + +typedef enum D2D1_ORIENTATION +{ + D2D1_ORIENTATION_DEFAULT = 0x1, + D2D1_ORIENTATION_FLIP_HORIZONTAL = 0x2, + D2D1_ORIENTATION_ROTATE_CLOCKWISE180 = 0x3, + D2D1_ORIENTATION_ROTATE_CLOCKWISE180_FLIP_HORIZONTAL = 0x4, + D2D1_ORIENTATION_ROTATE_CLOCKWISE90_FLIP_HORIZONTAL = 0x5, + D2D1_ORIENTATION_ROTATE_CLOCKWISE270 = 0x6, + D2D1_ORIENTATION_ROTATE_CLOCKWISE270_FLIP_HORIZONTAL = 0x7, + D2D1_ORIENTATION_ROTATE_CLOCKWISE90 = 0x8, + D2D1_ORIENTATION_FORCE_DWORD = 0xffffffff +} D2D1_ORIENTATION; + +typedef enum D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS +{ + D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_NONE = 0x0, + D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_DISABLE_DPI_SCALE = 0x1, + D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS; + typedef struct D2D1_INK_POINT { float x; @@ -39,14 +67,6 @@ typedef struct D2D1_INK_BEZIER_SEGMENT D2D1_INK_POINT point3; } D2D1_INK_BEZIER_SEGMENT;
-typedef enum D2D1_PATCH_EDGE_MODE -{ - D2D1_PATCH_EDGE_MODE_ALIASED = 0x0, - D2D1_PATCH_EDGE_MODE_ANTIALIASED = 0x1, - D2D1_PATCH_EDGE_MODE_ALIASED_INFLATED = 0x2, - D2D1_PATCH_EDGE_MODE_FORCE_DWORD = 0xffffffff -} D2D1_PATCH_EDGE_MODE; - typedef struct D2D1_GRADIENT_MESH_PATCH { D2D1_POINT_2F point00; @@ -75,6 +95,15 @@ typedef struct D2D1_GRADIENT_MESH_PATCH D2D1_PATCH_EDGE_MODE rightEdgeMode; } D2D1_GRADIENT_MESH_PATCH;
+typedef struct D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES +{ + D2D1_ORIENTATION orientation; + float scaleX; + float scaleY; + D2D1_INTERPOLATION_MODE interpolationMode; + D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS options; +} D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES; + [ object, uuid(bae8b344-23fc-4071-8cb5-d05d6f073848), @@ -184,3 +213,18 @@ interface ID2D1ImageSourceFromWic : ID2D1ImageSource [out] IWICBitmapSource **source ); }; + +[ + object, + uuid(7f1f79e5-2796-416c-8f55-700f911445e5), + local, +] +interface ID2D1TransformedImageSource : ID2D1Image +{ + void GetSource( + [out] ID2D1ImageSource **source + ); + void GetProperties( + [out] D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES *out + ); +};