Project : in-situ
The Ametista mini-toolkit
Participant : Nicolas Roussel.
Ametista  is a mini-toolkit designed to facilitate the exploration of new window management techniques. The current implementation supports three types of windows, that can be freely mixed: pseudo-windows that are randomly-colored rectangles; placeholders that display a fixed image or a video stream and live windows of X Window applications, through a redirection mechanism. Pseudo-windows can be used for low-fidelity prototyping in the early stages of the exploration of a new window management technique. Placeholders help getting a better idea of the envisioned technique by displaying snapshots or movies of real applications. Finally, live X windows can be used for high-fidelity prototyping and evaluation of the technique.
Ametista uses OpenGL to display windows. This library offers a rich graphics model well adapted to the exploration of new window management techniques. Alpha blending, for example, makes it easy to create translucent objects and shadows. Scaling, rotation and translation can also be used with a perspective projection to position windows in 2D or 3D (see Fig. 2, left and middle). Ametista makes an extensive use of texture mapping. Textures are used to display fixed images and video streams in placeholders as well as the content of X windows. They also make it possible to transform the window shapes in real-time (see Fig. 2, right).
Source code for Ametista compiles on Linux and Mac OS X and is freely available under the GNU Lesser General Public License (LGPL). For more information, see http://insitu.lri.fr/~roussel/projects/ametista/.