added specification graph for commands

This commit is contained in:
Ronald Schaten 2009-02-14 21:27:04 +00:00
parent ced5a39988
commit 76794b20ef
2 changed files with 31 additions and 0 deletions

7
specifications/Makefile Normal file
View File

@ -0,0 +1,7 @@
all: commands.png
clean:
rm -f commands.png
commands.png: commands.gv
dot -Tpng -ocommands.png commands.gv

View File

@ -0,0 +1,24 @@
digraph finite_state_machine {
rankdir=LR;
node [shape = doublecircle, fixedsize = true, width = 1.2, height = 1.2]; standard;
node [shape = circle];
standard -> standard [ label = "any key" ];
standard -> "command\nmode" [ label = "hotkey" ];
"command\nmode" -> standard [ label = "single key command" ];
"command\nmode" -> standard [ label = "invalid key" ];
"command\nmode" -> "macro\ncommand" [ label = "m" ];
"macro\ncommand" -> "macro\ndefinition" [ label = "macro key" ];
"macro\ndefinition" -> "macro\ndefinition" [ label = "any key" ];
"macro\ndefinition" -> standard [ label = "hotkey" ];
"command\nmode" -> "macro\ndelete" [ label = "M" ];
"macro\ndelete" -> standard [ label = "macro key" ];
"command\nmode" -> "complex\ncommand" [ label = "multi key command" ];
"complex\ncommand" -> "complex\ncommand" [ label = "any key" ];
"complex\ncommand" -> standard [ label = "hotkey" ];
"complex\ncommand" -> standard [ label = "invalid key" ];
}