inkobj: Implement stub IInkCollector interface [try 2]
John Klehm
xixsimplicityxix at gmail.com
Sat Aug 25 01:00:51 CDT 2007
This submission differs due to the change in the order of the patch
series, mainly the includes and the makefile.in.
-John Klehm
-------------- next part --------------
From 1a2b0de542c2de0e852f5ec2aac023570239d86b Mon Sep 17 00:00:00 2001
From: John Klehm <xixsimplicityxix at gmail.com>
Date: Fri, 24 Aug 2007 23:59:56 -0500
Subject: inkobj: Implement stub IInkCollector interface
---
dlls/inkobj/Makefile.in | 3 +-
dlls/inkobj/inkcollector.c | 105 +++++++++++++++++++++++++++++++++++++++++
dlls/inkobj/inkobj_internal.h | 14 +++++-
dlls/inkobj/regsvr.c | 14 +-----
4 files changed, 121 insertions(+), 15 deletions(-)
create mode 100644 dlls/inkobj/inkcollector.c
diff --git a/dlls/inkobj/Makefile.in b/dlls/inkobj/Makefile.in
index 91e6eaf..50f2a02 100644
--- a/dlls/inkobj/Makefile.in
+++ b/dlls/inkobj/Makefile.in
@@ -8,7 +8,8 @@ IMPORTS = advapi32 kernel32 ole32 user32
C_SRCS = \
inkobj.c \
regsvr.c \
- inkobj_classfactory.c
+ inkobj_classfactory.c \
+ inkcollector.c
@MAKE_DLL_RULES@
diff --git a/dlls/inkobj/inkcollector.c b/dlls/inkobj/inkcollector.c
new file mode 100644
index 0000000..8ea2031
--- /dev/null
+++ b/dlls/inkobj/inkcollector.c
@@ -0,0 +1,105 @@
+/* Copyright (C) 2007 C John Klehm
+ *
+ * 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
+ */
+
+#include "inkobj_internal.h"
+
+WINE_DEFAULT_DEBUG_CHANNEL(inkobj);
+
+
+/* InkCollector object - declare internal data members here */
+struct InkCollector
+{
+ const IInkCollectorVtbl* lpInkCollectorVtbl;
+ /* lpVtbl must be first! */
+
+ LONG refCount;
+ HWND hWnd;
+};
+
+static HRESULT WINAPI InkCollector_QueryInterface(
+ IInkCollector* This, REFIID riid, void** ppvObject)
+{
+ FIXME("requested interface %s not implemented\n", debugstr_guid(riid));
+ return E_NOINTERFACE;
+}
+
+static ULONG WINAPI InkCollector_AddRef(
+ IInkCollector* This)
+{
+ FIXME("stub!\n");
+ return 0;
+}
+
+static ULONG WINAPI InkCollector_Release(
+ IInkCollector* This)
+{
+ FIXME("stub!\n");
+ return 0;
+}
+
+static HRESULT WINAPI InkCollector_GetTypeInfoCount(
+ IInkCollector* This, UINT* pctinfo)
+{
+ FIXME("stub!\n");
+ return S_OK;
+}
+
+static HRESULT WINAPI InkCollector_GetTypeInfo(
+ IInkCollector* This, UINT iTInfo, LCID lcid, ITypeInfo** ppTInfo)
+{
+ FIXME("stub!\n");
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InkCollector_GetIDsOfNames(
+ IInkCollector* This, REFIID riid, LPOLESTR* rgszNames, UINT cNames,
+ LCID lcid, DISPID* rgDispId)
+{
+ FIXME("stub!\n");
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InkCollector_Invoke(
+ IInkCollector* This, DISPID dispIdMember, REFIID riid, LCID lcid,
+ WORD wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult,
+ EXCEPINFO* pExcepInfo, UINT* puArgErr)
+{
+ FIXME("stub!\n");
+ return S_OK;
+}
+
+static const IInkCollectorVtbl InkCollectorVtbl =
+{
+ InkCollector_QueryInterface,
+ InkCollector_AddRef,
+ InkCollector_Release,
+ InkCollector_GetTypeInfoCount,
+ InkCollector_GetTypeInfo,
+ InkCollector_GetIDsOfNames,
+ InkCollector_Invoke,
+};
+
+HRESULT InkCollector_Create(IUnknown* pUnkOuter, REFIID riid, void** ppvObject)
+{
+ InkCollector* ret;
+ HRESULT result = E_NOINTERFACE;
+
+ FIXME("pUnkOuter=%p, riid=%s, ppvObject=%p\n",
+ pUnkOuter, debugstr_guid(riid), ppvObject);
+
+ return result;
+}
diff --git a/dlls/inkobj/inkobj_internal.h b/dlls/inkobj/inkobj_internal.h
index 4b694b1..7139b88 100644
--- a/dlls/inkobj/inkobj_internal.h
+++ b/dlls/inkobj/inkobj_internal.h
@@ -22,14 +22,16 @@
#include <windef.h>
#include <winbase.h>
#include <winerror.h>
+#include <winreg.h>
#define COBJMACROS
#include <winuser.h>
+#include <objbase.h>
#include <ole2.h>
+#include <msinkaut.h>
#include <wine/debug.h>
-
/*
* start inkobj.c declaration
*/
@@ -52,5 +54,15 @@ extern HRESULT ClassFactory_Create(
/*
* end inkobj_classfactory.c declarations
*/
+/*
+ * start inkcollector.c declarations
+ */
+
+extern HRESULT InkCollector_Create(
+ IUnknown* pUnkOuter, REFIID riid, void** ppvObject);
+
+/*
+ * end inkcollector.c declarations
+ */
#endif /* INKOBJ_INTERNAL_H */
diff --git a/dlls/inkobj/regsvr.c b/dlls/inkobj/regsvr.c
index 5f5b8c6..551de29 100644
--- a/dlls/inkobj/regsvr.c
+++ b/dlls/inkobj/regsvr.c
@@ -18,20 +18,8 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
-#include <stdarg.h>
-
-#include <windef.h>
-#include <winbase.h>
-#include <winerror.h>
-#include <winreg.h>
-#include <winuser.h>
-#include <objbase.h>
#include <initguid.h>
-#include <ole2.h>
-
-#include <msinkaut.h>
-
-#include <wine/debug.h>
+#include "inkobj_internal.h"
WINE_DEFAULT_DEBUG_CHANNEL(inkobj);
--
1.5.1.6
More information about the wine-patches
mailing list