OpenTTD Source: src/settings_table.cpp File Reference

OpenTTD Source 14.0-RC3

Macros | Functions | Variables
settings_table.cpp File Reference
`#include "stdafx.h"`
`#include "settings_table.h"`
`#include "currency.h"`
`#include "screenshot.h"`
`#include "network/network.h"`
`#include "network/network_func.h"`
`#include "network/core/config.h"`
`#include "pathfinder/pathfinder_type.h"`
`#include "linkgraph/linkgraphschedule.h"`
`#include "genworld.h"`
`#include "train.h"`
`#include "news_func.h"`
`#include "window_func.h"`
`#include "company_func.h"`
`#include "timer/timer_game_calendar.h"`
`#include "fontcache.h"`
`#include "textbuf_gui.h"`
`#include "rail_gui.h"`
`#include "elrail_func.h"`
`#include "error.h"`
`#include "town.h"`
`#include "video/video_driver.hpp"`
`#include "sound/sound_driver.hpp"`
`#include "music/music_driver.hpp"`
`#include "blitter/factory.hpp"`
`#include "base_media_base.h"`
`#include "ai/ai_config.hpp"`
`#include "ai/ai.hpp"`
`#include "game/game_config.hpp"`
`#include "ship.h"`
`#include "smallmap_gui.h"`
`#include "roadveh.h"`
`#include "roadveh_cmd.h"`
`#include "vehicle_func.h"`
`#include "viewport_func.h"`
`#include "void_map.h"`
`#include "station_func.h"`
`#include "station_base.h"`
`#include "table/strings.h"`
`#include "table/settings.h"`
`#include "safeguards.h"`

Go to the source code of this file.

## Functions
static StringID | SettingTitleWallclock (const IntSettingDesc &sd)
| Switch setting title depending on wallclock setting.
static StringID | SettingHelpWallclock (const IntSettingDesc &sd)
| Switch setting help depending on wallclock setting.
static void | SettingsValueVelocityUnit (const IntSettingDesc &, uint first_param, int32_t value)
| Setting values for velocity unit localisation.
static void | SettingsValueAbsolute (const IntSettingDesc &sd, uint first_param, int32_t value)
| A negative value has another string (the one after "strval").
static void | v_PositionMainToolbar (int32_t)
| Reposition the main toolbar as the setting changed.
static void | v_PositionStatusbar (int32_t)
| Reposition the statusbar as the setting changed.
static void | RedrawSmallmap (int32_t)
| Redraw the smallmap after a colour scheme change.
static void | UpdateLinkgraphColours (int32_t)
| Redraw linkgraph links after a colour scheme change.
static void | StationSpreadChanged (int32_t)
static void | UpdateConsists (int32_t)
static void | UpdateAllServiceInterval (int32_t new_value)
| Check and update if needed all vehicle service intervals. More...
static bool | CanUpdateServiceInterval (VehicleType, int32_t &new_value)
static void | UpdateServiceInterval (VehicleType type, int32_t new_value)
static void | TrainAccelerationModelChanged (int32_t)
static void | TrainSlopeSteepnessChanged (int32_t)
| This function updates the train acceleration cache after a steepness change.
static void | RoadVehAccelerationModelChanged (int32_t)
| This function updates realistic acceleration caches when the setting "Road vehicle acceleration model" is set.
static void | RoadVehSlopeSteepnessChanged (int32_t)
| This function updates the road vehicle acceleration cache after a steepness change.
static void | TownFoundingChanged (int32_t)
static void | ZoomMinMaxChanged (int32_t)
static void | SpriteZoomMinChanged (int32_t)
static void | InvalidateNewGRFChangeWindows (int32_t)
| Update any possible saveload window and delete any newgrf dialogue as its widget parts might change. More...
static void | InvalidateCompanyLiveryWindow (int32_t)
static void | DifficultyNoiseChange (int32_t)
static void | MaxNoAIsChange (int32_t)
static bool | CheckRoadSide (int32_t &)
| Check whether the road side may be changed. More...
static size_t | ConvertLandscape (const char *value)
| Conversion callback for _gameopt_settings_game.landscape It converts (or try) between old values and the new ones, without losing initial setting of the user. More...
static bool | CheckFreeformEdges (int32_t &new_value)
static void | UpdateFreeformEdges (int32_t new_value)
static bool | CheckDynamicEngines (int32_t &)
| Changing the setting "allow multiple NewGRF sets" is not allowed if there are vehicles.
static bool | CheckMaxHeightLevel (int32_t &new_value)
static void | StationCatchmentChanged (int32_t)
static void | MaxVehiclesChanged (int32_t)
static void | InvalidateShipPathCache (int32_t)
static bool | ReplaceAsteriskWithEmptyPassword (std::string &newval)
| Replace a passwords that are a literal asterisk with an empty string. More...
static void | UpdateClientConfigValues ()
| Update the game info, and send it to the clients when we are running as a server.
static void | ChangeTimekeepingUnits (int32_t)
| Callback for when the player changes the timekeeping units. More...
static void | ChangeMinutesPerYear (int32_t new_value)
| Callback after the player changes the minutes per year. More...
static bool | CanChangeTimetableMode (int32_t &)
| Pre-callback check when trying to change the timetable mode. More...

## Variables
SettingTable | _company_settings { _company_settings_table }
SettingTable | _currency_settings { _currency_settings_table }
SettingTable | _difficulty_settings { _difficulty_settings_table }
SettingTable | _multimedia_settings { _multimedia_settings_table }
SettingTable | _economy_settings { _economy_settings_table }
SettingTable | _game_settings { _game_settings_table }
SettingTable | _gui_settings { _gui_settings_table }
SettingTable | _linkgraph_settings { _linkgraph_settings_table }
SettingTable | _locale_settings { _locale_settings_table }
SettingTable | _misc_settings { _misc_settings_table }
SettingTable | _network_private_settings { _network_private_settings_table }
SettingTable | _network_secrets_settings { _network_secrets_settings_table }
SettingTable | _network_settings { _network_settings_table }
SettingTable | _news_display_settings { _news_display_settings_table }
SettingTable | _old_gameopt_settings { _old_gameopt_settings_table }
SettingTable | _pathfinding_settings { _pathfinding_settings_table }
SettingTable | _script_settings { _script_settings_table }
SettingTable | _window_settings { _window_settings_table }
SettingTable | _world_settings { _world_settings_table }

## Detailed Description

The tables of all the settings as well as the implementation of most of their callbacks.

Definition in file settings_table.cpp.

## Function Documentation

## ◆ CanChangeTimetableMode()

static bool CanChangeTimetableMode | ( | int32_t & |  | ) |
| static

Pre-callback check when trying to change the timetable mode.

This is locked to Seconds when using wallclock units.

Parameters

  Unused. |

Returns
  True if we allow changing the timetable mode.

Definition at line 609 of file settings_table.cpp.

References TimerGameEconomy::UsingWallclockUnits().

## ◆ ChangeMinutesPerYear()

static void ChangeMinutesPerYear | ( | int32_t | new_value | ) |
| static

Callback after the player changes the minutes per year.

Parameters

  new_value | The intended new value of the setting, used for clamping.

Definition at line 574 of file settings_table.cpp.

## ◆ ChangeTimekeepingUnits()

static void ChangeTimekeepingUnits | ( | int32_t |  | ) |
| static

Callback for when the player changes the timekeeping units.

Parameters

  Unused. |

Definition at line 532 of file settings_table.cpp.

References _settings_client, _settings_newgame, ClientSettings::company, GameSettings::economy, InvalidateWindowClassesData(), EconomySettings::minutes_per_calendar_year, VehicleDefaultSettings::servint_ispercent, UpdateAllServiceInterval(), TimerGameEconomy::UsingWallclockUnits(), CompanySettings::vehicle, and WC_GAME_OPTIONS.

## ◆ CheckRoadSide()

static bool CheckRoadSide | ( | int32_t & |  | ) |
| static

Check whether the road side may be changed.

Returns
  true if the road side may be changed.

Definition at line 366 of file settings_table.cpp.

## ◆ ConvertLandscape()

static size_t ConvertLandscape | ( | const char * | value | ) |
| static

Conversion callback for _gameopt_settings_game.landscape It converts (or try) between old values and the new ones, without losing initial setting of the user.

Parameters

  value | that was read from config file

Returns
  the "hopefully" converted value

Definition at line 378 of file settings_table.cpp.

References OneOfManySettingDesc::ParseSingleValue().

## ◆ InvalidateNewGRFChangeWindows()

static void InvalidateNewGRFChangeWindows | ( | int32_t |  | ) |
| static

Update any possible saveload window and delete any newgrf dialogue as its widget parts might change.

Reinit all windows as it allows access to the newgrf debug button.

Definition at line 328 of file settings_table.cpp.

References CloseWindowByClass(), InvalidateWindowClassesData(), ReInitAllWindows(), WC_GAME_OPTIONS, and WC_SAVELOAD.

## ◆ ReplaceAsteriskWithEmptyPassword()

static bool ReplaceAsteriskWithEmptyPassword | ( | std::string & | newval | ) |
| static

Replace a passwords that are a literal asterisk with an empty string.

Parameters

  newval | The new string value for this password field.

Returns
  Always true.

Definition at line 511 of file settings_table.cpp.

## ◆ UpdateAllServiceInterval()

static void UpdateAllServiceInterval | ( | int32_t | new_value | ) |
| static

Check and update if needed all vehicle service intervals.

Parameters

  new_value | Contains 0 if service intervals are in time (days or real-world minutes), otherwise intervals use percents.

Definition at line 171 of file settings_table.cpp.

Referenced by ChangeTimekeepingUnits().