|
OpenTTD
|
Functions and types used internally for the settings configurations. More...
#include "saveload/saveload.h"Go to the source code of this file.
Data Structures | |
| struct | SettingDescBase |
| Properties of config file settings. More... | |
| struct | SettingDesc |
Typedefs | |
|
typedef SimpleTinyEnumT < SettingDescTypeLong, byte > | SettingDescType |
|
typedef SimpleTinyEnumT < SettingGuiFlagLong, uint16 > | SettingGuiFlag |
| typedef bool | OnChange (int32 var) |
| callback prototype on data modification | |
| typedef size_t | OnConvert (const char *value) |
| callback prototype for conversion error | |
| typedef SettingDesc | SettingDescGlobVarList |
Enumerations | |
| enum | SettingDescTypeLong { SDT_BEGIN = 0, SDT_NUMX = 0, SDT_BOOLX = 1, SDT_ONEOFMANY = 2, SDT_MANYOFMANY = 3, SDT_INTLIST = 4, SDT_STRING = 5, SDT_END } |
| Convention/Type of settings. More... | |
| enum | SettingGuiFlagLong { SGF_NONE = 0, SGF_0ISDISABLED = 1 << 0, SGF_DISPLAY_ABS = 1 << 1, SGF_MULTISTRING = 1 << 2, SGF_NETWORK_ONLY = 1 << 3, SGF_CURRENCY = 1 << 4, SGF_NO_NETWORK = 1 << 5, SGF_NEWGAME_ONLY = 1 << 6, SGF_SCENEDIT_TOO = 1 << 7, SGF_PER_COMPANY = 1 << 8 } |
| enum | SettingCategory { SC_NONE = 0, SC_BASIC_LIST = 1 << 0, SC_ADVANCED_LIST = 1 << 1, SC_EXPERT_LIST = 1 << 2, SC_BASIC = SC_BASIC_LIST | SC_ADVANCED_LIST | SC_EXPERT_LIST, SC_ADVANCED = SC_ADVANCED_LIST | SC_EXPERT_LIST, SC_EXPERT = SC_EXPERT_LIST, SC_END } |
| A SettingCategory defines a grouping of the settings. More... | |
| enum | SettingType { ST_GAME, ST_COMPANY, ST_CLIENT, ST_ALL } |
| Type of settings for filtering. More... | |
Functions | |
| const SettingDesc * | GetSettingFromName (const char *name, uint *i) |
| Given a name of setting, return a setting description of it. | |
| bool | SetSettingValue (uint index, int32 value, bool force_newgame=false) |
| Top function to save the new value of an element of the Settings struct. | |
| bool | SetSettingValue (uint index, const char *value, bool force_newgame=false) |
| Set a setting value with a string. | |
| void | SetCompanySetting (uint index, int32 value) |
| Top function to save the new value of an element of the Settings struct. | |
Functions and types used internally for the settings configurations.
Definition in file settings_internal.h.
| enum SettingCategory |
A SettingCategory defines a grouping of the settings.
The group SC_BASIC is intended for settings which also a novice player would like to change and is able to understand. The group SC_ADVANCED is intended for settings which an experienced player would like to use. This is the case for most settings. Finally SC_EXPERT settings only few people want to see in rare cases. The grouping is meant to be inclusive, i.e. all settings in SC_BASIC also will be included in the set of settings in SC_ADVANCED. The group SC_EXPERT contains all settings.
Definition at line 63 of file settings_internal.h.
| enum SettingDescTypeLong |
Convention/Type of settings.
This is then further specified if necessary with the SLE_ (SLE_VAR/SLE_FILE) enums in saveload.h
Definition at line 23 of file settings_internal.h.
| enum SettingGuiFlagLong |
Definition at line 38 of file settings_internal.h.
| enum SettingType |
Type of settings for filtering.
| ST_GAME |
Game setting. |
| ST_COMPANY |
Company setting. |
| ST_CLIENT |
Client setting. |
| ST_ALL |
Used in setting filter to match all types. |
Definition at line 82 of file settings_internal.h.
| const SettingDesc* GetSettingFromName | ( | const char * | name, |
| uint * | i | ||
| ) |
Given a name of setting, return a setting description of it.
| name | Name of the setting to return a setting description of |
| i | Pointer to an integer that will contain the index of the setting after the call, if it is successful. |
NULL indicates failure to obtain the description Definition at line 2047 of file settings.cpp.
References SaveLoad::cmd, SettingDesc::desc, SettingDescBase::name, SettingDesc::save, SlIsObjectCurrentlyValid(), SaveLoad::version_from, and SaveLoad::version_to.
Referenced by GetCompanySettingIndex(), NewsTypeData::GetDisplay(), IConsoleGetSetting(), SettingEntry::Init(), and GameOptionsWindow::OnDropdownSelect().
| void SetCompanySetting | ( | uint | index, |
| int32 | value | ||
| ) |
Top function to save the new value of an element of the Settings struct.
| index | offset in the SettingDesc array of the CompanySettings struct which identifies the setting member we want to change |
| value | new value of the setting |
Definition at line 1959 of file settings.cpp.
References _local_company, CMD_CHANGE_COMPANY_SETTING, ClientSettings::company, SaveLoad::conv, SettingDesc::desc, DoCommandP(), GetVariableAddress(), Pool< Titem, Tindex, Tgrowth_step, Tmax_size, Tpool_type, Tcache, Tzero >::PoolItem<&_company_pool >::IsValidID(), SettingDescBase::proc, ReadValue(), SettingDesc::save, and Write_ValidateSetting().
Referenced by GameSettingsWindow::OnClick(), GameSettingsWindow::OnDropdownSelect(), and GameSettingsWindow::OnQueryTextFinished().
| bool SetSettingValue | ( | uint | index, |
| int32 | value, | ||
| bool | force_newgame | ||
| ) |
Top function to save the new value of an element of the Settings struct.
| index | offset in the SettingDesc array of the Settings struct which identifies the setting member we want to change |
| value | new value of the setting |
| force_newgame | force the newgame settings |
Definition at line 1918 of file settings.cpp.
References _network_server, _networking, CMD_CHANGE_SETTING, SaveLoad::conv, SettingDesc::desc, DoCommandP(), GetGameSettings(), GetVariableAddress(), SettingDescBase::proc, ReadValue(), SettingDesc::save, SetWindowClassesDirty(), SLF_NO_NETWORK_SYNC, WC_GAME_OPTIONS, and Write_ValidateSetting().
Referenced by GameSettingsWindow::OnClick(), GameOptionsWindow::OnDropdownSelect(), GameSettingsWindow::OnDropdownSelect(), and GameSettingsWindow::OnQueryTextFinished().
| bool SetSettingValue | ( | uint | index, |
| const char * | value, | ||
| bool | force_newgame | ||
| ) |
Set a setting value with a string.
| index | the settings index. |
| value | the value to write |
| force_newgame | force the newgame settings |
Definition at line 2022 of file settings.cpp.
References _settings_game, SaveLoad::conv, SettingDesc::desc, free(), GetVariableAddress(), GetVarMemType(), SaveLoad::length, SettingDescBase::proc, SettingDesc::save, SLE_VAR_STRQ, SLF_NO_NETWORK_SYNC, strecpy(), and stredup().
1.8.1.2