~mdw
/
sgt
/
puzzles
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Updates and improvements from Jonas Koelker.
[sgt/puzzles]
/
puzzles.h
diff --git
a/puzzles.h
b/puzzles.h
index
f67da1c
..
9b69d1b
100644
(file)
--- a/
puzzles.h
+++ b/
puzzles.h
@@
-67,8
+67,20
@@
enum {
#define BUTTON_BEATS(x,y) ( 1 << (((x)-LEFT_BUTTON)*3+(y)-LEFT_BUTTON) )
/* Flag indicating that Solve operations should be animated */
#define SOLVE_ANIMATES ( 1 << 9 )
#define BUTTON_BEATS(x,y) ( 1 << (((x)-LEFT_BUTTON)*3+(y)-LEFT_BUTTON) )
/* Flag indicating that Solve operations should be animated */
#define SOLVE_ANIMATES ( 1 << 9 )
+/* Pocket PC: Game requires right mouse button emulation */
+#define REQUIRE_RBUTTON ( 1 << 10 )
+/* Pocket PC: Game requires numeric input */
+#define REQUIRE_NUMPAD ( 1 << 11 )
/* end of `flags' word definitions */
/* end of `flags' word definitions */
+#ifdef _WIN32_WCE
+ /* Pocket PC devices have small, portrait screen that requires more vivid colours */
+ #define SMALL_SCREEN
+ #define PORTRAIT_SCREEN
+ #define VIVID_COLOURS
+ #define STYLUS_BASED
+#endif
+
#define IGNOREARG(x) ( (x) = (x) )
typedef struct frontend frontend;
#define IGNOREARG(x) ( (x) = (x) )
typedef struct frontend frontend;
@@
-207,7
+219,7
@@
midend *midend_new(frontend *fe, const game *ourgame,
void midend_free(midend *me);
void midend_set_params(midend *me, game_params *params);
game_params *midend_get_params(midend *me);
void midend_free(midend *me);
void midend_set_params(midend *me, game_params *params);
game_params *midend_get_params(midend *me);
-void midend_size(midend *me, int *x, int *y, int
expand
);
+void midend_size(midend *me, int *x, int *y, int
user_size
);
void midend_new_game(midend *me);
void midend_restart_game(midend *me);
void midend_stop_anim(midend *me);
void midend_new_game(midend *me);
void midend_restart_game(midend *me);
void midend_stop_anim(midend *me);
@@
-215,6
+227,7
@@
int midend_process_key(midend *me, int x, int y, int button);
void midend_force_redraw(midend *me);
void midend_redraw(midend *me);
float *midend_colours(midend *me, int *ncolours);
void midend_force_redraw(midend *me);
void midend_redraw(midend *me);
float *midend_colours(midend *me, int *ncolours);
+void midend_freeze_timer(midend *me, float tprop);
void midend_timer(midend *me, float tplus);
int midend_num_presets(midend *me);
void midend_fetch_preset(midend *me, int n,
void midend_timer(midend *me, float tplus);
int midend_num_presets(midend *me);
void midend_fetch_preset(midend *me, int n,
@@
-267,6
+280,10
@@
unsigned char *hex2bin(const char *in, int outlen);
* and auto-generates highlight and lowlight colours too. */
void game_mkhighlight(frontend *fe, float *ret,
int background, int highlight, int lowlight);
* and auto-generates highlight and lowlight colours too. */
void game_mkhighlight(frontend *fe, float *ret,
int background, int highlight, int lowlight);
+/* As above, but starts from a provided background colour rather
+ * than the frontend default. */
+void game_mkhighlight_specific(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);
/* Randomly shuffles an array of items. */
void shuffle(void *array, int nelts, int eltsize, random_state *rs);
@@
-287,6
+304,7
@@
void print_dsf(int *dsf, int size);
* indicating whether the canonical element is inverse to val. */
int edsf_canonify(int *dsf, int val, int *inverse);
int dsf_canonify(int *dsf, int val);
* indicating whether the canonical element is inverse to val. */
int edsf_canonify(int *dsf, int val, int *inverse);
int dsf_canonify(int *dsf, int val);
+int dsf_size(int *dsf, int val);
/* Allow the caller to specify that two elements should be in the same
* equivalence class. If 'inverse' is TRUE, the elements are actually opposite
/* Allow the caller to specify that two elements should be in the same
* equivalence class. If 'inverse' is TRUE, the elements are actually opposite
@@
-364,7
+382,7
@@
void free_combi(combi_ctx *combi);
*/
struct game {
const char *name;
*/
struct game {
const char *name;
- const char *winhelp_topic;
+ const char *winhelp_topic
, *htmlhelp_topic
;
game_params *(*default_params)(void);
int (*fetch_preset)(int i, char **name, game_params **params);
void (*decode_params)(game_params *, char const *string);
game_params *(*default_params)(void);
int (*fetch_preset)(int i, char **name, game_params **params);
void (*decode_params)(game_params *, char const *string);