internal void FromXml(XElement x, IFromXmlContext ctx) { Row = int.Parse(x.Attribute("Row").Value); StartColumn = int.Parse(x.Attribute("StartColumn").Value); Columns = int.Parse(x.Attribute("Columns").Value); Title = x.Attribute("Title")?.Value; Content = ctx.GetPart(Content, x.Elements().Single()); }
public IPartEntity GetPart(IPartEntity old, XElement element) { Type type = PartNames.GetOrThrow(element.Name.ToString()); var part = old != null && old.GetType() == type ? old : (IPartEntity)Activator.CreateInstance(type); part.FromXml(element, this); return(part); }
internal void FromXml(XElement x, IFromXmlContext ctx) { Row = int.Parse(x.Attribute("Row").Value); StartColumn = int.Parse(x.Attribute("StartColumn").Value); Columns = int.Parse(x.Attribute("Columns").Value); Title = x.Attribute("Title")?.Value; IconName = x.Attribute("IconName")?.Value; IconColor = x.Attribute("IconColor")?.Value; Style = (PanelStyle)(x.Attribute("Style")?.Let(a => Enum.Parse(typeof(PanelStyle), a.Value)) ?? PanelStyle.Light); Content = ctx.GetPart(Content, x.Elements().Single()); }
internal void FromXml(XElement x, IFromXmlContext ctx) { Row = int.Parse(x.Attribute("Row") !.Value); StartColumn = int.Parse(x.Attribute("StartColumn") !.Value); Columns = int.Parse(x.Attribute("Columns") !.Value); Title = x.Attribute("Title")?.Value; IconName = x.Attribute("IconName")?.Value; IconColor = x.Attribute("IconColor")?.Value; InteractionGroup = x.Attribute("InteractionGroup")?.Value.ToEnum <InteractionGroup>(); CustomColor = x.Attribute("CustomColor")?.Value; UseIconColorForTitle = x.Attribute("UseIconColorForTitle")?.Let(a => bool.Parse(a.Value)) ?? false; Content = ctx.GetPart(Content, x.Elements().Single()); }
public bool ContainsContent(IPartEntity content) { return(ContainsContentExpression.Evaluate(this, content)); }
public bool ContainsContent(IPartEntity content) => As.Expression(() => Parts.Any(p => p.Content.Is(content)));
public bool ContainsContent(IPartEntity content) { return ContainsContentExpression.Evaluate(this, content); }