Freeciv-3.1: /fast/freeciv/nightly/S3_1/client/options.h Source File

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
45 struct 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****************************************************************************/
56 static 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() */
66 GUI_GTK_MSGCHAT_SPLIT,
67 GUI_GTK_MSGCHAT_SEPARATE,
68 GUI_GTK_MSGCHAT_MERGED
69};
70
71enum {
72 /* Order must match strings in
73 * options.c:gui_popup_tech_help_name() */
74 GUI_POPUP_TECH_HELP_ENABLED,
75 GUI_POPUP_TECH_HELP_DISABLED,
76 GUI_POPUP_TECH_HELP_RULESET
77};
78
79 enum overview_layers {
80 OLAYER_BACKGROUND,
81 OLAYER_RELIEF,
82 OLAYER_BORDERS,
83 OLAYER_BORDERS_ON_OCEAN,
84 OLAYER_UNITS,
85 OLAYER_CITIES,
86 OLAYER_COUNT
87};
88
89/* Holds all information about the overview aka minimap. */
90 struct 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;
102 bool layers[OLAYER_COUNT];
103};
104
105 struct client_options
106{
107 char default_user_name[512];
108 char default_server_host[512];
109 int default_server_port;
110 bool use_prev_server;
111 bool heartbeat_enabled;
112 char default_metaserver[512];
113 char default_tileset_square_name[512];
114 char default_tileset_hex_name[512];
115 char default_tileset_isohex_name[512];
116 char default_sound_set_name[512];
117 char default_music_set_name[512];
118 char default_sound_plugin_name[512];
119 char default_chat_logfile[512];
120
121 bool save_options_on_exit;
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. */
129 bool gui_gtk3_migrated_from_gtk2;
130 bool gui_gtk3_22_migrated_from_gtk3;
131 bool gui_gtk4_migrated_from_gtk3_22;
132 bool gui_sdl2_migrated_from_sdl;
133 bool gui_gtk2_migrated_from_2_5;
134 bool gui_gtk3_migrated_from_2_5;
135 bool gui_qt_migrated_from_2_5;
136 bool gui_qt_default_fonts_set;
137
138 bool migrate_fullscreen;
139
142 bool solid_color_behind_units;
143 bool sound_bell_at_new_turn;
144 int smooth_move_unit_msec;
145 int smooth_center_slide_msec;
146 int smooth_combat_step_msec;
147 bool ai_manual_turn_done;
148 bool auto_center_on_unit;
149 bool auto_center_on_automated;
150 bool auto_center_on_combat;
151 bool auto_center_each_turn;
152 bool wakeup_focus;
153 bool goto_into_unknown;
154 bool center_when_popup_city;
155 bool show_previous_turn_messages;
156 bool concise_city_production;
157 bool auto_turn_done;
158 bool meta_accelerators;
159 bool ask_city_name;
160 bool popup_new_cities;
161 bool popup_actor_arrival;
162 bool popup_attack_actions;
163 bool popup_last_move_to_allied;
164 bool update_city_text_in_refresh_tile;
165 bool keyboardless_goto;
166 bool enable_cursor_changes;
167 bool separate_unit_selection;
168 bool unit_selection_clears_orders;
169 struct ft_color highlight_our_names;
170
171 bool voteinfo_bar_use;
172 bool voteinfo_bar_always_show;
173 bool voteinfo_bar_hide_when_not_player;
174 bool voteinfo_bar_new_at_front;
175
176 bool autoaccept_tileset_suggestion;
177 bool autoaccept_soundset_suggestion;
178 bool autoaccept_musicset_suggestion;
179
180 bool sound_enable_effects;
181 bool sound_enable_menu_music;
182 bool sound_enable_game_music;
183 int sound_effects_volume;
184
185 bool draw_city_outlines;
186 bool draw_city_output;
187 bool draw_map_grid;
188 bool draw_city_names;
189 bool draw_city_growth;
190 bool draw_city_productions;
191 bool draw_city_buycost;
192 bool draw_city_trade_routes;
193 bool draw_terrain;
194 bool draw_coastline;
195 bool draw_roads_rails;
196 bool draw_irrigation;
197 bool draw_mines;
198 bool draw_fortress_airbase;
199 bool draw_specials;
200 bool draw_huts;
201 bool draw_pollution;
202 bool draw_cities;
203 bool draw_units;
204 bool draw_focus_unit;
205 bool draw_fog_of_war;
206 bool draw_borders;
207 bool draw_native;
208 bool draw_full_citybar;
209 bool draw_unit_shields;
210 bool draw_unit_stack_size;
211
212 bool player_dlg_show_dead_players;
213 bool reqtree_show_icons;
214 bool reqtree_curved_lines;
215
216/* options for map images */
217 char mapimg_format[64];
218 int mapimg_zoom;
219 bool mapimg_layer[MAPIMG_LAYER_COUNT];
220 char mapimg_filename[512];
221
222 bool zoom_set;
223 float zoom_default_level;
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"
228 char gui_gtk2_default_theme_name[512];
229 bool gui_gtk2_map_scrollbars;
230 bool gui_gtk2_dialogs_on_top;
231 bool gui_gtk2_show_task_icons;
232 bool gui_gtk2_enable_tabs;
233 bool gui_gtk2_better_fog;
234 bool gui_gtk2_show_chat_message_time;
235 bool gui_gtk2_new_messages_go_to_top;
236 bool gui_gtk2_show_message_window_buttons;
237 bool gui_gtk2_metaserver_tab_first;
238 bool gui_gtk2_allied_chat_only;
239 bool gui_gtk2_mouse_over_map_focus;
240 bool gui_gtk2_chatline_autocompletion;
241 int gui_gtk2_citydlg_xsize;
242 int gui_gtk2_citydlg_ysize;
243 int gui_gtk2_popup_tech_help;
244 char gui_gtk2_font_city_label[FONT_NAME_SIZE];
245 char gui_gtk2_font_notify_label[FONT_NAME_SIZE];
246 char gui_gtk2_font_spaceship_label[FONT_NAME_SIZE];
247 char gui_gtk2_font_help_label[FONT_NAME_SIZE];
248 char gui_gtk2_font_help_link[FONT_NAME_SIZE];
249 char gui_gtk2_font_help_text[FONT_NAME_SIZE];
250 char gui_gtk2_font_chatline[FONT_NAME_SIZE];
251 char gui_gtk2_font_beta_label[FONT_NAME_SIZE];
252 char gui_gtk2_font_small[FONT_NAME_SIZE];
253 char gui_gtk2_font_comment_label[FONT_NAME_SIZE];
254 char gui_gtk2_font_city_names[FONT_NAME_SIZE];
255 char gui_gtk2_font_city_productions[FONT_NAME_SIZE];
256 char gui_gtk2_font_reqtree_text[FONT_NAME_SIZE];
257
258/* gui-gtk-3.0 client specific options. */
259#define FC_GTK3_DEFAULT_THEME_NAME "Freeciv"
260 char gui_gtk3_default_theme_name[512];
261 bool gui_gtk3_fullscreen;
262 bool gui_gtk3_map_scrollbars;
263 bool gui_gtk3_dialogs_on_top;
264 bool gui_gtk3_show_task_icons;
265 bool gui_gtk3_enable_tabs;
266 bool gui_gtk3_show_chat_message_time;
267 bool gui_gtk3_new_messages_go_to_top;
268 bool gui_gtk3_show_message_window_buttons;
269 bool gui_gtk3_metaserver_tab_first;
270 bool gui_gtk3_allied_chat_only;
271 int gui_gtk3_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
272 bool gui_gtk3_small_display_layout;
273 bool gui_gtk3_mouse_over_map_focus;
274 bool gui_gtk3_chatline_autocompletion;
275 int gui_gtk3_citydlg_xsize;
276 int gui_gtk3_citydlg_ysize;
277 int gui_gtk3_popup_tech_help;
278 int gui_gtk3_governor_range_min;
279 int gui_gtk3_governor_range_max;
280 char gui_gtk3_font_city_label[FONT_NAME_SIZE];
281 char gui_gtk3_font_notify_label[FONT_NAME_SIZE];
282 char gui_gtk3_font_spaceship_label[FONT_NAME_SIZE];
283 char gui_gtk3_font_help_label[FONT_NAME_SIZE];
284 char gui_gtk3_font_help_link[FONT_NAME_SIZE];
285 char gui_gtk3_font_help_text[FONT_NAME_SIZE];
286 char gui_gtk3_font_chatline[FONT_NAME_SIZE];
287 char gui_gtk3_font_beta_label[FONT_NAME_SIZE];
288 char gui_gtk3_font_small[FONT_NAME_SIZE];
289 char gui_gtk3_font_comment_label[FONT_NAME_SIZE];
290 char gui_gtk3_font_city_names[FONT_NAME_SIZE];
291 char gui_gtk3_font_city_productions[FONT_NAME_SIZE];
292 char gui_gtk3_font_reqtree_text[FONT_NAME_SIZE];
293
294 /* gui-gtk-3.22 client specific options. */
295#define FC_GTK3_22_DEFAULT_THEME_NAME "Freeciv"
296 char gui_gtk3_22_default_theme_name[512];
297 bool gui_gtk3_22_fullscreen;
298 bool gui_gtk3_22_map_scrollbars;
299 bool gui_gtk3_22_dialogs_on_top;
300 bool gui_gtk3_22_show_task_icons;
301 bool gui_gtk3_22_enable_tabs;
302 bool gui_gtk3_22_show_chat_message_time;
303 bool gui_gtk3_22_new_messages_go_to_top;
304 bool gui_gtk3_22_show_message_window_buttons;
305 bool gui_gtk3_22_metaserver_tab_first;
306 bool gui_gtk3_22_allied_chat_only;
307 int gui_gtk3_22_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
308 bool gui_gtk3_22_small_display_layout;
309 bool gui_gtk3_22_mouse_over_map_focus;
310 bool gui_gtk3_22_chatline_autocompletion;
311 int gui_gtk3_22_citydlg_xsize;
312 int gui_gtk3_22_citydlg_ysize;
313 int gui_gtk3_22_popup_tech_help;
314 int gui_gtk3_22_governor_range_min;
315 int gui_gtk3_22_governor_range_max;
316 char gui_gtk3_22_font_city_label[FONT_NAME_SIZE];
317 char gui_gtk3_22_font_notify_label[FONT_NAME_SIZE];
318 char gui_gtk3_22_font_spaceship_label[FONT_NAME_SIZE];
319 char gui_gtk3_22_font_help_label[FONT_NAME_SIZE];
320 char gui_gtk3_22_font_help_link[FONT_NAME_SIZE];
321 char gui_gtk3_22_font_help_text[FONT_NAME_SIZE];
322 char gui_gtk3_22_font_chatline[FONT_NAME_SIZE];
323 char gui_gtk3_22_font_beta_label[FONT_NAME_SIZE];
324 char gui_gtk3_22_font_small[FONT_NAME_SIZE];
325 char gui_gtk3_22_font_comment_label[FONT_NAME_SIZE];
326 char gui_gtk3_22_font_city_names[FONT_NAME_SIZE];
327 char gui_gtk3_22_font_city_productions[FONT_NAME_SIZE];
328 char gui_gtk3_22_font_reqtree_text[FONT_NAME_SIZE];
329
330/* gui-gtk-4.0 client specific options. */
331#define FC_GTK4_DEFAULT_THEME_NAME "Freeciv"
332 char gui_gtk4_default_theme_name[512];
333 bool gui_gtk4_fullscreen;
334 bool gui_gtk4_map_scrollbars;
335 bool gui_gtk4_dialogs_on_top;
336 bool gui_gtk4_show_task_icons;
337 bool gui_gtk4_enable_tabs;
338 bool gui_gtk4_show_chat_message_time;
339 bool gui_gtk4_new_messages_go_to_top;
340 bool gui_gtk4_show_message_window_buttons;
341 bool gui_gtk4_metaserver_tab_first;
342 bool gui_gtk4_allied_chat_only;
343 int gui_gtk4_message_chat_location; /* enum GUI_GTK_MSGCHAT_* */
344 bool gui_gtk4_small_display_layout;
345 bool gui_gtk4_mouse_over_map_focus;
346 bool gui_gtk4_chatline_autocompletion;
347 int gui_gtk4_citydlg_xsize;
348 int gui_gtk4_citydlg_ysize;
349 int gui_gtk4_popup_tech_help;
350 int gui_gtk4_governor_range_min;
351 int gui_gtk4_governor_range_max;
352 char gui_gtk4_font_city_label[FONT_NAME_SIZE];
353 char gui_gtk4_font_notify_label[FONT_NAME_SIZE];
354 char gui_gtk4_font_spaceship_label[FONT_NAME_SIZE];
355 char gui_gtk4_font_help_label[FONT_NAME_SIZE];
356 char gui_gtk4_font_help_link[FONT_NAME_SIZE];
357 char gui_gtk4_font_help_text[FONT_NAME_SIZE];
358 char gui_gtk4_font_chatline[FONT_NAME_SIZE];
359 char gui_gtk4_font_beta_label[FONT_NAME_SIZE];
360 char gui_gtk4_font_small[FONT_NAME_SIZE];
361 char gui_gtk4_font_comment_label[FONT_NAME_SIZE];
362 char gui_gtk4_font_city_names[FONT_NAME_SIZE];
363 char gui_gtk4_font_city_productions[FONT_NAME_SIZE];
364 char gui_gtk4_font_reqtree_text[FONT_NAME_SIZE];
365
366/* gui-sdl client specific options.
367 * These are still kept just so users can migrate them to sdl2-client */
368 bool gui_sdl_fullscreen;
369 struct video_mode gui_sdl_screen;
370 bool gui_sdl_do_cursor_animation;
371 bool gui_sdl_use_color_cursors;
372
373/* gui-sdl2 client specific options. */
374#define FC_SDL2_DEFAULT_THEME_NAME "human"
375 char gui_sdl2_default_theme_name[512];
376 bool gui_sdl2_fullscreen;
377 struct video_mode gui_sdl2_screen;
378 bool gui_sdl2_swrenderer;
379 bool gui_sdl2_do_cursor_animation;
380 bool gui_sdl2_use_color_cursors;
381 char gui_sdl2_font_city_names[64];
382 char gui_sdl2_font_city_productions[64];
383
384/* gui-qt client specific options. */
385#define FC_QT_DEFAULT_THEME_NAME "NightStalker"
386 bool gui_qt_fullscreen;
387 bool gui_qt_show_preview;
388 bool gui_qt_allied_chat_only;
389 bool gui_qt_sidebar_left;
390 char gui_qt_default_theme_name[512];
391 char gui_qt_font_default[FONT_NAME_SIZE];
392 char gui_qt_font_notify_label[FONT_NAME_SIZE];
393 char gui_qt_font_help_label[FONT_NAME_SIZE];
394 char gui_qt_font_help_text[FONT_NAME_SIZE];
395 char gui_qt_font_chatline[FONT_NAME_SIZE];
396 char gui_qt_font_city_names[FONT_NAME_SIZE];
397 char gui_qt_font_city_productions[FONT_NAME_SIZE];
398 char gui_qt_font_reqtree_text[FONT_NAME_SIZE];
399 bool gui_qt_show_titlebar;
400 char gui_qt_wakeup_text[512];
401
402 struct overview overview;
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
422 typedef 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);
430void options_save(option_save_log_callback log_cb);
431
432
433/* Option sets. */
434extern const struct option_set *client_optset;
435extern const struct option_set *server_optset;
436
437struct option *optset_option_by_number(const struct option_set *poptset,
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
538void desired_settable_options_update(void);
539void desired_settable_option_update(const char *op_name,
540 const char *op_value,
541 bool allow_replace);
542void resend_desired_settable_options(void);
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 */
str
#define str
Definition astring.c:76
height
struct canvas int int struct sprite int int int int height
Definition canvas_g.h:44
width
struct canvas int int struct sprite int int int width
Definition canvas_g.h:44
events.h
fc_types.h
featured_text.h
name
const char * name
Definition inputfile.c:127
log_level
log_level
Definition log.h:28
mapimg.h
option_bitwise_mask
unsigned option_bitwise_mask(const struct option *poption)
Definition options.c:1071
fill_topo_ts_default
void fill_topo_ts_default(void)
Definition options.c:6555
resend_desired_settable_options
void resend_desired_settable_options(void)
Definition options.c:5742
option_str_values
const struct strvec * option_str_values(const struct option *poption)
Definition options.c:890
option_changed
void option_changed(struct option *poption)
Definition options.c:723
option_bitwise_def
unsigned option_bitwise_def(const struct option *poption)
Definition options.c:1060
option_enum_str_to_int
int option_enum_str_to_int(const struct option *poption, const char *str)
Definition options.c:918
option_int_min
int option_int_min(const struct option *poption)
Definition options.c:831
option_bool_def
bool option_bool_def(const struct option *poption)
Definition options.c:783
option_font_def
const char * option_font_def(const struct option *poption)
Definition options.c:1127
tileset_name_for_topology
const char * tileset_name_for_topology(int topology_id)
Definition options.c:6469
optset_option_first
struct option * optset_option_first(const struct option_set *poptset)
Definition options.c:422
option_save_log_callback
void(* option_save_log_callback)(enum log_level lvl, const char *msg,...)
Definition options.h:422
server_optset
const struct option_set * server_optset
Definition options.c:4009
option_reset
bool option_reset(struct option *poption)
Definition options.c:684
options_free
void options_free(void)
Definition options.c:6271
option_description
const char * option_description(const struct option *poption)
Definition options.c:613
option_help_text
const char * option_help_text(const struct option *poption)
Definition options.c:623
option_enum_get_str
const char * option_enum_get_str(const struct option *poption)
Definition options.c:967
option_color_get
struct ft_color option_color_get(const struct option *poption)
Definition options.c:1165
option_enum_get_int
int option_enum_get_int(const struct option *poption)
Definition options.c:955
option_number
int option_number(const struct option *poption)
Definition options.c:593
option_category
int option_category(const struct option *poption)
Definition options.c:643
desired_settable_option_update
void desired_settable_option_update(const char *op_name, const char *op_value, bool allow_replace)
Definition options.c:5599
option_set_default_ts
void option_set_default_ts(struct tileset *t)
Definition options.c:6496
video_mode_construct
static struct video_mode video_mode_construct(int width, int height)
Definition options.h:56
option_str_set
bool option_str_set(struct option *poption, const char *str)
Definition options.c:901
client_optset
const struct option_set * client_optset
Definition options.c:1255
option_name
const char * option_name(const struct option *poption)
Definition options.c:603
GUI_GTK_MSGCHAT_MERGED
@ GUI_GTK_MSGCHAT_MERGED
Definition options.h:68
GUI_GTK_MSGCHAT_SEPARATE
@ GUI_GTK_MSGCHAT_SEPARATE
Definition options.h:67
GUI_GTK_MSGCHAT_SPLIT
@ GUI_GTK_MSGCHAT_SPLIT
Definition options.h:66
option_int_get
int option_int_get(const struct option *poption)
Definition options.c:809
options_init
void options_init(void)
Definition options.c:6173
messages_where
int messages_where[]
Definition options.c:5028
option_enum_set_str
bool option_enum_set_str(struct option *poption, const char *str)
Definition options.c:1032
option_color_set
bool option_color_set(struct option *poption, struct ft_color color)
Definition options.c:1188
option_set_changed_callback
void option_set_changed_callback(struct option *poption, void(*callback)(struct option *))
Definition options.c:712
option_bool_set
bool option_bool_set(struct option *poption, bool val)
Definition options.c:794
option_is_changeable
bool option_is_changeable(const struct option *poption)
Definition options.c:664
option_video_mode_set
bool option_video_mode_set(struct option *poption, struct video_mode mode)
Definition options.c:1228
option_set_gui_data
void option_set_gui_data(struct option *poption, void *data)
Definition options.c:742
option_str_get
const char * option_str_get(const struct option *poption)
Definition options.c:868
GUI_POPUP_TECH_HELP_DISABLED
@ GUI_POPUP_TECH_HELP_DISABLED
Definition options.h:75
GUI_POPUP_TECH_HELP_RULESET
@ GUI_POPUP_TECH_HELP_RULESET
Definition options.h:76
GUI_POPUP_TECH_HELP_ENABLED
@ GUI_POPUP_TECH_HELP_ENABLED
Definition options.h:74
optset_option_by_number
struct option * optset_option_by_number(const struct option_set *poptset, int id)
Definition options.c:395
option_get_gui_data
void * option_get_gui_data(const struct option *poption)
Definition options.c:752
option_enum_values
const struct strvec * option_enum_values(const struct option *poption)
Definition options.c:1004
option_enum_set_int
bool option_enum_set_int(struct option *poption, int val)
Definition options.c:1015
option_bool_get
bool option_bool_get(const struct option *poption)
Definition options.c:772
optset_category_number
int optset_category_number(const struct option_set *poptset)
Definition options.c:432
server_options_init
void server_options_init(void)
Definition options.c:4153
option_type
enum option_type option_type(const struct option *poption)
Definition options.c:633
option_enum_int_to_str
const char * option_enum_int_to_str(const struct option *poption, int val)
Definition options.c:940
options_dialogs_update
void options_dialogs_update(void)
Definition options.c:5836
option_get_cb_data
int option_get_cb_data(const struct option *poption)
Definition options.c:762
video_mode_to_string
bool video_mode_to_string(char *buf, size_t buf_len, struct video_mode *mode)
Definition options.c:6445
option_optset
const struct option_set * option_optset(const struct option *poption)
Definition options.c:583
server_options_free
void server_options_free(void)
Definition options.c:4222
option_video_mode_get
struct video_mode option_video_mode_get(const struct option *poption)
Definition options.c:1203
option_next
struct option * option_next(const struct option *poption)
Definition options.c:674
option_str_def
const char * option_str_def(const struct option *poption)
Definition options.c:879
optset_category_name
const char * optset_category_name(const struct option_set *poptset, int category)
Definition options.c:442
option_int_max
int option_int_max(const struct option *poption)
Definition options.c:842
option_enum_def_str
const char * option_enum_def_str(const struct option *poption)
Definition options.c:991
options_load
void options_load(void)
Definition options.c:5897
option_font_set
bool option_font_set(struct option *poption, const char *font)
Definition options.c:1149
option_font_target
const char * option_font_target(const struct option *poption)
Definition options.c:1138
FONT_NAME_SIZE
#define FONT_NAME_SIZE
Definition options.h:31
options_save
void options_save(option_save_log_callback log_cb)
Definition options.c:6053
string_to_video_mode
bool string_to_video_mode(const char *buf, struct video_mode *mode)
Definition options.c:6453
option_bitwise_values
const struct strvec * option_bitwise_values(const struct option *poption)
Definition options.c:1088
gui_options
struct client_options gui_options
Definition options.c:71
option_bitwise_set
bool option_bitwise_set(struct option *poption, unsigned val)
Definition options.c:1099
option_font_get
const char * option_font_get(const struct option *poption)
Definition options.c:1116
desired_settable_options_update
void desired_settable_options_update(void)
Definition options.c:5531
VIDEO_MODE
#define VIDEO_MODE(ARG_width, ARG_height)
Definition options.h:50
option_color_def
struct ft_color option_color_def(const struct option *poption)
Definition options.c:1176
overview_layers
overview_layers
Definition options.h:79
OLAYER_COUNT
@ OLAYER_COUNT
Definition options.h:86
OLAYER_BORDERS
@ OLAYER_BORDERS
Definition options.h:82
OLAYER_BACKGROUND
@ OLAYER_BACKGROUND
Definition options.h:80
OLAYER_CITIES
@ OLAYER_CITIES
Definition options.h:85
OLAYER_BORDERS_ON_OCEAN
@ OLAYER_BORDERS_ON_OCEAN
Definition options.h:83
OLAYER_UNITS
@ OLAYER_UNITS
Definition options.h:84
OLAYER_RELIEF
@ OLAYER_RELIEF
Definition options.h:81
option_bitwise_get
unsigned option_bitwise_get(const struct option *poption)
Definition options.c:1049
option_enum_def_int
int option_enum_def_int(const struct option *poption)
Definition options.c:979
optset_option_by_name
struct option * optset_option_by_name(const struct option_set *poptset, const char *name)
Definition options.c:406
options_dialogs_set
void options_dialogs_set(void)
Definition options.c:5864
option_int_set
bool option_int_set(struct option *poption, int val)
Definition options.c:853
option_category_name
const char * option_category_name(const struct option *poption)
Definition options.c:653
option_int_def
int option_int_def(const struct option *poption)
Definition options.c:820
option_video_mode_def
struct video_mode option_video_mode_def(const struct option *poption)
Definition options.c:1215
specenum_gen.h
callback
Definition gui_main.c:2186
canvas
Definition canvas.h:21
client_options
Definition options.h:106
client_options::gui_gtk4_governor_range_max
int gui_gtk4_governor_range_max
Definition options.h:351
client_options::voteinfo_bar_use
bool voteinfo_bar_use
Definition options.h:171
client_options::gui_gtk2_default_theme_name
char gui_gtk2_default_theme_name[512]
Definition options.h:228
client_options::gui_sdl2_do_cursor_animation
bool gui_sdl2_do_cursor_animation
Definition options.h:379
client_options::gui_gtk4_metaserver_tab_first
bool gui_gtk4_metaserver_tab_first
Definition options.h:341
client_options::gui_gtk4_show_task_icons
bool gui_gtk4_show_task_icons
Definition options.h:336
client_options::update_city_text_in_refresh_tile
bool update_city_text_in_refresh_tile
Definition options.h:164
client_options::gui_gtk4_citydlg_xsize
int gui_gtk4_citydlg_xsize
Definition options.h:347
client_options::gui_qt_fullscreen
bool gui_qt_fullscreen
Definition options.h:386
client_options::gui_gtk4_font_help_link
char gui_gtk4_font_help_link[FONT_NAME_SIZE]
Definition options.h:356
client_options::show_previous_turn_messages
bool show_previous_turn_messages
Definition options.h:155
client_options::gui_gtk3_22_migrated_from_gtk3
bool gui_gtk3_22_migrated_from_gtk3
Definition options.h:130
client_options::gui_gtk3_font_help_text
char gui_gtk3_font_help_text[FONT_NAME_SIZE]
Definition options.h:285
client_options::draw_native
bool draw_native
Definition options.h:207
client_options::gui_gtk2_migrated_from_2_5
bool gui_gtk2_migrated_from_2_5
Definition options.h:133
client_options::gui_qt_default_theme_name
char gui_qt_default_theme_name[512]
Definition options.h:390
client_options::sound_bell_at_new_turn
bool sound_bell_at_new_turn
Definition options.h:143
client_options::gui_gtk2_font_small
char gui_gtk2_font_small[FONT_NAME_SIZE]
Definition options.h:252
client_options::gui_gtk3_22_governor_range_max
int gui_gtk3_22_governor_range_max
Definition options.h:315
client_options::gui_gtk3_22_mouse_over_map_focus
bool gui_gtk3_22_mouse_over_map_focus
Definition options.h:309
client_options::autoaccept_tileset_suggestion
bool autoaccept_tileset_suggestion
Definition options.h:176
client_options::autoaccept_musicset_suggestion
bool autoaccept_musicset_suggestion
Definition options.h:178
client_options::reqtree_show_icons
bool reqtree_show_icons
Definition options.h:213
client_options::enable_cursor_changes
bool enable_cursor_changes
Definition options.h:166
client_options::gui_gtk2_font_chatline
char gui_gtk2_font_chatline[FONT_NAME_SIZE]
Definition options.h:250
client_options::auto_turn_done
bool auto_turn_done
Definition options.h:157
client_options::gui_sdl2_migrated_from_sdl
bool gui_sdl2_migrated_from_sdl
Definition options.h:132
client_options::gui_qt_allied_chat_only
bool gui_qt_allied_chat_only
Definition options.h:388
client_options::gui_gtk4_fullscreen
bool gui_gtk4_fullscreen
Definition options.h:333
client_options::gui_qt_font_city_names
char gui_qt_font_city_names[FONT_NAME_SIZE]
Definition options.h:396
client_options::gui_gtk3_22_font_help_text
char gui_gtk3_22_font_help_text[FONT_NAME_SIZE]
Definition options.h:321
client_options::gui_gtk2_enable_tabs
bool gui_gtk2_enable_tabs
Definition options.h:232
client_options::gui_gtk3_22_metaserver_tab_first
bool gui_gtk3_22_metaserver_tab_first
Definition options.h:305
client_options::gui_gtk3_22_governor_range_min
int gui_gtk3_22_governor_range_min
Definition options.h:314
client_options::gui_gtk2_citydlg_ysize
int gui_gtk2_citydlg_ysize
Definition options.h:242
client_options::gui_gtk4_governor_range_min
int gui_gtk4_governor_range_min
Definition options.h:350
client_options::gui_gtk4_font_chatline
char gui_gtk4_font_chatline[FONT_NAME_SIZE]
Definition options.h:358
client_options::gui_qt_font_city_productions
char gui_qt_font_city_productions[FONT_NAME_SIZE]
Definition options.h:397
client_options::draw_specials
bool draw_specials
Definition options.h:199
client_options::smooth_center_slide_msec
int smooth_center_slide_msec
Definition options.h:145
client_options::gui_gtk3_22_message_chat_location
int gui_gtk3_22_message_chat_location
Definition options.h:307
client_options::draw_city_output
bool draw_city_output
Definition options.h:186
client_options::gui_gtk3_citydlg_xsize
int gui_gtk3_citydlg_xsize
Definition options.h:275
client_options::sound_enable_menu_music
bool sound_enable_menu_music
Definition options.h:181
client_options::player_dlg_show_dead_players
bool player_dlg_show_dead_players
Definition options.h:212
client_options::gui_sdl2_font_city_names
char gui_sdl2_font_city_names[64]
Definition options.h:381
client_options::default_tileset_hex_name
char default_tileset_hex_name[512]
Definition options.h:114
client_options::draw_city_names
bool draw_city_names
Definition options.h:188
client_options::draw_city_productions
bool draw_city_productions
Definition options.h:190
client_options::default_server_port
int default_server_port
Definition options.h:109
client_options::gui_gtk3_font_spaceship_label
char gui_gtk3_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:282
client_options::default_sound_set_name
char default_sound_set_name[512]
Definition options.h:116
client_options::voteinfo_bar_hide_when_not_player
bool voteinfo_bar_hide_when_not_player
Definition options.h:173
client_options::use_prev_server
bool use_prev_server
Definition options.h:110
client_options::gui_gtk3_22_font_reqtree_text
char gui_gtk3_22_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:328
client_options::gui_gtk3_font_city_label
char gui_gtk3_font_city_label[FONT_NAME_SIZE]
Definition options.h:280
client_options::gui_sdl_fullscreen
bool gui_sdl_fullscreen
Definition options.h:368
client_options::smooth_move_unit_msec
int smooth_move_unit_msec
Definition options.h:144
client_options::gui_gtk3_small_display_layout
bool gui_gtk3_small_display_layout
Definition options.h:272
client_options::gui_qt_wakeup_text
char gui_qt_wakeup_text[512]
Definition options.h:400
client_options::gui_gtk3_22_small_display_layout
bool gui_gtk3_22_small_display_layout
Definition options.h:308
client_options::goto_into_unknown
bool goto_into_unknown
Definition options.h:153
client_options::draw_mines
bool draw_mines
Definition options.h:197
client_options::gui_gtk3_governor_range_max
int gui_gtk3_governor_range_max
Definition options.h:279
client_options::gui_gtk2_font_city_names
char gui_gtk2_font_city_names[FONT_NAME_SIZE]
Definition options.h:254
client_options::gui_gtk4_allied_chat_only
bool gui_gtk4_allied_chat_only
Definition options.h:342
client_options::gui_gtk4_font_beta_label
char gui_gtk4_font_beta_label[FONT_NAME_SIZE]
Definition options.h:359
client_options::gui_gtk3_22_font_beta_label
char gui_gtk3_22_font_beta_label[FONT_NAME_SIZE]
Definition options.h:323
client_options::default_tileset_iso_name
char default_tileset_iso_name[512]
Definition options.h:128
client_options::default_metaserver
char default_metaserver[512]
Definition options.h:112
client_options::gui_sdl2_screen
struct video_mode gui_sdl2_screen
Definition options.h:377
client_options::gui_gtk3_22_popup_tech_help
int gui_gtk3_22_popup_tech_help
Definition options.h:313
client_options::draw_borders
bool draw_borders
Definition options.h:206
client_options::draw_fortress_airbase
bool draw_fortress_airbase
Definition options.h:198
client_options::gui_gtk2_font_help_label
char gui_gtk2_font_help_label[FONT_NAME_SIZE]
Definition options.h:247
client_options::draw_city_buycost
bool draw_city_buycost
Definition options.h:191
client_options::draw_unit_stack_size
bool draw_unit_stack_size
Definition options.h:210
client_options::gui_sdl_use_color_cursors
bool gui_sdl_use_color_cursors
Definition options.h:371
client_options::mapimg_layer
bool mapimg_layer[MAPIMG_LAYER_COUNT]
Definition options.h:219
client_options::gui_gtk4_show_chat_message_time
bool gui_gtk4_show_chat_message_time
Definition options.h:338
client_options::gui_gtk3_22_show_chat_message_time
bool gui_gtk3_22_show_chat_message_time
Definition options.h:302
client_options::gui_gtk3_show_chat_message_time
bool gui_gtk3_show_chat_message_time
Definition options.h:266
client_options::gui_gtk2_citydlg_xsize
int gui_gtk2_citydlg_xsize
Definition options.h:241
client_options::gui_gtk3_22_citydlg_ysize
int gui_gtk3_22_citydlg_ysize
Definition options.h:312
client_options::gui_gtk2_chatline_autocompletion
bool gui_gtk2_chatline_autocompletion
Definition options.h:240
client_options::gui_gtk4_small_display_layout
bool gui_gtk4_small_display_layout
Definition options.h:344
client_options::gui_gtk3_metaserver_tab_first
bool gui_gtk3_metaserver_tab_first
Definition options.h:269
client_options::gui_gtk4_font_notify_label
char gui_gtk4_font_notify_label[FONT_NAME_SIZE]
Definition options.h:353
client_options::gui_gtk3_default_theme_name
char gui_gtk3_default_theme_name[512]
Definition options.h:260
client_options::gui_gtk3_font_city_names
char gui_gtk3_font_city_names[FONT_NAME_SIZE]
Definition options.h:290
client_options::gui_gtk4_font_city_label
char gui_gtk4_font_city_label[FONT_NAME_SIZE]
Definition options.h:352
client_options::gui_gtk3_22_font_comment_label
char gui_gtk3_22_font_comment_label[FONT_NAME_SIZE]
Definition options.h:325
client_options::popup_new_cities
bool popup_new_cities
Definition options.h:160
client_options::draw_irrigation
bool draw_irrigation
Definition options.h:196
client_options::gui_qt_font_help_text
char gui_qt_font_help_text[FONT_NAME_SIZE]
Definition options.h:394
client_options::gui_gtk4_show_message_window_buttons
bool gui_gtk4_show_message_window_buttons
Definition options.h:340
client_options::gui_gtk3_font_notify_label
char gui_gtk3_font_notify_label[FONT_NAME_SIZE]
Definition options.h:281
client_options::gui_gtk4_message_chat_location
int gui_gtk4_message_chat_location
Definition options.h:343
client_options::gui_gtk3_dialogs_on_top
bool gui_gtk3_dialogs_on_top
Definition options.h:263
client_options::gui_gtk3_22_font_spaceship_label
char gui_gtk3_22_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:318
client_options::gui_gtk4_dialogs_on_top
bool gui_gtk4_dialogs_on_top
Definition options.h:335
client_options::default_tileset_name
char default_tileset_name[512]
Definition options.h:126
client_options::gui_gtk3_22_font_chatline
char gui_gtk3_22_font_chatline[FONT_NAME_SIZE]
Definition options.h:322
client_options::draw_terrain
bool draw_terrain
Definition options.h:193
client_options::draw_units
bool draw_units
Definition options.h:203
client_options::gui_sdl2_font_city_productions
char gui_sdl2_font_city_productions[64]
Definition options.h:382
client_options::auto_center_on_automated
bool auto_center_on_automated
Definition options.h:149
client_options::gui_gtk3_font_beta_label
char gui_gtk3_font_beta_label[FONT_NAME_SIZE]
Definition options.h:287
client_options::default_tileset_overhead_name
char default_tileset_overhead_name[512]
Definition options.h:127
client_options::gui_gtk2_font_reqtree_text
char gui_gtk2_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:256
client_options::gui_gtk2_font_help_text
char gui_gtk2_font_help_text[FONT_NAME_SIZE]
Definition options.h:249
client_options::gui_gtk2_map_scrollbars
bool gui_gtk2_map_scrollbars
Definition options.h:229
client_options::auto_center_each_turn
bool auto_center_each_turn
Definition options.h:151
client_options::gui_sdl2_swrenderer
bool gui_sdl2_swrenderer
Definition options.h:378
client_options::gui_gtk3_allied_chat_only
bool gui_gtk3_allied_chat_only
Definition options.h:270
client_options::gui_gtk3_font_reqtree_text
char gui_gtk3_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:292
client_options::gui_gtk4_font_city_names
char gui_gtk4_font_city_names[FONT_NAME_SIZE]
Definition options.h:362
client_options::gui_gtk3_22_font_city_names
char gui_gtk3_22_font_city_names[FONT_NAME_SIZE]
Definition options.h:326
client_options::gui_gtk4_popup_tech_help
int gui_gtk4_popup_tech_help
Definition options.h:349
client_options::gui_qt_show_preview
bool gui_qt_show_preview
Definition options.h:387
client_options::gui_gtk3_migrated_from_2_5
bool gui_gtk3_migrated_from_2_5
Definition options.h:134
client_options::draw_fog_of_war
bool draw_fog_of_war
Definition options.h:205
client_options::gui_sdl_screen
struct video_mode gui_sdl_screen
Definition options.h:369
client_options::gui_gtk3_22_allied_chat_only
bool gui_gtk3_22_allied_chat_only
Definition options.h:306
client_options::default_server_host
char default_server_host[512]
Definition options.h:108
client_options::gui_gtk3_22_font_small
char gui_gtk3_22_font_small[FONT_NAME_SIZE]
Definition options.h:324
client_options::highlight_our_names
struct ft_color highlight_our_names
Definition options.h:169
client_options::gui_gtk3_22_show_message_window_buttons
bool gui_gtk3_22_show_message_window_buttons
Definition options.h:304
client_options::gui_sdl_do_cursor_animation
bool gui_sdl_do_cursor_animation
Definition options.h:370
client_options::gui_gtk3_mouse_over_map_focus
bool gui_gtk3_mouse_over_map_focus
Definition options.h:273
client_options::draw_city_trade_routes
bool draw_city_trade_routes
Definition options.h:192
client_options::gui_gtk3_22_font_notify_label
char gui_gtk3_22_font_notify_label[FONT_NAME_SIZE]
Definition options.h:317
client_options::gui_gtk3_22_new_messages_go_to_top
bool gui_gtk3_22_new_messages_go_to_top
Definition options.h:303
client_options::gui_gtk3_show_task_icons
bool gui_gtk3_show_task_icons
Definition options.h:264
client_options::gui_gtk3_22_font_help_link
char gui_gtk3_22_font_help_link[FONT_NAME_SIZE]
Definition options.h:320
client_options::gui_gtk4_mouse_over_map_focus
bool gui_gtk4_mouse_over_map_focus
Definition options.h:345
client_options::gui_gtk2_font_notify_label
char gui_gtk2_font_notify_label[FONT_NAME_SIZE]
Definition options.h:245
client_options::default_chat_logfile
char default_chat_logfile[512]
Definition options.h:119
client_options::unit_selection_clears_orders
bool unit_selection_clears_orders
Definition options.h:168
client_options::gui_qt_font_default
char gui_qt_font_default[FONT_NAME_SIZE]
Definition options.h:391
client_options::gui_qt_font_reqtree_text
char gui_qt_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:398
client_options::zoom_set
bool zoom_set
Definition options.h:222
client_options::gui_gtk4_font_city_productions
char gui_gtk4_font_city_productions[FONT_NAME_SIZE]
Definition options.h:363
client_options::heartbeat_enabled
bool heartbeat_enabled
Definition options.h:111
client_options::voteinfo_bar_new_at_front
bool voteinfo_bar_new_at_front
Definition options.h:174
client_options::gui_gtk3_22_chatline_autocompletion
bool gui_gtk3_22_chatline_autocompletion
Definition options.h:310
client_options::draw_unit_shields
bool draw_unit_shields
Definition options.h:209
client_options::center_when_popup_city
bool center_when_popup_city
Definition options.h:154
client_options::gui_sdl2_default_theme_name
char gui_sdl2_default_theme_name[512]
Definition options.h:375
client_options::gui_gtk2_metaserver_tab_first
bool gui_gtk2_metaserver_tab_first
Definition options.h:237
client_options::default_tileset_square_name
char default_tileset_square_name[512]
Definition options.h:113
client_options::wakeup_focus
bool wakeup_focus
Definition options.h:152
client_options::reqtree_curved_lines
bool reqtree_curved_lines
Definition options.h:214
client_options::gui_gtk3_new_messages_go_to_top
bool gui_gtk3_new_messages_go_to_top
Definition options.h:267
client_options::draw_cities
bool draw_cities
Definition options.h:202
client_options::gui_gtk3_22_dialogs_on_top
bool gui_gtk3_22_dialogs_on_top
Definition options.h:299
client_options::gui_qt_font_help_label
char gui_qt_font_help_label[FONT_NAME_SIZE]
Definition options.h:393
client_options::gui_gtk3_enable_tabs
bool gui_gtk3_enable_tabs
Definition options.h:265
client_options::gui_gtk3_font_help_label
char gui_gtk3_font_help_label[FONT_NAME_SIZE]
Definition options.h:283
client_options::gui_gtk3_font_city_productions
char gui_gtk3_font_city_productions[FONT_NAME_SIZE]
Definition options.h:291
client_options::save_options_on_exit
bool save_options_on_exit
Definition options.h:121
client_options::gui_sdl2_fullscreen
bool gui_sdl2_fullscreen
Definition options.h:376
client_options::gui_qt_show_titlebar
bool gui_qt_show_titlebar
Definition options.h:399
client_options::sound_effects_volume
int sound_effects_volume
Definition options.h:183
client_options::gui_gtk3_22_fullscreen
bool gui_gtk3_22_fullscreen
Definition options.h:297
client_options::gui_gtk3_22_enable_tabs
bool gui_gtk3_22_enable_tabs
Definition options.h:301
client_options::gui_gtk2_show_chat_message_time
bool gui_gtk2_show_chat_message_time
Definition options.h:234
client_options::gui_gtk3_font_chatline
char gui_gtk3_font_chatline[FONT_NAME_SIZE]
Definition options.h:286
client_options::sound_enable_effects
bool sound_enable_effects
Definition options.h:180
client_options::draw_map_grid
bool draw_map_grid
Definition options.h:187
client_options::autoaccept_soundset_suggestion
bool autoaccept_soundset_suggestion
Definition options.h:177
client_options::ask_city_name
bool ask_city_name
Definition options.h:159
client_options::gui_gtk3_22_font_help_label
char gui_gtk3_22_font_help_label[FONT_NAME_SIZE]
Definition options.h:319
client_options::draw_city_growth
bool draw_city_growth
Definition options.h:189
client_options::mapimg_zoom
int mapimg_zoom
Definition options.h:218
client_options::ai_manual_turn_done
bool ai_manual_turn_done
Definition options.h:147
client_options::gui_gtk3_22_map_scrollbars
bool gui_gtk3_22_map_scrollbars
Definition options.h:298
client_options::gui_gtk2_font_city_label
char gui_gtk2_font_city_label[FONT_NAME_SIZE]
Definition options.h:244
client_options::smooth_combat_step_msec
int smooth_combat_step_msec
Definition options.h:146
client_options::draw_huts
bool draw_huts
Definition options.h:200
client_options::draw_focus_unit
bool draw_focus_unit
Definition options.h:204
client_options::first_boot
bool first_boot
Definition options.h:124
client_options::gui_qt_font_chatline
char gui_qt_font_chatline[FONT_NAME_SIZE]
Definition options.h:395
client_options::gui_qt_sidebar_left
bool gui_qt_sidebar_left
Definition options.h:389
client_options::zoom_default_level
float zoom_default_level
Definition options.h:223
client_options::gui_gtk2_allied_chat_only
bool gui_gtk2_allied_chat_only
Definition options.h:238
client_options::default_tileset_isohex_name
char default_tileset_isohex_name[512]
Definition options.h:115
client_options::gui_gtk2_font_comment_label
char gui_gtk2_font_comment_label[FONT_NAME_SIZE]
Definition options.h:253
client_options::concise_city_production
bool concise_city_production
Definition options.h:156
client_options::gui_qt_migrated_from_2_5
bool gui_qt_migrated_from_2_5
Definition options.h:135
client_options::gui_gtk4_font_spaceship_label
char gui_gtk4_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:354
client_options::gui_gtk4_font_small
char gui_gtk4_font_small[FONT_NAME_SIZE]
Definition options.h:360
client_options::gui_gtk3_map_scrollbars
bool gui_gtk3_map_scrollbars
Definition options.h:262
client_options::voteinfo_bar_always_show
bool voteinfo_bar_always_show
Definition options.h:172
client_options::draw_city_outlines
bool draw_city_outlines
Definition options.h:185
client_options::mapimg_format
char mapimg_format[64]
Definition options.h:217
client_options::gui_gtk3_show_message_window_buttons
bool gui_gtk3_show_message_window_buttons
Definition options.h:268
client_options::mapimg_filename
char mapimg_filename[512]
Definition options.h:220
client_options::gui_gtk2_dialogs_on_top
bool gui_gtk2_dialogs_on_top
Definition options.h:230
client_options::gui_gtk3_popup_tech_help
int gui_gtk3_popup_tech_help
Definition options.h:277
client_options::gui_gtk4_chatline_autocompletion
bool gui_gtk4_chatline_autocompletion
Definition options.h:346
client_options::default_music_set_name
char default_music_set_name[512]
Definition options.h:117
client_options::gui_gtk4_font_comment_label
char gui_gtk4_font_comment_label[FONT_NAME_SIZE]
Definition options.h:361
client_options::gui_gtk3_message_chat_location
int gui_gtk3_message_chat_location
Definition options.h:271
client_options::gui_gtk3_22_show_task_icons
bool gui_gtk3_22_show_task_icons
Definition options.h:300
client_options::draw_coastline
bool draw_coastline
Definition options.h:194
client_options::gui_gtk3_22_font_city_productions
char gui_gtk3_22_font_city_productions[FONT_NAME_SIZE]
Definition options.h:327
client_options::gui_gtk3_font_help_link
char gui_gtk3_font_help_link[FONT_NAME_SIZE]
Definition options.h:284
client_options::gui_gtk3_chatline_autocompletion
bool gui_gtk3_chatline_autocompletion
Definition options.h:274
client_options::popup_actor_arrival
bool popup_actor_arrival
Definition options.h:161
client_options::gui_gtk2_new_messages_go_to_top
bool gui_gtk2_new_messages_go_to_top
Definition options.h:235
client_options::gui_gtk4_enable_tabs
bool gui_gtk4_enable_tabs
Definition options.h:337
client_options::gui_gtk4_map_scrollbars
bool gui_gtk4_map_scrollbars
Definition options.h:334
client_options::gui_gtk3_font_small
char gui_gtk3_font_small[FONT_NAME_SIZE]
Definition options.h:288
client_options::gui_gtk3_fullscreen
bool gui_gtk3_fullscreen
Definition options.h:261
client_options::draw_full_citybar
bool draw_full_citybar
Definition options.h:208
client_options::draw_roads_rails
bool draw_roads_rails
Definition options.h:195
client_options::sound_enable_game_music
bool sound_enable_game_music
Definition options.h:182
client_options::gui_gtk2_font_city_productions
char gui_gtk2_font_city_productions[FONT_NAME_SIZE]
Definition options.h:255
client_options::gui_gtk4_new_messages_go_to_top
bool gui_gtk4_new_messages_go_to_top
Definition options.h:339
client_options::auto_center_on_combat
bool auto_center_on_combat
Definition options.h:150
client_options::meta_accelerators
bool meta_accelerators
Definition options.h:158
client_options::draw_pollution
bool draw_pollution
Definition options.h:201
client_options::gui_gtk2_font_spaceship_label
char gui_gtk2_font_spaceship_label[FONT_NAME_SIZE]
Definition options.h:246
client_options::separate_unit_selection
bool separate_unit_selection
Definition options.h:167
client_options::migrate_fullscreen
bool migrate_fullscreen
Definition options.h:138
client_options::gui_qt_default_fonts_set
bool gui_qt_default_fonts_set
Definition options.h:136
client_options::default_sound_plugin_name
char default_sound_plugin_name[512]
Definition options.h:118
client_options::gui_gtk4_default_theme_name
char gui_gtk4_default_theme_name[512]
Definition options.h:332
client_options::gui_gtk3_governor_range_min
int gui_gtk3_governor_range_min
Definition options.h:278
client_options::gui_gtk2_font_help_link
char gui_gtk2_font_help_link[FONT_NAME_SIZE]
Definition options.h:248
client_options::gui_qt_font_notify_label
char gui_qt_font_notify_label[FONT_NAME_SIZE]
Definition options.h:392
client_options::auto_center_on_unit
bool auto_center_on_unit
Definition options.h:148
client_options::gui_sdl2_use_color_cursors
bool gui_sdl2_use_color_cursors
Definition options.h:380
client_options::gui_gtk2_show_message_window_buttons
bool gui_gtk2_show_message_window_buttons
Definition options.h:236
client_options::gui_gtk3_22_default_theme_name
char gui_gtk3_22_default_theme_name[512]
Definition options.h:296
client_options::gui_gtk2_show_task_icons
bool gui_gtk2_show_task_icons
Definition options.h:231
client_options::gui_gtk2_font_beta_label
char gui_gtk2_font_beta_label[FONT_NAME_SIZE]
Definition options.h:251
client_options::gui_gtk4_font_reqtree_text
char gui_gtk4_font_reqtree_text[FONT_NAME_SIZE]
Definition options.h:364
client_options::popup_attack_actions
bool popup_attack_actions
Definition options.h:162
client_options::gui_gtk4_citydlg_ysize
int gui_gtk4_citydlg_ysize
Definition options.h:348
client_options::gui_gtk3_22_citydlg_xsize
int gui_gtk3_22_citydlg_xsize
Definition options.h:311
client_options::solid_color_behind_units
bool solid_color_behind_units
Definition options.h:142
client_options::gui_gtk3_22_font_city_label
char gui_gtk3_22_font_city_label[FONT_NAME_SIZE]
Definition options.h:316
client_options::gui_gtk3_migrated_from_gtk2
bool gui_gtk3_migrated_from_gtk2
Definition options.h:129
client_options::popup_last_move_to_allied
bool popup_last_move_to_allied
Definition options.h:163
client_options::gui_gtk2_mouse_over_map_focus
bool gui_gtk2_mouse_over_map_focus
Definition options.h:239
client_options::keyboardless_goto
bool keyboardless_goto
Definition options.h:165
client_options::gui_gtk2_popup_tech_help
int gui_gtk2_popup_tech_help
Definition options.h:243
client_options::gui_gtk3_font_comment_label
char gui_gtk3_font_comment_label[FONT_NAME_SIZE]
Definition options.h:289
client_options::gui_gtk4_font_help_text
char gui_gtk4_font_help_text[FONT_NAME_SIZE]
Definition options.h:357
client_options::default_user_name
char default_user_name[512]
Definition options.h:107
client_options::gui_gtk4_font_help_label
char gui_gtk4_font_help_label[FONT_NAME_SIZE]
Definition options.h:355
client_options::gui_gtk4_migrated_from_gtk3_22
bool gui_gtk4_migrated_from_gtk3_22
Definition options.h:131
client_options::gui_gtk3_citydlg_ysize
int gui_gtk3_citydlg_ysize
Definition options.h:276
client_options::gui_gtk2_better_fog
bool gui_gtk2_better_fog
Definition options.h:233
color
Definition colors.h:20
ft_color
Definition featured_text.h:141
option_set
Definition options.c:384
option
Definition options.c:454
option::poptset
const struct option_set * poptset
Definition options.c:456
overview
Definition options.h:90
overview::map_y0
double map_y0
Definition options.h:92
overview::map_x0
double map_x0
Definition options.h:92
overview::fog
bool fog
Definition options.h:101
overview::layers
bool layers[OLAYER_COUNT]
Definition options.h:102
overview::map
struct canvas * map
Definition options.h:96
overview::width
int width
Definition options.h:93
overview::window
struct canvas * window
Definition options.h:99
overview::height
int height
Definition options.h:93
strvec
Definition string_vector.c:29
tileset
Definition tilespec.c:459
video_mode
Definition options.h:45
video_mode::height
int height
Definition options.h:47
video_mode::width
int width
Definition options.h:46
support.h