Namespace Zaya.Primitives.Settings
Classes
BooleanSettingDescriptor
Descriptor for a boolean toggle setting. Rendered as a checkbox.
DirectoryPathSettingDescriptor
Descriptor for a directory path setting. Rendered as a text box with a "Browse..." button.
EnumOption
Represents a single option in an enum-style setting, pairing a machine-readable value with a localizable display name and optional description.
EnumSettingDescriptor
Descriptor for a dropdown / combo-box setting. The Options list defines the available choices.
FilePathSettingDescriptor
Descriptor for a file path setting. Rendered as a text box with a "Browse..." button.
IntegerSettingDescriptor
Descriptor for an integer numeric setting. Supports min/max range clamping.
PasswordSettingDescriptor
Descriptor for a password setting. Rendered as a masked text box.
SettingDescriptor
Abstract base class for describing a configurable engine setting. Subclasses carry type-specific properties (e.g. MinLength, MinValue, Options, Columns). Hosts use pattern matching on the concrete type to render the appropriate UI control.
SettingDescriptorList
Wraps a collection of SettingDescriptor and provides typed getters (GetValueAsString(string), GetValueAsInt(string), GetValueAsBool(string), GetValueAsTable(string)) that read from a bound user-provided dictionary and fall back to the descriptors' default values. Plugins declare descriptors once, the host renders the UI, and the plugin consumes the values without manual parsing or default-value handling.
StringSettingDescriptor
Descriptor for a free-text string setting. Supports min/max length and optional regex validation.
TableSettingDescriptor
Descriptor for a tabular setting: a list of rows, each row is a dictionary of cell values keyed by Columns keys. Hosts render a grid/list editor; consumers read rows via GetValueAsTable(string).
UrlSettingDescriptor
Descriptor for a URL setting. Rendered as a text box; the host may validate via RegexPattern.