Interface ISettingsPropertyGroupBuilder
- Namespace
- MCM.Abstractions.FluentBuilder
- Assembly
- MCMv5.dll
An interface that defines the necessary members for implementing a settings property group builder.
public interface ISettingsPropertyGroupBuilder
Properties
Properties
The actual properties stored in the builder.
Dictionary<string, ISettingsPropertyBuilder> Properties { get; }
Property Value
Methods
AddBool(string, string, IRef, Action<ISettingsPropertyBoolBuilder>?)
Creates a Bool property.
ISettingsPropertyGroupBuilder AddBool(string id, string name, IRef @ref, Action<ISettingsPropertyBoolBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
ref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyBoolBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddButton(string, string, IRef, string, Action<ISettingsPropertyButtonBuilder>?)
Creates an Button property.
ISettingsPropertyGroupBuilder AddButton(string id, string name, IRef @ref, string content, Action<ISettingsPropertyButtonBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
ref
IRefReference to the value used by the property.
content
stringButton content.
builder
Action<ISettingsPropertyButtonBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddCustom<TSettingsPropertyBuilder>(ISettingsPropertyBuilder<TSettingsPropertyBuilder>)
Adds a custom property. The custom property should implement one of the interfaces defined in MCM.Abstractions.Settings.Definitions namespace. Currently there is no way of defining a custom UI Control. One of the possible fixes would be to use UIExtender library.
ISettingsPropertyGroupBuilder AddCustom<TSettingsPropertyBuilder>(ISettingsPropertyBuilder<TSettingsPropertyBuilder> builder) where TSettingsPropertyBuilder : ISettingsPropertyBuilder
Parameters
builder
ISettingsPropertyBuilder<TSettingsPropertyBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
Type Parameters
TSettingsPropertyBuilder
A derived class of ISettingsPropertyBuilder.
AddDropdown(string, string, int, IRef, Action<ISettingsPropertyDropdownBuilder>?)
Creates a Dropdown property.
ISettingsPropertyGroupBuilder AddDropdown(string id, string name, int selectedIndex, IRef @ref, Action<ISettingsPropertyDropdownBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
selectedIndex
intSee SelectedIndex.
ref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyDropdownBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddFloatingInteger(string, string, float, float, IRef, Action<ISettingsPropertyFloatingIntegerBuilder>?)
Creates an Float Slider property.
ISettingsPropertyGroupBuilder AddFloatingInteger(string id, string name, float minValue, float maxValue, IRef @ref, Action<ISettingsPropertyFloatingIntegerBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
minValue
floatSee MinValue.
maxValue
floatSee MaxValue.
ref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyFloatingIntegerBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddInteger(string, string, int, int, IRef, Action<ISettingsPropertyIntegerBuilder>?)
Creates an Integer Slider property.
ISettingsPropertyGroupBuilder AddInteger(string id, string name, int minValue, int maxValue, IRef @ref, Action<ISettingsPropertyIntegerBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
minValue
intmaxValue
intref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyIntegerBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddText(string, string, IRef, Action<ISettingsPropertyTextBuilder>?)
Creates an TextBox property.
ISettingsPropertyGroupBuilder AddText(string id, string name, IRef @ref, Action<ISettingsPropertyTextBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
ref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyTextBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
AddToggle(string, string, IRef, Action<ISettingsPropertyGroupToggleBuilder>?)
Creates a Toggle(bool) property.
ISettingsPropertyGroupBuilder AddToggle(string id, string name, IRef @ref, Action<ISettingsPropertyGroupToggleBuilder>? builder)
Parameters
id
stringInternal ID that will be used for serialization.
name
stringWill be shown at the setting screen.
ref
IRefReference to the value used by the property.
builder
Action<ISettingsPropertyGroupToggleBuilder>Settings property builder.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
GetPropertyGroupDefinition()
Gets this property group definition.
IPropertyGroupDefinition GetPropertyGroupDefinition()
Returns
- IPropertyGroupDefinition
A property group definition.
SetGroupOrder(int)
ISettingsPropertyGroupBuilder SetGroupOrder(int value)
Parameters
value
intThe value.
Returns
- ISettingsPropertyGroupBuilder
The settings property group builder.
This page was last modified at 12/23/2022 11:49:56 +02:00 (UTC).
Commit Message
Author: Aragas
Commit: aa889a1db7974dc13c9ff22e5740d958a2228b18
* Added MCM Source Package NuGet for easier integration