public void Save(Control murpleControl, string filename, PodGroup thisPodGroup) { StreamWriter streamWriter = new StreamWriter(filename); XmlWriter xmlWriter = XmlWriter.Create(streamWriter); XmlDocument document = new XmlDocument(); document.AppendChild(document.CreateWhitespace("\n")); { XmlElement murpleElement = document.CreateElement("Murple"); AddNewLine(document, murpleElement); foreach (KeyValuePair<System.Guid, Pod> thisPodPair in murpleControl.Pods) { if(thisPodGroup.ContainsPod(thisPodPair.Key) == true) AddPod(document, murpleElement, thisPodPair); } document.AppendChild(murpleElement); } document.Save(xmlWriter); streamWriter.Close(); }
public PodGroup Load(Control murpleControl, string filename) { PodGroup newPodGroup = new PodGroup(); StreamReader streamReader = new StreamReader (filename); XmlReader xmlReader = XmlReader.Create (streamReader); XmlDocument document = new XmlDocument (); document.Load (xmlReader); XmlNodeList allPodsAsXml = document.GetElementsByTagName ("Pod"); foreach(XmlNode thisPodAsXml in allPodsAsXml) { XmlNode podNameNode = thisPodAsXml.Attributes.GetNamedItem("name"); string podType = podNameNode.Value; Pod newPod = new Pod(); if(murpleControl.IsInDefinition(podType) == true) { newPod = murpleControl.AddMurpleFromDefinition(podType); System.Guid podUUID = XmlToPod(murpleControl, thisPodAsXml, ref newPod, filename); newPod.UUID = podUUID; murpleControl.AddPod(podUUID, newPod, filename); } } streamReader.Close(); return newPodGroup; }