[prev in list] [next in list] [prev in thread] [next in thread]
List: wine-devel
Subject: [PATCH 5/6] mshtml: Merge ipwindow.c into pluginhost.c.
From: Jacek Caban <jacek () codeweavers ! com>
Date: 2018-02-28 15:32:05
Message-ID: aac0f21f-046f-c1aa-38d3-f0526e68ef1c () codeweavers ! com
[Download RAW message or body]
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
---
dlls/mshtml/Makefile.in | 1 -
dlls/mshtml/ipwindow.c | 347
-----------------------------------------------
dlls/mshtml/pluginhost.c | 311 ++++++++++++++++++++++++++++++++++++++++++
dlls/mshtml/pluginhost.h | 3 -
4 files changed, 311 insertions(+), 351 deletions(-)
delete mode 100644 dlls/mshtml/ipwindow.c
["0005-mshtml-Merge-ipwindow.c-into-pluginhost.c.diff" (text/x-patch)]
diff --git a/dlls/mshtml/Makefile.in b/dlls/mshtml/Makefile.in
index d3b6512301..39385cbf0f 100644
--- a/dlls/mshtml/Makefile.in
+++ b/dlls/mshtml/Makefile.in
@@ -38,7 +38,6 @@ C_SRCS = \
htmltextnode.c \
htmlwindow.c \
ifacewrap.c \
- ipwindow.c \
loadopts.c \
main.c \
mutation.c \
diff --git a/dlls/mshtml/ipwindow.c b/dlls/mshtml/ipwindow.c
deleted file mode 100644
index fb3c7d9527..0000000000
--- a/dlls/mshtml/ipwindow.c
+++ /dev/null
@@ -1,347 +0,0 @@
-/*
- * Copyright 2010 Jacek Caban 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
- */
-
-#include "config.h"
-
-#include <stdarg.h>
-
-#define COBJMACROS
-
-#include "windef.h"
-#include "winbase.h"
-#include "winuser.h"
-#include "ole2.h"
-#include "shlobj.h"
-
-#include "mshtml_private.h"
-#include "pluginhost.h"
-
-#include "wine/debug.h"
-
-WINE_DEFAULT_DEBUG_CHANNEL(mshtml);
-
-typedef struct {
- IOleInPlaceFrame IOleInPlaceFrame_iface;
- LONG ref;
-} InPlaceFrame;
-
-static inline InPlaceFrame *impl_from_IOleInPlaceFrame(IOleInPlaceFrame *iface)
-{
- return CONTAINING_RECORD(iface, InPlaceFrame, IOleInPlaceFrame_iface);
-}
-
-static HRESULT WINAPI InPlaceFrame_QueryInterface(IOleInPlaceFrame *iface,
- REFIID riid, void **ppv)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
-
- TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
-
- if(IsEqualGUID(&IID_IUnknown, riid)) {
- *ppv = &This->IOleInPlaceFrame_iface;
- }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
- *ppv = &This->IOleInPlaceFrame_iface;
- }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) {
- *ppv = &This->IOleInPlaceFrame_iface;
- }else if(IsEqualGUID(&IID_IOleInPlaceFrame, riid)) {
- *ppv = &This->IOleInPlaceFrame_iface;
- }else {
- WARN("Unsopported interface %s\n", debugstr_mshtml_guid(riid));
- *ppv = NULL;
- return E_NOINTERFACE;
- }
-
- IUnknown_AddRef((IUnknown*)*ppv);
- return S_OK;
-}
-
-static ULONG WINAPI InPlaceFrame_AddRef(IOleInPlaceFrame *iface)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- LONG ref = InterlockedIncrement(&This->ref);
-
- TRACE("(%p) ref=%d\n", This, ref);
-
- return ref;
-}
-
-static ULONG WINAPI InPlaceFrame_Release(IOleInPlaceFrame *iface)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- LONG ref = InterlockedDecrement(&This->ref);
-
- TRACE("(%p) ref=%d\n", This, ref);
-
- if(!ref)
- heap_free(This);
-
- return ref;
-}
-
-static HRESULT WINAPI InPlaceFrame_GetWindow(IOleInPlaceFrame *iface, HWND *phwnd)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p)\n", This, phwnd);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_ContextSensitiveHelp(IOleInPlaceFrame *iface,
- BOOL fEnterMode)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%x)\n", This, fEnterMode);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_GetBorder(IOleInPlaceFrame *iface, LPRECT \
lprectBorder)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p)\n", This, lprectBorder);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_RequestBorderSpace(IOleInPlaceFrame *iface,
- LPCBORDERWIDTHS pborderwidths)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p)\n", This, pborderwidths);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetBorderSpace(IOleInPlaceFrame *iface,
- LPCBORDERWIDTHS pborderwidths)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p)\n", This, pborderwidths);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetActiveObject(IOleInPlaceFrame *iface,
- IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p %s)\n", This, pActiveObject, debugstr_w(pszObjName));
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_InsertMenus(IOleInPlaceFrame *iface, HMENU \
hmenuShared,
- LPOLEMENUGROUPWIDTHS lpMenuWidths)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p %p)\n", This, hmenuShared, lpMenuWidths);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetMenu(IOleInPlaceFrame *iface, HMENU \
hmenuShared,
- HOLEMENU holemenu, HWND hwndActiveObject)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p %p %p)\n", This, hmenuShared, holemenu, hwndActiveObject);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_RemoveMenus(IOleInPlaceFrame *iface, HMENU \
hmenuShared)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p)\n", This, hmenuShared);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_SetStatusText(IOleInPlaceFrame *iface,
- LPCOLESTR pszStatusText)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%s)\n", This, debugstr_w(pszStatusText));
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_EnableModeless(IOleInPlaceFrame *iface, BOOL \
fEnable)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%x)\n", This, fEnable);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceFrame_TranslateAccelerator(IOleInPlaceFrame *iface, \
LPMSG lpmsg,
- WORD wID)
-{
- InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
- FIXME("(%p)->(%p %d)\n", This, lpmsg, wID);
- return E_NOTIMPL;
-}
-
-static const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl = {
- InPlaceFrame_QueryInterface,
- InPlaceFrame_AddRef,
- InPlaceFrame_Release,
- InPlaceFrame_GetWindow,
- InPlaceFrame_ContextSensitiveHelp,
- InPlaceFrame_GetBorder,
- InPlaceFrame_RequestBorderSpace,
- InPlaceFrame_SetBorderSpace,
- InPlaceFrame_SetActiveObject,
- InPlaceFrame_InsertMenus,
- InPlaceFrame_SetMenu,
- InPlaceFrame_RemoveMenus,
- InPlaceFrame_SetStatusText,
- InPlaceFrame_EnableModeless,
- InPlaceFrame_TranslateAccelerator
-};
-
-HRESULT create_ip_frame(IOleInPlaceFrame **ret)
-{
- InPlaceFrame *frame;
-
- frame = heap_alloc_zero(sizeof(*frame));
- if(!frame)
- return E_OUTOFMEMORY;
-
- frame->IOleInPlaceFrame_iface.lpVtbl = &OleInPlaceFrameVtbl;
- frame->ref = 1;
-
- *ret = &frame->IOleInPlaceFrame_iface;
- return S_OK;
-}
-
-typedef struct {
- IOleInPlaceUIWindow IOleInPlaceUIWindow_iface;
- LONG ref;
-} InPlaceUIWindow;
-
-static inline InPlaceUIWindow *impl_from_IOleInPlaceUIWindow(IOleInPlaceUIWindow \
*iface)
-{
- return CONTAINING_RECORD(iface, InPlaceUIWindow, IOleInPlaceUIWindow_iface);
-}
-
-static HRESULT WINAPI InPlaceUIWindow_QueryInterface(IOleInPlaceUIWindow *iface, \
REFIID riid, void **ppv)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
-
- TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
-
- if(IsEqualGUID(&IID_IUnknown, riid)) {
- *ppv = &This->IOleInPlaceUIWindow_iface;
- }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
- *ppv = &This->IOleInPlaceUIWindow_iface;
- }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) {
- *ppv = &This->IOleInPlaceUIWindow_iface;
- }else {
- WARN("Unsopported interface %s\n", debugstr_mshtml_guid(riid));
- *ppv = NULL;
- return E_NOINTERFACE;
- }
-
- IUnknown_AddRef((IUnknown*)*ppv);
- return S_OK;
-}
-
-static ULONG WINAPI InPlaceUIWindow_AddRef(IOleInPlaceUIWindow *iface)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- LONG ref = InterlockedIncrement(&This->ref);
-
- TRACE("(%p) ref=%d\n", This, ref);
-
- return ref;
-}
-
-static ULONG WINAPI InPlaceUIWindow_Release(IOleInPlaceUIWindow *iface)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- LONG ref = InterlockedDecrement(&This->ref);
-
- TRACE("(%p) ref=%d\n", This, ref);
-
- if(!ref)
- heap_free(This);
-
- return ref;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_GetWindow(IOleInPlaceUIWindow *iface, HWND \
*phwnd)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%p)\n", This, phwnd);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_ContextSensitiveHelp(IOleInPlaceUIWindow \
*iface,
- BOOL fEnterMode)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%x)\n", This, fEnterMode);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_GetBorder(IOleInPlaceUIWindow *iface, LPRECT \
lprectBorder)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%p)\n", This, lprectBorder);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_RequestBorderSpace(IOleInPlaceUIWindow *iface,
- LPCBORDERWIDTHS pborderwidths)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%p)\n", This, pborderwidths);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_SetBorderSpace(IOleInPlaceUIWindow *iface,
- LPCBORDERWIDTHS pborderwidths)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%p)\n", This, pborderwidths);
- return E_NOTIMPL;
-}
-
-static HRESULT WINAPI InPlaceUIWindow_SetActiveObject(IOleInPlaceUIWindow *iface,
- IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
-{
- InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
- FIXME("(%p)->(%p %s)\n", This, pActiveObject, debugstr_w(pszObjName));
- return E_NOTIMPL;
-}
-
-static const IOleInPlaceUIWindowVtbl OleInPlaceUIWindowVtbl = {
- InPlaceUIWindow_QueryInterface,
- InPlaceUIWindow_AddRef,
- InPlaceUIWindow_Release,
- InPlaceUIWindow_GetWindow,
- InPlaceUIWindow_ContextSensitiveHelp,
- InPlaceUIWindow_GetBorder,
- InPlaceUIWindow_RequestBorderSpace,
- InPlaceUIWindow_SetBorderSpace,
- InPlaceUIWindow_SetActiveObject,
-};
-
-HRESULT create_ip_window(IOleInPlaceUIWindow **ret)
-{
- InPlaceUIWindow *uiwindow;
-
- uiwindow = heap_alloc_zero(sizeof(*uiwindow));
- if(!uiwindow)
- return E_OUTOFMEMORY;
-
- uiwindow->IOleInPlaceUIWindow_iface.lpVtbl = &OleInPlaceUIWindowVtbl;
- uiwindow->ref = 1;
-
- *ret = &uiwindow->IOleInPlaceUIWindow_iface;
- return S_OK;
-}
diff --git a/dlls/mshtml/pluginhost.c b/dlls/mshtml/pluginhost.c
index 0ed1a773e6..861c2598db 100644
--- a/dlls/mshtml/pluginhost.c
+++ b/dlls/mshtml/pluginhost.c
@@ -823,6 +823,317 @@ void bind_activex_event(HTMLDocumentNode *doc, \
HTMLPluginContainer *plugin_conta add_sink_handler(plugin_host->sink, id, disp);
}
+typedef struct {
+ IOleInPlaceFrame IOleInPlaceFrame_iface;
+ LONG ref;
+} InPlaceFrame;
+
+static inline InPlaceFrame *impl_from_IOleInPlaceFrame(IOleInPlaceFrame *iface)
+{
+ return CONTAINING_RECORD(iface, InPlaceFrame, IOleInPlaceFrame_iface);
+}
+
+static HRESULT WINAPI InPlaceFrame_QueryInterface(IOleInPlaceFrame *iface,
+ REFIID riid, void **ppv)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+
+ TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
+
+ if(IsEqualGUID(&IID_IUnknown, riid)) {
+ *ppv = &This->IOleInPlaceFrame_iface;
+ }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
+ *ppv = &This->IOleInPlaceFrame_iface;
+ }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) {
+ *ppv = &This->IOleInPlaceFrame_iface;
+ }else if(IsEqualGUID(&IID_IOleInPlaceFrame, riid)) {
+ *ppv = &This->IOleInPlaceFrame_iface;
+ }else {
+ WARN("Unsopported interface %s\n", debugstr_mshtml_guid(riid));
+ *ppv = NULL;
+ return E_NOINTERFACE;
+ }
+
+ IUnknown_AddRef((IUnknown*)*ppv);
+ return S_OK;
+}
+
+static ULONG WINAPI InPlaceFrame_AddRef(IOleInPlaceFrame *iface)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ LONG ref = InterlockedIncrement(&This->ref);
+
+ TRACE("(%p) ref=%d\n", This, ref);
+
+ return ref;
+}
+
+static ULONG WINAPI InPlaceFrame_Release(IOleInPlaceFrame *iface)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ LONG ref = InterlockedDecrement(&This->ref);
+
+ TRACE("(%p) ref=%d\n", This, ref);
+
+ if(!ref)
+ heap_free(This);
+
+ return ref;
+}
+
+static HRESULT WINAPI InPlaceFrame_GetWindow(IOleInPlaceFrame *iface, HWND *phwnd)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p)\n", This, phwnd);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_ContextSensitiveHelp(IOleInPlaceFrame *iface,
+ BOOL fEnterMode)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%x)\n", This, fEnterMode);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_GetBorder(IOleInPlaceFrame *iface, LPRECT \
lprectBorder) +{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p)\n", This, lprectBorder);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_RequestBorderSpace(IOleInPlaceFrame *iface,
+ LPCBORDERWIDTHS pborderwidths)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p)\n", This, pborderwidths);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_SetBorderSpace(IOleInPlaceFrame *iface,
+ LPCBORDERWIDTHS pborderwidths)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p)\n", This, pborderwidths);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_SetActiveObject(IOleInPlaceFrame *iface,
+ IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p %s)\n", This, pActiveObject, debugstr_w(pszObjName));
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_InsertMenus(IOleInPlaceFrame *iface, HMENU \
hmenuShared, + LPOLEMENUGROUPWIDTHS lpMenuWidths)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p %p)\n", This, hmenuShared, lpMenuWidths);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_SetMenu(IOleInPlaceFrame *iface, HMENU \
hmenuShared, + HOLEMENU holemenu, HWND hwndActiveObject)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p %p %p)\n", This, hmenuShared, holemenu, hwndActiveObject);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_RemoveMenus(IOleInPlaceFrame *iface, HMENU \
hmenuShared) +{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p)\n", This, hmenuShared);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_SetStatusText(IOleInPlaceFrame *iface,
+ LPCOLESTR pszStatusText)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%s)\n", This, debugstr_w(pszStatusText));
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_EnableModeless(IOleInPlaceFrame *iface, BOOL \
fEnable) +{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%x)\n", This, fEnable);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceFrame_TranslateAccelerator(IOleInPlaceFrame *iface, \
LPMSG lpmsg, + WORD wID)
+{
+ InPlaceFrame *This = impl_from_IOleInPlaceFrame(iface);
+ FIXME("(%p)->(%p %d)\n", This, lpmsg, wID);
+ return E_NOTIMPL;
+}
+
+static const IOleInPlaceFrameVtbl OleInPlaceFrameVtbl = {
+ InPlaceFrame_QueryInterface,
+ InPlaceFrame_AddRef,
+ InPlaceFrame_Release,
+ InPlaceFrame_GetWindow,
+ InPlaceFrame_ContextSensitiveHelp,
+ InPlaceFrame_GetBorder,
+ InPlaceFrame_RequestBorderSpace,
+ InPlaceFrame_SetBorderSpace,
+ InPlaceFrame_SetActiveObject,
+ InPlaceFrame_InsertMenus,
+ InPlaceFrame_SetMenu,
+ InPlaceFrame_RemoveMenus,
+ InPlaceFrame_SetStatusText,
+ InPlaceFrame_EnableModeless,
+ InPlaceFrame_TranslateAccelerator
+};
+
+static HRESULT create_ip_frame(IOleInPlaceFrame **ret)
+{
+ InPlaceFrame *frame;
+
+ frame = heap_alloc_zero(sizeof(*frame));
+ if(!frame)
+ return E_OUTOFMEMORY;
+
+ frame->IOleInPlaceFrame_iface.lpVtbl = &OleInPlaceFrameVtbl;
+ frame->ref = 1;
+
+ *ret = &frame->IOleInPlaceFrame_iface;
+ return S_OK;
+}
+
+typedef struct {
+ IOleInPlaceUIWindow IOleInPlaceUIWindow_iface;
+ LONG ref;
+} InPlaceUIWindow;
+
+static inline InPlaceUIWindow *impl_from_IOleInPlaceUIWindow(IOleInPlaceUIWindow \
*iface) +{
+ return CONTAINING_RECORD(iface, InPlaceUIWindow, IOleInPlaceUIWindow_iface);
+}
+
+static HRESULT WINAPI InPlaceUIWindow_QueryInterface(IOleInPlaceUIWindow *iface, \
REFIID riid, void **ppv) +{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+
+ TRACE("(%p)->(%s %p)\n", This, debugstr_mshtml_guid(riid), ppv);
+
+ if(IsEqualGUID(&IID_IUnknown, riid)) {
+ *ppv = &This->IOleInPlaceUIWindow_iface;
+ }else if(IsEqualGUID(&IID_IOleWindow, riid)) {
+ *ppv = &This->IOleInPlaceUIWindow_iface;
+ }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) {
+ *ppv = &This->IOleInPlaceUIWindow_iface;
+ }else {
+ WARN("Unsopported interface %s\n", debugstr_mshtml_guid(riid));
+ *ppv = NULL;
+ return E_NOINTERFACE;
+ }
+
+ IUnknown_AddRef((IUnknown*)*ppv);
+ return S_OK;
+}
+
+static ULONG WINAPI InPlaceUIWindow_AddRef(IOleInPlaceUIWindow *iface)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ LONG ref = InterlockedIncrement(&This->ref);
+
+ TRACE("(%p) ref=%d\n", This, ref);
+
+ return ref;
+}
+
+static ULONG WINAPI InPlaceUIWindow_Release(IOleInPlaceUIWindow *iface)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ LONG ref = InterlockedDecrement(&This->ref);
+
+ TRACE("(%p) ref=%d\n", This, ref);
+
+ if(!ref)
+ heap_free(This);
+
+ return ref;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_GetWindow(IOleInPlaceUIWindow *iface, HWND \
*phwnd) +{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%p)\n", This, phwnd);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_ContextSensitiveHelp(IOleInPlaceUIWindow \
*iface, + BOOL fEnterMode)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%x)\n", This, fEnterMode);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_GetBorder(IOleInPlaceUIWindow *iface, LPRECT \
lprectBorder) +{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%p)\n", This, lprectBorder);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_RequestBorderSpace(IOleInPlaceUIWindow *iface,
+ LPCBORDERWIDTHS pborderwidths)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%p)\n", This, pborderwidths);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_SetBorderSpace(IOleInPlaceUIWindow *iface,
+ LPCBORDERWIDTHS pborderwidths)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%p)\n", This, pborderwidths);
+ return E_NOTIMPL;
+}
+
+static HRESULT WINAPI InPlaceUIWindow_SetActiveObject(IOleInPlaceUIWindow *iface,
+ IOleInPlaceActiveObject *pActiveObject, LPCOLESTR pszObjName)
+{
+ InPlaceUIWindow *This = impl_from_IOleInPlaceUIWindow(iface);
+ FIXME("(%p)->(%p %s)\n", This, pActiveObject, debugstr_w(pszObjName));
+ return E_NOTIMPL;
+}
+
+static const IOleInPlaceUIWindowVtbl OleInPlaceUIWindowVtbl = {
+ InPlaceUIWindow_QueryInterface,
+ InPlaceUIWindow_AddRef,
+ InPlaceUIWindow_Release,
+ InPlaceUIWindow_GetWindow,
+ InPlaceUIWindow_ContextSensitiveHelp,
+ InPlaceUIWindow_GetBorder,
+ InPlaceUIWindow_RequestBorderSpace,
+ InPlaceUIWindow_SetBorderSpace,
+ InPlaceUIWindow_SetActiveObject,
+};
+
+static HRESULT create_ip_window(IOleInPlaceUIWindow **ret)
+{
+ InPlaceUIWindow *uiwindow;
+
+ uiwindow = heap_alloc_zero(sizeof(*uiwindow));
+ if(!uiwindow)
+ return E_OUTOFMEMORY;
+
+ uiwindow->IOleInPlaceUIWindow_iface.lpVtbl = &OleInPlaceUIWindowVtbl;
+ uiwindow->ref = 1;
+
+ *ret = &uiwindow->IOleInPlaceUIWindow_iface;
+ return S_OK;
+}
+
static inline PluginHost *impl_from_IOleClientSite(IOleClientSite *iface)
{
return CONTAINING_RECORD(iface, PluginHost, IOleClientSite_iface);
diff --git a/dlls/mshtml/pluginhost.h b/dlls/mshtml/pluginhost.h
index bea04d1760..6db8810ded 100644
--- a/dlls/mshtml/pluginhost.h
+++ b/dlls/mshtml/pluginhost.h
@@ -68,9 +68,6 @@ void detach_plugin_host(PluginHost*) DECLSPEC_HIDDEN;
HRESULT create_param_prop_bag(nsIDOMElement*,IPropertyBag**) DECLSPEC_HIDDEN;
-HRESULT create_ip_window(IOleInPlaceUIWindow**) DECLSPEC_HIDDEN;
-HRESULT create_ip_frame(IOleInPlaceFrame**) DECLSPEC_HIDDEN;
-
HRESULT get_plugin_disp(HTMLPluginContainer*,IDispatch**) DECLSPEC_HIDDEN;
HRESULT get_plugin_dispid(HTMLPluginContainer*,WCHAR*,DISPID*) DECLSPEC_HIDDEN;
HRESULT invoke_plugin_prop(HTMLPluginContainer*,DISPID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*) \
DECLSPEC_HIDDEN;
[Attachment #4 (text/plain)]
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic