Пример #1
0
        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);
        }
Пример #2
0
        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;
        }
Пример #3
0
        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);
                    }
                }
            }
        }