|
||||||
|
AVS5 TechnoteTechniques to Programming a GUI with AVSABSTRACTAVS has a rich set of easy to use graphics user interface techniques that offer users and third party developers the tools to design sophisticated applications rapidly. Although, AVS is intricate in detail and allows users the ability to customize it greatly, some would prefer to "mask" that level of detail and present a unified user interface, consistent with the current interfaces being used. INTRODUCTIONIt is assumed that the reader of this paper have specific knowledge of UNIX, AVS Network Editor, AVS Layout Editor, and the CLI. The graphical user interface techniques consist of three AVS components that include AVS library calls, the CLI (command line interpreter), and the Layout Editor. AVS library calls allow modules and/or separately running processes to communicate with the AVS kernel. The AVS library contains calls which allow users to create widgets that will be used in the module or application. The CLI is a valuable part of AVS. CLI allows users to enter commands in the window where AVS was invoked with the -cli switch. Optionally an AVS module can send CLI commands to the AVS kernel using the AVScommand call. In addition separately running processes can generate AVS CLI commands either independently or over a UNIX socket. It is with this combination of the AVS library, the CLI, and the Layout Editor that application can be designed and implemented. TECHNIQUESThe types of techniques that will be explained consist of:
In an end-user application the Network Editor may be inappropriate. The techniques mentioned here will show how to establish a user interface without use of the Network Editor. To make AVS window containers having widgets, views of images, or manipulation of geometry's, one needs an understanding of AVS modules, and the Layout Editor. To make a window container one simply needs to create pages with the layout editor. This is done from working with the network editor yet in the final application model it does not have to work this way. The developer here is using the network editor as a tool to construct the application.
| |||||