#nullable enable namespace UICatalog.Scenarios; public class SchemeViewer : FrameView { public SchemeViewer () { TabStop = TabBehavior.TabStop; CanFocus = true; Height = Dim.Auto (); Width = Dim.Auto (); VisualRoleViewer? prevRoleViewer = null; foreach (VisualRole role in Enum.GetValues ()) { var roleViewer = new VisualRoleViewer { Role = role }; if (prevRoleViewer is { }) { roleViewer.Y = Pos.Bottom (prevRoleViewer); } base.Add (roleViewer); prevRoleViewer = roleViewer; } } /// protected override bool OnSchemeNameChanging (ValueChangingEventArgs args) { Title = args.NewValue ?? "null"; foreach (VisualRoleViewer v in SubViews.OfType ()) { v.SchemeName = args.NewValue; } return base.OnSchemeNameChanging (args); } }