Our first change was to make building the interface entirely separate from constructing the model representation. Interfaces are now built with Supercard-like buttons, pictures, and movie-players. Authors can drag different widgets off a palette, resize them, change their attributes, then test them immediately by switching from an interface-design mode to a system-test mode.
| 43#43 |
In Figure 4.2, the author has created a button and is editing its attributes. The attribute editor is accessed simply by double-clicking the widget. Widgets can be grouped into ``layers,'' which can be shown or hidden as a unit, giving authors the ability to make reusable screens and subscreens.
The interface builder is written on top of IFT, a small utility in Macintosh Common LISP [Digitool 1998] that was originally designed for laying out interfaces and generating code that programmers could modify. Authors can switch back and forth between run mode and edit modes, which means testing prototypes is smooth and quick.