Pass a game_ui to compute_size, print_size and print.

I'm about to move some of the bodgy getenv-based options so that they
become fields in game_ui. So these functions, which could previously
access those options directly via getenv, will now need to be given a
game_ui where they can look them up.
This commit is contained in:
Simon Tatham
2023-04-21 15:30:41 +01:00
parent ec2e2f3770
commit a4fca3286f
49 changed files with 214 additions and 144 deletions

10
range.c
View File

@ -1623,7 +1623,7 @@ enum {
};
static void game_compute_size(const game_params *params, int tilesize,
int *x, int *y)
const game_ui *ui, int *x, int *y)
{
*x = (1 + params->w) * tilesize;
*y = (1 + params->h) * tilesize;
@ -1766,15 +1766,17 @@ static void draw_cell(drawing *draw, game_drawstate *ds, int r, int c,
* User interface: print
*/
static void game_print_size(const game_params *params, float *x, float *y)
static void game_print_size(const game_params *params, const game_ui *ui,
float *x, float *y)
{
int print_width, print_height;
game_compute_size(params, 800, &print_width, &print_height);
game_compute_size(params, 800, ui, &print_width, &print_height);
*x = print_width / 100.0F;
*y = print_height / 100.0F;
}
static void game_print(drawing *dr, const game_state *state, int tilesize)
static void game_print(drawing *dr, const game_state *state, const game_ui *ui,
int tilesize)
{
int const w = state->params.w, h = state->params.h;
game_drawstate ds_obj, *ds = &ds_obj;