示例#1
0
文件: MindMap.cs 项目: yfarm/Blumind
        public override void Deserialize(Version documentVersion, XmlElement node)
        {
            base.Deserialize(documentVersion, node);

            LayoutType = ST.GetLayoutType(ST.ReadTextNode(node, "layout"));

            // 向后兼容
            if (string.IsNullOrEmpty(Remark))
            {
                Remark = ST.ReadCDataNode(node, "description");
                if (Remark == string.Empty)
                {
                    Remark = ST.ReadTextNode(node, "description");
                }
            }

            // style
            XmlElement styleNode = node.SelectSingleNode("style") as XmlElement;

            if (styleNode != null)
            {
                DeserializeMapStyle(styleNode);
            }

            // extend attributes (向后兼容)
            XmlElement attributeNode = node.SelectSingleNode("attributes") as XmlElement;

            if (attributeNode != null)
            {
                LoadExtendAttributes(attributeNode);
            }

            // nodes
            XmlElement rootNode = node.SelectSingleNode("nodes/node") as XmlElement;

            if (rootNode != null)
            {
                var topic = Topic.DeserializeTopic(documentVersion, rootNode);
                Root = topic;
            }
        }