From 0b97c44122a465edfca516c46fc8353a12d83982 Mon Sep 17 00:00:00 2001 From: Biswapriyo Nath <[email protected]> Date: Thu, 5 Sep 2024 03:28:33 +0000 Subject: [PATCH] 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 <[email protected]> --- mingw-w64-headers/include/d2d1.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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 @@ typedef enum D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS { 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 @@ typedef enum D2D1_DRAW_TEXT_OPTIONS { 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 @@ typedef enum D2D1_LAYER_OPTIONS { 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 @@ typedef enum D2D1_PATH_SEGMENT { 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 @@ typedef enum D2D1_PRESENT_OPTIONS { 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 @@ typedef enum D2D1_RENDER_TARGET_USAGE { 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 @@ typedef enum D2D1_WINDOW_STATE { 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 -- 2.46.0
_______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
