Browse Source

Move ISnippetElementProvider to ICSharpCode.SharpDevelop.Editor.AvalonEdit.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5565 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
pull/1/head
Daniel Grunwald 16 years ago
parent
commit
71c5d4d290
  1. 3
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/Snippets/CodeSnippet.cs
  2. 1
      src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/Snippets/SnippetManager.cs
  3. 3
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign/Project/WpfDesign.csproj
  4. 1
      src/AddIns/Misc/SharpRefactoring/Project/Src/InsertCtorSnippetRefactoring.cs
  5. 1
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj
  6. 8
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Snippets/InsertionContext.cs
  7. 1
      src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj
  8. 5
      src/Main/Base/Project/Src/Editor/AvalonEdit/ISnippetElementProvider.cs

3
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/Snippets/CodeSnippet.cs

@ -6,9 +6,9 @@ @@ -6,9 +6,9 @@
// </file>
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text.RegularExpressions;
using ICSharpCode.AvalonEdit.Snippets;
@ -16,6 +16,7 @@ using ICSharpCode.SharpDevelop; @@ -16,6 +16,7 @@ using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Dom;
using ICSharpCode.SharpDevelop.Dom.Refactoring;
using ICSharpCode.SharpDevelop.Editor;
using ICSharpCode.SharpDevelop.Editor.AvalonEdit;
using ICSharpCode.SharpDevelop.Editor.CodeCompletion;
namespace ICSharpCode.AvalonEdit.AddIn.Snippets

1
src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/Snippets/SnippetManager.cs

@ -12,6 +12,7 @@ using System.Linq; @@ -12,6 +12,7 @@ using System.Linq;
using ICSharpCode.AvalonEdit.Snippets;
using ICSharpCode.Core;
using ICSharpCode.SharpDevelop.Editor.AvalonEdit;
namespace ICSharpCode.AvalonEdit.AddIn.Snippets
{

3
src/AddIns/DisplayBindings/WpfDesign/WpfDesign/Project/WpfDesign.csproj

@ -130,7 +130,4 @@ @@ -130,7 +130,4 @@
<ItemGroup>
<CodeAnalysisDictionary Include="Configuration\CodeAnalysisDictionary.xml" />
</ItemGroup>
<ItemGroup>
<Content Include="ProfilingSessions\Session20100219_112744.sdps" />
</ItemGroup>
</Project>

1
src/AddIns/Misc/SharpRefactoring/Project/Src/InsertCtorSnippetRefactoring.cs

@ -11,6 +11,7 @@ using ICSharpCode.SharpDevelop; @@ -11,6 +11,7 @@ using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Dom;
using ICSharpCode.SharpDevelop.Dom.Refactoring;
using ICSharpCode.SharpDevelop.Editor;
using ICSharpCode.SharpDevelop.Editor.AvalonEdit;
using SharpRefactoring.Gui;
namespace SharpRefactoring

1
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.csproj

@ -280,7 +280,6 @@ @@ -280,7 +280,6 @@
<DependentUpon>VisualLine.cs</DependentUpon>
</Compile>
<Compile Include="Snippets\IActiveElement.cs" />
<Compile Include="Snippets\ISnippetElementProvider.cs" />
<Compile Include="Snippets\SnippetEventArgs.cs" />
<Compile Include="Snippets\SnippetInputHandler.cs" />
<Compile Include="Snippets\Snippet.cs" />

8
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Snippets/InsertionContext.cs

@ -90,6 +90,7 @@ namespace ICSharpCode.AvalonEdit.Snippets @@ -90,6 +90,7 @@ namespace ICSharpCode.AvalonEdit.Snippets
readonly int startPosition;
AnchorSegment wholeSnippetAnchor;
bool deactivateIfSnippetEmpty;
/// <summary>
/// Inserts text at the insertion position and advances the insertion position.
@ -163,8 +164,6 @@ namespace ICSharpCode.AvalonEdit.Snippets @@ -163,8 +164,6 @@ namespace ICSharpCode.AvalonEdit.Snippets
get { return registeredElements; }
}
bool wasNotEmpty = true;
/// <summary>
/// Calls the <see cref="IActiveElement.OnInsertionCompleted"/> method on all registered active elements
/// and raises the <see cref="InsertionCompleted"/> event.
@ -183,6 +182,7 @@ namespace ICSharpCode.AvalonEdit.Snippets @@ -183,6 +182,7 @@ namespace ICSharpCode.AvalonEdit.Snippets
int endPosition = this.InsertionPosition;
this.wholeSnippetAnchor = new AnchorSegment(Document, startPosition, endPosition - startPosition);
TextDocumentWeakEventManager.UpdateFinished.AddListener(Document, this);
deactivateIfSnippetEmpty = (endPosition != startPosition);
foreach (IActiveElement element in registeredElements) {
element.OnInsertionCompleted();
@ -194,7 +194,6 @@ namespace ICSharpCode.AvalonEdit.Snippets @@ -194,7 +194,6 @@ namespace ICSharpCode.AvalonEdit.Snippets
// deactivate immediately if there are no interactive elements
Deactivate(new SnippetEventArgs(DeactivateReason.NoActiveElements));
} else {
wasNotEmpty = false;
myInputHandler = new SnippetInputHandler(this);
// disable existing snippet input handlers - there can be only 1 active snippet
foreach (TextAreaStackedInputHandler h in TextArea.StackedInputHandlers) {
@ -252,9 +251,8 @@ namespace ICSharpCode.AvalonEdit.Snippets @@ -252,9 +251,8 @@ namespace ICSharpCode.AvalonEdit.Snippets
if (managerType == typeof(TextDocumentWeakEventManager.UpdateFinished)) {
// Deactivate if snippet is deleted. This is necessary for correctly leaving interactive
// mode if Undo is pressed after a snippet insertion.
if (wholeSnippetAnchor.Length == 0 && wasNotEmpty)
if (wholeSnippetAnchor.Length == 0 && deactivateIfSnippetEmpty)
Deactivate(new SnippetEventArgs(DeactivateReason.Deleted));
wasNotEmpty = true;
return true;
}
return false;

1
src/Main/Base/Project/ICSharpCode.SharpDevelop.csproj

@ -74,6 +74,7 @@ @@ -74,6 +74,7 @@
<Compile Include="Src\Editor\AvalonEdit\AvalonEditTextEditorAdapter.cs" />
<Compile Include="Src\Editor\AvalonEdit\AvalonEditTextSourceAdapter.cs" />
<Compile Include="Src\Editor\AvalonEdit\IndentationStrategyAdapter.cs" />
<Compile Include="Src\Editor\AvalonEdit\ISnippetElementProvider.cs" />
<Compile Include="Src\Editor\CodeCompletion\ICompletionItemHandler.cs" />
<Compile Include="Src\Editor\IEditorUIService.cs" />
<Compile Include="Src\Editor\CodeCompletion\AttributesItemProvider.cs" />

5
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Snippets/ISnippetElementProvider.cs → src/Main/Base/Project/Src/Editor/AvalonEdit/ISnippetElementProvider.cs

@ -6,11 +6,12 @@ @@ -6,11 +6,12 @@
// </file>
using System;
using ICSharpCode.AvalonEdit.Snippets;
namespace ICSharpCode.AvalonEdit.Snippets
namespace ICSharpCode.SharpDevelop.Editor.AvalonEdit
{
/// <summary>
/// Description of ISnippetElementProvider.
/// Used in "/SharpDevelop/ViewContent/AvalonEdit/SnippetElementProviders" to allow AddIns to provide custom snippet elements.
/// </summary>
public interface ISnippetElementProvider
{
Loading…
Cancel
Save