Browse Source

fix #272 - TODO: XmlDoc completion

newNR
Siegfried Pammer 12 years ago
parent
commit
802239523e
  1. 1
      src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.csproj
  2. 2
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpCompletionDataFactory.cs
  3. 2
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CompletionData.cs
  4. 4
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EventCreationCompletionData.cs
  5. 36
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/XmlDocCompletionData.cs

1
src/AddIns/BackendBindings/CSharpBinding/Project/CSharpBinding.csproj

@ -79,6 +79,7 @@ @@ -79,6 +79,7 @@
<Compile Include="Src\Completion\OverrideToStringCompletionData.cs" />
<Compile Include="Src\Completion\SegmentTrackingOutputFormatter.cs" />
<Compile Include="Src\Completion\TypeCompletionData.cs" />
<Compile Include="Src\Completion\XmlDocCompletionData.cs" />
<Compile Include="Src\FormattingStrategy\CSharpFormatter.cs" />
<Compile Include="Src\FormsDesigner\CSharpDesignerGenerator.cs" />
<Compile Include="Src\FormsDesigner\CSharpDesignerLoader.cs" />

2
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CSharpCompletionDataFactory.cs

@ -151,7 +151,7 @@ namespace CSharpBinding.Completion @@ -151,7 +151,7 @@ namespace CSharpBinding.Completion
ICompletionData ICompletionDataFactory.CreateXmlDocCompletionData(string tag, string description, string tagInsertionText)
{
return new CompletionData("TODO: XmlDoc completion");
return new XmlDocCompletionData(tag, description, tagInsertionText);
}
#endregion

2
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/CompletionData.cs

@ -89,7 +89,7 @@ namespace CSharpBinding.Completion @@ -89,7 +89,7 @@ namespace CSharpBinding.Completion
protected virtual object CreateFancyDescription()
{
return null;
return Description;
}
}
}

4
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/EventCreationCompletionData.cs

@ -88,6 +88,4 @@ namespace CSharpBinding.Completion @@ -88,6 +88,4 @@ namespace CSharpBinding.Completion
}
}
}
}
}

36
src/AddIns/BackendBindings/CSharpBinding/Project/Src/Completion/XmlDocCompletionData.cs

@ -0,0 +1,36 @@ @@ -0,0 +1,36 @@
// 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.Linq;
using ICSharpCode.SharpDevelop;
using ICSharpCode.SharpDevelop.Editor.CodeCompletion;
namespace CSharpBinding.Completion
{
/// <summary>
/// Completion item for XMLDoc tags.
/// </summary>
class XmlDocCompletionData : CompletionData
{
public XmlDocCompletionData(string tag, string description, string tagInsertionText) : base(tag)
{
this.Description = description;
this.CompletionText = tagInsertionText ?? tag;
this.Image = ClassBrowserIconService.CodeTemplate;
}
public override void Complete(CompletionContext context)
{
int index = CompletionText.IndexOf('|');
if (index > -1) {
context.Editor.Document.Replace(context.StartOffset, context.Length, CompletionText.Remove(index, 1));
context.Editor.Caret.Offset = context.StartOffset + index;
} else {
base.Complete(context);
}
}
}
}
Loading…
Cancel
Save