ConfigEntryBase Class
Definition
Section titled “Definition”Container for a single setting of a ConfigFile. Each config entry is linked to one config file.
public abstract class ConfigEntryBase
Inheritance object
Constructors
Section titled “Constructors”ConfigEntryBase(ConfigFile, ConfigDefinition, Type, object, ConfigDescription)
Section titled “ConfigEntryBase(ConfigFile, ConfigDefinition, Type, object, ConfigDescription)”Types of defaultValue and definition.AcceptableValues have to be the same as settingType.
protected ConfigEntryBase(ConfigFile configFile, ConfigDefinition definition, Type settingType, object defaultValue, ConfigDescription configDescription)
Parameters
Section titled “Parameters”configFile
ConfigFile
definition
ConfigDefinition
settingType
Type
defaultValue
object
configDescription
ConfigDescription
Properties
Section titled “Properties”ConfigFile
Section titled “ConfigFile”Config file this entry is a part of.
public ConfigFile ConfigFile { get; }
Definition
Section titled “Definition”Category and name of this setting. Used as a unique key for identification within a ConfigFile.
public ConfigDefinition Definition { get; }
Description
Section titled “Description”Description / metadata of this setting.
public ConfigDescription Description { get; }
SettingType
Section titled “SettingType”Type of the BoxedValue that this setting holds.
public Type SettingType { get; }
DefaultValue
Section titled “DefaultValue”Default value of this setting (set only if the setting was not changed before).
public object DefaultValue { get; }
BoxedValue
Section titled “BoxedValue”Get or set the value of the setting.
public abstract object BoxedValue { get; set; }
Methods
Section titled “Methods”GetSerializedValue()
Section titled “GetSerializedValue()”Get the serialized representation of the value.
public string GetSerializedValue()
Returns
Section titled “Returns”SetSerializedValue(string)
Section titled “SetSerializedValue(string)”Set the value by using its serialized form.
public void SetSerializedValue(string value)
Parameters
Section titled “Parameters”value
string
ClampValue(T)
Section titled “ClampValue(T)”If necessary, clamp the value to acceptable value range. T has to be equal to settingType.
protected T ClampValue<T>(T value)
Parameters
Section titled “Parameters”value
T
Returns
Section titled “Returns”T
OnSettingChanged(object)
Section titled “OnSettingChanged(object)”Trigger setting changed event.
protected void OnSettingChanged(object sender)
Parameters
Section titled “Parameters”sender
object
WriteDescription(StreamWriter)
Section titled “WriteDescription(StreamWriter)”Write a description of this setting using all available metadata.
public void WriteDescription(StreamWriter writer)
Parameters
Section titled “Parameters”writer
StreamWriter