using System.Collections.Generic; using System.Xml.Serialization; using System.ComponentModel; namespace Volian.Svg.Library { [XmlRoot("svg")] public partial class Svg : SvgGroup { private static System.Drawing.PointF _AbsoluteOffset; public static System.Drawing.PointF AbsoluteOffset { get { return Svg._AbsoluteOffset; } set { Svg._AbsoluteOffset = value; } } private static System.Drawing.Color _OverrrideColor = System.Drawing.Color.Empty; public static System.Drawing.Color OverrideColor { get { return Svg._OverrrideColor; } set { Svg._OverrrideColor = value; } } #region XML Serializer Namespaces private XmlSerializerNamespaces _Namespaces = null; [XmlNamespaceDeclarations] public XmlSerializerNamespaces Namespaces { get { if (_Namespaces == null) { _Namespaces = new XmlSerializerNamespaces(); _Namespaces.Add("xlink", "http://www.w3.org/1999/xlink"); } return _Namespaces; } set { _Namespaces = value; } } #endregion #region Width [XmlIgnore] public SvgMeasurement Width { get; set; } = new SvgMeasurement(); [System.ComponentModel.DefaultValueAttribute("0")] [XmlAttribute("width")] [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] public string Width_XmlSurrogate { get { return SvgXmlConverter.GetString(Width); } set { Width = SvgXmlConverter.GetObject(value); } } #endregion #region Height [XmlIgnore] public SvgMeasurement Height { get; set; } = new SvgMeasurement(); [System.ComponentModel.DefaultValueAttribute("0")] [XmlAttribute("height")] [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] public string Height_XmlSurrogate { get { return SvgXmlConverter.GetString(Height); } set { Height = SvgXmlConverter.GetObject(value); } } #endregion #region ViewBox [XmlIgnore] public SvgViewBox ViewBox { get; set; } = new SvgViewBox("0 0 0 0"); [System.ComponentModel.DefaultValueAttribute("0 0 0 0")] [XmlAttribute("viewBox")] [Browsable(false)] [EditorBrowsable(EditorBrowsableState.Never)] public string SVGViewBox_XmlSurrogate { get { return SvgXmlConverter.GetString(ViewBox); } set { ViewBox = SvgXmlConverter.GetObject(value); } } #endregion #region Part Lookup private Dictionary _LookUp; [XmlIgnore] internal Dictionary LookUp { get { if (_LookUp == null) { _LookUp = new Dictionary(); AddLookup(_LookUp); } return _LookUp; } } public SvgPart this[string id] { get { return LookUp[id]; } } #endregion } }