A new model for handling input

Although there has been important progress in models and packages for the output of graphics to computer screens, there has been little change in the way that input from the mouse, keyboard, and other input devices is handled. New graphics standards are still using a fifteen-year-old model even though it is widely accepted as inadequate, and most modern window managers simply return a stream of low-level, device-dependent input events. This paper presents a new model that handles input devices for highly interactive, direct manipulation, graphical user interfaces, which could be used in future toolkits, window managers, and graphics standards. This model encapsulates interactive behaviors into a few “Interactor” object types. Application programs can then create instances of these Interactor objects which hide the details of the underlying window manager events. In addition, Interactors allow a clean separation between the input handling, the graphics, and the application programs. This model has been extensively used as part of the Garnet system and has proven to be convenient, efficient, and easy to learn.

[1]  S. Kovacevic,et al.  A knowledge-based user interface management system , 1988, CHI '88.

[2]  Roger B. Dannenberg,et al.  Garnet: comprehensive support for graphical, highly interactive user interfaces , 1990, Computer.

[3]  Robert van Liere,et al.  User Interface Management Systems , 1987, Advances in Computer Graphics.

[4]  P. Billingsley,et al.  The standards factor , 1989, SGCH.

[5]  Peter P. Tanner,et al.  Tablet-based valuators that provide one, two, or three degrees of freedom , 1981, SIGGRAPH '81.

[6]  Brad A. Myers Encapsulating interactive behaviors , 1989, CHI '89.

[7]  David A. Wilson,et al.  C++ Programming With Macapp , 1990 .

[8]  John L. Sibert,et al.  An object-oriented user interface management system , 1986, SIGGRAPH.

[9]  Joel McCormack,et al.  An overview of the X toolkit , 1988, UIST '88.

[10]  Luca Cardelli,et al.  Squeak: a language for communicating with mice , 1985, SIGGRAPH.

[11]  Wilfred J. Hansen,et al.  The Andrew Toolkit - An Overview , 1988, USENIX Winter.

[12]  Ralph D. Hill,et al.  Supporting concurrency, communication, and synchronization in human-computer interaction—the Sassafras UIMS , 1986, TOGS.

[13]  Brad A. Myers,et al.  Automatic, look-and-feel independent dialog creation for graphical user interfaces , 1990, CHI '90.

[14]  Jock D. Mackinlay,et al.  The design space of input devices , 1990, CHI '90.

[15]  Roger B. Dannenberg,et al.  Creating graphical interactive application objects by demonstration , 1989, UIST '89.

[16]  Stephen Travis Pope,et al.  A cookbook for using the model-view controller user interface paradigm in Smalltalk-80 , 1988 .

[17]  W. Buxton,et al.  A study in two-handed input , 1986, CHI '86.

[18]  Peter P. Tanner,et al.  A multitasking switchboard approach to user interface management , 1986, SIGGRAPH.

[19]  Luca Cardelli,et al.  Building user interfaces by direct manipulation , 1988, UIST '88.

[20]  Brad A. Myers,et al.  The Garnet toolkit reference manuals : support for highly-interactive, graphical user interfaces in Lisp , 1989 .

[21]  Jakob Nielsen,et al.  Classification of dialog techniques , 1987, SGCH.

[22]  D R Olsen Larger issues in user interface management , 1987, COMG.

[23]  William Buxton,et al.  Lexical and pragmatic considerations of input structures , 1983, COMG.

[24]  James D. Foley,et al.  The human factors of computer graphics interaction techniques , 1984, IEEE Computer Graphics and Applications.

[25]  MyersBrad,et al.  A user interface toolkit based on graphical objects and constraints , 1988 .

[26]  James D. Foley,et al.  The art of natural graphic man—Machine conversation , 1974 .

[27]  Wayne Citrin Creating user interfaces by demonstration : Brad A. Myers (1988) Academic Press, 1250 Sixth Avenue, San Diego, CA 92101, U.S.A., 276 pp , 1992, J. Vis. Lang. Comput..

[28]  Robert J. K. Jacob,et al.  A Specification Language for Direct-Manipulation User Interfaces , 1986, ACM Trans. Graph..

[29]  G. E. Pfaff,et al.  User Interface Management Systems , 1985, Eurographic Seminars.

[30]  Brad A. Myers,et al.  A user interface toolkit based on graphical objects and constraints , 1988, OOPSLA 1988.

[31]  Jon Meads The Standards Factor , 1986, SGCH.

[32]  Brad A. Myers,et al.  User-interface tools: introduction and survey , 1989, IEEE Software.

[33]  B. A. Myers,et al.  Visual programming, programming by example, and program visualization: a taxonomy , 1986, CHI '86.

[34]  Brad A. Myers,et al.  Creating user interfaces using programming by example, visual programming, and constraints , 1990, TOPL.