Member variable XbpListBox():drawMode Foundation

Specifies the drawing mode of the listbox object.

Attribute: EXPORTED
Data type: Numeric (XBP_DRAW_NORMAL)
Description

The :drawMode instance variable specifies the mode used to display the XbpListbox object on the screen. In the default draw mode (XBP_DRAW_NORMAL), the operating system takes full control over the drawing process. In this mode, a listbox box object is displayed using default imagery and the object's appearance cannot be controlled by the application. However, this default behavior can be overridden. If the value XBP_DRAW_OWNER or XBP_DRAW_OWNERADVANCED is assigned to the :drawMode instance variable, no drawing is performed by the operating system. Instead, the Xbase++ runtime system uses xbeP_MeasureItem and xbeP_DrawItem events to notify the application about the display state of the listbox object. The application is responsible for processing these events, and for creating the on-screen visual appearance of the listbox items. For this, the Graphics Engine commands can be used.

This protocol is called owner-drawing because displaying the items of the listbox is the responsibility of the object's owner. Using owner-drawing, an application can customize the visual appearance and the behavior of an XbpListbox object.

Possible values for instance variable :drawMode
Value Effect
XBP_DRAW_NORMAL *) Listbox items are drawn by the system
XBP_DRAW_OWNER Listbox items are drawn by the application. All have the same height
XBP_DRAW_OWNERADVANCED Listbox items are drawn by the application. Items have variable height
  1. Default value

The drawing mode must be assigned to :drawMode before the method :create() is executed.

Feedback

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.