diff options
| author | Robert Konigsberg <konigsberg@gmail.com> | 2020-05-10 14:30:43 -0400 |
|---|---|---|
| committer | Simon Tatham <anakin@pobox.com> | 2020-05-11 11:25:06 +0100 |
| commit | 38dd338652912f056fa5634cd927e5a3f60e0df3 (patch) | |
| tree | cbe33bd23fad123fcf1d032eec250a8f282f9e5b /pattern.c | |
| parent | 2a0e91bc76738e36e89abd4dcae5f13bc063d210 (diff) | |
| download | puzzles-38dd338652912f056fa5634cd927e5a3f60e0df3.zip puzzles-38dd338652912f056fa5634cd927e5a3f60e0df3.tar.gz puzzles-38dd338652912f056fa5634cd927e5a3f60e0df3.tar.bz2 puzzles-38dd338652912f056fa5634cd927e5a3f60e0df3.tar.xz | |
Provide visual guide to the cursor location across the rows and columns.
Diffstat (limited to 'pattern.c')
| -rw-r--r-- | pattern.c | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -20,6 +20,7 @@ enum { COL_GRID, COL_CURSOR, COL_ERROR, + COL_CURSOR_GUIDE, NCOLOURS }; @@ -1658,11 +1659,12 @@ static float *game_colours(frontend *fe, int *ncolours) frontend_default_colour(fe, &ret[COL_BACKGROUND * 3]); for (i = 0; i < 3; i++) { - ret[COL_GRID * 3 + i] = 0.3F; - ret[COL_UNKNOWN * 3 + i] = 0.5F; - ret[COL_TEXT * 3 + i] = 0.0F; - ret[COL_FULL * 3 + i] = 0.0F; - ret[COL_EMPTY * 3 + i] = 1.0F; + ret[COL_GRID * 3 + i] = 0.3F; + ret[COL_UNKNOWN * 3 + i] = 0.5F; + ret[COL_TEXT * 3 + i] = 0.0F; + ret[COL_FULL * 3 + i] = 0.0F; + ret[COL_EMPTY * 3 + i] = 1.0F; + ret[COL_CURSOR_GUIDE * 3 + i] = 0.5F; } ret[COL_CURSOR * 3 + 0] = 1.0F; ret[COL_CURSOR * 3 + 1] = 0.25F; @@ -1889,6 +1891,9 @@ static void game_redraw(drawing *dr, game_drawstate *ds, */ for (i = 0; i < state->common->w + state->common->h; i++) { int colour = check_errors(state, i) ? COL_ERROR : COL_TEXT; + if (colour == COL_TEXT && ((cx >= 0 && i == cx) || (cy >= 0 && i == cy + ds->w))) { + colour = COL_CURSOR_GUIDE; + } if (ds->numcolours[i] != colour) { draw_numbers(dr, ds, state, i, true, colour); ds->numcolours[i] = colour; |