The IViewObject2 interface is an extension to the IViewObject interface which returns the size of the drawing for a given view of an object. You can prevent the object from being run if it isn’t already running by calling this method instead of IOleObject::GetExtent.
Like the IViewObject interface, IViewObject2 cannot be marshaled to another process. This is because device contexts are only effective in the context of one process.
The OLE-provided default implementation provides the size of the object in the cache.
Object handlers and in-process servers that manage their own presentations implement IViewObject2 for use by compound document containers.
A container application or object handler calls the GetExtent method in the IViewObject2 interface to get the object’s size from its cache.
Methods in Vtable Order
IUnknown Methods |
Description |
Returns pointers to supported interfaces. | |
Increments reference count. | |
Decrements reference count. |
IViewObject Methods |
Description |
Draws a representation of the object onto a device context. | |
Returns the logical palette the object uses for drawing. | |
Freezes the drawn representation of an object so it will not change until a subsequent Unfreeze. | |
Unfreezes the drawn representation of an object. | |
Sets up a connection between the view object and an advise sink so that the advise sink can receive notifications of changes in the view object. | |
Returns the information on the most recent SetAdvise. |
IViewObject2 Method |
Description |
Returns the size of the view object from the cache. |