Attributes: Specifying properties of ProXL objects

ProXL makes heavy use of what we call attributes. Graphics attributes, discussed above, are an example. An attribute is one aspect of the current state of a ProXL object. Formally, it is a Prolog term whose functor determines which attribute it is, and whose arguments determine the current state of that aspect of the object.

Attributes are used to

All procedures that use attributes accept a list, so many independent aspects of the state of an object may be examined or changed in a single operation. Some examples of attributes are size(Width,Height) for windows, pixmaps, and screens, and line_width(Width) for GCs, windows and pixmaps, mapped(State) for windows.