Tile references have one of the following forms:
name;
or
: name {
attribute = value;
. . .
}
name is the name of a previously defined tile. Tile names are case sensitive. In the first instance, all the attributes defined in name are incorporated into the reference. In the second instance, the attribute definitions within the curly braces either supplement or replace the definitions inherited from name. Because this is a tile reference, as opposed to a definition, the attribute changes apply only to this instance of the tile.
wherespacer tile is used for layout in a dialog box definition. It has no unique attributes, so references to it specify only its name:
Thespacer;
ok_cancel tile defined in base.dcl is a subassembly, so it too can be referenced only by name:
Theok_cancel;
On the other hand, you have the option of redefining the attributes of an individual tile. For example, the following statement creates a button with the same properties as a previously defined button, but with different text:
: retirement_button {
label = "Goodbye";
}