diff --git a/samples/AvalonEdit.Sample/AvalonEdit.Sample.csproj b/samples/AvalonEdit.Sample/AvalonEdit.Sample.csproj
index 353d94ab1b..9cc34c8284 100644
--- a/samples/AvalonEdit.Sample/AvalonEdit.Sample.csproj
+++ b/samples/AvalonEdit.Sample/AvalonEdit.Sample.csproj
@@ -7,8 +7,9 @@
WinExe
AvalonEdit.Sample
AvalonEdit.Sample
- v4.0
+ v4.5
Properties
+
x86
@@ -36,6 +37,9 @@
..\..\bin\ICSharpCode.AvalonEdit.dll
+
+ ..\..\bin\ICSharpCode.NRefactory.dll
+
3.0
@@ -100,5 +104,8 @@
+
+
+
\ No newline at end of file
diff --git a/samples/AvalonEdit.Sample/AvalonEdit.Sample.sln b/samples/AvalonEdit.Sample/AvalonEdit.Sample.sln
index 8b5b9105d5..689058acbd 100644
--- a/samples/AvalonEdit.Sample/AvalonEdit.Sample.sln
+++ b/samples/AvalonEdit.Sample/AvalonEdit.Sample.sln
@@ -1,6 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
+# SharpDevelop 5.0
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AvalonEdit.Sample", "AvalonEdit.Sample.csproj", "{13A5B497-BA12-45AE-9033-22620C3153FB}"
EndProject
Global
diff --git a/samples/AvalonEdit.Sample/BraceFoldingStrategy.cs b/samples/AvalonEdit.Sample/BraceFoldingStrategy.cs
index ddd0535a86..def5244f04 100644
--- a/samples/AvalonEdit.Sample/BraceFoldingStrategy.cs
+++ b/samples/AvalonEdit.Sample/BraceFoldingStrategy.cs
@@ -20,13 +20,14 @@ using System;
using System.Collections.Generic;
using ICSharpCode.AvalonEdit.Document;
using ICSharpCode.AvalonEdit.Folding;
+using ICSharpCode.NRefactory.Editor;
namespace AvalonEdit.Sample
{
///
/// Allows producing foldings from a document based on braces.
///
- public class BraceFoldingStrategy : AbstractFoldingStrategy
+ public class BraceFoldingStrategy
{
///
/// Gets/Sets the opening brace. The default value is '{'.
@@ -47,10 +48,17 @@ namespace AvalonEdit.Sample
this.ClosingBrace = '}';
}
+ public void UpdateFoldings(FoldingManager manager, TextDocument document)
+ {
+ int firstErrorOffset;
+ IEnumerable newFoldings = CreateNewFoldings(document, out firstErrorOffset);
+ manager.UpdateFoldings(newFoldings, firstErrorOffset);
+ }
+
///
/// Create s for the specified document.
///
- public override IEnumerable CreateNewFoldings(TextDocument document, out int firstErrorOffset)
+ public IEnumerable CreateNewFoldings(TextDocument document, out int firstErrorOffset)
{
firstErrorOffset = -1;
return CreateNewFoldings(document);
diff --git a/samples/AvalonEdit.Sample/MyCompletionData.cs b/samples/AvalonEdit.Sample/MyCompletionData.cs
index 7ab77048a3..002ef06e24 100644
--- a/samples/AvalonEdit.Sample/MyCompletionData.cs
+++ b/samples/AvalonEdit.Sample/MyCompletionData.cs
@@ -20,6 +20,7 @@ using System;
using ICSharpCode.AvalonEdit.CodeCompletion;
using ICSharpCode.AvalonEdit.Document;
using ICSharpCode.AvalonEdit.Editing;
+using ICSharpCode.NRefactory.Editor;
namespace AvalonEdit.Sample
{
diff --git a/samples/AvalonEdit.Sample/Window1.xaml.cs b/samples/AvalonEdit.Sample/Window1.xaml.cs
index 35fc9bde94..ebd4da6eb2 100755
--- a/samples/AvalonEdit.Sample/Window1.xaml.cs
+++ b/samples/AvalonEdit.Sample/Window1.xaml.cs
@@ -65,7 +65,7 @@ namespace AvalonEdit.Sample
DispatcherTimer foldingUpdateTimer = new DispatcherTimer();
foldingUpdateTimer.Interval = TimeSpan.FromSeconds(2);
- foldingUpdateTimer.Tick += foldingUpdateTimer_Tick;
+ foldingUpdateTimer.Tick += delegate { UpdateFoldings(); };
foldingUpdateTimer.Start();
}
@@ -147,7 +147,7 @@ namespace AvalonEdit.Sample
#region Folding
FoldingManager foldingManager;
- AbstractFoldingStrategy foldingStrategy;
+ object foldingStrategy;
void HighlightingComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
@@ -175,7 +175,7 @@ namespace AvalonEdit.Sample
if (foldingStrategy != null) {
if (foldingManager == null)
foldingManager = FoldingManager.Install(textEditor.TextArea);
- foldingStrategy.UpdateFoldings(foldingManager, textEditor.Document);
+ UpdateFoldings();
} else {
if (foldingManager != null) {
FoldingManager.Uninstall(foldingManager);
@@ -184,10 +184,13 @@ namespace AvalonEdit.Sample
}
}
- void foldingUpdateTimer_Tick(object sender, EventArgs e)
+ void UpdateFoldings()
{
- if (foldingStrategy != null) {
- foldingStrategy.UpdateFoldings(foldingManager, textEditor.Document);
+ if (foldingStrategy is BraceFoldingStrategy) {
+ ((BraceFoldingStrategy)foldingStrategy).UpdateFoldings(foldingManager, textEditor.Document);
+ }
+ if (foldingStrategy is XmlFoldingStrategy) {
+ ((XmlFoldingStrategy)foldingStrategy).UpdateFoldings(foldingManager, textEditor.Document);
}
}
#endregion
diff --git a/samples/AvalonEdit.Sample/app.config b/samples/AvalonEdit.Sample/app.config
new file mode 100644
index 0000000000..9008dd2558
--- /dev/null
+++ b/samples/AvalonEdit.Sample/app.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file