/* Bit flags indicating mouse button priorities */
#define BUTTON_BEATS(x,y) ( 1 << (((x)-LEFT_BUTTON)*3+(y)-LEFT_BUTTON) )
+/* Another random flag that goes in the mouse priorities section for want
+ * of a better place to put it */
+#define SOLVE_ANIMATES ( 1 << 9 )
+
#define IGNOREARG(x) ( (x) = (x) )
typedef struct frontend frontend;
void game_mkhighlight(frontend *fe, float *ret,
int background, int highlight, int lowlight);
+/* Randomly shuffles an array of items. */
+void shuffle(void *array, int nelts, int eltsize, random_state *rs);
+
+/* Draw a rectangle outline, using the frontend's draw_line. */
+void draw_rect_outline(frontend *fe, int x, int y, int w, int h,
+ int colour);
+
/*
* version.c
*/
game_ui *ui);
int (*wants_statusbar)(void);
int is_timed;
- int (*timing_state)(game_state *state);
+ int (*timing_state)(game_state *state, game_ui *ui);
int mouse_priorities;
};