CURSOR_RIGHT,
CURSOR_SELECT,
CURSOR_SELECT2,
+ /* UI_* are special keystrokes generated by front ends in response
+ * to menu actions, never passed to back ends */
+ UI_LOWER_BOUND,
+ UI_QUIT,
+ UI_NEWGAME,
+ UI_SOLVE,
+ UI_UNDO,
+ UI_REDO,
+ UI_UPPER_BOUND,
/* made smaller because of 'limited range of datatype' errors. */
MOD_CTRL = 0x1000,
#define IS_CURSOR_MOVE(m) ( (m) == CURSOR_UP || (m) == CURSOR_DOWN || \
(m) == CURSOR_RIGHT || (m) == CURSOR_LEFT )
#define IS_CURSOR_SELECT(m) ( (m) == CURSOR_SELECT || (m) == CURSOR_SELECT2)
+#define IS_UI_FAKE_KEY(m) ( (m) > UI_LOWER_BOUND && (m) < UI_UPPER_BOUND )
/*
* Flags in the back end's `flags' word.
void draw_text_outline(drawing *dr, int x, int y, int fonttype,
int fontsize, int align,
int text_colour, int outline_colour, char *text);
+
+/* Copies text left-justified with spaces. Length of string must be
+ * less than buffer size. */
+void copy_left_justified(char *buf, size_t sz, const char *str);
+
/*
* dsf.c
*/