Added implementation of OLEIVERB_SHOW in DoVerb.

This commit is contained in:
Jacek Caban 2005-12-01 12:49:02 +01:00 committed by Alexandre Julliard
parent 695556af16
commit b24916c638
1 changed files with 19 additions and 1 deletions

View File

@ -192,11 +192,14 @@ static HRESULT WINAPI OleObject_DoVerb(IOleObject *iface, LONG iVerb, struct tag
WebBrowser *This = OLEOBJ_THIS(iface); WebBrowser *This = OLEOBJ_THIS(iface);
HRESULT hres; HRESULT hres;
static const WCHAR wszitem[] = {'i','t','e','m',0};
TRACE("(%p)->(%ld %p %p %ld %p %p)\n", This, iVerb, lpmsg, pActiveSite, lindex, hwndParent, TRACE("(%p)->(%ld %p %p %ld %p %p)\n", This, iVerb, lpmsg, pActiveSite, lindex, hwndParent,
lprcPosRect); lprcPosRect);
switch (iVerb) switch (iVerb)
{ {
case OLEIVERB_SHOW:
case OLEIVERB_INPLACEACTIVATE: { case OLEIVERB_INPLACEACTIVATE: {
IOleInPlaceSite *inplace; IOleInPlaceSite *inplace;
@ -229,7 +232,8 @@ static HRESULT WINAPI OleObject_DoVerb(IOleObject *iface, LONG iVerb, struct tag
&This->frameinfo); &This->frameinfo);
IOleInPlaceSite_Release(inplace); if(iVerb == OLEIVERB_INPLACEACTIVATE)
IOleInPlaceSite_Release(inplace);
SetWindowPos(This->shell_embedding_hwnd, NULL, SetWindowPos(This->shell_embedding_hwnd, NULL,
This->pos_rect.left, This->pos_rect.top, This->pos_rect.left, This->pos_rect.top,
@ -245,6 +249,20 @@ static HRESULT WINAPI OleObject_DoVerb(IOleObject *iface, LONG iVerb, struct tag
if(This->frame) if(This->frame)
IOleInPlaceFrame_GetWindow(This->frame, &This->frame_hwnd); IOleInPlaceFrame_GetWindow(This->frame, &This->frame_hwnd);
if(iVerb == OLEIVERB_INPLACEACTIVATE)
return S_OK;
TRACE("OLEIVERB_SHOW\n");
IOleInPlaceSite_OnUIActivate(inplace);
IOleInPlaceSite_Release(inplace);
IOleInPlaceFrame_SetActiveObject(This->frame, ACTIVEOBJ(This), wszitem);
/* TODO:
* IOleInPlaceFrmae_SetMenu
*/
return S_OK; return S_OK;
} }
default: default: