Coordinating User Interfaces for Consistency

We now consider how a dialog containing information only about application content is mapped into a particular style. What, for example, controls the appearance of the window titles in Figure 4? Why do they appear above the menu and tree, centered, and in a 12 point bold times roman font? How could a style rule change their appearance, perhaps embedding the title string between the current date and time? The style expert makes all of these decisions using a rule-based language for selecting views and setting their attributes.
Style rules recognize features of a block of dialog tags, such as the tag name, attribute values, and data type, and match a view to the block. The Choice block in Figure 3 could be drawn as a menu, cycle button, or command entry field. The application expert has used the Kind attribute to indicate that the nature of the choice allows a single response. The style expert has written rules that use this information to draw each choice item (Ci dialog block) as a menu item in Figure 4. Had Kind been coded to allow multiple choices, the style might use a check box instead.
Views are assigned to dialog blocks indirectly through environments. An environment is a view name together with a set of style attributes appropriate to that view which control its appearance. Environments can be created both for general interface components such as titles, panels, and dialog boxes and for more...