Module: wine Branch: master Commit: d156bf03a6bed139e3aaf32f829e07047f6f6f1a URL: http://source.winehq.org/git/wine.git/?a=commit;h=d156bf03a6bed139e3aaf32f82...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu May 15 10:15:32 2014 +0200
d2d1: Add the ID2D1BitmapBrush interface.
---
include/d2d1.idl | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+)
diff --git a/include/d2d1.idl b/include/d2d1.idl index 2ea05f1..88a733f 100644 --- a/include/d2d1.idl +++ b/include/d2d1.idl @@ -33,6 +33,18 @@ typedef D2D_SIZE_U D2D1_SIZE_U; typedef D2D_POINT_2U D2D1_POINT_2U; typedef D2D_RECT_U D2D1_RECT_U;
+enum +{ + D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR = 0, + D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR = 1, + D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC = 2, + D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR = 3, + D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC = 4, + D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC = 5, + D2D1_INTERPOLATION_MODE_DEFINITION_FANT = 6, + D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR = 7, +}; + typedef enum D2D1_DEBUG_LEVEL { D2D1_DEBUG_LEVEL_NONE = 0, @@ -163,6 +175,21 @@ typedef enum D2D1_TEXT_ANTIALIAS_MODE D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff, } D2D1_TEXT_ANTIALIAS_MODE;
+typedef enum D2D1_EXTEND_MODE +{ + D2D1_EXTEND_MODE_CLAMP = 0, + D2D1_EXTEND_MODE_WRAP = 1, + D2D1_EXTEND_MODE_MIRROR = 2, + D2D1_EXTEND_MODE_FORCE_DWORD = 0xffffffff, +} D2D1_EXTEND_MODE; + +typedef enum D2D1_BITMAP_INTERPOLATION_MODE +{ + D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, + D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, + D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff, +} D2D1_BITMAP_INTERPOLATION_MODE; + typedef struct D2D1_BEZIER_SEGMENT { D2D1_POINT_2F point1; @@ -562,5 +589,32 @@ interface ID2D1Brush : ID2D1Resource ); }
+[ + local, + object, + uuid(2cd906aa-12e2-11dc-9fed-001143a055f9) +] +interface ID2D1BitmapBrush : ID2D1Brush +{ + void SetExtendModeX( + [in] D2D1_EXTEND_MODE mode + ); + void SetExtendModeY( + [in] D2D1_EXTEND_MODE mode + ); + void SetInterpolationMode( + [in] D2D1_BITMAP_INTERPOLATION_MODE mode + ); + void SetBitmap( + [in] ID2D1Bitmap *bitmap + ); + D2D1_EXTEND_MODE GetExtendModeX(); + D2D1_EXTEND_MODE GetExtendModeY(); + D2D1_BITMAP_INTERPOLATION_MODE GetInterpolationMode(); + void GetBitmap( + [out] ID2D1Bitmap **bitmap + ); +} + [local] HRESULT __stdcall D2D1CreateFactory(D2D1_FACTORY_TYPE factory_type, REFIID iid, const D2D1_FACTORY_OPTIONS *factory_options, void **factory);