The GML canvas: Aiming at Ease of Use, Compactness and Flexibility in a Graphical Toolkit

We present the GML canvas: a graphical toolkit aimed at supporting the development of post-WIMP interactions such as deformed, zoomable, semi-transparent, or bi-manual interactions. Our primary objective is to make the development of such interaction fast and easy; it is not to provide a library of post-WIMP interactions. The toolkit is used from an interpreted environment and generates its output with hardware rendering. We explain the rationale behind the design of the API and we present it in details. The API is split into a set of low-level atomic services and a set of high-level scripts. The atomic services offer the fundamental building blocks for interactive graphics and the scripts assemble these building blocks to serve as examples and to provide general interaction services. A number of examples illustrate how complex interactions have been built with a few lines of code.

[1]  Pierre Dragicevic,et al.  The MaggLite post-WIMP toolkit: draw it, connect it and run it , 2004, UIST '04.

[2]  Renaud Blanch Facilitating post-WIMP Interaction Programming using the Hierarchical State Machine Toolkit , 2005 .

[3]  John K. Ousterhout,et al.  Scripting: Higher-Level Programming for the 21st Century , 1998, Computer.

[4]  I. Scott MacKenzie,et al.  Lag as a determinant of human performance in interactive systems , 1993, INTERCHI.

[5]  John K. Ousterhout,et al.  Tcl and the Tk Toolkit , 1994 .

[6]  Tony DeRose,et al.  Toolglass and magic lenses: the see-through interface , 1993, SIGGRAPH.

[7]  Benjamin B. Bederson,et al.  Jazz: an extensible zoomable user interface graphics toolkit in Java , 2000, UIST '00.

[8]  Brad A. Myers,et al.  Past, Present and Future of User Interface Software Tools , 2000, TCHI.

[9]  Daniel Vogel,et al.  Interactive public ambient displays: transitioning from implicit to explicit, public to personal, interaction with multiple users , 2004, UIST '04.

[10]  Brad A. Myers Past, Present and Future of User Interface Software Tools , 2000 .

[11]  Michel Beaudouin-Lafon,et al.  The architecture and implementation of CPN2000, a post-WIMP graphical application , 2000, UIST '00.

[12]  Ben Bederson,et al.  Implementing a zooming User Interface: experience building Pad++ , 1998 .

[13]  Stéphane Chatty,et al.  Revisiting visual interface programming: creating GUI tools for designers and programmers , 2004, UIST '04.

[14]  Meredith Ringel Morris,et al.  DiamondSpin: an extensible toolkit for around-the-table interaction , 2004, CHI.

[15]  M. Weiser,et al.  An empirical comparison of pie vs. linear menus , 1988, CHI '88.

[16]  Mark D. Apperley,et al.  A review and taxonomy of distortion-oriented presentation techniques , 1994, TCHI.

[17]  Eric Lecolinet,et al.  A molecular architecture for creating advanced GUIs , 2003, UIST '03.

[18]  Benjamin B. Bederson,et al.  Implementing a zooming User Interface: experience building Pad++ , 1998, Softw. Pract. Exp..