Class FoldingTaggerBase
Base class for collecting folding (collapsible) sections in document. Override this class and add ExpandableRegionDefinitions to define the start / end matching rules of a collapsible section.
Inherited Members
Namespace: Telerik.Windows.Controls.SyntaxEditor.Taggers
Assembly: Telerik.Windows.Controls.SyntaxEditor.dll
Syntax
public class FoldingTaggerBase : TaggerBase<FoldingRegionTag>, ITagger<FoldingRegionTag>
Constructors
FoldingTaggerBase(ITextDocumentEditor)
Initializes a new instance of the FoldingTaggerBase class.
Declaration
public FoldingTaggerBase(ITextDocumentEditor editor)
Parameters
ITextDocumentEditor
editor
The syntax editor. |
Properties
FoldingRegionDefinitions
The FoldingRegionDefinitions that this tagger will use for matching the collapsible regions in the document.
Declaration
public IList<FoldingRegionDefinition> FoldingRegionDefinitions { get; }
Property Value
System.Collections.Generic.IList<FoldingRegionDefinition>
|
FoldingRegionTags
List of all FoldingRegionTags wrapped in TagSpans.
Declaration
protected IList<TagSpan<FoldingRegionTag>> FoldingRegionTags { get; }
Property Value
System.Collections.Generic.IList<TagSpan<FoldingRegionTag>>
|
IsMatchingCaseSensitive
Determines whether the matching between the start and end folding tags is case sensitive.
Declaration
public bool IsMatchingCaseSensitive { get; set; }
Property Value
System.Boolean
|
RegionsStartToEndMap
Contains the start / end matching pairs key-value pairs.
Declaration
protected Dictionary<string, string> RegionsStartToEndMap { get; }
Property Value
System.Collections.Generic.Dictionary<System.String, System.String>
|
Methods
BuildEndRegionBlockPattern(Dictionary<String, String>)
Prepares patters for matching end of collapsible folding section. Default implementation is to join all end strings of provided collapsible sections. Example for end words End and Finish, pattern is "End|Finish".
Declaration
protected virtual string BuildEndRegionBlockPattern(Dictionary<string, string> startToEndMap)
Parameters
System.Collections.Generic.Dictionary<System.String, System.String>
startToEndMap
Pairs of start/end collapsible section words. |
Returns
System.String
The end block pattern. |
BuildStartRegionBlockPattern(Dictionary<String, String>)
Prepares patters for matching start of collapsible folding section. Default implementation is to join all start strings of provided collapsible sections. Example for start words Start and Move, pattern is "Start|Move".
Declaration
protected virtual string BuildStartRegionBlockPattern(Dictionary<string, string> startToEndMap)
Parameters
System.Collections.Generic.Dictionary<System.String, System.String>
startToEndMap
Pairs of start/end collapsible section words. |
Returns
System.String
The start block pattern. |
CoerceFoldingSpan(Span)
Coerces the default provided folding span - span starting from the start of the region's start text and ending in the end of the region's end text.
Declaration
protected virtual Span CoerceFoldingSpan(Span defaultFoldingSpan)
Parameters
Span
defaultFoldingSpan
The default provided folding span. |
Returns
Span
The coerced folding span. |
GetFoldingRegionTitle(String, Span, String)
Gets the text displayed in the collapsed folding section.
Declaration
protected virtual string GetFoldingRegionTitle(string inputValue, Span span, string startText)
Parameters
System.String
inputValue
The document string. |
Span
span
The span defining the folded region. |
System.String
startText
The start text of the collapsible (folding) section. |
Returns
System.String
The region title. |
GetFoldingRegionToolTipContent(Span)
Gets the folding region's tooltip content.
Declaration
protected virtual string GetFoldingRegionToolTipContent(Span foldingSpan)
Parameters
Span
foldingSpan
The span starting from the regions' start text and ending after the regions' end text. |
Returns
System.String
The tooltip content. |
GetTags(NormalizedSnapshotSpanCollection)
Gets the tags.
Declaration
public override IEnumerable<TagSpan<FoldingRegionTag>> GetTags(NormalizedSnapshotSpanCollection spans)
Parameters
NormalizedSnapshotSpanCollection
spans
The spans. |
Returns
System.Collections.Generic.IEnumerable<TagSpan<FoldingRegionTag>>
Collection of folding tag spans. |
Overrides
InvalidateFoldingRegions()
Clears all collapsible (folding) regions and rebuilds them.
Declaration
protected virtual void InvalidateFoldingRegions()
ProcessNotMatchedTags(IEnumerable<FoldingRegionMatch>, IEnumerable<FoldingRegionMatch>)
Tries to match the not matched start and end tags left from the standard stack matching algorithm.
Declaration
protected virtual void ProcessNotMatchedTags(IEnumerable<FoldingRegionMatch> startTags, IEnumerable<FoldingRegionMatch> endTags)
Parameters
System.Collections.Generic.IEnumerable<FoldingRegionMatch>
startTags
The not matched start tags. |
System.Collections.Generic.IEnumerable<FoldingRegionMatch>
endTags
The not matched end tags. |
RebuildFoldingRegions()
Rebuilds the list of all collapsible (folding) regions.
Declaration
protected virtual void RebuildFoldingRegions()
RefreshStartEndMap()
Prepares the start / end matches for use as key-value pairs.
Declaration
protected virtual void RefreshStartEndMap()