diff --git a/ICSharpCode.AvalonEdit/Folding/AbstractFoldingStrategy.cs b/ICSharpCode.AvalonEdit/Folding/AbstractFoldingStrategy.cs deleted file mode 100644 index 599d68d..0000000 --- a/ICSharpCode.AvalonEdit/Folding/AbstractFoldingStrategy.cs +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) -// This code is distributed under the GNU LGPL (for details please see \doc\license.txt) - -using System; -using System.Collections.Generic; -using ICSharpCode.AvalonEdit.Document; - -namespace ICSharpCode.AvalonEdit.Folding -{ - /// - /// Base class for folding strategies. - /// - public abstract class AbstractFoldingStrategy - { - /// - /// Create s for the specified document and updates the folding manager with them. - /// - public void UpdateFoldings(FoldingManager manager, TextDocument document) - { - int firstErrorOffset; - IEnumerable foldings = CreateNewFoldings(document, out firstErrorOffset); - manager.UpdateFoldings(foldings, firstErrorOffset); - } - - /// - /// Create s for the specified document. - /// - public abstract IEnumerable CreateNewFoldings(TextDocument document, out int firstErrorOffset); - } -} diff --git a/ICSharpCode.AvalonEdit/Folding/NewFolding.cs b/ICSharpCode.AvalonEdit/Folding/NewFolding.cs index 6670073..4917941 100644 --- a/ICSharpCode.AvalonEdit/Folding/NewFolding.cs +++ b/ICSharpCode.AvalonEdit/Folding/NewFolding.cs @@ -31,6 +31,12 @@ namespace ICSharpCode.AvalonEdit.Folding /// public bool DefaultClosed { get; set; } + /// + /// Gets/Sets whether the folding is considered to be a definition. + /// This has an effect on the 'Show Definitions only' command. + /// + public bool IsDefinition { get; set; } + /// /// Creates a new NewFolding instance. /// diff --git a/ICSharpCode.AvalonEdit/Folding/XmlFoldingStrategy.cs b/ICSharpCode.AvalonEdit/Folding/XmlFoldingStrategy.cs index 5adaa2e..81becf4 100644 --- a/ICSharpCode.AvalonEdit/Folding/XmlFoldingStrategy.cs +++ b/ICSharpCode.AvalonEdit/Folding/XmlFoldingStrategy.cs @@ -22,7 +22,7 @@ namespace ICSharpCode.AvalonEdit.Folding /// /// Determines folds for an xml string in the editor. /// - public class XmlFoldingStrategy : AbstractFoldingStrategy + public class XmlFoldingStrategy { /// /// Flag indicating whether attributes should be displayed on folded @@ -30,10 +30,20 @@ namespace ICSharpCode.AvalonEdit.Folding /// public bool ShowAttributesWhenFolded { get; set; } + /// + /// Create s for the specified document and updates the folding manager with them. + /// + public void UpdateFoldings(FoldingManager manager, TextDocument document) + { + int firstErrorOffset; + IEnumerable foldings = CreateNewFoldings(document, out firstErrorOffset); + manager.UpdateFoldings(foldings, firstErrorOffset); + } + /// /// Create s for the specified document. /// - public override IEnumerable CreateNewFoldings(TextDocument document, out int firstErrorOffset) + public IEnumerable CreateNewFoldings(TextDocument document, out int firstErrorOffset) { try { XmlTextReader reader = new XmlTextReader(document.CreateReader()); diff --git a/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj b/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj index 56d8ea7..7d336ec 100644 --- a/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj +++ b/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj @@ -150,7 +150,6 @@ -