Freeciv-3.1
Loading...
Searching...
No Matches
options.h
Go to the documentation of this file.
1/**********************************************************************
2 Freeciv - Copyright (C) 1996 - A Kjeldberg, L Gregersen, P Unold
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2, or (at your option)
6 any later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12***********************************************************************/
13#ifndef FC__OPTIONS_H
14#define FC__OPTIONS_H
15
16#ifdef __cplusplus
17extern "C" {
18#endif /* __cplusplus */
19
20/* utility */
21#include "support.h" /* bool type */
22
23/* common */
24#include "events.h"
25#include "fc_types.h" /* enum gui_type */
26#include "featured_text.h" /* struct ft_color */
27#include "mapimg.h"
28
29#define DEFAULT_METASERVER_OPTION "default"
30
31#define FONT_NAME_SIZE 512
32
33#if MINOR_VERSION >= 90
34#define MAJOR_NEW_OPTION_FILE_NAME (MAJOR_VERSION + 1)
35#define MINOR_NEW_OPTION_FILE_NAME 0
36#else /* MINOR_VERSION < 90 */
37#define MAJOR_NEW_OPTION_FILE_NAME MAJOR_VERSION
38#if IS_DEVEL_VERSION && ! IS_FREEZE_VERSION
39#define MINOR_NEW_OPTION_FILE_NAME (MINOR_VERSION + 1)
40#else
41#define MINOR_NEW_OPTION_FILE_NAME MINOR_VERSION
42#endif /* IS_DEVEL_VERSION */
43#endif /* MINOR_VERSION >= 90 */
44
45struct video_mode {
46 int width;
47 int height;
48};
49
50#define VIDEO_MODE(ARG_width, ARG_height) \
51 { ARG_width, ARG_height }
52
53/****************************************************************************
54 Constructor.
55****************************************************************************/
56static inline struct video_mode video_mode_construct(int width, int height)
57{
58 struct video_mode mode = VIDEO_MODE(width, height);
59
60 return mode;
61}
62
63enum {
64 /* Order must match strings in
65 * options.c:gui_gtk_message_chat_location_name() */
69};
70
71enum {
72 /* Order must match strings in
73 * options.c:gui_popup_tech_help_name() */
77};
78
88
89/* Holds all information about the overview aka minimap. */
90struct overview {
91 /* The following fields are controlled by mapview_common.c. */
92 double map_x0, map_y0; /* Origin of the overview, in natural coords. */
93 int width, height; /* Size in pixels. */
94
95 /* Holds the map, unwrapped. */
96 struct canvas *map;
97
98 /* A backing store for the window itself, wrapped. */
99 struct canvas *window;
100
101 bool fog;
103};
104
106{
120
122
124 bool first_boot; /* There was no earlier options saved.
125 * This affects some migrations, but not all. */
126 char default_tileset_name[512]; /* pre-2.6 had just this one tileset name */
127 char default_tileset_overhead_name[512]; /* 2.6 had separate tilesets for ... */
128 char default_tileset_iso_name[512]; /* ...overhead and iso topologies. */
137
139
170
175
179
184
211
215
216/* options for map images */
219 bool mapimg_layer[MAPIMG_LAYER_COUNT];
221
224
225/* gui-gtk-2.0 client specific options.
226 * These are still kept just so users can migrate them to gtk3-client */
227#define FC_GTK2_DEFAULT_THEME_NAME "Freeciv"
257
258/* gui-gtk-3.0 client specific options. */
259#define FC_GTK3_DEFAULT_THEME_NAME "Freeciv"
271 int gui_gtk3_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
293
294 /* gui-gtk-3.22 client specific options. */
295#define FC_GTK3_22_DEFAULT_THEME_NAME "Freeciv"
307 int gui_gtk3_22_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
329
330/* gui-gtk-4.0 client specific options. */
331#define FC_GTK4_DEFAULT_THEME_NAME "Freeciv"
343 int gui_gtk4_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
365
366/* gui-sdl client specific options.
367 * These are still kept just so users can migrate them to sdl2-client */
372
373/* gui-sdl2 client specific options. */
374#define FC_SDL2_DEFAULT_THEME_NAME "human"
383
384/* gui-qt client specific options. */
385#define FC_QT_DEFAULT_THEME_NAME "NightStalker"
401
403};
404
405extern struct client_options gui_options;
406
407#define SPECENUM_NAME option_type
408#define SPECENUM_VALUE0 OT_BOOLEAN
409#define SPECENUM_VALUE1 OT_INTEGER
410#define SPECENUM_VALUE2 OT_STRING
411#define SPECENUM_VALUE3 OT_ENUM
412#define SPECENUM_VALUE4 OT_BITWISE
413#define SPECENUM_VALUE5 OT_FONT
414#define SPECENUM_VALUE6 OT_COLOR
415#define SPECENUM_VALUE7 OT_VIDEO_MODE
416#include "specenum_gen.h"
417
418
419struct option; /* Opaque type. */
420struct option_set; /* Opaque type. */
421
422typedef void (*option_save_log_callback)(enum log_level lvl, const char *msg, ...);
423
424/* Main functions. */
425void options_init(void);
426void options_free(void);
427void server_options_init(void);
428void server_options_free(void);
429void options_load(void);
431
432
433/* Option sets. */
434extern const struct option_set *client_optset;
435extern const struct option_set *server_optset;
436
438 int id);
439#define optset_option_by_index optset_option_by_number
440struct option *optset_option_by_name(const struct option_set *poptset,
441 const char *name);
442struct option *optset_option_first(const struct option_set *poptset);
443
444int optset_category_number(const struct option_set *poptset);
445const char *optset_category_name(const struct option_set *poptset,
446 int category);
447
448
449/* Common option functions. */
450const struct option_set *option_optset(const struct option *poption);
451int option_number(const struct option *poption);
452#define option_index option_number
453const char *option_name(const struct option *poption);
454const char *option_description(const struct option *poption);
455const char *option_help_text(const struct option *poption);
456enum option_type option_type(const struct option *poption);
457int option_category(const struct option *poption);
458const char *option_category_name(const struct option *poption);
459bool option_is_changeable(const struct option *poption);
460struct option *option_next(const struct option *poption);
461
462bool option_reset(struct option *poption);
463void option_set_changed_callback(struct option *poption,
464 void (*callback) (struct option *));
465void option_changed(struct option *poption);
466
467/* Option gui functions. */
468void option_set_gui_data(struct option *poption, void *data);
469void *option_get_gui_data(const struct option *poption);
470
471/* Callback assistance */
472int option_get_cb_data(const struct option *poption);
473
474/* Option type OT_BOOLEAN functions. */
475bool option_bool_get(const struct option *poption);
476bool option_bool_def(const struct option *poption);
477bool option_bool_set(struct option *poption, bool val);
478
479/* Option type OT_INTEGER functions. */
480int option_int_get(const struct option *poption);
481int option_int_def(const struct option *poption);
482int option_int_min(const struct option *poption);
483int option_int_max(const struct option *poption);
484bool option_int_set(struct option *poption, int val);
485
486/* Option type OT_STRING functions. */
487const char *option_str_get(const struct option *poption);
488const char *option_str_def(const struct option *poption);
489const struct strvec *option_str_values(const struct option *poption);
490bool option_str_set(struct option *poption, const char *str);
491
492/* Option type OT_ENUM functions. */
493int option_enum_str_to_int(const struct option *poption, const char *str);
494const char *option_enum_int_to_str(const struct option *poption, int val);
495int option_enum_get_int(const struct option *poption);
496const char *option_enum_get_str(const struct option *poption);
497int option_enum_def_int(const struct option *poption);
498const char *option_enum_def_str(const struct option *poption);
499const struct strvec *option_enum_values(const struct option *poption);
500bool option_enum_set_int(struct option *poption, int val);
501bool option_enum_set_str(struct option *poption, const char *str);
502
503/* Option type OT_BITWISE functions. */
504unsigned option_bitwise_get(const struct option *poption);
505unsigned option_bitwise_def(const struct option *poption);
506unsigned option_bitwise_mask(const struct option *poption);
507const struct strvec *option_bitwise_values(const struct option *poption);
508bool option_bitwise_set(struct option *poption, unsigned val);
509
510/* Option type OT_FONT functions. */
511const char *option_font_get(const struct option *poption);
512const char *option_font_def(const struct option *poption);
513const char *option_font_target(const struct option *poption);
514bool option_font_set(struct option *poption, const char *font);
515
516/* Option type OT_COLOR functions. */
517struct ft_color option_color_get(const struct option *poption);
518struct ft_color option_color_def(const struct option *poption);
519bool option_color_set(struct option *poption, struct ft_color color);
520
521/* Option type OT_VIDEO_MODE functions. */
522struct video_mode option_video_mode_get(const struct option *poption);
523struct video_mode option_video_mode_def(const struct option *poption);
524bool option_video_mode_set(struct option *poption, struct video_mode mode);
525
526
527#define options_iterate(poptset, poption) \
528{ \
529 struct option *poption = optset_option_first(poptset); \
530 for (; NULL != poption; poption = option_next(poption)) { \
531
532#define options_iterate_end \
533 } \
534}
535
536
539void desired_settable_option_update(const char *op_name,
540 const char *op_value,
541 bool allow_replace);
543
544
546void options_dialogs_update(void);
547void options_dialogs_set(void);
548
549
552/* for specifying which event messages go where: */
553#define NUM_MW 3
554#define MW_OUTPUT 1 /* add to the output window */
555#define MW_MESSAGES 2 /* add to the messages window */
556#define MW_POPUP 4 /* popup an individual window */
557
558extern int messages_where[]; /* OR-ed MW_ values [E_COUNT] */
559
560
563#define GUI_DEFAULT_CHAT_LOGFILE "freeciv-chat.log"
564
565/* gui-gtk2: [xy]size of the city dialog */
566#define GUI_GTK2_CITYDLG_DEFAULT_XSIZE 770
567#define GUI_GTK2_CITYDLG_MIN_XSIZE 256
568#define GUI_GTK2_CITYDLG_MAX_XSIZE 4096
569
570#define GUI_GTK2_CITYDLG_DEFAULT_YSIZE 512
571#define GUI_GTK2_CITYDLG_MIN_YSIZE 128
572#define GUI_GTK2_CITYDLG_MAX_YSIZE 4096
573
574#define GUI_GTK_OVERVIEW_MIN_XSIZE 160
575#define GUI_GTK_OVERVIEW_MIN_YSIZE 100
576
577/* gui-gtk3: [xy]size of the city dialog */
578#define GUI_GTK3_CITYDLG_DEFAULT_XSIZE 770
579#define GUI_GTK3_CITYDLG_MIN_XSIZE 256
580#define GUI_GTK3_CITYDLG_MAX_XSIZE 4096
581
582#define GUI_GTK3_CITYDLG_DEFAULT_YSIZE 512
583#define GUI_GTK3_CITYDLG_MIN_YSIZE 128
584#define GUI_GTK3_CITYDLG_MAX_YSIZE 4096
585
586#define GUI_GTK3_GOV_RANGE_MIN_DEFAULT -20
587#define GUI_GTK3_GOV_RANGE_MIN_MIN -100
588#define GUI_GTK3_GOV_RANGE_MIN_MAX 0
589
590#define GUI_GTK3_GOV_RANGE_MAX_DEFAULT 20
591#define GUI_GTK3_GOV_RANGE_MAX_MIN 0
592#define GUI_GTK3_GOV_RANGE_MAX_MAX 100
593
594/* gui-gtk3.22: [xy]size of the city dialog */
595#define GUI_GTK3_22_CITYDLG_DEFAULT_XSIZE 770
596#define GUI_GTK3_22_CITYDLG_MIN_XSIZE 256
597#define GUI_GTK3_22_CITYDLG_MAX_XSIZE 4096
598
599#define GUI_GTK3_22_CITYDLG_DEFAULT_YSIZE 512
600#define GUI_GTK3_22_CITYDLG_MIN_YSIZE 128
601#define GUI_GTK3_22_CITYDLG_MAX_YSIZE 4096
602
603#define GUI_GTK3_22_GOV_RANGE_MIN_DEFAULT -20
604#define GUI_GTK3_22_GOV_RANGE_MIN_MIN -100
605#define GUI_GTK3_22_GOV_RANGE_MIN_MAX 0
606
607#define GUI_GTK3_22_GOV_RANGE_MAX_DEFAULT 20
608#define GUI_GTK3_22_GOV_RANGE_MAX_MIN 0
609#define GUI_GTK3_22_GOV_RANGE_MAX_MAX 100
610
611/* gui-gtk4.0: [xy]size of the city dialog */
612#define GUI_GTK4_CITYDLG_DEFAULT_XSIZE 770
613#define GUI_GTK4_CITYDLG_MIN_XSIZE 256
614#define GUI_GTK4_CITYDLG_MAX_XSIZE 4096
615
616#define GUI_GTK4_CITYDLG_DEFAULT_YSIZE 512
617#define GUI_GTK4_CITYDLG_MIN_YSIZE 128
618#define GUI_GTK4_CITYDLG_MAX_YSIZE 4096
619
620#define GUI_GTK4_GOV_RANGE_MIN_DEFAULT -20
621#define GUI_GTK4_GOV_RANGE_MIN_MIN -100
622#define GUI_GTK4_GOV_RANGE_MIN_MAX 0
623
624#define GUI_GTK4_GOV_RANGE_MAX_DEFAULT 20
625#define GUI_GTK4_GOV_RANGE_MAX_MIN 0
626#define GUI_GTK4_GOV_RANGE_MAX_MAX 100
627
628#define GUI_DEFAULT_MAPIMG_FILENAME "freeciv"
629
630bool video_mode_to_string(char *buf, size_t buf_len, struct video_mode *mode);
631bool string_to_video_mode(const char *buf, struct video_mode *mode);
632
633struct tileset;
634
635const char *tileset_name_for_topology(int topology_id);
636void option_set_default_ts(struct tileset *t);
637void fill_topo_ts_default(void);
638
639#ifdef __cplusplus
640}
641#endif /* __cplusplus */
642
643#endif /* FC__OPTIONS_H */
#define str
Definition astring.c:76
struct canvas int int struct sprite int int int int height
Definition canvas_g.h:44
struct canvas int int struct sprite int int int width
Definition canvas_g.h:44
const char * name
Definition inputfile.c:127
log_level
Definition log.h:28
unsigned option_bitwise_mask(const struct option *poption)
Definition options.c:1071
void fill_topo_ts_default(void)
Definition options.c:6555
void resend_desired_settable_options(void)
Definition options.c:5742
const struct strvec * option_str_values(const struct option *poption)
Definition options.c:890
void option_changed(struct option *poption)
Definition options.c:723
unsigned option_bitwise_def(const struct option *poption)
Definition options.c:1060
int option_enum_str_to_int(const struct option *poption, const char *str)
Definition options.c:918
int option_int_min(const struct option *poption)
Definition options.c:831
bool option_bool_def(const struct option *poption)
Definition options.c:783
const char * option_font_def(const struct option *poption)
Definition options.c:1127
const char * tileset_name_for_topology(int topology_id)
Definition options.c:6469
struct option * optset_option_first(const struct option_set *poptset)
Definition options.c:422
void(* option_save_log_callback)(enum log_level lvl, const char *msg,...)
Definition options.h:422
const struct option_set * server_optset
Definition options.c:4009
bool option_reset(struct option *poption)
Definition options.c:684
void options_free(void)
Definition options.c:6271
const char * option_description(const struct option *poption)
Definition options.c:613
const char * option_help_text(const struct option *poption)
Definition options.c:623
const char * option_enum_get_str(const struct option *poption)
Definition options.c:967
struct ft_color option_color_get(const struct option *poption)
Definition options.c:1165
int option_enum_get_int(const struct option *poption)
Definition options.c:955
int option_number(const struct option *poption)
Definition options.c:593
int option_category(const struct option *poption)
Definition options.c:643
void desired_settable_option_update(const char *op_name, const char *op_value, bool allow_replace)
Definition options.c:5599
void option_set_default_ts(struct tileset *t)
Definition options.c:6496
static struct video_mode video_mode_construct(int width, int height)
Definition options.h:56
bool option_str_set(struct option *poption, const char *str)
Definition options.c:901
const struct option_set * client_optset
Definition options.c:1255
const char * option_name(const struct option *poption)
Definition options.c:603
@ GUI_GTK_MSGCHAT_MERGED
Definition options.h:68
@ GUI_GTK_MSGCHAT_SEPARATE
Definition options.h:67
@ GUI_GTK_MSGCHAT_SPLIT
Definition options.h:66
int option_int_get(const struct option *poption)
Definition options.c:809
void options_init(void)
Definition options.c:6173
int messages_where[]
Definition options.c:5028
bool option_enum_set_str(struct option *poption, const char *str)
Definition options.c:1032
bool option_color_set(struct option *poption, struct ft_color color)
Definition options.c:1188
void option_set_changed_callback(struct option *poption, void(*callback)(struct option *))
Definition options.c:712
bool option_bool_set(struct option *poption, bool val)
Definition options.c:794
bool option_is_changeable(const struct option *poption)
Definition options.c:664
bool option_video_mode_set(struct option *poption, struct video_mode mode)
Definition options.c:1228
void option_set_gui_data(struct option *poption, void *data)
Definition options.c:742
const char * option_str_get(const struct option *poption)
Definition options.c:868
@ GUI_POPUP_TECH_HELP_DISABLED
Definition options.h:75
@ GUI_POPUP_TECH_HELP_RULESET
Definition options.h:76
@ GUI_POPUP_TECH_HELP_ENABLED
Definition options.h:74
struct option * optset_option_by_number(const struct option_set *poptset, int id)
Definition options.c:395
void * option_get_gui_data(const struct option *poption)
Definition options.c:752
const struct strvec * option_enum_values(const struct option *poption)
Definition options.c:1004
bool option_enum_set_int(struct option *poption, int val)
Definition options.c:1015
bool option_bool_get(const struct option *poption)
Definition options.c:772
int optset_category_number(const struct option_set *poptset)
Definition options.c:432
void server_options_init(void)
Definition options.c:4153
enum option_type option_type(const struct option *poption)
Definition options.c:633
const char * option_enum_int_to_str(const struct option *poption, int val)
Definition options.c:940
void options_dialogs_update(void)
Definition options.c:5836
int option_get_cb_data(const struct option *poption)
Definition options.c:762
bool video_mode_to_string(char *buf, size_t buf_len, struct video_mode *mode)
Definition options.c:6445
const struct option_set * option_optset(const struct option *poption)
Definition options.c:583
void server_options_free(void)
Definition options.c:4222
struct video_mode option_video_mode_get(const struct option *poption)
Definition options.c:1203
struct option * option_next(const struct option *poption)
Definition options.c:674
const char * option_str_def(const struct option *poption)
Definition options.c:879
const char * optset_category_name(const struct option_set *poptset, int category)
Definition options.c:442
int option_int_max(const struct option *poption)
Definition options.c:842
const char * option_enum_def_str(const struct option *poption)
Definition options.c:991
void options_load(void)
Definition options.c:5897
bool option_font_set(struct option *poption, const char *font)
Definition options.c:1149
const char * option_font_target(const struct option *poption)
Definition options.c:1138
#define FONT_NAME_SIZE
Definition options.h:31
void options_save(option_save_log_callback log_cb)
Definition options.c:6053
bool string_to_video_mode(const char *buf, struct video_mode *mode)
Definition options.c:6453
const struct strvec * option_bitwise_values(const struct option *poption)
Definition options.c:1088
struct client_options gui_options
Definition options.c:71
bool option_bitwise_set(struct option *poption, unsigned val)
Definition options.c:1099
const char * option_font_get(const struct option *poption)
Definition options.c:1116
void desired_settable_options_update(void)
Definition options.c:5531
#define VIDEO_MODE(ARG_width, ARG_height)
Definition options.h:50
struct ft_color option_color_def(const struct option *poption)
Definition options.c:1176
overview_layers
Definition options.h:79
@ OLAYER_COUNT
Definition options.h:86
@ OLAYER_BORDERS
Definition options.h:82
@ OLAYER_BACKGROUND
Definition options.h:80
@ OLAYER_CITIES
Definition options.h:85
@ OLAYER_BORDERS_ON_OCEAN
Definition options.h:83
@ OLAYER_UNITS
Definition options.h:84
@ OLAYER_RELIEF
Definition options.h:81
unsigned option_bitwise_get(const struct option *poption)
Definition options.c:1049
int option_enum_def_int(const struct option *poption)
Definition options.c:979
struct option * optset_option_by_name(const struct option_set *poptset, const char *name)
Definition options.c:406
void options_dialogs_set(void)
Definition options.c:5864
bool option_int_set(struct option *poption, int val)
Definition options.c:853
const char * option_category_name(const struct option *poption)
Definition options.c:653
int option_int_def(const struct option *poption)
Definition options.c:820
struct video_mode option_video_mode_def(const struct option *poption)
Definition options.c:1215
int gui_gtk4_governor_range_max
Definition options.h:351
bool voteinfo_bar_use
Definition options.h:171
char gui_gtk2_default_theme_name[512]
Definition options.h:228
bool gui_sdl2_do_cursor_animation
Definition options.h:379
bool gui_gtk4_metaserver_tab_first
Definition options.h:341
bool gui_gtk4_show_task_icons
Definition options.h:336
bool update_city_text_in_refresh_tile
Definition options.h:164
int gui_gtk4_citydlg_xsize
Definition options.h:347
bool gui_qt_fullscreen
Definition options.h:386
char gui_gtk4_font_help_link[FONT_NAME_SIZE]
Definition options.h:356
bool show_previous_turn_messages
Definition options.h:155
bool gui_gtk3_22_migrated_from_gtk3
Definition options.h:130
char gui_gtk3_font_help_text[FONT_NAME_SIZE]
Definition options.h:285
bool draw_native
Definition options.h:207
bool gui_gtk2_migrated_from_2_5
Definition options.h:133
char gui_qt_default_theme_name[512]
Definition options.h:390
bool sound_bell_at_new_turn
Definition options.h:143
char gui_gtk2_font_small[FONT_NAME_SIZE]
Definition options.h:252
int gui_gtk3_22_governor_range_max
Definition options.h:315
bool gui_gtk3_22_mouse_over_map_focus
Definition options.h:309
bool autoaccept_tileset_suggestion
Definition options.h:176
bool autoaccept_musicset_suggestion
Definition options.h:178
bool reqtree_show_icons
Definition options.h:213
bool enable_cursor_changes
Definition options.h:166
char gui_gtk2_font_chatline[FONT_NAME_SIZE]
Definition options.h:250
bool auto_turn_done
Definition options.h:157
bool gui_sdl2_migrated_from_sdl
Definition options.h:132
bool gui_qt_allied_chat_only
Definition options.h:388
bool gui_gtk4_fullscreen
Definition options.h:333
char gui_qt_font_city_names[FONT_NAME_SIZE]
Definition options.h:396
char gui_gtk3_22_font_help_text[FONT_NAME_SIZE]
Definition options.h:321
bool gui_gtk2_enable_tabs
Definition options.h:232
bool gui_gtk3_22_metaserver_tab_first
Definition options.h:305
int gui_gtk3_22_governor_range_min
Definition options.h:314
int gui_gtk2_citydlg_ysize
Definition options.h:242
int gui_gtk4_governor_range_min
Definition options.h:350
char gui_gtk4_font_chatline[FONT_NAME_SIZE]
Definition options.h:358
char gui_qt_font_city_productions[FONT_NAME_SIZE]
Definition options.h:397
bool draw_specials
Definition options.h:199
int smooth_center_slide_msec
Definition options.h:145
int gui_gtk3_22_message_chat_location
Definition options.h:307
bool draw_city_output
Definition options.h:186
int gui_gtk3_citydlg_xsize
Definition options.h:275
bool sound_enable_menu_music
Definition options.h:181
bool player_dlg_show_dead_players
Definition options.h:212
char gui_sdl2_font_city_names[64]
Definition options.h:381
char default_tileset_hex_name[512]
Definition options.h:114
bool draw_city_names
Definition options.h:188
bool draw_city_productions
Definition options.h:190
int default_server_port
Definition options.h:109
char gui_gtk3_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:282
char default_sound_set_name[512]
Definition options.h:116
bool voteinfo_bar_hide_when_not_player
Definition options.h:173
bool use_prev_server
Definition options.h:110
char gui_gtk3_22_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:328
char gui_gtk3_font_city_label[FONT_NAME_SIZE]
Definition options.h:280
bool gui_sdl_fullscreen
Definition options.h:368
int smooth_move_unit_msec
Definition options.h:144
bool gui_gtk3_small_display_layout
Definition options.h:272
char gui_qt_wakeup_text[512]
Definition options.h:400
bool gui_gtk3_22_small_display_layout
Definition options.h:308
bool goto_into_unknown
Definition options.h:153
bool draw_mines
Definition options.h:197
int gui_gtk3_governor_range_max
Definition options.h:279
char gui_gtk2_font_city_names[FONT_NAME_SIZE]
Definition options.h:254
bool gui_gtk4_allied_chat_only
Definition options.h:342
char gui_gtk4_font_beta_label[FONT_NAME_SIZE]
Definition options.h:359
char gui_gtk3_22_font_beta_label[FONT_NAME_SIZE]
Definition options.h:323
char default_tileset_iso_name[512]
Definition options.h:128
char default_metaserver[512]
Definition options.h:112
struct video_mode gui_sdl2_screen
Definition options.h:377
int gui_gtk3_22_popup_tech_help
Definition options.h:313
bool draw_borders
Definition options.h:206
bool draw_fortress_airbase
Definition options.h:198
char gui_gtk2_font_help_label[FONT_NAME_SIZE]
Definition options.h:247
bool draw_city_buycost
Definition options.h:191
bool draw_unit_stack_size
Definition options.h:210
bool gui_sdl_use_color_cursors
Definition options.h:371
bool mapimg_layer[MAPIMG_LAYER_COUNT]
Definition options.h:219
bool gui_gtk4_show_chat_message_time
Definition options.h:338
bool gui_gtk3_22_show_chat_message_time
Definition options.h:302
bool gui_gtk3_show_chat_message_time
Definition options.h:266
int gui_gtk2_citydlg_xsize
Definition options.h:241
int gui_gtk3_22_citydlg_ysize
Definition options.h:312
bool gui_gtk2_chatline_autocompletion
Definition options.h:240
bool gui_gtk4_small_display_layout
Definition options.h:344
bool gui_gtk3_metaserver_tab_first
Definition options.h:269
char gui_gtk4_font_notify_label[FONT_NAME_SIZE]
Definition options.h:353
char gui_gtk3_default_theme_name[512]
Definition options.h:260
char gui_gtk3_font_city_names[FONT_NAME_SIZE]
Definition options.h:290
char gui_gtk4_font_city_label[FONT_NAME_SIZE]
Definition options.h:352
char gui_gtk3_22_font_comment_label[FONT_NAME_SIZE]
Definition options.h:325
bool popup_new_cities
Definition options.h:160
bool draw_irrigation
Definition options.h:196
char gui_qt_font_help_text[FONT_NAME_SIZE]
Definition options.h:394
bool gui_gtk4_show_message_window_buttons
Definition options.h:340
char gui_gtk3_font_notify_label[FONT_NAME_SIZE]
Definition options.h:281
int gui_gtk4_message_chat_location
Definition options.h:343
bool gui_gtk3_dialogs_on_top
Definition options.h:263
char gui_gtk3_22_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:318
bool gui_gtk4_dialogs_on_top
Definition options.h:335
char default_tileset_name[512]
Definition options.h:126
char gui_gtk3_22_font_chatline[FONT_NAME_SIZE]
Definition options.h:322
bool draw_terrain
Definition options.h:193
bool draw_units
Definition options.h:203
char gui_sdl2_font_city_productions[64]
Definition options.h:382
bool auto_center_on_automated
Definition options.h:149
char gui_gtk3_font_beta_label[FONT_NAME_SIZE]
Definition options.h:287
char default_tileset_overhead_name[512]
Definition options.h:127
char gui_gtk2_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:256
char gui_gtk2_font_help_text[FONT_NAME_SIZE]
Definition options.h:249
bool gui_gtk2_map_scrollbars
Definition options.h:229
bool auto_center_each_turn
Definition options.h:151
bool gui_sdl2_swrenderer
Definition options.h:378
bool gui_gtk3_allied_chat_only
Definition options.h:270
char gui_gtk3_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:292
char gui_gtk4_font_city_names[FONT_NAME_SIZE]
Definition options.h:362
char gui_gtk3_22_font_city_names[FONT_NAME_SIZE]
Definition options.h:326
int gui_gtk4_popup_tech_help
Definition options.h:349
bool gui_qt_show_preview
Definition options.h:387
bool gui_gtk3_migrated_from_2_5
Definition options.h:134
bool draw_fog_of_war
Definition options.h:205
struct video_mode gui_sdl_screen
Definition options.h:369
bool gui_gtk3_22_allied_chat_only
Definition options.h:306
char default_server_host[512]
Definition options.h:108
char gui_gtk3_22_font_small[FONT_NAME_SIZE]
Definition options.h:324
struct ft_color highlight_our_names
Definition options.h:169
bool gui_gtk3_22_show_message_window_buttons
Definition options.h:304
bool gui_sdl_do_cursor_animation
Definition options.h:370
bool gui_gtk3_mouse_over_map_focus
Definition options.h:273
bool draw_city_trade_routes
Definition options.h:192
char gui_gtk3_22_font_notify_label[FONT_NAME_SIZE]
Definition options.h:317
bool gui_gtk3_22_new_messages_go_to_top
Definition options.h:303
bool gui_gtk3_show_task_icons
Definition options.h:264
char gui_gtk3_22_font_help_link[FONT_NAME_SIZE]
Definition options.h:320
bool gui_gtk4_mouse_over_map_focus
Definition options.h:345
char gui_gtk2_font_notify_label[FONT_NAME_SIZE]
Definition options.h:245
char default_chat_logfile[512]
Definition options.h:119
bool unit_selection_clears_orders
Definition options.h:168
char gui_qt_font_default[FONT_NAME_SIZE]
Definition options.h:391
char gui_qt_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:398
char gui_gtk4_font_city_productions[FONT_NAME_SIZE]
Definition options.h:363
bool heartbeat_enabled
Definition options.h:111
bool voteinfo_bar_new_at_front
Definition options.h:174
bool gui_gtk3_22_chatline_autocompletion
Definition options.h:310
bool draw_unit_shields
Definition options.h:209
bool center_when_popup_city
Definition options.h:154
char gui_sdl2_default_theme_name[512]
Definition options.h:375
bool gui_gtk2_metaserver_tab_first
Definition options.h:237
char default_tileset_square_name[512]
Definition options.h:113
bool wakeup_focus
Definition options.h:152
bool reqtree_curved_lines
Definition options.h:214
bool gui_gtk3_new_messages_go_to_top
Definition options.h:267
bool draw_cities
Definition options.h:202
bool gui_gtk3_22_dialogs_on_top
Definition options.h:299
char gui_qt_font_help_label[FONT_NAME_SIZE]
Definition options.h:393
bool gui_gtk3_enable_tabs
Definition options.h:265
char gui_gtk3_font_help_label[FONT_NAME_SIZE]
Definition options.h:283
char gui_gtk3_font_city_productions[FONT_NAME_SIZE]
Definition options.h:291
bool save_options_on_exit
Definition options.h:121
bool gui_sdl2_fullscreen
Definition options.h:376
bool gui_qt_show_titlebar
Definition options.h:399
int sound_effects_volume
Definition options.h:183
bool gui_gtk3_22_fullscreen
Definition options.h:297
bool gui_gtk3_22_enable_tabs
Definition options.h:301
bool gui_gtk2_show_chat_message_time
Definition options.h:234
char gui_gtk3_font_chatline[FONT_NAME_SIZE]
Definition options.h:286
bool sound_enable_effects
Definition options.h:180
bool draw_map_grid
Definition options.h:187
bool autoaccept_soundset_suggestion
Definition options.h:177
bool ask_city_name
Definition options.h:159
char gui_gtk3_22_font_help_label[FONT_NAME_SIZE]
Definition options.h:319
bool draw_city_growth
Definition options.h:189
bool ai_manual_turn_done
Definition options.h:147
bool gui_gtk3_22_map_scrollbars
Definition options.h:298
char gui_gtk2_font_city_label[FONT_NAME_SIZE]
Definition options.h:244
int smooth_combat_step_msec
Definition options.h:146
bool draw_focus_unit
Definition options.h:204
bool first_boot
Definition options.h:124
char gui_qt_font_chatline[FONT_NAME_SIZE]
Definition options.h:395
bool gui_qt_sidebar_left
Definition options.h:389
float zoom_default_level
Definition options.h:223
bool gui_gtk2_allied_chat_only
Definition options.h:238
char default_tileset_isohex_name[512]
Definition options.h:115
char gui_gtk2_font_comment_label[FONT_NAME_SIZE]
Definition options.h:253
bool concise_city_production
Definition options.h:156
bool gui_qt_migrated_from_2_5
Definition options.h:135
char gui_gtk4_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:354
char gui_gtk4_font_small[FONT_NAME_SIZE]
Definition options.h:360
bool gui_gtk3_map_scrollbars
Definition options.h:262
bool voteinfo_bar_always_show
Definition options.h:172
bool draw_city_outlines
Definition options.h:185
char mapimg_format[64]
Definition options.h:217
bool gui_gtk3_show_message_window_buttons
Definition options.h:268
char mapimg_filename[512]
Definition options.h:220
bool gui_gtk2_dialogs_on_top
Definition options.h:230
int gui_gtk3_popup_tech_help
Definition options.h:277
bool gui_gtk4_chatline_autocompletion
Definition options.h:346
char default_music_set_name[512]
Definition options.h:117
char gui_gtk4_font_comment_label[FONT_NAME_SIZE]
Definition options.h:361
int gui_gtk3_message_chat_location
Definition options.h:271
bool gui_gtk3_22_show_task_icons
Definition options.h:300
bool draw_coastline
Definition options.h:194
char gui_gtk3_22_font_city_productions[FONT_NAME_SIZE]
Definition options.h:327
char gui_gtk3_font_help_link[FONT_NAME_SIZE]
Definition options.h:284
bool gui_gtk3_chatline_autocompletion
Definition options.h:274
bool popup_actor_arrival
Definition options.h:161
bool gui_gtk2_new_messages_go_to_top
Definition options.h:235
bool gui_gtk4_enable_tabs
Definition options.h:337
bool gui_gtk4_map_scrollbars
Definition options.h:334
char gui_gtk3_font_small[FONT_NAME_SIZE]
Definition options.h:288
bool gui_gtk3_fullscreen
Definition options.h:261
bool draw_full_citybar
Definition options.h:208
bool draw_roads_rails
Definition options.h:195
bool sound_enable_game_music
Definition options.h:182
char gui_gtk2_font_city_productions[FONT_NAME_SIZE]
Definition options.h:255
bool gui_gtk4_new_messages_go_to_top
Definition options.h:339
bool auto_center_on_combat
Definition options.h:150
bool meta_accelerators
Definition options.h:158
bool draw_pollution
Definition options.h:201
char gui_gtk2_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:246
bool separate_unit_selection
Definition options.h:167
bool migrate_fullscreen
Definition options.h:138
bool gui_qt_default_fonts_set
Definition options.h:136
char default_sound_plugin_name[512]
Definition options.h:118
char gui_gtk4_default_theme_name[512]
Definition options.h:332
int gui_gtk3_governor_range_min
Definition options.h:278
char gui_gtk2_font_help_link[FONT_NAME_SIZE]
Definition options.h:248
char gui_qt_font_notify_label[FONT_NAME_SIZE]
Definition options.h:392
bool auto_center_on_unit
Definition options.h:148
bool gui_sdl2_use_color_cursors
Definition options.h:380
bool gui_gtk2_show_message_window_buttons
Definition options.h:236
char gui_gtk3_22_default_theme_name[512]
Definition options.h:296
bool gui_gtk2_show_task_icons
Definition options.h:231
char gui_gtk2_font_beta_label[FONT_NAME_SIZE]
Definition options.h:251
char gui_gtk4_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:364
bool popup_attack_actions
Definition options.h:162
int gui_gtk4_citydlg_ysize
Definition options.h:348
int gui_gtk3_22_citydlg_xsize
Definition options.h:311
bool solid_color_behind_units
Definition options.h:142
char gui_gtk3_22_font_city_label[FONT_NAME_SIZE]
Definition options.h:316
bool gui_gtk3_migrated_from_gtk2
Definition options.h:129
bool popup_last_move_to_allied
Definition options.h:163
bool gui_gtk2_mouse_over_map_focus
Definition options.h:239
bool keyboardless_goto
Definition options.h:165
int gui_gtk2_popup_tech_help
Definition options.h:243
char gui_gtk3_font_comment_label[FONT_NAME_SIZE]
Definition options.h:289
char gui_gtk4_font_help_text[FONT_NAME_SIZE]
Definition options.h:357
char default_user_name[512]
Definition options.h:107
char gui_gtk4_font_help_label[FONT_NAME_SIZE]
Definition options.h:355
bool gui_gtk4_migrated_from_gtk3_22
Definition options.h:131
int gui_gtk3_citydlg_ysize
Definition options.h:276
bool gui_gtk2_better_fog
Definition options.h:233
Definition colors.h:20
const struct option_set * poptset
Definition options.c:456
double map_y0
Definition options.h:92
double map_x0
Definition options.h:92
bool fog
Definition options.h:101
bool layers[OLAYER_COUNT]
Definition options.h:102
struct canvas * map
Definition options.h:96
int width
Definition options.h:93
struct canvas * window
Definition options.h:99
int height
Definition options.h:93
int height
Definition options.h:47
int width
Definition options.h:46