Contents Index Topic Contents | ||
Previous Topic: IOleDocumentView::Show Next Topic: IPrint |
IOleDocumentView::UIActivate
HRESULT UIActivate( BOOL fUIActivate );Activates or deactivates a document view's user interface elements, such as menus, toolbars, and accelerators.
- Returns one of the following values:
S_OK Success. E_FAIL The method was not successful. E_OUTOFMEMORY There was not enough memory to complete this operation. E_UNEXPECTED The method was called at a time when it was not expected by the view object.
- fUIActivate
- [in] If TRUE, the view is to activate its user interface. If FALSE, the view is to deactivate its user interface.
Notes to Callers
Calling this method before calling IOleDocumentView::SetInPlaceSite returns E_UNEXPECTED, because the view must be associated with a view site before it can activate itself.
When IOleDocumentView::UIActivate is called as part of the activation sequence, the call should precede a call to IOleDocumentView::SetRect or IOleDocumentView::SetRectComplex, because otherwise the view dimensions would not account for toolbar space.
To deactivate a view, the container should call IOleDocumentView::Show with FALSE, followed by IOleDocumentView::UIActivate with FALSE.
Notes to Implementers
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 viewIn addition, the view can and should participate in extended Help menu merging.
All views of an Active Document must support in-place activation. E_NOTIMPL is not an acceptable return value.
Top of Page
© 1997 Microsoft Corporation. All rights reserved. Terms of Use.