using System.Xml; using System.Xml.Serialization; using GeoSigma.SigmaDrawerStyle; using GeoSigmaDrawLib; namespace SigmaDrawerElement { [XmlRoot("Element")] public class DrawerElementProperty { [XmlIgnore] public DrawElementType ElementType // { get; set; } { get { if (Element != null) { return Element.ElementType; } return DrawElementType.ELEMENT_UNKNOWN; } set { if (Element != null) { Element.ElementType = ElementType; } } } [XmlAttribute("Color")] public string ColorRgb { get; set; } [XmlIgnore] public int ColorRef { get; set; } [XmlAttribute("Layer")] public string Layer { get; set; } [XmlAttribute("Visibility")] public string Visibility { get; set; } [XmlAttribute("Type")] public string TypeName { get; set; } [XmlElement("HowToViewCurve")] public DrawerCurveStyle CurveStyle { get; set; } [XmlElement("HowToViewPoint")] public DrawerPointStyle PointStyle { get; set; } [XmlElement("Point", typeof(DrawerPoint))] [XmlElement("Xyz", typeof(DrawerXyz))] [XmlElement("TwoPoint", typeof(DrawerPointTwoName))] [XmlElement("CrossPoint", typeof(DrawerPointCrossName))] [XmlElement("Pline", typeof(DrawerPline))] [XmlElement("Surface", typeof(DrawerSurface))] [XmlElement("Text", typeof(DrawerText))] [XmlElement("Ellipse", typeof(DrawerEllipse))] [XmlElement("Arc", typeof(DrawerArc))] [XmlElement("Proportion", typeof(DrawerProportion))] [XmlElement("Frame", typeof(DrawerFrame))] [XmlElement("FGrid", typeof(DrawerFrameGrid))] [XmlElement("Donut", typeof(DrawerDonut))] [XmlElement("Circle", typeof(DrawerCircle))] [XmlElement("Section", typeof(DrawerSeismicSection))] [XmlElement("WellGroup", typeof(DrawerWellGroup))] [XmlElement("Block", typeof(DrawerGroup))] public ElementBase Element { get; set; } } }