void draw_rect(frontend *fe, int x, int y, int w, int h, int colour);
void draw_line(frontend *fe, int x1, int y1, int x2, int y2, int colour);
void draw_polygon(frontend *fe, int *coords, int npoints,
- int fill, int colour);
+ int fillcolour, int outlinecolour);
void draw_circle(frontend *fe, int cx, int cy, int radius,
- int fill, int colour);
+ int fillcolour, int outlinecolour);
void clip(frontend *fe, int x, int y, int w, int h);
void unclip(frontend *fe);
void start_draw(frontend *fe);
char *midend_solve(midend_data *me);
void midend_supersede_game_desc(midend_data *me, char *desc, char *privdesc);
char *midend_rewrite_statusbar(midend_data *me, char *text);
+void midend_serialise(midend_data *me,
+ void (*write)(void *ctx, void *buf, int len),
+ void *wctx);
+char *midend_deserialise(midend_data *me,
+ int (*read)(void *ctx, void *buf, int len),
+ void *rctx);
/*
* malloc.c
char *(*interpret_move)(game_state *state, game_ui *ui, game_drawstate *ds,
int x, int y, int button);
game_state *(*execute_move)(game_state *state, char *move);
- void (*size)(game_params *params, game_drawstate *ds, int *x, int *y,
- int expand);
+ int preferred_tilesize;
+ void (*compute_size)(game_params *params, int tilesize, int *x, int *y);
+ void (*set_size)(game_drawstate *ds, game_params *params, int tilesize);
float *(*colours)(frontend *fe, game_state *state, int *ncolours);
game_drawstate *(*new_drawstate)(game_state *state);
void (*free_drawstate)(game_drawstate *ds);