private XElement GetEntryXhtml(string sourceText, string targetText, string segmentId, string fileId, string fileName, ConfirmationLevel confLevel, bool isLocked, MatchCollection sourceMatches, MatchCollection targetMatches, bool isEven) { var tbodyElem = new XElement(Xhtml.tbody, new XAttribute("class", isEven ? "entry-even" : "entry-odd")); var firstTrElem = new XElement(Xhtml.tr); // File id firstTrElem.Add(new XElement(Xhtml.td, new XAttribute("class", "file-id"), fileId)); // Segmend Id, Confirmation level, Locked status firstTrElem.Add( new XElement(Xhtml.td, new XAttribute("class", "seg-info"), new XElement(Xhtml.a, new XAttribute("href", "#"), new XAttribute("onclick", string.Format("window.external.ActivateSegment('{0}', '{1}'); return false;", fileId, segmentId)), new XText(segmentId)))); firstTrElem.Add( new XElement(Xhtml.td, new XAttribute("class", "seg-info"), confLevel.ToString())); firstTrElem.Add( new XElement(Xhtml.td, new XAttribute("class", "seg-info"), isLocked ? "Yes" : "No")); // File name firstTrElem.Add(new XElement(Xhtml.td, fileName)); tbodyElem.Add(firstTrElem); var secondTrElem = new XElement(Xhtml.tr); // Source segment var sourceTdElem = GetSegmentXhtml(sourceText, sourceMatches); sourceTdElem.Add(new XAttribute("colspan", "3")); secondTrElem.Add(sourceTdElem); // Target segment var targetTdElem = GetSegmentXhtml(targetText, targetMatches); targetTdElem.Add(new XAttribute("colspan", "1")); secondTrElem.Add(targetTdElem); tbodyElem.Add(secondTrElem); return(tbodyElem); }
public object Clone() { var segmentPair = new SegmentPair(_segmentBuilder) { Id = Id, IsLocked = IsLocked, ConfirmationLevel = (ConfirmationLevel)Enum.Parse(typeof(ConfirmationLevel), ConfirmationLevel.ToString(), true), TranslationOrigin = TranslationOrigin?.Clone() as ITranslationOrigin, Source = Source.Clone() as Source, Target = Target.Clone() as Target }; return(segmentPair); }
public object Clone() { var segmentPair = new SegmentPair(_segmentBuilder) { Id = Id, IsLocked = IsLocked, ConfirmationLevel = (ConfirmationLevel)Enum.Parse(typeof(ConfirmationLevel), ConfirmationLevel.ToString(), true), TranslationOrigin = TranslationOrigin?.Clone() as ITranslationOrigin }; foreach (var element in Source.Elements) { segmentPair.Source.Elements.Add(element.Clone() as Element); } foreach (var element in Target.Elements) { segmentPair.Target.Elements.Add(element.Clone() as Element); } return(segmentPair); }