public bool AddScenarioFile(YmtFile ymt) { string relpath = GetRelativePath(ymt.FilePath); if (string.IsNullOrEmpty(relpath)) { relpath = ymt.Name; } if (ScenarioFilenames.Contains(relpath)) { return(false); } ScenarioFilenames.Add(relpath); ScenarioFiles.Add(ymt); return(true); }
public void RemoveScenarioFile(YmtFile ymt) { if (ymt == null) { return; } var relpath = GetRelativePath(ymt.FilePath); if (string.IsNullOrEmpty(relpath)) { relpath = ymt.Name; } ScenarioFiles.Remove(ymt); ScenarioFilenames.Remove(relpath); HasChanged = true; }
public void Load(string filepath) { FileInfo fi = new FileInfo(filepath); Filename = fi.Name; Filepath = filepath; XmlDocument doc = new XmlDocument(); doc.Load(filepath); var projelem = doc.DocumentElement; Name = Xml.GetChildInnerText(projelem, "Name"); Version = Xml.GetChildIntAttribute(projelem, "Version", "value"); YmapFilenames.Clear(); YmapFiles.Clear(); var ymapselem = Xml.GetChild(projelem, "YmapFilenames"); if (ymapselem != null) { foreach (var node in ymapselem.SelectNodes("Item")) { XmlElement ymapel = node as XmlElement; if (ymapel != null) { AddYmapFile(ymapel.InnerText); } } } YtypFilenames.Clear(); YtypFiles.Clear(); var ytypselem = Xml.GetChild(projelem, "YtypFilenames"); if (ytypselem != null) { foreach (var node in ytypselem.SelectNodes("Item")) { XmlElement ytypel = node as XmlElement; if (ytypel != null) { AddYtypFile(ytypel.InnerText); } } } YndFilenames.Clear(); YndFiles.Clear(); var yndselem = Xml.GetChild(projelem, "YndFilenames"); if (yndselem != null) { foreach (var node in yndselem.SelectNodes("Item")) { XmlElement yndel = node as XmlElement; if (yndel != null) { AddYndFile(yndel.InnerText); } } } YnvFilenames.Clear(); YnvFiles.Clear(); var ynvselem = Xml.GetChild(projelem, "YnvFilenames"); if (ynvselem != null) { foreach (var node in ynvselem.SelectNodes("Item")) { XmlElement ynvel = node as XmlElement; if (ynvel != null) { AddYnvFile(ynvel.InnerText); } } } TrainsFilenames.Clear(); TrainsFiles.Clear(); var trainsselem = Xml.GetChild(projelem, "TrainsFilenames"); if (trainsselem != null) { foreach (var node in trainsselem.SelectNodes("Item")) { XmlElement trainel = node as XmlElement; if (trainel != null) { AddTrainsFile(trainel.InnerText); } } } ScenarioFilenames.Clear(); ScenarioFiles.Clear(); var scenarioselem = Xml.GetChild(projelem, "ScenarioFilenames"); if (scenarioselem != null) { foreach (var node in scenarioselem.SelectNodes("Item")) { XmlElement scenarioel = node as XmlElement; if (scenarioel != null) { AddScenarioFile(scenarioel.InnerText); } } } AudioRelFilenames.Clear(); AudioRelFiles.Clear(); var audiorelselem = Xml.GetChild(projelem, "AudioRelFilenames"); if (audiorelselem != null) { foreach (var node in audiorelselem.SelectNodes("Item")) { XmlElement audiorelel = node as XmlElement; if (audiorelel != null) { AddAudioRelFile(audiorelel.InnerText); } } } }