コード例 #1
0
        public void InitTranslationPairsForDisplay()
        {
            var currLength = 0;
            var counter    = 0;

            //Tuple<string, string> pairForDisplay = null;
            string item1 = string.Empty;
            string item2 = string.Empty;

            var lastPair = TranslationPairs.LastOrDefault();

            foreach (var pair in TranslationPairs)
            {
                var prefix = " #" + /*++counter+*/ " ";

                item1 += prefix + pair.Item1;
                item2 += prefix + pair.Item2;

                currLength = Math.Max(item1.Length, item2.Length);
                if (currLength >= MaxCharactersPerTransaltion || pair.Equals(lastPair))
                {
                    TranslationPairsForDisplay.Add(new Tuple <string, string>(item1, item2));
                    item1 = string.Empty;
                    item2 = string.Empty;
                }
            }
        }
コード例 #2
0
        public void InitTranslationPairs()
        {
            var rusTexts = TextRus.Split(separators, StringSplitOptions.RemoveEmptyEntries)
                           .Select(i => i.Trim())
                           .Where(i => string.IsNullOrWhiteSpace(i) == false)
                           .ToList();

            var engTexts = TextEng.Split(separators, StringSplitOptions.RemoveEmptyEntries)
                           .Select(i => i.Trim())
                           .Where(i => string.IsNullOrWhiteSpace(i) == false)
                           .ToList();

            var index = 0;

            foreach (var itemRus in rusTexts)
            {
                var itemEng = engTexts.Count > index ? engTexts[index] : "--error in matching translation--";

                // 3 forms of translation
                index++;
                while (engTexts.Count > index && engTexts[index].ToString().StartsWith(SpecialSeparator3Forms))
                {
                    itemEng += engTexts[index];
                    index++;
                }


                TranslationPairs.Add(new Tuple <string, string>(itemRus, itemEng));
            }
        }