[PATCH v2 1/4] include: Add d2d1effects.idl with defines for D2D12DAffineTransform.

Ziqing Hui zhui at codeweavers.com
Thu Jul 8 05:11:57 CDT 2021


Signed-off-by: Ziqing Hui <zhui at codeweavers.com>
---

v2: Make the new IDL file only contain defines for D2D12DAffineTransform.
    Defines for other built in effects will be added in the future.

 include/Makefile.in     |  1 +
 include/d2d1_1.idl      |  1 +
 include/d2d1effects.idl | 47 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 49 insertions(+)
 create mode 100755 include/d2d1effects.idl

diff --git a/include/Makefile.in b/include/Makefile.in
index 61a74a210c9..138693c8907 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -99,6 +99,7 @@ SOURCES = \
 	d2d1.idl \
 	d2d1_1.idl \
 	d2d1_2.idl \
+    d2d1effects.idl \
 	d2dbasetypes.h \
 	d2derr.h \
 	d3d.h \
diff --git a/include/d2d1_1.idl b/include/d2d1_1.idl
index 257a970968f..fdec8ae5f9c 100644
--- a/include/d2d1_1.idl
+++ b/include/d2d1_1.idl
@@ -17,6 +17,7 @@
  */
 
 import "d2d1.idl";
+import "d2d1effects.idl";
 
 interface ID2D1DeviceContext;
 interface ID2D1PathGeometry1;
diff --git a/include/d2d1effects.idl b/include/d2d1effects.idl
new file mode 100755
index 00000000000..7f76c255ea6
--- /dev/null
+++ b/include/d2d1effects.idl
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2021 Ziqing Hui for CodeWeavers
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+/* Built in effect CLSIDs */
+cpp_quote("DEFINE_GUID(CLSID_D2D12DAffineTransform, 0x6aa97485,0x6354,0x4cfc,0x90,0x8c,0xe4,0xa7,0x4f,0x62,0xc9,0x6c);")
+
+typedef enum D2D1_BORDER_MODE
+{
+    D2D1_BORDER_MODE_SOFT = 0,
+    D2D1_BORDER_MODE_HARD = 1,
+    D2D1_BORDER_MODE_FORCE_DWORD = 0xffffffff
+} D2D1_BORDER_MODE;
+
+typedef enum D2D1_2DAFFINETRANSFORM_PROP
+{
+    D2D1_2DAFFINETRANSFORM_PROP_INTERPOLATION_MODE = 0,
+    D2D1_2DAFFINETRANSFORM_PROP_BORDER_MODE = 1,
+    D2D1_2DAFFINETRANSFORM_PROP_TRANSFORM_MATRIX = 2,
+    D2D1_2DAFFINETRANSFORM_PROP_SHARPNESS = 3,
+    D2D1_2DAFFINETRANSFORM_PROP_FORCE_DWORD = 0xffffffff
+} D2D1_2DAFFINETRANSFORM_PROP;
+
+typedef enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE
+{
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_LINEAR = 1,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_CUBIC = 2,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 3,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 4,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = 5,
+    D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff
+} D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE;
-- 
2.25.1




More information about the wine-devel mailing list