About the Application Framework
About the Application Framework
Zim provides an Application Framework for building applications. The Framework is a collection of Zim objects and programs defined in the directory $DeployServices that provides facilities that are common to all applications. By using the Framework, you can construct applications more quickly and more accurately.
The Framework is based on a standard application model for applications — a model of how all applications should be organized. Within this model, the Framework provides support for
- easily building both event-driven and traditional application-driven applications
- easily building data entry applications
- common generic application components that appear in many applications
The services provided by the Application Framework can be broken down into six main areas:
|Process Management||These facilities are used to keep track of currently open windows and provide support for sending messages from one window to another.|
|Event and Action Mapping||This component facilitates the mapping of many possible user interface events to specific action names. A number of predefined event/action mappings are provided and the ability to define “callbacks” for an action is supported.|
|Data Entry State and View Support||This component supports tracking the current state and/or view of a data entry window and provides built-in support for automatic saving when data has changed.|
|Application Messages||The Framework provides standard programs to display application messages on the screen. The message text is stored separately from the application code so that it can be changed without modifying the application itself.|
|Common Application Components||Standard application components for break handling and common dialogs such as data selection and sorting are provided.|
|Debugging||A range of facilities that assist in debugging and analyzing applications are provided.|
Components of the Application Framework
The main components of the Application Framework are
- EntitySets and programs that map “events” (user interface events, timeouts, etc.) into “actions”. For example, clicking on “Exit” under the File menu and entering Ctrl-F4 can both mean “exit the application”. The Framework enables you to define the mapping of both events to an EXIT action.
- a Process Manager that tracks currently open windows and enables non-modal applications.
- a facility to manage window states to ease the implementation of data entry windows (e.g. to track whether you are in the New (adding data) or Edit (changing existing data) state).
- a User Message facility that encourages development of applications where application messages are stored in external tables rather than inside the application code. This makes it easy to change messages (e.g. to support a new language).
- a set of Common Dialogs that can be used to support operations found in practically all applications (e.g. data selection, sorting, deadlock handling, etc.)
The Zim application model is discussed in About Application Models.
For more information about different aspects of the Application Framework, refer to the Reference Guide.