private StringsFileV1 ReadStringsElement()
        {
            StringsFileV1 stringsFile = new StringsFileV1();

            this.stringsAtom = this.reader.NameTable.Add("Strings");

            reader.MoveToContent();

            reader.ReadStartElement(stringsAtom);
            reader.MoveToContent();

            stringsFile.Strings = new List<StringsFileV1.String>();

            while (true)
            {
                if (String.ReferenceEquals(reader.Name, stringsAtom))
                {
                    reader.ReadEndElement();
                    reader.MoveToContent();
                    break;
                }

                stringsFile.Strings.Add(ReadStringElement());
            }

            return stringsFile;
        }
예제 #2
0
        private StringsFileV1 ReadStringsElement()
        {
            StringsFileV1 stringsFile = new StringsFileV1();

            this.stringsAtom = this.reader.NameTable.Add("Strings");

            reader.MoveToContent();

            reader.ReadStartElement(stringsAtom);
            reader.MoveToContent();

            stringsFile.Strings = new List <StringsFileV1.String>();

            while (true)
            {
                if (String.ReferenceEquals(reader.Name, stringsAtom))
                {
                    reader.ReadEndElement();
                    reader.MoveToContent();
                    break;
                }

                stringsFile.Strings.Add(ReadStringElement());
            }

            return(stringsFile);
        }
        private StringsContent CreateStringsData(string className, StringsFileV1 stringsFile)
        {
            StringsContent stringsData = new StringsContent();

            stringsData.ClassName = className;
            stringsData.Strings = new List<StringsContent.String>();

            string namespaceName;

            Target.Properties.GetRequiredValue("Namespace", out namespaceName);

            stringsData.Namespace = namespaceName;

            foreach (var s in stringsFile.Strings)
            {
                StringsContent.String d = new StringsContent.String();

                d.Name = s.Name;
                d.Value = s.Value;

                // Count the args in the string
                int n = 0;

                for (int i = 0; i < d.Value.Length - 1; i++)
                {
                    if (d.Value[i] == '{' && d.Value[i + 1] != '{')
                    {
                        n++;
                    }
                }

                d.ArgCount = n;

                stringsData.Strings.Add(d);
            }

            return stringsData;
        }