mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-03-03 00:00:57 +08:00
89 lines
2.0 KiB
C#
89 lines
2.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows;
|
|
using System.Windows.Media;
|
|
using System.Xml.Serialization;
|
|
using Newtonsoft.Json;
|
|
|
|
namespace AIStudio.Wpf.DiagramDesigner
|
|
{
|
|
public class DrawingDesignerItemBase : DesignerItemBase
|
|
{
|
|
public DrawingDesignerItemBase()
|
|
{
|
|
|
|
}
|
|
public DrawingDesignerItemBase(DrawingDesignerItemViewModelBase item) : base(item)
|
|
{
|
|
this.Erasable = item.Erasable;
|
|
this.Geometry = item.Geometry.ToString();
|
|
if (item.Geometry.Transform != null)
|
|
{
|
|
this.Matrix = item.Geometry.Transform.Value.ToString();
|
|
}
|
|
this.Points = item.Points;
|
|
this.DrawMode = item.DrawMode;
|
|
}
|
|
|
|
[XmlAttribute]
|
|
public bool Erasable
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[XmlAttribute]
|
|
public string Geometry
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[XmlAttribute]
|
|
public string Matrix
|
|
{
|
|
get; set;
|
|
}
|
|
//[JsonIgnore]
|
|
//[XmlElement("Matrix")]
|
|
//public string XmlMatrix
|
|
//{
|
|
// get
|
|
// {
|
|
// return SerializeHelper.SerializeMatrix(Matrix);
|
|
// }
|
|
// set
|
|
// {
|
|
// Matrix = SerializeHelper.DeserializeMatrix(value);
|
|
// }
|
|
//}
|
|
|
|
[XmlIgnore]
|
|
public List<Point> Points
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
[JsonIgnore]
|
|
[XmlElement("Points")]
|
|
public string XmlPoints
|
|
{
|
|
get
|
|
{
|
|
return SerializeHelper.SerializePointList(Points);
|
|
}
|
|
set
|
|
{
|
|
Points = SerializeHelper.DeserializePointList(value);
|
|
}
|
|
}
|
|
|
|
[XmlAttribute]
|
|
public DrawMode DrawMode
|
|
{
|
|
get; set;
|
|
}
|
|
}
|
|
}
|