static HRESULT WINAPI InPlaceFrame_QueryInterface(IOleInPlaceFrame *iface, REFIID riid, void **ppv) { DocHost *This = INPLACEFRAME_THIS(iface); *ppv = NULL; if(IsEqualGUID(&IID_IUnknown, riid)) { TRACE("(%p)->(IID_IUnknown %p)\n", This, ppv); *ppv = INPLACEFRAME(This); }else if(IsEqualGUID(&IID_IOleWindow, riid)) { TRACE("(%p)->(IID_IOleWindow %p)\n", This, ppv); *ppv = INPLACEFRAME(This); }else if(IsEqualGUID(&IID_IOleInPlaceUIWindow, riid)) { TRACE("(%p)->(IID_IOleInPlaceUIWindow %p)\n", This, ppv); *ppv = INPLACEFRAME(This); }else if(IsEqualGUID(&IID_IOleInPlaceFrame, riid)) { TRACE("(%p)->(IID_IOleInPlaceFrame %p)\n", This, ppv); *ppv = INPLACEFRAME(This); } if(*ppv) { IOleInPlaceFrame_AddRef(INPLACEFRAME(This)); return S_OK; } WARN("Unsopported interface %s\n", debugstr_guid(riid)); return E_NOINTERFACE; }
static HRESULT WINAPI OleInPlaceSiteWindowless_GetWindowContext(IOleInPlaceSiteWindowless *iface, IOleInPlaceFrame **frame, IOleInPlaceUIWindow **ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) { IOCS *This = impl_from_IOleInPlaceSiteWindowless(iface); TRACE("(%p,%p,%p,%p,%p,%p)\n", This, frame, ppDoc, lprcPosRect, lprcClipRect, lpFrameInfo); if ( lprcClipRect ) *lprcClipRect = This->size; if ( lprcPosRect ) *lprcPosRect = This->size; if ( frame ) { *frame = &This->IOleInPlaceFrame_iface; IOleInPlaceFrame_AddRef(*frame); } if ( ppDoc ) *ppDoc = NULL; if ( lpFrameInfo ) { lpFrameInfo->fMDIApp = FALSE; lpFrameInfo->hwndFrame = This->hWnd; lpFrameInfo->haccel = NULL; lpFrameInfo->cAccelEntries = 0; } return S_OK; }
static HRESULT STDMETHODCALLTYPE InPlace_GetWindowContext(IOleInPlaceSite *iface, LPOLEINPLACEFRAME *lplpFrame, LPOLEINPLACEUIWINDOW *lplpDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) { WebBrowserContainer *This = impl_from_IOleInPlaceSite(iface); *lplpFrame = &This->IOleInPlaceFrame_iface; IOleInPlaceFrame_AddRef(&This->IOleInPlaceFrame_iface); *lplpDoc = NULL; lpFrameInfo->fMDIApp = FALSE; lpFrameInfo->hwndFrame = This->hwndWindow; lpFrameInfo->haccel = NULL; lpFrameInfo->cAccelEntries = 0; return S_OK; }
static HRESULT WINAPI InPlaceSite_GetWindowContext(IOleInPlaceSiteEx *iface, IOleInPlaceFrame **ppFrame, IOleInPlaceUIWindow **ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) { DocHost *This = impl_from_IOleInPlaceSiteEx(iface); TRACE("(%p)->(%p %p %p %p %p)\n", This, ppFrame, ppDoc, lprcPosRect, lprcClipRect, lpFrameInfo); IOleInPlaceFrame_AddRef(&This->IOleInPlaceFrame_iface); *ppFrame = &This->IOleInPlaceFrame_iface; *ppDoc = NULL; GetClientRect(This->hwnd, lprcPosRect); *lprcClipRect = *lprcPosRect; lpFrameInfo->fMDIApp = FALSE; lpFrameInfo->hwndFrame = This->frame_hwnd; lpFrameInfo->haccel = NULL; lpFrameInfo->cAccelEntries = 0; /* FIXME: should be 5 */ return S_OK; }
static HRESULT WINAPI InPlaceSite_GetWindowContext(IOleInPlaceSite *iface, IOleInPlaceFrame **ppFrame, IOleInPlaceUIWindow **ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo) { DocHost *This = INPLACESITE_THIS(iface); TRACE("(%p)->(%p %p %p %p %p)\n", This, ppFrame, ppDoc, lprcPosRect, lprcClipRect, lpFrameInfo); IOleInPlaceFrame_AddRef(INPLACEFRAME(This)); *ppFrame = INPLACEFRAME(This); *ppDoc = NULL; GetClientRect(This->hwnd, lprcPosRect); memcpy(lprcClipRect, lprcPosRect, sizeof(RECT)); lpFrameInfo->cb = sizeof(*lpFrameInfo); lpFrameInfo->fMDIApp = FALSE; lpFrameInfo->hwndFrame = This->frame_hwnd; lpFrameInfo->haccel = NULL; lpFrameInfo->cAccelEntries = 0; /* FIXME: should be 5 */ return S_OK; }