using System; using System.Xml.Linq; namespace Novacode { /// /// Axis base class /// public abstract class Axis { /// /// ID of this Axis /// public String Id { get { return Xml.Element(XName.Get("axId", DocX.c.NamespaceName)).Attribute(XName.Get("val")).Value; } } /// /// Return true if this axis is visible /// public Boolean IsVisible { get { return Xml.Element(XName.Get("delete", DocX.c.NamespaceName)).Attribute(XName.Get("val")).Value == "0"; } set { if (value) Xml.Element(XName.Get("delete", DocX.c.NamespaceName)).Attribute(XName.Get("val")).Value = "0"; else Xml.Element(XName.Get("delete", DocX.c.NamespaceName)).Attribute(XName.Get("val")).Value = "1"; } } /// /// Axis xml element /// internal XElement Xml { get; set; } internal Axis(XElement xml) { Xml = xml; } public Axis(String id) { } } /// /// Represents Category Axes /// public class CategoryAxis : Axis { internal CategoryAxis(XElement xml) : base(xml) { } public CategoryAxis(String id) : base(id) { Xml = XElement.Parse(String.Format( @" ", id)); } } /// /// Represents Values Axes /// public class ValueAxis : Axis { internal ValueAxis(XElement xml) : base(xml) { } public ValueAxis(String id) : base(id) { Xml = XElement.Parse(String.Format( @" ", id)); } } }