# CHAPTER 2: Common Elements of Empress GUI Builder Screens

There are a number of elements common to most of the screens in the Empress GUI Builder development environment. To reduce redundant description, the common elements are described in detail here, and merely mentioned in the descriptions of the individual screens.

"Entity" here refers to application, module, bin, style, etc., depending on the context. For example, in the Application Manager or Editor, it means "application", in the Module Manager it means "module", and so on. The Empress GUI Builder development environment is a Motif application, so any references to Motif's properties or rules apply to Empress GUI Builder.

## 2.1 Accelerator Keys and Mnemonics

In Motif applications, controls such as push buttons, which are generally mouse-activated, also have activating keystrokes (or combinations of keys) associated with them. Menu choices have mnemonic single-letter equivalents, which are picked when the menu is visible, and "accelerator" keys, which are active even when the menu is not visible.

Figure 2-1 Motif Menu

For example, every Motif window can be closed by pulling down the menu from the top-left, then typing "C" or clicking on the bottom choice. It can also be closed by typing the accelerator key combination <Alt+F4>, whether or not the menu is visible.

Figure 2-2 Sample GUI window

## 2.2 Selection and Clicking

In a multilist window, the current item is the one marked by the location cursor, (usually a reverse-video bar on the line). If an operation, such as editing, is selected from the menu, it will apply to the current item.

The location cursor can be moved with the arrow keys, or an item can be selected by single-clicking on it. (Clicking will cause the location bar to move to the position of the mouse pointer, and the item at that position will be selected.) Any menu command (such as `Edit` or `Rename`) will apply to the selected item.

Double-clicking on an item will select it and invoke the appropriate function immediately. For example, double-clicking on an application in the Application Manager will select the Application Module Manager, with that application already chosen as the one to process.

In the Window Component Editor, clicking the third mouse button while a component is selected will cause a menu to pop up, to offer the options of editing or locating that component.

Figure 2-3 Pop-up Menu

(For further information about mouse operations, including definitions of clicking and other relevant concepts, see Appendix A.)

## 2.3 Filters

Multilists are used for displaying lists of entities, such as applications or modules. If there are too many entities, only a partial list can be displayed, and the scroll bars need to be used to view the rest. The list of entities to be displayed can be shortened by using "filters", which are entered in the Filter dialog box. These apply selection criteria (with the same rules as the Empress SQL `MATCH` operator) to the items in the multilists.

The Filter dialog box is accessed by selecting `Set Filters` from the `View` pulldown menu. Filter patterns are entered in the fields of the dialog, and when the `OK` button of the dialog is pressed, the filter is applied to the list. A red-striped icon will appear on the top-right corner of the multilist to indicate that a filter is in effect.

Figure 2-4 Filter Dialog

The filter is cleared by selecting `View`, `Clear Filters` from the menu bar. The multilist is restored to display all the items, and the filter indicator icon disappears.

## 2.4 Menu Bar Options

`File` |
| `New` | Add a new entity (application, module, etc., corresponding to the current screen) to the database. Invoke a dialog box or the Property Editor for the entity.
| `Copy` | Make a copy of an existing entity. A dialog box allows the user to choose the source and target names.
| `Delete` | Delete an existing entity. A dialog box allows the user to select the entity to delete.
| `Rename` | Rename an existing entity. A dialog box allows the user to select the entity to rename, and to enter its new name.
| `Properties` | Invoke the appropriate editor for the current entity.
| `Compile` | Compile module(s). If a module has not been modified since it was last compiled, it is considered to be up-to-date, and will not be re-compiled.
| `Link` | Link compiled modules in the application. If a module is not up-to-date, a dialog box will appear to ask whether it should be re-compiled.
| `Run` | Run the application. If the link information is not up-to-date, a dialog will appear to ask whether the modules should be linked.
| `Run with parameters` | Display a dialog box to obtain parameters from the user. Then execute the application, passing the parameters to it.
| `Compile, Link & Run` | Compile and link the modules, then execute the application. If compilation or linking fail, the subsequent steps are not done.
| `Save` | Save the changes to the database.
| `Save & Exit` | Save the changes, exit the current screen and return to the screen that invoked it.
| `Exit` | Close the current screen and return to the screen that invoked it.
`View` |
| `Refresh` | Re-display the list of entities and descriptions.
| `Clear Filters` | Remove filter (and display complete list of entities).
| `Set Filters` | Apply filter (name and/or description) to list of entities.
`Help` |
| `Help` | Display a hypertext document containing information about the current screen.
| `Index` | Display a table of contents of the help documents.
| `Keywords` | Obtain help on specific keywords.
| `About` | Display information about the current version of Empress GUI Builder.

## 2.5 Fields

Name | Scrollable list of entities. If a filter is in effect, only entities matching the filter patterns will be displayed. The current entity is the one highlighted by the cursor bar, (usually black or reverse video). The current entity is the one selected for operations like `Copy`, `Rename`, etc.
Description | Descriptive comments on the corresponding entities.

## 2.6 Dialog Boxes

Some of the menu options require additional information. In those cases, dialog boxes are displayed to solicit the data.

New
Name field | Name of entity to create.
OK button | Create the new entity and return to the previous screen.
Continue button | Create the new entity and go to the Window Component Editor to edit the contents of the main window.
Cancel button | Return to the previous screen without creating the entity.
Properties button | Create the new entity and go to the Property Editor.

Figure 2-5 New Application Dialog

Copy
Source field | Name of the entity to be copied.
Source button | To display a list of entities in the database and select one of them.
Database field | Name of database containing entity to be copied.
Database button | Display a dialog box to change the source database name.
Target field | Name of the new entity.
OK button | Copy the entity and return to the previous screen.
Cancel button | Return to the previous screen without copying the entity.

Figure 2-6 Copy Application Dialog

Delete
Yes button | Delete the specified entity and return to the previous screen.
No button | Return to the previous screen without deleting the entity.

Figure 2-7 Delete Application Dialog

Rename
Name field | New name for the entity.
OK button | Rename the entity and return to the previous screen.
Cancel button | Return to the previous screen without renaming the entity.

Figure 2-8 Rename Application Dialog

Change Database
Changing to another database provides access to applications and other entities in that database. The dialog box allows the user to browse through the file system hierarchy to select database directories.
Filter field | This field allows the user to indicate which directories and databases should be displayed in the lists. Clicking on the `Filter` button will apply the filter specification to the directories and databases lists.
Directories | List of directories matching the filter specified. Selecting a directory will automatically change the contents of the filter field.
Databases | List of databases matching the filter specified. Selecting a database will automatically update the contents of the selection field.
Selection field | This field displays the name of the selected database. It is editable, so that the name of the database can be typed in - which is necessary if the database is accessed through a database server.
OK button | Change to the selected database and return to the previous screen or dialog.
Filter button | Apply the filter to the directories and databases lists.
Cancel button | Return to the previous screen or dialog without changing database.

Figure 2-9 Select Database Dialog

Selection List
Name | List of entities
Description | Descriptive comments
OK button | Return to the previous screen using the selected entity. Double-clicking on an entity in the lists above also performs the same action.
Cancel button | Return to the previous screen without selecting any entity.

Figure 2-10 Selection List Dialog

## 2.7 Empress Button

Display information about the versions of Empress RDBMS and GUI, as well as the database in use.

## 2.8 Message Area

Scrollable display area for information and error messages from Empress GUI Builder.

Figure 2-11 Empress button and message area