MSHTML: Added IOleObject::Close implementation

Jacek Caban jack at itma.pwr.wroc.pl
Fri Aug 12 06:28:58 CDT 2005


Changelog:
    - Added IOleObject::Close implementation
    - OLEIVERB_INPLACEACTIVATE is the same as OLEIVERB_UIACTIVATE
-------------- next part --------------
Index: dlls/mshtml/oleobj.c
===================================================================
RCS file: /home/wine/wine/dlls/mshtml/oleobj.c,v
retrieving revision 1.14
diff -u -p -r1.14 oleobj.c
--- dlls/mshtml/oleobj.c	11 Aug 2005 10:30:30 -0000	1.14
+++ dlls/mshtml/oleobj.c	12 Aug 2005 11:19:37 -0000
@@ -167,7 +167,13 @@ static HRESULT WINAPI OleObject_Close(IO
     HTMLDocument *This = OLEOBJ_THIS(iface);
     HRESULT hres;
 
-    FIXME("(%p)->(%08lx)\n", This, dwSaveOption);
+    TRACE("(%p)->(%08lx)\n", This, dwSaveOption);
+
+    if(dwSaveOption == OLECLOSE_PROMPTSAVE)
+        FIXME("OLECLOSE_PROMPTSAVE not implemented\n");
+
+    if(This->in_place_active)
+        IOleInPlaceObjectWindowless_InPlaceDeactivate(INPLACEWIN(This));
 
     if(This->client) {
         IOleContainer *container;
@@ -219,7 +225,7 @@ static HRESULT WINAPI OleObject_DoVerb(I
 
     TRACE("(%p)->(%ld %p %p %ld %p %p)\n", This, iVerb, lpmsg, pActiveSite, lindex, hwndParent, lprcPosRect);
 
-    if(iVerb != OLEIVERB_SHOW && iVerb != OLEIVERB_UIACTIVATE) {
+    if(iVerb != OLEIVERB_SHOW && iVerb != OLEIVERB_UIACTIVATE && iVerb != OLEIVERB_INPLACEACTIVATE) { 
         FIXME("iVerb = %ld not supported\n", iVerb);
         return E_NOTIMPL;
     }
@@ -727,7 +733,7 @@ static HRESULT WINAPI OleCommandTarget_Q
                 hres = OLECMDERR_E_NOTSUPPORTED;
             }else {
                 prgCmds[i].cmdf = exec_table[prgCmds[i].cmdID].cmdf;
-                TRACE("cmdID = %ld  returning %lx\n", prgCmds[i].cmdID, prgCmds[i].cmdID);
+                TRACE("cmdID = %ld  returning %lx\n", prgCmds[i].cmdID, prgCmds[i].cmdf);
                 hres = S_OK;
             }
         }


More information about the wine-patches mailing list