internal static void RebuildParentage(ConditionGroup cg) { foreach (ConditionComponent cc in cg.Children) { cc.Parent = cg; if (cc is ConditionGroup) { RebuildParentage((ConditionGroup)cc); } } }
internal override ConditionComponent Duplicate() { ConditionGroup cg = new ConditionGroup(); cg.Enabled = Enabled; cg.Grouping = Grouping; foreach (ConditionComponent cc in Children) { cg.AddChild(cc.Duplicate()); } return(cg); }
private void _Conditions_ItemAdded(object sender, EventListArgs <Condition> e) { if (Condition == null) { Condition = new ConditionGroup(); Condition.Grouping = ConditionGroup.CndGroupingEnum.And; Condition.Enabled = true; } Condition cx = e.Item; Condition.AddChild(cx.ConvertToConditionSingle()); _Conditions.Remove(e.Item); }