Kitto.Config.Email
Typed config readers for the e-mail domain (Config.yaml node Email and its SMTP servers). Part of the per-domain organization of the config metadata. Each class reads its subtree once into typed fields (see TKConfigReader) AND carries the [YamlNode]/[YamlSubNode] attributes that KIDE reads via RTTI to drive the Config editor.
A server is looked up by name, so an application can declare several and pick one per message: the tool that sends mail reads Email/SMTP/Default unless told otherwise.
TKSMTPConfig class
Settings of one SMTP server. YAML path: Email/SMTP/<Name> (the framework reads 'Default' unless a tool names another one).
Email:
SMTP:
Default:
HostName: smtp.example.com
Port: 587
UserName: user@example.com
Password: secret
UseTLS: True
TLSMode: ExplicitTKEmailConfig class
E-mail settings from Config.yaml. YAML path: Email
property SMTP: TKSMTPConfig read FSMTP;The default SMTP server, i.e. Email/SMTP/Default. Servers declared under other names are read by name from the node itself; this property exists so the common case is typed, and so KIDE has something to show. SMTP is a container: each child is one named server (Default, ...), so the RTTI marker is [YamlContainer] and the validator descends into every named entry rather than treating 'Default' as an unknown node.
