public void VisitRevisionMarker(IRevisionMarker revisionMarker) { switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: { //ignore } break; case RevisionType.Insert: { VisitChildren(revisionMarker); } break; case RevisionType.Unchanged: { VisitChildren(revisionMarker); } break; case RevisionType.FeedbackComment: break; case RevisionType.FeedbackAdded: break; case RevisionType.FeedbackDeleted: break; default: throw new ArgumentOutOfRangeException(); } }
private void DeleteNode(IAbstractMarkupData node) { //Remove node from tree int index = node.IndexInParent; IAbstractMarkupDataContainer parent = node.Parent; node.RemoveFromParent(); //If this is a deleted revision marker then no more processing is required IRevisionMarker revisionMarker = node as IRevisionMarker; if (revisionMarker != null) { if (revisionMarker.Properties.RevisionType == revisionTypeToIgnore) { return; } } //If a comment or inserted revision then copy children to parent at the index location of the original node we have removed IAbstractMarkupDataContainer container = node as IAbstractMarkupDataContainer; if (container.Count() > 0) { container.MoveItemsTo(parent, index, 0, container.Count()); } }
/// <summary> /// All revisions are marker to be deleted but we must visit the children of non-deleted revision markers /// in case the revisions contains further comment nodes that need removing. /// </summary> /// <param name="revisionMarker"></param> public void VisitRevisionMarker(IRevisionMarker revisionMarker) { nodesToDelete.Add(revisionMarker); if (revisionMarker.Properties.RevisionType != revisionTypeToIgnore) { VisitChildren(revisionMarker); } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { if (FoundElement != null) { return; } VisitChildren(revisionMarker); }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { HasRevisions = true; if (revisionMarker.Properties.RevisionType == RevisionType.Insert || revisionMarker.Properties.RevisionType == RevisionType.FeedbackAdded) { VisitChilderen(revisionMarker); } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { var newRevisionMarker = CreateRevisionOrFeedback(revisionMarker.Properties); _currentContainer.Add(newRevisionMarker); _currentContainer = newRevisionMarker; VisitChildElements(revisionMarker); _currentContainer = newRevisionMarker.Parent; }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { //don't add delete revisions if (revisionMarker.Properties.RevisionType != RevisionType.Delete) { foreach (var item in revisionMarker.AllSubItems) { item.AcceptVisitor(this); } } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { var revisionMarker2 = CreateRevisionOrFeedback(revisionMarker.Properties); _currentContainer.Add(revisionMarker2); _currentContainer = revisionMarker2; foreach (var current in revisionMarker) { current.AcceptVisitor(this); } _currentContainer = revisionMarker2.Parent; }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { if (revisionMarker.Properties.Date != null) { var uniqueId = revisionMarker.Properties.Date.Value.Ticks + "." + revisionMarker.Properties.RevisionType; if (!RevisionMarkersUniqueIds.Contains(uniqueId)) { RevisionMarkersUniqueIds.Add(uniqueId); IsRevisionMarker = true; } else { IsRevisionMarker = false; } switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: { if (IsRevisionMarker) { RevisionMarker = new RevisionMarker(uniqueId, revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, RevisionMarker.RevisionType.Delete); VisitChildren(revisionMarker); } else { RevisionMarker = null; } } break; case RevisionType.Insert: { RevisionMarker = IsRevisionMarker ? new RevisionMarker(uniqueId, revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, RevisionMarker.RevisionType.Insert) : null; VisitChildren(revisionMarker); } break; case RevisionType.Unchanged: { RevisionMarker = IsRevisionMarker ? new RevisionMarker(uniqueId, revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, RevisionMarker.RevisionType.Unchanged) : null; VisitChildren(revisionMarker); } break; } } IsRevisionMarker = false; }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { var revisionMarkerTokenStart = new Token(Token.TokenType.RevisionMarker) { Author = revisionMarker.Properties.Author }; if (revisionMarker.Properties.Date != null) { revisionMarkerTokenStart.Date = (DateTime)revisionMarker.Properties.Date; } switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: revisionMarkerTokenStart.RevisionType = Token.RevisionMarkerType.DeleteStart; _tokens.Add(revisionMarkerTokenStart); break; case RevisionType.Insert: revisionMarkerTokenStart.RevisionType = Token.RevisionMarkerType.InsertStart; _tokens.Add(revisionMarkerTokenStart); break; case RevisionType.Unchanged: default: break; } VisitChildren(revisionMarker); var revisionMarkerTokenEnd = new Token(Token.TokenType.RevisionMarker); switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: revisionMarkerTokenEnd.RevisionType = Token.RevisionMarkerType.DeleteEnd; _tokens.Add(revisionMarkerTokenEnd); break; case RevisionType.Insert: revisionMarkerTokenEnd.RevisionType = Token.RevisionMarkerType.InsertEnd; _tokens.Add(revisionMarkerTokenEnd); break; case RevisionType.Unchanged: default: break; } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: //Deleted content is ignored break; case RevisionType.Insert: VisitChildren(revisionMarker); break; case RevisionType.Unchanged: VisitChildren(revisionMarker); break; } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { IsRevisionMarker = true; switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: { if (revisionMarker.Properties.Date != null) { RevisionMarker = new RevisionMarker(revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, SDLXLIFF.RevisionMarker.RevisionType.Delete); } VisitChildren(revisionMarker); } break; case RevisionType.Insert: { if (revisionMarker.Properties.Date != null) { RevisionMarker = new RevisionMarker(revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, RevisionMarker.RevisionType.Insert); } VisitChildren(revisionMarker); } break; case RevisionType.Unchanged: { if (revisionMarker.Properties.Date != null) { RevisionMarker = new RevisionMarker(revisionMarker.Properties.Author, (DateTime)revisionMarker.Properties.Date, SDLXLIFF.RevisionMarker.RevisionType.Unchanged); } VisitChildren(revisionMarker); } break; case RevisionType.FeedbackComment: break; case RevisionType.FeedbackAdded: break; case RevisionType.FeedbackDeleted: break; default: throw new ArgumentOutOfRangeException(); } IsRevisionMarker = false; }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: { //ignore } break; case RevisionType.Insert: { VisitChildren(revisionMarker); } break; case RevisionType.Unchanged: { VisitChildren(revisionMarker); } break; } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { // Not required for this implementation. }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { //Nothing to add }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { VisitChildren(revisionMarker); }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { // ignore; not used for this implementation }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { revisionMarker.Properties.Author = _revisionAuthor; }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { _containsTrackChanges = true; }
public void VisitText(IText text) { //Exclude text of the revision for deleted text if (text.Parent is IRevisionMarker) { IRevisionMarker parent = text.Parent as IRevisionMarker; if (parent != null && parent.Properties.RevisionType == RevisionType.Delete) { return; } } if (!ListContainsMarkupData(text)) { _markupsListVisited.Add(text); if (text.Properties.Text.Length > 0) { //get the information about ranges of locked text if (_inLockedContent) { RangeOfCharacterInfos item = new RangeOfCharacterInfos { start = _collectedText.Length, length = text.Properties.Text.Length }; _listOfLockedRanges.Add(item); } //Get information about the range if (_startOfRange != -1 && _endOfRange != -1) { int startOfMarkup = _collectedText.Length; int endOfMarkup = _collectedText.Length + text.Properties.Text.Length; bool isMarkupInRange = false; //set start of the range if (_startOfRange >= startOfMarkup && _startOfRange <= endOfMarkup) { isMarkupInRange = !(_startOfRange != _endOfRange && //exclude not empty range _startOfRange == endOfMarkup); //which begin at the end of the markup data if (isMarkupInRange) { _startOffsetOfFirstElemInRange = _startOfRange - startOfMarkup; } } //set end of the range if (_endOfRange >= startOfMarkup && _endOfRange <= endOfMarkup) { isMarkupInRange = !(_startOfRange != _endOfRange && //exclude not empty range _endOfRange == startOfMarkup); //which begin at the start of the markup data if (isMarkupInRange) { _endOffsetOfLastElemInRange = _endOfRange - startOfMarkup; } } //All the markup data is in the range if (startOfMarkup >= _startOfRange && endOfMarkup <= _endOfRange) { isMarkupInRange = true; } if (isMarkupInRange) { _markupsListInRange.Add(text); } } //Collect the text _collectedText += text.Properties.Text; } } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { // start of revision marker has no character count. }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { var revisionMarkerTokenStart = new Token(Token.TokenType.RevisionMarker); revisionMarkerTokenStart.Author = revisionMarker.Properties.Author; if (revisionMarker.Properties.Date != null) revisionMarkerTokenStart.Date = (DateTime)revisionMarker.Properties.Date; switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: revisionMarkerTokenStart.RevisionType = Token.RevisionMarkerType.DeleteStart; _tokens.Add(revisionMarkerTokenStart); break; case RevisionType.Insert: revisionMarkerTokenStart.RevisionType = Token.RevisionMarkerType.InsertStart; _tokens.Add(revisionMarkerTokenStart); break; case RevisionType.Unchanged: default: break; } VisitChildren(revisionMarker); var revisionMarkerTokenEnd = new Token(Token.TokenType.RevisionMarker); switch (revisionMarker.Properties.RevisionType) { case RevisionType.Delete: revisionMarkerTokenEnd.RevisionType = Token.RevisionMarkerType.DeleteEnd; _tokens.Add(revisionMarkerTokenEnd); break; case RevisionType.Insert: revisionMarkerTokenEnd.RevisionType = Token.RevisionMarkerType.InsertEnd; _tokens.Add(revisionMarkerTokenEnd); break; case RevisionType.Unchanged: default: break; } }
public void VisitRevisionMarker(IRevisionMarker revisionMarker) { }