Activates or deactivates a document view's user-interface elements, such as menus, toolbars, and accelerators.
HRESULT UIActivate(
BOOL fUIActivate |
// Boolean value specifying whether to activate or deactivate view |
); |
Parameters
Return Value
Remarks
Calling this method is part of the normal activation and deactivation sequences of a document object.
Calling this method before calling IOleDocumentView::SetInPlaceSite returns an error because the view must know where it is activating itself before it can proceed to do so. When calling IOleDocumentView::UIActivate as part of the activation sequence, the call should precede one to IOleDocumentView::SetRect (or SetRectComplex) because otherwise the container would send to the view dimensions that would be incorrect because they would not account for toolbar space.
When deactivating a view, the container should call IOleDocumentView::Show(FALSE), followed by IOleDocumentView::UIActivate(FALSE).
Implementations of this method should embody the following pseudo-code:
if (fActivate)
{
UI activate the view (do menu merging, show frame level tools, process accelerators)
Take focus, and bring the view window forward.
}
else
call IOleInPlaceObject::UIDeactivate on this view
In addition, the view may, and should, participate in extended Help menu merging.
All views of a document object must at least support the in-place activation mode. Therefore, E_NOTIMPL is not allowed as a return value.
See Also
IOleDocumentView::SetInPlaceSite, IOleDocumentView::SetRect, IOleDocumentView::SetRectComplex, IOleDocumentView::Show, IOleInPlaceObject::UIDeactivate