mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 08:01:30 -07:00
Increase by 1 in every direction the size of the blitter used to save
the background under a Guess coloured peg in mid-drag. Currently it assumes the circle doesn't extend into the next pixel, which the docs for draw_circle warn might happen due to antialiasing. [originally from svn r9450]
This commit is contained in:
9
guess.c
9
guess.c
@ -897,7 +897,7 @@ static void game_set_size(drawing *dr, game_drawstate *ds,
|
|||||||
|
|
||||||
assert(ds->pegsz > 0);
|
assert(ds->pegsz > 0);
|
||||||
assert(!ds->blit_peg); /* set_size is never called twice */
|
assert(!ds->blit_peg); /* set_size is never called twice */
|
||||||
ds->blit_peg = blitter_new(dr, ds->pegsz, ds->pegsz);
|
ds->blit_peg = blitter_new(dr, ds->pegsz+2, ds->pegsz+2);
|
||||||
}
|
}
|
||||||
|
|
||||||
static float *game_colours(frontend *fe, int *ncolours)
|
static float *game_colours(frontend *fe, int *ncolours)
|
||||||
@ -1290,11 +1290,10 @@ static void game_redraw(drawing *dr, game_drawstate *ds, game_state *oldstate,
|
|||||||
if (ui->drag_col != 0) {
|
if (ui->drag_col != 0) {
|
||||||
int ox = ui->drag_x - (PEGSZ/2);
|
int ox = ui->drag_x - (PEGSZ/2);
|
||||||
int oy = ui->drag_y - (PEGSZ/2);
|
int oy = ui->drag_y - (PEGSZ/2);
|
||||||
debug(("Saving to blitter at (%d,%d)", ox, oy));
|
ds->blit_ox = ox - 1; ds->blit_oy = oy - 1;
|
||||||
blitter_save(dr, ds->blit_peg, ox, oy);
|
debug(("Saving to blitter at (%d,%d)", ds->blit_ox, ds->blit_oy));
|
||||||
|
blitter_save(dr, ds->blit_peg, ds->blit_ox, ds->blit_oy);
|
||||||
draw_peg(dr, ds, ox, oy, TRUE, ui->show_labels, ui->drag_col);
|
draw_peg(dr, ds, ox, oy, TRUE, ui->show_labels, ui->drag_col);
|
||||||
|
|
||||||
ds->blit_ox = ox; ds->blit_oy = oy;
|
|
||||||
}
|
}
|
||||||
ds->drag_col = ui->drag_col;
|
ds->drag_col = ui->drag_col;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user