GadOutline Library

Example Program

Gadoutline.library is intended to provide you with a means of describing the general layout of your GUI in a font-independant manner, and take care of the details of determining the exact placement of the individual elements of the display and the drudgery of creating and managing all of the gadgets. In addition, it provides:

Included with version 3 of the library will be a Postscript file which is a tutorial on using the library (WARNING: this file is about 1 meg), new improved example programs, and an additional link library (with source) for supporting multi-window applications and standard event handling, menu and gadget actions, preferences settings and more.

A Brief Overview

The library draws its name from the primary data structure used to describe the entire gadget layout - a ULONG array 'outline' which is composed of individual 'commands.' A command is used to define a single element of the display - a gadget, the wrapper around a group of gadgets, or an image - and additional 'control' commands are used to control how groups are organized, provide additional information to the library, and mark the end of the array. This array is an entirely static structure; the library only uses it to determine the dynamic data which is needed by the layout and after that it is never referenced again. This brings a number of important consequences:

The new version of the library now fully supports localization through an extension to its internal "translation" hook, and using this hook it is even possible for the caller to design a method of removing all absolute memory references within the static outline so that it could, for example, be loaded off disk when needed by the application.

Dianne Kyra Hackborn <>
Last modified: Wed Aug 14 14:22:09 PDT 1996