using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Xml.Serialization; using Newtonsoft.Json; namespace AIStudio.Wpf.DiagramDesigner { [Serializable] [XmlInclude(typeof(BlockItemsContainerInfoItem))] public class BlockItemsContainerInfoItem : SelectableItemBase { public BlockItemsContainerInfoItem() { } public BlockItemsContainerInfoItem(BlockItemsContainerInfo viewmodel) : base(viewmodel) { this.OnlyOneChild = viewmodel.OnlyOneChild; this.ChildFlag = viewmodel.ChildFlag; this.PhysicalItemWidth = viewmodel.PhysicalItemWidth; this.PhysicalItemHeight = viewmodel.PhysicalItemHeight; this.Parameter = new ConstParameterItem(viewmodel.Parameter); Children = new List(viewmodel.Children.Select(p => new BlockDesignerItem(p))); } public bool OnlyOneChild { get; set; } public List ChildFlag { get; set; } [JsonProperty(PropertyName = "ItemWidth")] [XmlAttribute("ItemWidth")] public double PhysicalItemWidth { get; set; } [JsonProperty(PropertyName = "ItemHeight")] [XmlAttribute("ItemHeight")] public double PhysicalItemHeight { get; set; } [XmlElement] public ConstParameterItem Parameter { get; set; } [XmlArray] public List Children { get; set; } } }