The Architecture and Implementation of CPN2000, A Post-WIMP Graphical Application Michel Beaudouin-Lafon* and Henry Michael Lassen Department of Computer Science - University of Aarhus IT-Parken - Aabogade 34 8200 Aarhus N - Denmark E-mail:
[email protected],
[email protected] ABSTRACT significantly more efficient than traditional palettes and We have developed an interface for editing and simulating menus, yet they are not available in commercial toolkits. Coloured Petri Nets based on toolglasses, marking menus and bi-manual interaction, in order to understand how novel In order to foster the diffusion of post-WIMP interaction interaction techniques could be supported by a new techniques into real applications, two problems must be generation of user interface toolkits. The architecture of addressed. The first is to study how these interaction CPN2000 is based on three components: the Document techniques can be combined with each other and with more Structure stores all the persistent data in the system; the traditional techniques. This requires defining new interaction Display Structure represents the contents of the screen and models, such as Instrumental Interaction [2] that encompass implements rendering and hit detection algorithms; and the a wider range of interaction techniques. The second problem Input Structure uses "instruments" to manage interaction. is to provide software support in the form of a toolkit or The rendering engine is based on OpenGL and a number of framework that allows application developers to incorporate techniques have been developed to take advantage of 3D post-WIMP interaction techniques as flexibly as they do accelerated graphics for a 2D application.