1
Introduction to Cadence User Interface
At system start-up, the look and feel of the system is determined by a configurable system start-up file. Once the system is running, changing the look and feel of the system, creating new objects, and object manipulation is possible through SKILL and C user interface access routines. The goal of these interface routines is to provide layered, controlled access to the user interface and its objects.
Access is available through high-level objects, composed of primitive user interface elements: menus, scroll bars, popup menus, labels, command buttons, or through primitive objects themselves. Several layers of start up configuration files are supplied. You can customize the functionality at each level.
Bottom-Up Construction
Larger, composite user-interface objects must follow bottom-up construction; that is, each sub-object that makes up a composite object must be created before the composite object is created. A menu is an example of a composite object. Each menu item must be created before the call to hiCreateMenu, which accepts menu item objects as arguments.
Global Symbols
Most of the user interface objects you create, such as forms, menus, list boxes, non-blocking dialog boxes, are used and accessed in more than one SKILL routine. For this reason it is necessary to use a unique global SKILL symbol as the SKILL handle in the creation routines. The user interface code depends on this.
For example, when a form is created and the SKILL handle passed to hiCreateAppForm or hiCreateForm is not global, any attempts to close this form (via the OK or Cancel button) fails. This is because the user interface code cannot access the form contents if the form symbol is not global.
When defining names for forms, fields, or other user interface objects, do not use any characters other than alphanumerics, underscore, and question mark. Do not begin the name with a numeric character or a question mark.
Destroy the User Interface
It is recommended to avoid destroying a user- interface object by resetting its SKILL handle to nil. This destroys the SKILL contents of the object, but leaves the memory associated with the object unreferenced, and impossible to free. For menus and forms, use the appropriate delete function, such as hiDeleteMenu or hiDeleteForm. List boxes and dialog boxes gets destroyed when they are removed from the screen.
Related Topics
Cadence User Interface Callback Routines
Callbacks Supported by HI Forms and Fields
Return to top