Nikolay Sivov : d2d1/effect: Handle initial values for D2D1_PROPERTY_TYPE_BOOL.

Alexandre Julliard julliard at winehq.org
Mon Jun 27 16:12:51 CDT 2022


Module: wine
Branch: master
Commit: 2d29ec34bab4a7f38d00a2142b70156febccd116
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2d29ec34bab4a7f38d00a2142b70156febccd116

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Sun Jun 26 14:44:18 2022 +0300

d2d1/effect: Handle initial values for D2D1_PROPERTY_TYPE_BOOL.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>

---

 dlls/d2d1/factory.c    | 7 +++++++
 dlls/d2d1/tests/d2d1.c | 4 ++++
 2 files changed, 11 insertions(+)

diff --git a/dlls/d2d1/factory.c b/dlls/d2d1/factory.c
index 52e09033e6d..e2bc80e2f07 100644
--- a/dlls/d2d1/factory.c
+++ b/dlls/d2d1/factory.c
@@ -829,6 +829,7 @@ static HRESULT parse_effect_add_property(struct d2d_effect_properties *props, co
     {
         void *src = NULL;
         UINT32 _uint32;
+        BOOL _bool;
 
         p->data.offset = props->offset;
         p->size = sizes[type];
@@ -842,6 +843,12 @@ static HRESULT parse_effect_add_property(struct d2d_effect_properties *props, co
                     _uint32 = wcstoul(value, NULL, 10);
                     src = &_uint32;
                     break;
+                case D2D1_PROPERTY_TYPE_BOOL:
+                    if (!wcscmp(value, L"true")) _bool = TRUE;
+                    else if (!wcscmp(value, L"false")) _bool = FALSE;
+                    else return E_INVALIDARG;
+                    src = &_bool;
+                    break;
                 case D2D1_PROPERTY_TYPE_IUNKNOWN:
                 case D2D1_PROPERTY_TYPE_COLOR_CONTEXT:
                     break;
diff --git a/dlls/d2d1/tests/d2d1.c b/dlls/d2d1/tests/d2d1.c
index f1cec1d7a0b..b893e9e8564 100644
--- a/dlls/d2d1/tests/d2d1.c
+++ b/dlls/d2d1/tests/d2d1.c
@@ -50,6 +50,10 @@ L"<?xml version='1.0'?>                                                       \
             <Property name='Max'         type='uint32' value='100'/>          \
             <Property name='Default'     type='uint32' value='10'/>           \
         </Property>                                                           \
+        <Property name='Bool' type='bool'>                                     \
+            <Property name='DisplayName' type='string' value='Bool property'/> \
+            <Property name='Default'     type='bool' value='false'/>           \
+        </Property>                                                            \
     </Effect>                                                                 \
 ";
 




More information about the wine-cvs mailing list