Developer

API Reference

IForm_SetHandler()

Brew Release
Brew MP 1.0.2
See Also
Description
This function is inherited from IHandler_SetHandler(). It allows a form to hook its own event handler into the normal event handling mechanism. For example, a specialized form such as the list form or popup menu could insert its own event handler that will be called by the base form object each time an event is processed.
The event handler is stored in a HandlerDesc data structure as a PFNHANDLER, along with a pointer to a block of memory allocated and owned by the widget. This pointer will be passed into the widget's event handler with each event to be processed. The HandlerDesc data structure also contains a PFNFREEHANDLER that will be called when the widget is released so that the widget may free the private memory allocated and passed to the event handler.
IForm_SetHandler() associates a given HandlerDesc data structure with a particular form.
Parameters
  • pif
    []:
    [in] A pointer to an IForm object.
  • pd
    []:
    [in] Pointer to the data structure that contains the event handler, private memory pointer, and the callback used to free the private memory.
Interface
Prototype
   void IForm_SetHandler(IForm *pif, HandlerDesc *pd);
Return
None
Side Effect
None
Comment
Passing NULL for the HandlerDesc will reset the form's event handler to use the base form's default event handler -- without private memory or the need to free privately allocated storage.
The handler installed by a form to process events should itself remember to call HANDLERDESC_Call() so that forms that themselves derive from this form may also hook into the form event handler.
  • Follow