1 #pragma once 2 #include "compiler.h" 3 4 extern const char PARSE_YES[]; 5 extern const char PARSE_NO[]; 6 extern const char PARSE_CLOBBER[]; 7 8 struct cfginfo 9 { 10 const char *all_locale_fonts; 11 const char *alt_print_command_default; 12 const char *altprintcommand; 13 const char *autosave_on_quit; 14 const char *colorfile; 15 const char *datadir; 16 const char *disable_label; 17 const char *disable_magic_controls; 18 const char *disable_shape_controls; 19 const char *disable_print; 20 const char *disable_quit; 21 const char *disable_save; 22 const char *disable_screensaver; 23 const char *disable_stamp_controls; 24 const char *dont_do_xor; 25 const char *dont_load_stamps; 26 const char *exportdir; 27 const char *fullscreen; 28 const char *grab_input; 29 const char *hide_cursor; 30 const char *keymouse; 31 const char *mirrorstamps; 32 const char *native_screensize; 33 const char *new_colors_last; 34 const char *no_button_distinction; 35 const char *no_fancy_cursors; 36 const char *no_system_fonts; 37 const char *noshortcuts; 38 const char *ok_to_use_lockfile; 39 const char *only_uppercase; 40 const char *papersize; 41 const char *parsertmp_fullscreen_native; 42 const char *parsertmp_lang; 43 const char *parsertmp_locale; 44 const char *parsertmp_sysconfig; 45 const char *parsertmp_windowsize; 46 const char *button_size; 47 const char *colors_rows; 48 const char *print_delay; 49 const char *printcommand; 50 // const char *promptless_save; 51 const char *_promptless_save_over; 52 const char *_promptless_save_over_new; 53 const char *_promptless_save_over_ask; 54 const char *rotate_orientation; 55 const char *savedir; 56 const char *simple_shapes; 57 const char *stamp_size_override; 58 const char *start_blank; 59 const char *use_print_config; 60 const char *use_sound; 61 const char *use_stereo; 62 const char *wheely; 63 const char *mouseaccessibility; 64 const char *onscreen_keyboard; 65 const char *onscreen_keyboard_layout; 66 const char *onscreen_keyboard_disable_change; 67 const char *joystick_dev; 68 const char *joystick_slowness; 69 const char *joystick_lowthreshold; 70 const char *joystick_maxsteps; 71 const char *joystick_hat_slowness; 72 const char *joystick_hat_timeout; 73 const char *joystick_button_escape; 74 const char *joystick_button_selectbrushtool; 75 const char *joystick_button_selectstamptool; 76 const char *joystick_button_selectlinestool; 77 const char *joystick_button_selectshapestool; 78 const char *joystick_button_selecttexttool; 79 const char *joystick_button_selectlabeltool; 80 const char *joystick_button_selectmagictool; 81 const char *joystick_button_undo; 82 const char *joystick_button_redo; 83 const char *joystick_button_selecterasertool; 84 const char *joystick_button_new; 85 const char *joystick_button_open; 86 const char *joystick_button_save; 87 const char *joystick_button_pagesetup; 88 const char *joystick_button_print; 89 const char *joystick_buttons_ignore; 90 91 }; 92 93 #define CFGINFO_MAXOFFSET (sizeof(struct cfginfo)) 94 95 extern void parse_one_option(struct cfginfo *restrict tmpcfg, const char *str, const char *opt, 96 const char *restrict src); 97