Пример #1
0
        protected ElementBase(System.Xml.XmlReader reader)
        {
            m_ID            = reader.GetIntegerAttribute("Id");
            Title           = reader.GetNonEmptyAttribute("Title");
            SetsMusicVolume = reader.GetBooleanAttributeOrDefault("SetsMusicVolume", false);
            SetsSoundVolume = reader.GetBooleanAttributeOrDefault("SetsSoundVolume", false);
            MusicVolume     = reader.GetIntegerAttributeOrDefault("MusicVolume", 100);
            if (MusicVolume < 0 || MusicVolume > 100)
            {
                XmlHelpers.ThrowException(StringResources.InvalidVolume, reader);
            }
            SoundVolume = reader.GetIntegerAttributeOrDefault("SoundVolume", 100);
            if (SoundVolume < 0 || SoundVolume > 100)
            {
                XmlHelpers.ThrowException(StringResources.InvalidVolume, reader);
            }

            DataModule.TheElementRepository.AddElement(ref m_ID, this);
            DataModule.TheElementFactory.UpdateNextID(m_ID);
        }
Пример #2
0
 internal Mode(System.Xml.XmlReader reader)
 {
     m_Elements = new List <IModeElement>();
     Title      = reader.GetNonEmptyAttribute("Title");
     KeyCode    = reader.GetIntegerAttribute("Key");
     if (!reader.IsEmptyElement)
     {
         reader.Read();
         while (reader.IsStartElement())
         {
             if (reader.IsStartElement("Elements") && !reader.IsEmptyElement)
             {
                 reader.Read();
                 while (reader.IsStartElement())
                 {
                     if (reader.IsStartElement("ModeElement"))
                     {
                         ModeElement element = new ModeElement(reader);
                         if (element.StartElement != null)
                         {
                             m_Elements.Add(element);
                         }
                     }
                     else
                     {
                         reader.ReadOuterXml();
                     }
                 }
                 reader.ReadEndElement();
             }
             else
             {
                 reader.ReadOuterXml();
             }
         }
         reader.ReadEndElement();
     }
 }
Пример #3
0
        internal Project(System.Xml.XmlReader reader, String fileName)
        {
            m_Modes = new List <IMode>();

            if (!reader.IsStartElement("Project"))
            {
                XmlHelpers.ThrowException(String.Format(StringResources.ExpectedElement, "Project"), reader);
            }
            Title         = reader.GetNonEmptyAttribute("Title");
            TagLanguageId = reader.GetIntegerAttributeOrDefault("LanguageId", -1);
            if (!reader.IsEmptyElement)
            {
                reader.Read();
                while (reader.IsStartElement())
                {
                    if (reader.IsStartElement("Modes") && !reader.IsEmptyElement)
                    {
                        reader.Read();
                        while (reader.IsStartElement())
                        {
                            if (reader.IsStartElement("Mode"))
                            {
                                m_Modes.Add(new Mode(reader));
                            }
                            else
                            {
                                reader.ReadOuterXml();
                            }
                        }
                        reader.ReadEndElement();
                    }
                    else if (reader.IsStartElement("HiddenTagCategories") && !reader.IsEmptyElement)
                    {
                        reader.Read();
                        while (reader.IsStartElement())
                        {
                            if (reader.IsStartElement("TagCategory"))
                            {
                                int id = reader.GetIntegerAttribute("id");
                                m_HiddenTagCategories.Add(id);
                            }
                            reader.ReadOuterXml();
                        }
                        reader.ReadEndElement();
                    }
                    else if (reader.IsStartElement("HiddenTags") && !reader.IsEmptyElement)
                    {
                        reader.Read();
                        while (reader.IsStartElement())
                        {
                            if (reader.IsStartElement("Tag"))
                            {
                                int id = reader.GetIntegerAttribute("id");
                                m_HiddenTags.Add(id);
                            }
                            reader.ReadOuterXml();
                        }
                        reader.ReadEndElement();
                    }
                    else
                    {
                        reader.ReadOuterXml();
                    }
                }
                reader.ReadEndElement();
            }
            else
            {
                reader.Read();
            }
            FileName = fileName;
            Changed  = false;
        }