Class CopyFragmentVisitor
An INodeVisitor implementation that works through the nodes and copies all nodes to the document fragment in the same structure.
Implements
Inherited Members
Namespace: Sdl.DesktopEditor.EditorApi.Implementation
Assembly: Sdl.DesktopEditor.EditorApi.dll
Syntax
public class CopyFragmentVisitor : INodeVisitorConstructors
CopyFragmentVisitor(IDocumentFragment)
Visits all child nodes and copies them to the IFrameworkDocumentFragment keeping the same structure.
Declaration
public CopyFragmentVisitor(IDocumentFragment fragment)Parameters
| Type | Name | Description | 
|---|---|---|
| IDocumentFragment | fragment | The document fragment to copy the nodes to. | 
Properties
Fragment
Readonly property which returns the processed document fragment.
Declaration
public IDocumentFragment Fragment { get; }Property Value
| Type | Description | 
|---|---|
| IDocumentFragment | 
Methods
VisitBookmarkNode(IBookmarkNode)
Visits a bookmark node and adds it to the last parent node processed.
Declaration
public virtual void VisitBookmarkNode(IBookmarkNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IBookmarkNode | node | 
VisitChildren(IAbstractContainerNode)
Iterates over all children in the container and visits them.
Declaration
protected void VisitChildren(IAbstractContainerNode containerNode)Parameters
| Type | Name | Description | 
|---|---|---|
| IAbstractContainerNode | containerNode | 
VisitCommentContainerNode(ICommentContainerNode)
Visits a comment container node and all its children.
Declaration
public virtual void VisitCommentContainerNode(ICommentContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ICommentContainerNode | node | 
VisitContainerNode(IAbstractContainerNode, IChangeableContainerNode)
Visits a container node.
Declaration
protected void VisitContainerNode(IAbstractContainerNode oldContainerNode, IChangeableContainerNode newContainerNode)Parameters
| Type | Name | Description | 
|---|---|---|
| IAbstractContainerNode | oldContainerNode | The original container node to visit. | 
| IChangeableContainerNode | newContainerNode | The container node to copy all content into (by visiting all children). | 
VisitDocumentContainerNode(IDocumentContainerNode)
Document container nodes are ignored.
Declaration
public virtual void VisitDocumentContainerNode(IDocumentContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IDocumentContainerNode | node | 
VisitFileContainerNode(IFileContainerNode)
File container nodes are ignored.
Declaration
public virtual void VisitFileContainerNode(IFileContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IFileContainerNode | node | 
VisitLocationMarkerNode(ILocationMarkerNode)
Visits a location marker node and adds it to the last parent processed.
Declaration
public virtual void VisitLocationMarkerNode(ILocationMarkerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ILocationMarkerNode | node | 
VisitLockedContentContainerNode(ILockedContentContainerNode)
Visits a locked content node and adds it to the last parent processed.
Declaration
public virtual void VisitLockedContentContainerNode(ILockedContentContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ILockedContentContainerNode | node | 
VisitMarkerContainerNode(IOtherMarkerContainerNode)
Visits a marker container node and all its children.
Declaration
public virtual void VisitMarkerContainerNode(IOtherMarkerContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IOtherMarkerContainerNode | node | 
VisitParagraphUnitContainerNode(IParagraphUnitContainerNode)
Paragraph unit container nodes are ignored.
Declaration
public virtual void VisitParagraphUnitContainerNode(IParagraphUnitContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IParagraphUnitContainerNode | node | 
VisitPlaceholderTagNode(IPlaceholderTagNode)
Visits a placeholder tag node and adds it to the last parent processed.
Declaration
public virtual void VisitPlaceholderTagNode(IPlaceholderTagNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IPlaceholderTagNode | node | 
VisitRevisionMarkerContainerNode(IRevisionMarkerContainerNode)
Visits a revision marker container node and all its children.
Declaration
public virtual void VisitRevisionMarkerContainerNode(IRevisionMarkerContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IRevisionMarkerContainerNode | node | 
VisitSegmentContainerNode(ISegmentContainerNode)
Visits a segment container node and all child nodes.
Declaration
public virtual void VisitSegmentContainerNode(ISegmentContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ISegmentContainerNode | node | 
VisitStartEndNode(IStartEndNode)
StartEnd nodes are ignored.
Declaration
public virtual void VisitStartEndNode(IStartEndNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| IStartEndNode | node | 
VisitTagPairContainerNode(ITagPairContainerNode)
Visits a tag pair container node and all its children.
Declaration
public virtual void VisitTagPairContainerNode(ITagPairContainerNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ITagPairContainerNode | node | 
VisitTextNode(ITextNode)
Vists a text node and adds it to the last parent node processed.
Declaration
public virtual void VisitTextNode(ITextNode node)Parameters
| Type | Name | Description | 
|---|---|---|
| ITextNode | node |