An Interactive Editor for the Statecharts Graphical Language
Stephen Edwards
This report describes an editor I wrote for the Statecharts graphical
language, which uses a hierarchy of interacting finite-state machines.
The editor is written using the [incr Tcl] add-on to the Tcl/Tk
language.
The editor keeps transitions attached, and allows for multiple,
consistent views of the database. The techniques I used (and those
which failed) are all documented here.
- Overview
- Architecture
- The StateImage Class
- The TransImage Class
- The StateDialog and TransDialog Classes
- Dead Ends
- Conclusions
A typical editor window: the editor supports many such views at once.
Here are some references on the Statecharts language. The third is
definitive. The fourth describes an editor much like this one.
- D. Drusinsky and D. Harel.
Using Statecharts for hardware description and synthesis.
IEEE Transactions on Computer-Aided Design, 8(7):798-807,
July 1989.
- N. Halbwachs.
Synchronous Programming of Reactive Systems.
Kluwer, 1993.
- D. Harel.
Statecharts: A visual formalism for complex systems.
Science of Computer Programming, 8:231-274, 1987.
- D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Polati, R. Sherman,
A. Shtull-Trauring, and M. Trakhtenbrot.
STATEMATE: a working
environment for the development of complex reactive systems.
IEEE
Transactions on Software Engineering, 16(4):403-414, April 1990.
Here is the definitive Tcl/Tk reference:
- J. Ousterhout.
Tcl and the Tk Toolkit.
Addison-Wesley, 1994.
Last updated 941202
Written by
Stephen Edwards.