diff options
| author | Simon Tatham <anakin@pobox.com> | 2005-05-17 11:46:55 +0000 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2005-05-17 11:46:55 +0000 |
| commit | c9f05ca3c0abf3b25b1a00caca72630ba6eb017e (patch) | |
| tree | 3907ec423f1026ca5a30c8697633676e30368ce9 /pattern.c | |
| parent | 0913f94a98373ce2c68c5bc159cc2684b1955211 (diff) | |
| download | puzzles-c9f05ca3c0abf3b25b1a00caca72630ba6eb017e.zip puzzles-c9f05ca3c0abf3b25b1a00caca72630ba6eb017e.tar.gz puzzles-c9f05ca3c0abf3b25b1a00caca72630ba6eb017e.tar.bz2 puzzles-c9f05ca3c0abf3b25b1a00caca72630ba6eb017e.tar.xz | |
`Restart' is now an undo-able action: it appends a move to the end
of the undo list rather than destroying it. Partly this is because
accidental restarts are a real pain, and partly because it allows
you to compare the initial to the current state by restart-then-undo
which is handy in some puzzles.
In order to do this, I've introduced an additional per-entry field
in the undo list in the midend, which tracks which states were
created by `unusual' operations (Solve and Restart). The midend
takes care of suppressing animation and completion flashes during
transitions between a `special' state and its predecessor, relieving
the game backends of having to do it individually.
(This probably means I could remove some complexity in the
flash_time() functions in most backends, but I haven't done that in
this checkin.)
[originally from svn r5791]
Diffstat (limited to 'pattern.c')
0 files changed, 0 insertions, 0 deletions