[PATCH 1/2] include: Add roparameterizediid.idl
Alex Henrie
alexhenrie24 at gmail.com
Sun Nov 12 23:00:53 CST 2017
Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
---
Microsoft only distributes the header file, so I wrote the IDL based on
MSDN documentation.
---
include/Makefile.in | 1 +
include/roparameterizediid.idl | 91 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 92 insertions(+)
create mode 100644 include/roparameterizediid.idl
diff --git a/include/Makefile.in b/include/Makefile.in
index cc42f66ebd..d453dc8568 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -146,6 +146,7 @@ IDL_SRCS = \
pstore.idl \
qedit.idl \
richole.idl \
+ roparameterizediid.idl \
row.idl \
rowchg.idl \
rowpos.idl \
diff --git a/include/roparameterizediid.idl b/include/roparameterizediid.idl
new file mode 100644
index 0000000000..5c3ffd7b5c
--- /dev/null
+++ b/include/roparameterizediid.idl
@@ -0,0 +1,91 @@
+/*
+ * Copyright 2017 Alex Henrie
+ *
+ * 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
+ */
+
+import "unknwn.idl";
+
+typedef void *ROPARAMIIDHANDLE;
+
+[
+ object
+]
+interface IRoSimpleMetaDataBuilder : IUnknown
+{
+ HRESULT SetDelegate(
+ GUID iid
+ );
+
+ HRESULT SetEnum(
+ const WCHAR *typename,
+ const WCHAR *basetype
+ );
+
+ HRESULT SetInterfaceGroupParameterizedDefault(
+ const WCHAR *typename,
+ UINT32 name_element_count,
+ const WCHAR **name_elements
+ );
+
+ HRESULT SetInterfaceGroupSimpleDefault(
+ const WCHAR *typename,
+ const WCHAR *default_name,
+ const GUID *default_iid
+ );
+
+ HRESULT SetParameterizedDelegate(
+ GUID iid,
+ UINT32 arg_count
+ );
+
+ HRESULT SetParameterizedInterface(
+ GUID iid,
+ UINT32 arg_count
+ );
+
+ HRESULT SetRuntimeClassParameterizedDefault(
+ GUID iid,
+ UINT32 name_element_count,
+ const WCHAR **name_elements
+ );
+
+ HRESULT SetRuntimeClassSimpleDefault(
+ const WCHAR *typename,
+ const WCHAR *default_name,
+ const GUID *default_iid
+ );
+
+ HRESULT SetStruct(
+ const WCHAR *typename,
+ UINT32 field_count,
+ const WCHAR **field_typenames
+ );
+
+ HRESULT SetWinRtInterface(
+ GUID iid
+ );
+}
+
+[
+ object
+]
+interface IRoMetaDataLocator : IUnknown
+{
+ HRESULT Locate(
+ const WCHAR *typename,
+ IRoSimpleMetaDataBuilder *out
+ );
+}
--
2.15.0
More information about the wine-devel
mailing list