static HRESULT WINAPI OleDocumentView_Show(IOleDocumentView *iface, BOOL fShow) { HTMLDocument *This = DOCVIEW_THIS(iface); HRESULT hres; TRACE("(%p)->(%x)\n", This, fShow); if(fShow) { if(!This->doc_obj->ui_active) { hres = activate_window(This->doc_obj); if(FAILED(hres)) return hres; } update_doc(This, UPDATE_UI); ShowWindow(This->doc_obj->hwnd, SW_SHOW); }else { ShowWindow(This->doc_obj->hwnd, SW_HIDE); if(This->doc_obj->in_place_active) IOleInPlaceObjectWindowless_InPlaceDeactivate(INPLACEWIN(This)); if(This->doc_obj->ip_window) { IOleInPlaceUIWindow_Release(This->doc_obj->ip_window); This->doc_obj->ip_window = NULL; } } return S_OK; }
static HRESULT WINAPI OleObject_Close(IOleObject *iface, DWORD dwSaveOption) { HTMLDocument *This = OLEOBJ_THIS(iface); TRACE("(%p)->(%08x)\n", This, dwSaveOption); if(dwSaveOption == OLECLOSE_PROMPTSAVE) FIXME("OLECLOSE_PROMPTSAVE not implemented\n"); if(This->doc_obj->in_place_active) IOleInPlaceObjectWindowless_InPlaceDeactivate(INPLACEWIN(This)); HTMLDocument_LockContainer(This->doc_obj, FALSE); if(This->advise_holder) IOleAdviseHolder_SendOnClose(This->advise_holder); return S_OK; }