headers: Add enum operators in d2d1.h This fixes compiler error as following. JUCE/modules/juce_graphics/native/juce_Direct2DResources_windows.cpp:56:81: error: assigning to 'D2D1_PRESENT_OPTIONS' from incompatible type 'unsigned int' 56 | hwndRenderTargetProps.presentOptions = D2D1_PRESENT_OPTIONS_IMMEDIATELY | D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com> Signed-off-by: LIU Hao <lh_mouse@126.com>
diff --git a/mingw-w64-headers/include/d2d1.h b/mingw-w64-headers/include/d2d1.h index 66f3ee4..f89b1ef 100644 --- a/mingw-w64-headers/include/d2d1.h +++ b/mingw-w64-headers/include/d2d1.h
@@ -120,6 +120,8 @@ D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = 0xffffffff } D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS); + typedef enum D2D1_DASH_STYLE { D2D1_DASH_STYLE_SOLID = 0, D2D1_DASH_STYLE_DASH = 1, @@ -153,6 +155,8 @@ D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = 0xffffffff } D2D1_DRAW_TEXT_OPTIONS; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_DRAW_TEXT_OPTIONS); + typedef enum D2D1_EXTEND_MODE { D2D1_EXTEND_MODE_CLAMP = 0, D2D1_EXTEND_MODE_WRAP = 1, @@ -218,6 +222,8 @@ D2D1_LAYER_OPTIONS_FORCE_DWORD = 0xffffffff } D2D1_LAYER_OPTIONS; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_LAYER_OPTIONS); + typedef enum D2D1_LINE_JOIN { D2D1_LINE_JOIN_MITER = 0, D2D1_LINE_JOIN_BEVEL = 1, @@ -240,6 +246,8 @@ D2D1_PATH_SEGMENT_FORCE_DWORD = 0xffffffff } D2D1_PATH_SEGMENT; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_PATH_SEGMENT); + typedef enum D2D1_PRESENT_OPTIONS { D2D1_PRESENT_OPTIONS_NONE = 0x00000000, D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 0x00000001, @@ -247,6 +255,8 @@ D2D1_PRESENT_OPTIONS_FORCE_DWORD = 0xffffffff } D2D1_PRESENT_OPTIONS; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_PRESENT_OPTIONS); + typedef enum D2D1_RENDER_TARGET_TYPE { D2D1_RENDER_TARGET_TYPE_DEFAULT = 0, D2D1_RENDER_TARGET_TYPE_SOFTWARE = 1, @@ -261,6 +271,8 @@ D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = 0xffffffff } D2D1_RENDER_TARGET_USAGE; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_RENDER_TARGET_USAGE); + typedef enum D2D1_SWEEP_DIRECTION { D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0, D2D1_SWEEP_DIRECTION_CLOCKWISE = 1, @@ -281,6 +293,8 @@ D2D1_WINDOW_STATE_FORCE_DWORD = 0xffffffff } D2D1_WINDOW_STATE; +DEFINE_ENUM_FLAG_OPERATORS(D2D1_WINDOW_STATE); + /* this is a hack so we can use forward declares in C (easier than reordering interfaces) */ #if !defined(__cplusplus) #undef DECLARE_INTERFACE