Dialog Editor

The dialog editor is used to create dialog boxes: It provides controls to build the text boxes, combo boxes, radio buttons, image controls, menu items, and forms for a dialog box.

Microsoft Visual Basic and Slick-C®

Creating event-driven dialog boxes (see Event-Driven Dialog Boxes) in Slick-C is similar to Microsoft Visual Basic except that the language has C++-style syntax. The following list contains some of the differences between Slick-C and Microsoft Visual Basic:

  • When an event is sent to a control or dialog box, the object receiving the event MUST be the active object (not necessarily the same as the system focus). This is a major difference between Slick-C and Microsoft Visual Basic. If a button control receives an event and executes a statement such as this: p_caption=New button caption, the caption on the button is changed and NOT the caption for the dialog box.

  • Built-in properties all start with the prefix p_ to avoid these keywords from conflicting with their own identifiers.

  • A more general method of object instance referencing is used.

  • Almost all properties that can be accessed at design time can also be accessed at run time. For example, the p_name property for a control or dialog box may be set after the dialog box is displayed.

  • Event tables are used to group event handlers for controls. Event tables in Slick-C are used in a similar fashion to classes in C++.

  • Slick-C has sophisticated and powerful Dialog Box Inheritance Order. For more information, see Dialog Box Inheritance Order.

  • Parent, child, next, and previous (p_parent, p_child, p_next, p_prev) creation order relationships are all maintained when dialog boxes are created.

  • Event tables can be linked together. One event table can inherit the event handlers of another event table. The event table links can be changed at run time.

  • The dialog editor allows event tables to be transferred through the clipboard. Controls from the same or different dialog boxes may reference the same event tables. There is no need for control arrays. For more information, see Clipboard Inheritance®.

  • Functions can be used as methods that operate on an instance of an object.