aboutsummaryrefslogtreecommitdiffstatsci
path: root/src/GraphicObjects/TemplatedControl.cs
diff options
context:
space:
mode:
authorjpbruyere <jp.bruyere@hotmail.com>2015-06-03 15:11:24 +0200
committerjpbruyere <jp.bruyere@hotmail.com>2015-06-03 15:11:24 +0200
commitef87679b886e5ce8b4defc21e3b9eac6c5030663 (patch)
tree2d24b86532183fcdcd9ac71493973b6e50d3110a /src/GraphicObjects/TemplatedControl.cs
parentc54c8b8e7e369dbba890efdb35a015740d1d95ea (diff)
- Item template
- Null binding for template items with "{}"
Diffstat (limited to 'src/GraphicObjects/TemplatedControl.cs')
-rw-r--r--src/GraphicObjects/TemplatedControl.cs48
1 files changed, 47 insertions, 1 deletions
diff --git a/src/GraphicObjects/TemplatedControl.cs b/src/GraphicObjects/TemplatedControl.cs
index 7b9db047..df843076 100644
--- a/src/GraphicObjects/TemplatedControl.cs
+++ b/src/GraphicObjects/TemplatedControl.cs
@@ -24,7 +24,7 @@ using System.ComponentModel;
namespace go
{
- public abstract class TemplatedControl : Container
+ public abstract class TemplatedControl : Container, IXmlSerializable
{
public TemplatedControl () : base()
{
@@ -52,6 +52,52 @@ namespace go
//prevent name searching in template
return nameToFind == this.Name ? this : null;
}
+
+ #region IXmlSerializable
+
+ public override System.Xml.Schema.XmlSchema GetSchema()
+ {
+ return null;
+ }
+ public override void ReadXml(System.Xml.XmlReader reader)
+ {
+ base.ReadXml(reader);
+
+// using (System.Xml.XmlReader subTree = reader.ReadSubtree())
+// {
+// subTree.Read(); //skip current node
+// subTree.Read(); //read first child
+//
+// if (!subTree.IsStartElement())
+// return;
+//
+// Type t = Type.GetType("go." + subTree.Name);
+// GraphicObject go = (GraphicObject)Activator.CreateInstance(t);
+//
+// (go as IXmlSerializable).ReadXml(subTree);
+//
+// setChild(go);
+//
+// subTree.Read();
+//
+// if (!subTree.IsStartElement())
+// return;
+//
+// }
+ }
+ public override void WriteXml(System.Xml.XmlWriter writer)
+ {
+ base.WriteXml(writer);
+//
+// if (child == null)
+// return;
+//
+// writer.WriteStartElement(child.GetType().Name);
+// (child as IXmlSerializable).WriteXml(writer);
+// writer.WriteEndElement();
+ }
+
+ #endregion
}
}