the semantics of graphical input
Any graphical input device may be represented by a data structure, modified from time to time by actions in response to certain events, and the ability to cause certain events as part of its repertoire of actions. Portions of a device's state may be made visible to other devices in a controlled way, and the remainder hidden. Conversely, a device may make use of the visible portions of another device's state. Typically, the pattern of device interaction forms a hierarchy, but no device is part of any other. This provides for the interchangeability of a single device with a group of devices, and allows a single device to support the function of several others. Device independence is thus enhanced without the usual sacrifice of human factors considerations. A group of devices defined in this manner can simulate any group of devices defined in the usual manner. Conversely, useful groups of devices may be defined, which cannot conveniently be simulated by the usual input semantics. The proposed semantic is thus more complete, and provides the additional benefit of a uniform language for describing both physical and virtual devices.
semantic graphics graphics input input input devices device data structures timing action response event use pattern interaction hierarchies group support functional human factors simulation completeness language physical virtualization device independent graphics computer graphics device-independence modularity information hiding abstract data types semantics of action hierarchical systems graphics input tools