public SwagWindowSettingGroup(Boolean doInit) : this() { if (doInit) { this["Window"] = new SwagSettingGroup() { SettingType = SettingType.SettingGroup, Icon = PackIconMaterialKind.CogOutline }; this["Window"]["Status"] = new SwagSettingGroup() { SettingType = SettingType.Hidden }; this["Window"]["Status"]["Message"] = new SwagSettingString() { SettingType = SettingType.Hidden }; this["Window"]["Status"]["IsBusy"] = new SwagSettingBoolean() { SettingType = SettingType.Hidden, Value = false }; this["Window"]["Settings"] = new SwagSettingGroup() { SettingType = SettingType.Hidden }; this["Window"]["Settings"]["IsOpen"] = new SwagSettingBoolean() { Value = false, SettingType = SettingType.Hidden }; this["Window"]["CommandHistory"] = new SwagSettingGroup() { SettingType = SettingType.Hidden }; this["Window"]["CommandHistory"]["IsOpen"] = new SwagSettingBoolean() { Value = false, SettingType = SettingType.Hidden }; this["Window"]["Theme"] = new SwagSettingGroup() { SettingType = SettingType.SettingGroup, Icon = PackIconMaterialKind.PaletteOutline }; this["Window"]["Theme"]["Base"] = new SwagSettingString() { Value = "Light", Icon = PackIconMaterialKind.PaletteSwatchOutline, ItemsSource = new[] { "Light", "Dark" }, SettingType = SettingType.DropDown }; this["Window"]["Theme"]["Accent"] = new SwagSettingString() { Value = "Blue", Icon = PackIconMaterialKind.Brush, ItemsSource = new[] { "Red", "Green", "Blue", "Purple", "Orange", "Lime", "Emerald", "Teal", "Cyan", "Cobalt", "Indigo", "Violet", "Pink", "Magenta", "Crimson", "Amber", "Yellow", "Brown", "Olive", "Steel", "Mauve", "Taupe", "Sienna" }, SettingType = SettingType.DropDown }; } }
public SwagWindowSettingGroup(SwagSettingGroup swagSettingGroup) : this() { PropertyCopy.Copy(swagSettingGroup, this); foreach (SwagSetting child in Children) { if (!_dict.ContainsKey(child.Key)) { _dict.Add(child.Key, child); } } _childrenCollectionViewSource.Source = _children; _childrenCollectionViewSource.View.SortDescriptions.Add(new SortDescription("Sequence", ListSortDirection.Ascending)); }