Dialogs
This is the root package containing common declaration for all child packages.  It may or may not have a menu bar, a status bar or an Accept Button.

Status Bar Customization
An ordinary status bar can have only one background color ie all the panels having the same color.  There are no predefined functions for changing text color or fonts although one may add an icon using SB_SetIcon.  According to available scanty documentation, each panel can be customized with different attributes using the owner draw option.  However when this option is used, the lparam no longer indicate a pointer to a text string but an address pointing to some user defined data.  By creating our own structure to hold all the various color attributes, icons etc, the logic for ItemDrawHandler is simplified.  Hence there is no need to use predefined functions such as SB_SetIcon anymore.  At the same time, the restricted text length of a panel is no longer restricted to 127 characters all text drawing is done by OS.Text.Put. All supporting routines are implemented in OS.Windows.Controls.Statusbars and Dialogs contain a simple call to OS.Windows.Controls.Statusbars.DrawPart in DrawItemHandler.

Home
Dialogs.Boxes