2010-03-25 19:38:51 +00:00

126 lines
3.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Xml.Serialization;
using System.ComponentModel;
namespace Volian.Svg.Library
{
[XmlRoot("svg")]
public partial class Svg : SvgGroup
{
#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
private SvgMeasurement _Width = new SvgMeasurement();
[XmlIgnore]
public SvgMeasurement Width
{
get { return _Width; }
set { _Width = value; }
}
[System.ComponentModel.DefaultValueAttribute("0")]
[XmlAttribute("width")]
[Browsable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
public string Width_XmlSurrogate
{
get { return SvgXmlConverter<SvgMeasurement>.GetString(_Width); }
set { _Width = SvgXmlConverter<SvgMeasurement>.GetObject(value); }
}
private string _Watermark="";
[XmlAttribute("watermark")]
public string Watermark
{
get { return _Watermark; }
set { _Watermark = value; }
}
public void SetValidWaterMark(string token, string watermark)
{
if (token == "{" + watermark.ToUpper() + "PAGE}" )
_Watermark = watermark;
}
#endregion
#region Height
private SvgMeasurement _Height = new SvgMeasurement();
[XmlIgnore]
public SvgMeasurement Height
{
get { return _Height; }
set { _Height = value; }
}
[System.ComponentModel.DefaultValueAttribute("0")]
[XmlAttribute("height")]
[Browsable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
public string Height_XmlSurrogate
{
get { return SvgXmlConverter<SvgMeasurement>.GetString(_Height); }
set { _Height = SvgXmlConverter<SvgMeasurement>.GetObject(value); }
}
#endregion
#region ViewBox
private SvgViewBox _ViewBox = new SvgViewBox("0 0 0 0");
[XmlIgnore]
public SvgViewBox ViewBox
{
get { return _ViewBox; }
set { _ViewBox = value; }
}
[System.ComponentModel.DefaultValueAttribute("0 0 0 0")]
[XmlAttribute("viewBox")]
[Browsable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
public string SVGViewBox_XmlSurrogate
{
get { return SvgXmlConverter<SvgViewBox>.GetString(_ViewBox); }
set { _ViewBox = SvgXmlConverter<SvgViewBox>.GetObject(value); }
}
#endregion
//#region Setup Inheritance
//private void SetupInheritance()
//{
// SvgParts.SetupInheritance(_MyInheritedSettings);
//}
////override internal void SetupInheritance(SvgInheritedSettings myParentsSettings)
////{
//// _MyInheritedSettings.MyParentsSettings = myParentsSettings;
//// SvgParts.SetupInheritance(_MyInheritedSettings);
////}
//#endregion
#region Part Lookup
private Dictionary<string, SvgPart> _LookUp;
[XmlIgnore]
private Dictionary<string, SvgPart> LookUp
{
get
{
if (_LookUp == null)
{
_LookUp = new Dictionary<string, SvgPart>();
AddLookup(_LookUp);
}
return _LookUp;
}
}
public SvgPart this[string id]
{ get { return LookUp[id]; } }
#endregion
}
}