Meanings and Uses of OLE Rendering Options

ID: Q83660

The information in this article applies to:

SUMMARY

During the process of creating an OLE object, an application must specify a rendering option. This article discusses each of the three rendering options: olerender_draw, olerender_format, and olerender_none.

MORE INFORMATION

The olerender_draw Option

The OLE client library manages the presentation data. The client application calls the OleDraw function to display the object. This option is the simplest and most common rendering option. It imposes the least amount of overhead on an application.

This rendering option allows an object handler to provide rendering services for objects of its class. If the client application does not call OleDraw, the object handler cannot intercept the call to the Draw method.

The olerender_format Option

The client application manages the presentation data. The client must call the OleGetData function to obtain data in a presentation format (CF_BITMAP, CF_DIB, or CF_METAFILEPICT) and render the image. If the application obtains a metafile, the application can call the PlayMetaFile function or enumerate the records from the metafile and process them individually.

Using the olerender_format option prevents an object handler from fully participating in rendering an object because handlers typically handle the OLEOBJECT::Draw method. When a client specifies olerender_format, the client application typically draws the object manually as described above, bypassing the call to the OleDraw function. Because the client does not call OleDraw, this method also bypasses any special rendering provided by a handler.

The olerender_none Option

This object has no presentation data. The client application calls the OleGetData function to retrieve information only for OwnerLink and ObjectLink data formats. Any presentation data used by the object is defined by the client and must be drawn by the client. This option is most useful for implementing hyperlinks.

As with the olerender_format option, using olerender_none prevents object handlers from rendering the object. However, because this option implies that there is no presentation data, there should be nothing for the handler to render.

Additional reference words: 3.10 1.00 KBCategory: kbole kbprg KBSubcategory: LeoneCliRender

Last Reviewed: February 17, 1995