using System; using System.Collections.Generic; namespace KamiToolKit.Nodes; public class TextDropDownNode : DropDownNode { public TextDropDownNode() { OptionListNode.OnOptionSelected += OptionSelectedHandler; } public Action? OnOptionSelected { get; set; } public required List? Options { get => OptionListNode.Options; set { OptionListNode.Options = value; OptionListNode.SelectDefaultOption(); UpdateLabel(OptionListNode.SelectedOption); } } private void OptionSelectedHandler(string option) { OnOptionSelected?.Invoke(option); UpdateLabel(option); Toggle(false); } protected override void UpdateLabel(string? option) { LabelNode.String = option ?? "ERROR: Invalid Default Option"; } }