summaryrefslogtreecommitdiff
path: root/src/table/settings/misc_settings.ini
diff options
context:
space:
mode:
Diffstat (limited to 'src/table/settings/misc_settings.ini')
-rw-r--r--src/table/settings/misc_settings.ini356
1 files changed, 356 insertions, 0 deletions
diff --git a/src/table/settings/misc_settings.ini b/src/table/settings/misc_settings.ini
new file mode 100644
index 000000000..1b633a65a
--- /dev/null
+++ b/src/table/settings/misc_settings.ini
@@ -0,0 +1,356 @@
+; This file is part of OpenTTD.
+; OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
+; OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+; See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
+;
+
+[pre-amble]
+extern std::string _config_language_file;
+
+static std::initializer_list<const char*> _support8bppmodes{"no", "system" , "hardware"};
+static std::initializer_list<const char*> _display_opt_modes{"SHOW_TOWN_NAMES", "SHOW_STATION_NAMES", "SHOW_SIGNS", "FULL_ANIMATION", "", "FULL_DETAIL", "WAYPOINTS", "SHOW_COMPETITOR_SIGNS"};
+
+#ifdef WITH_COCOA
+extern bool _allow_hidpi_window;
+#endif
+#ifndef WITH_COCOA
+#define WITHOUT_COCOA
+#endif
+
+static const SettingTable _misc_settings{
+[post-amble]
+};
+[templates]
+SDTG_LIST = SDTG_LIST($name, $type, $flags, $guiflags, $var, $def, $length, $from, $to, $cat, $extra, $startup),
+SDTG_MMANY = SDTG_MMANY($name, $type, $flags, $guiflags, $var, $def, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTG_OMANY = SDTG_OMANY($name, $type, $flags, $guiflags, $var, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTG_SSTR = SDTG_SSTR($name, $type, $flags, $guiflags, $var, $def, 0, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTG_BOOL = SDTG_BOOL($name, $flags, $guiflags, $var, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+SDTG_VAR = SDTG_VAR($name, $type, $flags, $guiflags, $var, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup),
+
+[validation]
+SDTG_VAR = static_assert($max <= MAX_$type, "Maximum value for $var exceeds storage size");
+SDTG_OMANY = static_assert($max <= MAX_$type, "Maximum value for $var exceeds storage size");
+
+[defaults]
+flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
+guiflags = SGF_NONE
+interval = 0
+str = STR_NULL
+strhelp = STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT
+strval = STR_NULL
+pre_cb = nullptr
+post_cb = nullptr
+load = nullptr
+from = SL_MIN_VERSION
+to = SL_MAX_VERSION
+cat = SC_ADVANCED
+extra = 0
+startup = true
+
+
+
+[SDTG_MMANY]
+name = ""display_opt""
+type = SLE_UINT8
+var = _display_opt
+def = (1 << DO_SHOW_TOWN_NAMES | 1 << DO_SHOW_STATION_NAMES | 1 << DO_SHOW_SIGNS | 1 << DO_FULL_ANIMATION | 1 << DO_FULL_DETAIL | 1 << DO_SHOW_WAYPOINT_NAMES | 1 << DO_SHOW_COMPETITOR_SIGNS)
+full = _display_opt_modes
+
+[SDTG_BOOL]
+name = ""fullscreen""
+var = _fullscreen
+def = false
+cat = SC_BASIC
+
+[SDTG_BOOL]
+ifdef = WITH_COCOA
+name = ""video_hw_accel""
+var = _video_hw_accel
+def = false
+cat = SC_BASIC
+
+[SDTG_BOOL]
+ifdef = WITHOUT_COCOA
+name = ""video_hw_accel""
+var = _video_hw_accel
+def = true
+cat = SC_BASIC
+
+[SDTG_BOOL]
+name = ""video_vsync""
+var = _video_vsync
+def = false
+cat = SC_BASIC
+
+[SDTG_OMANY]
+name = ""support8bpp""
+type = SLE_UINT8
+var = _support8bpp
+def = 0
+max = 2
+full = _support8bppmodes
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""graphicsset""
+type = SLE_STRQ
+var = BaseGraphics::ini_set
+def = nullptr
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""soundsset""
+type = SLE_STRQ
+var = BaseSounds::ini_set
+def = nullptr
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""musicset""
+type = SLE_STRQ
+var = BaseMusic::ini_set
+def = nullptr
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""videodriver""
+type = SLE_STRQ
+var = _ini_videodriver
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_SSTR]
+name = ""musicdriver""
+type = SLE_STRQ
+var = _ini_musicdriver
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_SSTR]
+name = ""sounddriver""
+type = SLE_STRQ
+var = _ini_sounddriver
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_SSTR]
+name = ""blitter""
+type = SLE_STRQ
+var = _ini_blitter
+def = nullptr
+
+[SDTG_SSTR]
+name = ""language""
+type = SLE_STR
+var = _config_language_file
+def = nullptr
+cat = SC_BASIC
+
+; workaround for implicit lengthof() in SDTG_LIST
+[SDTG_LIST]
+name = ""resolution""
+type = SLE_INT
+length = 2
+var = _cur_resolution
+def = ""0,0""
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""screenshot_format""
+type = SLE_STR
+var = _screenshot_format_name
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_SSTR]
+name = ""savegame_format""
+type = SLE_STR
+var = _savegame_format
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_BOOL]
+name = ""rightclick_emulate""
+var = _rightclick_emulate
+def = false
+
+[SDTG_SSTR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""small_font""
+type = SLE_STR
+var = _freetype.small.font
+def = nullptr
+
+[SDTG_SSTR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""medium_font""
+type = SLE_STR
+var = _freetype.medium.font
+def = nullptr
+
+[SDTG_SSTR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""large_font""
+type = SLE_STR
+var = _freetype.large.font
+def = nullptr
+
+[SDTG_SSTR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""mono_font""
+type = SLE_STR
+var = _freetype.mono.font
+def = nullptr
+
+[SDTG_VAR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""small_size""
+type = SLE_UINT
+var = _freetype.small.size
+def = 0
+min = 0
+max = 72
+
+[SDTG_VAR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""medium_size""
+type = SLE_UINT
+var = _freetype.medium.size
+def = 0
+min = 0
+max = 72
+
+[SDTG_VAR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""large_size""
+type = SLE_UINT
+var = _freetype.large.size
+def = 0
+min = 0
+max = 72
+
+[SDTG_VAR]
+ifdef = HAS_TRUETYPE_FONT
+name = ""mono_size""
+type = SLE_UINT
+var = _freetype.mono.size
+def = 0
+min = 0
+max = 72
+
+[SDTG_BOOL]
+ifdef = HAS_TRUETYPE_FONT
+name = ""small_aa""
+var = _freetype.small.aa
+def = false
+
+[SDTG_BOOL]
+ifdef = HAS_TRUETYPE_FONT
+name = ""medium_aa""
+var = _freetype.medium.aa
+def = false
+
+[SDTG_BOOL]
+ifdef = HAS_TRUETYPE_FONT
+name = ""large_aa""
+var = _freetype.large.aa
+def = false
+
+[SDTG_BOOL]
+ifdef = HAS_TRUETYPE_FONT
+name = ""mono_aa""
+var = _freetype.mono.aa
+def = false
+
+[SDTG_VAR]
+name = ""sprite_cache_size_px""
+type = SLE_UINT
+var = _sprite_cache_size
+def = 128
+min = 1
+max = 512
+cat = SC_EXPERT
+
+[SDTG_VAR]
+name = ""player_face""
+type = SLE_UINT32
+var = _company_manager_face
+def = 0
+min = 0
+max = 0xFFFFFFFF
+cat = SC_BASIC
+
+[SDTG_VAR]
+name = ""transparency_options""
+type = SLE_UINT
+var = _transparency_opt
+def = 0
+min = 0
+max = 0x1FF
+cat = SC_BASIC
+
+[SDTG_VAR]
+name = ""transparency_locks""
+type = SLE_UINT
+var = _transparency_lock
+def = 0
+min = 0
+max = 0x1FF
+cat = SC_BASIC
+
+[SDTG_VAR]
+name = ""invisibility_options""
+type = SLE_UINT
+var = _invisibility_opt
+def = 0
+min = 0
+max = 0xFF
+cat = SC_BASIC
+
+[SDTG_SSTR]
+name = ""keyboard""
+type = SLE_STR
+var = _keyboard_opt[0]
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_SSTR]
+name = ""keyboard_caps""
+type = SLE_STR
+var = _keyboard_opt[1]
+def = nullptr
+cat = SC_EXPERT
+
+[SDTG_VAR]
+name = ""last_newgrf_count""
+type = SLE_UINT32
+var = _settings_client.gui.last_newgrf_count
+def = 100
+min = 0
+max = UINT32_MAX
+cat = SC_EXPERT
+
+[SDTG_VAR]
+name = ""gui_zoom""
+type = SLE_INT8
+var = _gui_zoom_cfg
+def = ZOOM_LVL_CFG_AUTO
+min = ZOOM_LVL_CFG_AUTO
+max = ZOOM_LVL_OUT_4X
+cat = SC_BASIC
+
+[SDTG_VAR]
+name = ""font_zoom""
+type = SLE_INT8
+var = _font_zoom_cfg
+def = ZOOM_LVL_CFG_AUTO
+min = ZOOM_LVL_CFG_AUTO
+max = ZOOM_LVL_OUT_4X
+cat = SC_BASIC
+
+[SDTG_BOOL]
+ifdef = WITH_COCOA
+name = ""allow_hidpi""
+var = _allow_hidpi_window
+def = true