Пример #1
0
 public void AddPoFileSource(PoFile ToAddPofile)
 {
     foreach (PoFileValues Value in ToAddPofile.Values)
     {
         LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value);
         LanguageValues.Add(NewLanguageListValues);
     }
 }
Пример #2
0
 public void CombinePoFile(PoFile ToAddPofile, LanguageCell Language)
 {
     foreach (PoFileValues Value in ToAddPofile.Values)
     {
         CultureInfo NewcultureInfo = new CultureInfo(Language.Language);
         LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value, NewcultureInfo, Language.Cell);
         LanguageValues.Add(NewLanguageListValues);
     }
 }
Пример #3
0
 public void AddPoFile(PoFile ToAddPofile, LanguageCell Language)
 {
     foreach (PoFileValues Value in ToAddPofile.Values)
     {
         CultureInfo NewcultureInfo = new CultureInfo(Language.Language);
         LocalizationFileLanguageListValues NewLanguageListValues = new LocalizationFileLanguageListValues(Value, NewcultureInfo, Language.Cell);
         LocalizationFileLanguageListValues TranslateValue        = LanguageValues.Find(x => x.Key == NewLanguageListValues.Key);
         if (TranslateValue != null)
         {
             foreach (var item in NewLanguageListValues.ListValues)
             {
                 TranslateValue.ListValues.Add(item);
             }
         }
     }
 }
Пример #4
0
        private void LoadLocalizationFile(FileInfo Path, string SplitChar)
        {
            string Data = File.ReadAllText(Path.FullName);

            string[] DataValues = Data.Split(new[] { SplitChar }, StringSplitOptions.None);
            foreach (var Values in DataValues)
            {
                string ConvertValues = Values;
                if (ConvertValues != "")
                {
                    if (ConvertValues.Substring(ConvertValues.Length - 1) == "\r")
                    {
                        ConvertValues = ConvertValues.Remove(ConvertValues.Length - 1);
                    }
                }

                LocalizationFileLanguageListValues NewList = new LocalizationFileLanguageListValues(ConvertValues, KeyCell, SourceCell, SourceLocationCell, Languages);
                if (NewList.Valid)
                {
                    LanguageValues.Add(NewList);
                }
            }
        }
Пример #5
0
        static public LocalizationFile CombineLocalizationFile(LocalizationFile File_01, LocalizationFile File_02, bool UpdateKeys = false)
        {
            LocalizationFile NewLocalizationFileInfo = new LocalizationFile();

            NewLocalizationFileInfo.KeyCell            = File_01.KeyCell;
            NewLocalizationFileInfo.SourceLocationCell = File_01.SourceLocationCell;
            NewLocalizationFileInfo.SourceCell         = File_01.SourceCell;
            NewLocalizationFileInfo.Languages          = File_01.Languages;

            foreach (LocalizationFileLanguageListValues item in File_01.LanguageValues)
            {
                string CheckValue = item.SourceValue.Trim();

                if (item.Key == "D6A0199D462519E233F60DBDA1B604B2")
                {
                    Console.WriteLine("");
                }

                LocalizationFileLanguageListValues FindValue = File_02.LanguageValues.Find(x => x.SourceValue.Trim() == CheckValue);
                if (FindValue != null)
                {
                    foreach (var Value_source in item.ListValues)
                    {
                        foreach (var Value_combine in FindValue.ListValues)
                        {
                            if (Value_source.CultureInfo.DisplayName == Value_combine.CultureInfo.DisplayName)
                            {
                                if (Value_source.Value == "" && Value_combine.Value != "" && Value_source.SourceValue != Value_combine.Value)
                                {
                                    Value_source.Value = Value_combine.Value;
                                }
                                break;
                            }
                        }
                    }

                    NewLocalizationFileInfo.LanguageValues.Add(item);
                }
                else
                {
                    NewLocalizationFileInfo.LanguageValues.Add(item);
                }
            }


            if (UpdateKeys)
            {
                LocalizationFile NewLocalizationFileInfoKey = new LocalizationFile();
                NewLocalizationFileInfoKey.KeyCell            = File_01.KeyCell;
                NewLocalizationFileInfoKey.SourceLocationCell = File_01.SourceLocationCell;
                NewLocalizationFileInfoKey.SourceCell         = File_01.SourceCell;
                NewLocalizationFileInfoKey.Languages          = File_01.Languages;

                foreach (LocalizationFileLanguageListValues ItemUpdate in NewLocalizationFileInfo.LanguageValues)
                {
                    LocalizationFileLanguageListValues FindKey = File_02.LanguageValues.Find(x => x.Key == ItemUpdate.Key);
                    if (FindKey != null)
                    {
                        foreach (var Value_source in ItemUpdate.ListValues)
                        {
                            foreach (var Value_combine in FindKey.ListValues)
                            {
                                if (Value_source.CultureInfo.DisplayName == Value_combine.CultureInfo.DisplayName)
                                {
                                    Value_source.Value = Value_combine.Value;
                                    NewLocalizationFileInfo.LanguageValues.Add(ItemUpdate);
                                    break;
                                }
                            }
                        }
                    }
                }

                return(NewLocalizationFileInfoKey);
            }

            return(NewLocalizationFileInfo);
        }