General Information

Dialogs and dialog elements represent the GUI object types available to Natural programs, whereby it is important to distinguish between the two uses of the word "dialog" to represent the different concepts of dialog object and dialog window (as implied here). The dialog object is a Natural object like a map or program, created by the dialog editor. When this object is invoked via the OPEN DIALOG statement, the dialog window is created, which is the physical representation of the dialog on the screen. A dialog may be created as one of the following window types: Standard Window, MDI Frame Window, MDI Child Window and MDI Plug-in Window.

Dialog Elements represent the controls used within the dialogs. These can include standard controls that have a user interface, such as push buttons and radio buttons, as well as controls such as timers and signals that do not.

Dialogs and dialog elements are created by PROCESS GUI Action ADD statements, either generated by the dialog editor, or explicitly coded by the Natural programmer. The value of the TYPE attribute determines the type of dialog or dialog element created. Each dialog or dialog element type listed above is also represented by a handle variable, which is defined as HANDLE OF GUI, where there can be any of the concrete types available for the TYPE attribute. Alternatively, the generic handle declaration HANDLE OF GUI can be used in situations where the type of object whose handle the variable should hold is not known in advance.

The handle variable allows access to the attributes of the dialog or dialog element after it has been created. Since the type of attribute access depends on the type of the dialog or dialog element, each topic listed above includes an attribute access table, where columns have the following meanings:

Column Comment
Attribute Name If an attribute is not listed in this column, no access to the attribute is allowed for this handle type.
Query An "X" in this column means that the attribute may be queried for this handle type.
Set/Modify An "X/-" in this column means that the attribute may be specified for this handle type when the dialog or dialog element is created (i.e., in the ADD action).

A "-/X" in this column means that the attribute may be modified for this handle type after the dialog or dialog element has been created.

An "X/X" in this column means that the attribute is both specifiable on creation and modifiable thereafter for dialogs or dialog elements of this handle type.

A "-/-" in this column means that the attribute is read-only for this handle type.

In Attr. Window An "X" in this column means that the attribute may be specified in the Attributes dialog for dialogs or dialog elements of this handle type in the Dialog Editor.