Skip to Main content Skip to Navigation
New interface
Conference papers

SwingStates: adding state machines to the swing toolkit

Caroline Appert 1, 2 Michel Beaudouin-Lafon 1, 2 
1 IN-SITU - Situated interaction
LRI - Laboratoire de Recherche en Informatique, UP11 - Université Paris-Sud - Paris 11, Inria Saclay - Ile de France, CNRS - Centre National de la Recherche Scientifique : UMR8623
Abstract : This article describes SwingStates, a library that adds state machines to the Java Swing user interface toolkit. Unlike traditional approaches, which use callbacks or listeners to define interaction, state machines provide a powerful control structure and localize all of the interaction code in one place. SwingStates takes advantage of Java's inner classes, providing programmers with a natural syntax and making it easier to follow and debug the resulting code. SwingStates tightly integrates state machines, the Java language and the Swing toolkit. It reduces the potential for an explosion of states by allowing multiple state machines to work together. We show how to use SwingStates to add new interaction techniques to existing Swing widgets, to program a powerful new Canvas widget and to control high-level dialogues.
Document type :
Conference papers
Complete list of metadata

Cited literature [12 references]  Display  Hide  Download
Contributor : Caroline Appert Connect in order to contact the contributor
Submitted on : Monday, November 22, 2010 - 1:59:08 PM
Last modification on : Sunday, June 26, 2022 - 11:52:38 AM
Long-term archiving on: : Wednesday, February 23, 2011 - 3:22:34 AM


Files produced by the author(s)




Caroline Appert, Michel Beaudouin-Lafon. SwingStates: adding state machines to the swing toolkit. Symposium on User interface software and technology, 2006, Montreux, Switzerland. ⟨10.1145/1166253.1166302⟩. ⟨inria-00538387⟩



Record views


Files downloads