Rendering mechanisms are the means by which the source and target of a drag/drop operation determine the data type of the dragitem and the format of the information to be exchanged.
While the precise sequence of events that takes place after a drop has occurred is dependent upon the application, a number of standard rendering mechanisms have been defined to enable diverse applications to engage in direct manipulation with one another. These standard rendering mechanisms are used by various components of OS/2, as well as being available for use by applications.
Three standard rendering mechanisms are provided by Presentation Manager and are documented in the OS/2 2.0 Programming Guide Volume II:
DRM_PRINT
It is a very simple mechanism. When an object is dropped on a printer object, the printer object sends a DM_PRINTOBJECT message, one parameter of which gives the name of the print queue represented by that printer object. It is then the responsibility of the source window to print the relevant data to the specified queue.
Note that in OS/2 Version 1.3, the DM_PRINT message was used for this purpose, rather than the DM_PRINTOBJECT message.
With this mechanism, all information about the source file may be contained in the fields of the DRAGITEM structure, so it is not necessary for a protracted conversation to take place between source and target windows. In the simplest case, the target can complete the operation using only this information with no further involvement from the source window, though this rendering mechanism does allow for more interaction between the two windows should this be useful.
Further rendering mechanisms may be devised and documented for use by a particular user's applications. The creation and use of rendering mechanisms is discussed in Using Rendering Mechanisms.