aboutsummaryrefslogtreecommitdiff
path: root/puzzles.h
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-06-28 07:33:49 +0000
committerSimon Tatham <anakin@pobox.com>2005-06-28 07:33:49 +0000
commitcdb8433c0a5bf546ae2f4c55bad1be064d05df3b (patch)
tree3e6026b5dde0edba0477de9d714b46c0f687e6cf /puzzles.h
parent08410651e05b0723073d53e7d75174767633bf87 (diff)
downloadpuzzles-cdb8433c0a5bf546ae2f4c55bad1be064d05df3b.zip
puzzles-cdb8433c0a5bf546ae2f4c55bad1be064d05df3b.tar.gz
puzzles-cdb8433c0a5bf546ae2f4c55bad1be064d05df3b.tar.bz2
puzzles-cdb8433c0a5bf546ae2f4c55bad1be064d05df3b.tar.xz
Another function pair required for serialisation; these ones save
and restore anything vitally important in the game_ui. Most of the game_ui is expected to be stuff about cursor positions and currently active mouse drags, so it absolutely _doesn't_ want to be preserved over a serialisation; but one or two things would be disorienting or outright wrong to reset, such as the Net origin position and the Mines death counter. [originally from svn r6026]
Diffstat (limited to 'puzzles.h')
-rw-r--r--puzzles.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/puzzles.h b/puzzles.h
index 92c5a10..17b0b00 100644
--- a/puzzles.h
+++ b/puzzles.h
@@ -275,6 +275,8 @@ struct game {
char *(*text_format)(game_state *state);
game_ui *(*new_ui)(game_state *state);
void (*free_ui)(game_ui *ui);
+ char *(*encode_ui)(game_ui *ui);
+ void (*decode_ui)(game_ui *ui, char *encoding);
void (*changed_state)(game_ui *ui, game_state *oldstate,
game_state *newstate);
char *(*interpret_move)(game_state *state, game_ui *ui, game_drawstate *ds,