The content handler upon receiving events from the window handler takes appropriate actions according to the object class. For example, a mouse drag operation in the content area of a window might select text if it is a text object, or icons if it is an icon object. Likewise, the same event may result in different actions. For example, a single mouse click operation might set the new cursor position in a text object, or deselect a selected link in an URL object. Each object thus have its own content handler implementation which determines its behavior, i.e. actions to be taken upon receiving an event.
The content handler also has a draw module to paint the view of the associated object on the screen. The draw module basically reads in the object data buffer from the object store, and using appropriate presentation defaults such as text font type, size, color, etc. and format styles updates the view on the screen. The draw module also has subcomponents that update the view on special actions such as selection, for example to underline text.
The content handler also deals with the input/output of object data buffer through the object store. As a result of user interaction, the contents of an object might change. When an object save operation is requested, the content handler dumps the object data buffer to the object store.