Browse Source

Various minor changes.

In code completion, do not load XML documentation for all entities in the completion list - lazily load the XML documentation only when an element is selected.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@3794 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 17 years ago
parent
commit
423437659a
  1. 2
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs
  2. 4
      src/AddIns/BackendBindings/CSharpBinding/Project/Src/EventHandlerCompletitionDataProvider.cs
  3. 8
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Gui/CompletionWindow/ICompletionData.cs
  4. 1
      src/Main/Base/Project/Src/Commands/ChooseLayoutCommand.cs
  5. 10
      src/Main/Base/Project/Src/Commands/FileCommands.cs
  6. 1
      src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/IDEOptions/SelectCulturePanel.cs
  7. 2
      src/Main/Base/Project/Src/Gui/IViewContent.cs
  8. 2
      src/Main/Base/Project/Src/Services/AmbienceService/AmbienceService.cs
  9. 7
      src/Main/Base/Project/Src/Services/AmbienceService/NetAmbience.cs
  10. 2
      src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs
  11. 3
      src/Main/Base/Project/Src/TextEditor/ClipboardHandling.cs
  12. 108
      src/Main/Base/Project/Src/TextEditor/Gui/Editor/CompletionWindow/CodeCompletionData.cs
  13. 21
      src/Main/Base/Project/Src/TextEditor/Gui/Editor/CompletionWindow/OverrideCompletionDataProvider.cs
  14. 2
      src/Main/Base/Project/Src/TextEditor/Gui/Editor/InsightWindow/MethodInsightDataProvider.cs
  15. 1
      src/Main/ICSharpCode.Core.WinForms/MessageService/CustomDialog.cs
  16. 3
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs
  17. 6
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/LanguageProperties.cs
  18. 3
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs
  19. 2
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/XmlDoc.cs

2
src/AddIns/BackendBindings/CSharpBinding/Project/Src/CSharpCompletionBinding.cs

@ -307,7 +307,7 @@ namespace CSharpBinding @@ -307,7 +307,7 @@ namespace CSharpBinding
public RenamedClass(IClass c, string newName) : base(c.CompilationUnit, c.ClassType, c.Modifiers, c.Region, c.DeclaringType)
{
this.newName = newName;
this.Documentation = c.Documentation;
CopyDocumentationFrom(c);
this.FullyQualifiedName = c.FullyQualifiedName;
}

4
src/AddIns/BackendBindings/CSharpBinding/Project/Src/EventHandlerCompletitionDataProvider.cs

@ -113,7 +113,9 @@ namespace CSharpBinding @@ -113,7 +113,9 @@ namespace CSharpBinding
newHandlerTextBuilder.ToString(),
2+newHandlerName.Length,
newHandlerName.Length,
"new " + eventHandlerFullyQualifiedTypeName + "(" + newHandlerName +StringParser.Parse(")\n${res:CSharpBinding.GenerateNewHandlerInstructions}\n") + CodeCompletionData.GetDocumentation(resolvedClass.Documentation),
"new " + eventHandlerFullyQualifiedTypeName +
"(" + newHandlerName + StringParser.Parse(")\n${res:CSharpBinding.GenerateNewHandlerInstructions}\n")
+ CodeCompletionData.ConvertDocumentation(resolvedClass.Documentation),
resolveResult,
newHandlerCodeBuilder.ToString()
));

8
src/Libraries/ICSharpCode.TextEditor/Project/Src/Gui/CompletionWindow/ICompletionData.cs

@ -66,7 +66,7 @@ namespace ICSharpCode.TextEditor.Gui.CompletionWindow @@ -66,7 +66,7 @@ namespace ICSharpCode.TextEditor.Gui.CompletionWindow
}
}
public string Description {
public virtual string Description {
get {
return description;
}
@ -89,6 +89,12 @@ namespace ICSharpCode.TextEditor.Gui.CompletionWindow @@ -89,6 +89,12 @@ namespace ICSharpCode.TextEditor.Gui.CompletionWindow
return false;
}
public DefaultCompletionData(string text, int imageIndex)
{
this.text = text;
this.imageIndex = imageIndex;
}
public DefaultCompletionData(string text, string description, int imageIndex)
{
this.text = text;

1
src/Main/Base/Project/Src/Commands/ChooseLayoutCommand.cs

@ -116,6 +116,7 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -116,6 +116,7 @@ namespace ICSharpCode.SharpDevelop.Commands
frm.MinimizeBox = false;
frm.ClientSize = new System.Drawing.Size(400, 300);
frm.StartPosition = FormStartPosition.CenterParent;
frm.ShowInTaskbar = false;
if (frm.ShowDialog(WorkbenchSingleton.MainForm) == DialogResult.OK) {
IList<string> oldNames = new List<string>(CustomLayoutNames);

10
src/Main/Base/Project/Src/Commands/FileCommands.cs

@ -74,7 +74,7 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -74,7 +74,7 @@ namespace ICSharpCode.SharpDevelop.Commands
internal static void Save(IViewContent content)
{
if (content != null) {
if (content != null && content.IsDirty) {
if (content is ICustomizedCommands) {
if (((ICustomizedCommands)content).SaveCommand()) {
return;
@ -85,7 +85,8 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -85,7 +85,8 @@ namespace ICSharpCode.SharpDevelop.Commands
}
foreach (OpenedFile file in content.Files.ToArray()) {
Save(file);
if (file.IsDirty)
Save(file);
}
}
}
@ -145,12 +146,15 @@ namespace ICSharpCode.SharpDevelop.Commands @@ -145,12 +146,15 @@ namespace ICSharpCode.SharpDevelop.Commands
internal static void Save(IViewContent content)
{
if (content != null && !content.IsViewOnly) {
if (content != null) {
if (content is ICustomizedCommands) {
if (((ICustomizedCommands)content).SaveAsCommand()) {
return;
}
}
if (content.IsViewOnly) {
return;
}
// save the primary file only
if (content.PrimaryFile != null) {
Save(content.PrimaryFile);

1
src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/IDEOptions/SelectCulturePanel.cs

@ -74,6 +74,7 @@ namespace ICSharpCode.SharpDevelop.Gui.OptionPanels @@ -74,6 +74,7 @@ namespace ICSharpCode.SharpDevelop.Gui.OptionPanels
listView.Activation = ItemActivation.OneClick;
listView.Anchor = (System.Windows.Forms.AnchorStyles.Top |
(System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right));
listView.MultiSelect = false;
foreach (Language language in LanguageService.Languages) {
listView.Items.Add(new ListViewItem(new string[] {language.Name, language.Code}, language.ImageIndex));

2
src/Main/Base/Project/Src/Gui/IViewContent.cs

@ -106,7 +106,7 @@ namespace ICSharpCode.SharpDevelop.Gui @@ -106,7 +106,7 @@ namespace ICSharpCode.SharpDevelop.Gui
/// <summary>
/// Gets the list of files that are being edited using this view content.
/// The returned collection normally is readonly.
/// The returned collection usually is read-only.
/// </summary>
IList<OpenedFile> Files { get; }

2
src/Main/Base/Project/Src/Services/AmbienceService/AmbienceService.cs

@ -79,7 +79,7 @@ namespace ICSharpCode.SharpDevelop @@ -79,7 +79,7 @@ namespace ICSharpCode.SharpDevelop
/// <summary>
/// Gets the current ambience.
/// Might return a new ambience object, or use an existing. Not thread-safe.
/// Might return a new ambience object, or use an existing. Use this method only on the main thread.
/// </summary>
public static IAmbience GetCurrentAmbience()
{

7
src/Main/Base/Project/Src/Services/AmbienceService/NetAmbience.cs

@ -240,14 +240,17 @@ namespace ICSharpCode.SharpDevelop @@ -240,14 +240,17 @@ namespace ICSharpCode.SharpDevelop
if (returnType == null) {
return String.Empty;
}
StringBuilder builder = new StringBuilder();
string name = returnType.DotNetName;
if (UseFullyQualifiedTypeNames) {
builder.Append(name);
} else {
int pos = returnType.Namespace.Length;
builder.Append(name, pos, name.Length - pos);
string rtNamespace = returnType.Namespace;
if (name.StartsWith(rtNamespace, StringComparison.Ordinal)) {
builder.Append(name, rtNamespace.Length, name.Length - rtNamespace.Length);
}
}
return builder.ToString();

2
src/Main/Base/Project/Src/Services/Debugger/DebuggerService.cs

@ -508,7 +508,7 @@ namespace ICSharpCode.SharpDevelop.Debugging @@ -508,7 +508,7 @@ namespace ICSharpCode.SharpDevelop.Debugging
string documentation = member.Documentation;
if (documentation != null && documentation.Length > 0) {
text.Append('\n');
text.Append(ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.CodeCompletionData.GetDocumentation(documentation));
text.Append(ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.CodeCompletionData.ConvertDocumentation(documentation));
}
return text.ToString();
}

3
src/Main/Base/Project/Src/TextEditor/ClipboardHandling.cs

@ -47,7 +47,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor @@ -47,7 +47,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor
return clipboardContainsText;
}
static Thread updateThread;
static volatile Thread updateThread;
static void UpdateClipboardContainsText()
{
@ -56,6 +56,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor @@ -56,6 +56,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor
Thread t = new Thread(new ThreadStart(DoUpdate));
t.SetApartmentState(ApartmentState.STA);
t.IsBackground = true;
t.Name = "clipboard access";
updateThread = t;
t.Start();
t.Join(50); // wait a few ms in case the clipboard can be accessed without problems

108
src/Main/Base/Project/Src/TextEditor/Gui/Editor/CompletionWindow/CodeCompletionData.cs

@ -20,15 +20,12 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -20,15 +20,12 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
{
public class CodeCompletionData : ICompletionData
{
IAmbience ambience;
IEntity entity;
int imageIndex;
int overloads;
string text;
string description;
string documentation;
IClass c;
IMember member;
bool convertedDocumentation = false;
string description;
string documentation;
double priority;
/// <summary>
@ -37,7 +34,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -37,7 +34,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
/// </summary>
public IClass Class {
get {
return c;
return entity as IClass;
}
}
@ -47,7 +44,16 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -47,7 +44,16 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
/// </summary>
public IMember Member {
get {
return member;
return entity as IMember;
}
}
/// <summary>
/// Gets the class or member this CodeCompletionData object was created for.
/// </summary>
public IEntity Entity {
get {
return entity;
}
}
@ -93,9 +99,11 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -93,9 +99,11 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
if (description.Length == 0 && (documentation == null || documentation.Length == 0)) {
return "";
}
if (!convertedDocumentation && documentation != null) {
convertedDocumentation = true;
documentation = GetDocumentation(documentation);
if (documentation == null) {
if (entity != null)
documentation = ConvertDocumentation(entity.Documentation);
else
documentation = "";
}
return description + (overloads > 0 ? " " + StringParser.Parse("${res:ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor.CodeCompletionData.OverloadsCounter}", new string[,] {{"NumOverloads", overloads.ToString()}}) : String.Empty) + "\n" + documentation;
@ -107,7 +115,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -107,7 +115,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
string dotnetName;
void GetPriority(string dotnetName)
void InitializePriority(string dotnetName)
{
this.dotnetName = dotnetName;
priority = CodeCompletionDataUsageCache.GetPriority(dotnetName, true);
@ -115,77 +123,51 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -115,77 +123,51 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
public CodeCompletionData(string s, int imageIndex)
{
ambience = AmbienceService.GetCurrentAmbience();
description = documentation = String.Empty;
text = s;
this.imageIndex = imageIndex;
GetPriority(s);
InitializePriority(s);
}
public CodeCompletionData(IClass c)
{
ambience = AmbienceService.GetCurrentAmbience();
IAmbience ambience = AmbienceService.GetCurrentAmbience();
// save class (for the delegate description shortcut)
this.c = c;
this.entity = c;
imageIndex = ClassBrowserIconService.GetIcon(c);
ambience.ConversionFlags = ConversionFlags.ShowTypeParameterList;
text = ambience.Convert(c);
ambience.ConversionFlags = ConversionFlags.StandardConversionFlags | ConversionFlags.UseFullyQualifiedMemberNames;
description = ambience.Convert(c);
documentation = c.Documentation;
GetPriority(c.DotNetName);
InitializePriority(c.DotNetName);
}
public CodeCompletionData(IMethod method)
public CodeCompletionData(IMember member)
{
member = method;
imageIndex = ClassBrowserIconService.GetIcon(method);
ambience = AmbienceService.GetCurrentAmbience();
this.entity = member;
imageIndex = ClassBrowserIconService.GetIcon(member);
IAmbience ambience = AmbienceService.GetCurrentAmbience();
ambience.ConversionFlags = ConversionFlags.None;
text = ambience.Convert(method);
text = ambience.Convert(member);
ambience.ConversionFlags = ConversionFlags.StandardConversionFlags;
description = ambience.Convert(method);
documentation = method.Documentation;
GetPriority(method.DotNetName);
description = ambience.Convert(member);
InitializePriority(member.DotNetName);
}
public CodeCompletionData(IField field)
public CodeCompletionData(IMethod method) : this((IMember)method)
{
member = field;
ambience = AmbienceService.GetCurrentAmbience();
imageIndex = ClassBrowserIconService.GetIcon(field);
ambience.ConversionFlags = ConversionFlags.None;
text = ambience.Convert(field);
ambience.ConversionFlags = ConversionFlags.StandardConversionFlags;
description = ambience.Convert(field);
documentation = field.Documentation;
GetPriority(field.DotNetName);
}
public CodeCompletionData(IProperty property)
public CodeCompletionData(IField field) : this((IMember)field)
{
member = property;
ambience = AmbienceService.GetCurrentAmbience();
imageIndex = ClassBrowserIconService.GetIcon(property);
ambience.ConversionFlags = ConversionFlags.None;
text = ambience.Convert(property);
ambience.ConversionFlags = ConversionFlags.StandardConversionFlags;
description = ambience.Convert(property);
documentation = property.Documentation;
GetPriority(property.DotNetName);
}
public CodeCompletionData(IEvent e)
public CodeCompletionData(IProperty property) : this((IMember)property)
{
}
public CodeCompletionData(IEvent e) : this((IMember)e)
{
member = e;
ambience = AmbienceService.GetCurrentAmbience();
imageIndex = ClassBrowserIconService.GetIcon(e);
ambience.ConversionFlags = ConversionFlags.None;
text = ambience.Convert(e);
ambience.ConversionFlags = ConversionFlags.StandardConversionFlags;
description = ambience.Convert(e);
documentation = e.Documentation;
GetPriority(e.DotNetName);
}
public bool InsertAction(TextArea textArea, char ch)
@ -193,6 +175,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -193,6 +175,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
if (dotnetName != null) {
CodeCompletionDataUsageCache.IncrementUsage(dotnetName);
}
IClass c = this.Class;
if (c != null && text.Length > c.Name.Length) {
textArea.InsertString(text.Substring(0, c.Name.Length + 1));
TextLocation start = textArea.Caret.Position;
@ -218,13 +201,22 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -218,13 +201,22 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
return false;
}
internal static Regex whitespace = new Regex(@"\s+");
[Obsolete("Use 'ConvertDocumentation' instead.")]
public static string GetDocumentation(string doc)
{
return ConvertDocumentation(doc);
}
static readonly Regex whitespace = new Regex(@"\s+");
/// <summary>
/// Converts the xml documentation string into a plain text string.
/// </summary>
public static string GetDocumentation(string doc)
public static string ConvertDocumentation(string doc)
{
if (string.IsNullOrEmpty(doc))
return string.Empty;
System.IO.StringReader reader = new System.IO.StringReader("<docroot>" + doc + "</docroot>");
XmlTextReader xml = new XmlTextReader(reader);
StringBuilder ret = new StringBuilder();

21
src/Main/Base/Project/Src/TextEditor/Gui/Editor/CompletionWindow/OverrideCompletionDataProvider.cs

@ -75,31 +75,36 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -75,31 +75,36 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
{
IMember member;
static string GetName(IMethod method, ConversionFlags flags)
static string GetName(IMember member, ConversionFlags flags)
{
IAmbience ambience = AmbienceService.GetCurrentAmbience();
ambience.ConversionFlags = flags | ConversionFlags.ShowParameterNames;
return ambience.Convert(method);
ambience.ConversionFlags = flags | ConversionFlags.ShowParameterNames | ConversionFlags.ShowTypeParameterList;
return ambience.Convert(member);
}
public OverrideCompletionData(IMethod method)
: base(GetName(method, ConversionFlags.ShowParameterList),
"override " + GetName(method, ConversionFlags.ShowReturnType
| ConversionFlags.ShowParameterList
| ConversionFlags.ShowAccessibility)
+ "\n\n" + CodeCompletionData.GetDocumentation(method.Documentation),
ClassBrowserIconService.GetIcon(method))
{
this.member = method;
}
public OverrideCompletionData(IProperty property)
: base(property.Name, "override " + property.Name + "\n\n" + CodeCompletionData.GetDocumentation(property.Documentation),
: base(property.Name, "override " + property.Name + "\n\n" + CodeCompletionData.ConvertDocumentation(property.Documentation),
ClassBrowserIconService.GetIcon(property))
{
this.member = property;
}
public override string Description {
get {
return "override " + GetName(member, ConversionFlags.ShowReturnType
| ConversionFlags.ShowParameterList
| ConversionFlags.ShowAccessibility)
+ "\n\n" + CodeCompletionData.ConvertDocumentation(member.Documentation);
}
}
public override bool InsertAction(TextArea textArea, char ch)
{
ClassFinder context = new ClassFinder(ParserService.GetParseInformation(textArea.MotherTextEditorControl.FileName),

2
src/Main/Base/Project/Src/TextEditor/Gui/Editor/InsightWindow/MethodInsightDataProvider.cs

@ -55,7 +55,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor @@ -55,7 +55,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor
conv.ConversionFlags = ConversionFlags.StandardConversionFlags| ConversionFlags.UseFullyQualifiedMemberNames;
string documentation = method.Documentation;
string text = conv.Convert(method);
return text + "\n" + CodeCompletionData.GetDocumentation(documentation);
return text + "\n" + CodeCompletionData.ConvertDocumentation(documentation);
}
int lookupOffset;

1
src/Main/ICSharpCode.Core.WinForms/MessageService/CustomDialog.cs

@ -137,6 +137,7 @@ namespace ICSharpCode.Core.WinForms @@ -137,6 +137,7 @@ namespace ICSharpCode.Core.WinForms
this.DockPadding.Right = 4;
this.DockPadding.Top = 4;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.ShowInTaskbar = false;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "CustomDialog";

3
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/CSharp/CSharpAmbience.cs

@ -473,6 +473,9 @@ namespace ICSharpCode.SharpDevelop.Dom.CSharp @@ -473,6 +473,9 @@ namespace ICSharpCode.SharpDevelop.Dom.CSharp
if (returnType == null) {
return String.Empty;
}
returnType = returnType.GetDirectReturnType();
StringBuilder builder = new StringBuilder();
string fullName = returnType.FullyQualifiedName;

6
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/LanguageProperties.cs

@ -18,7 +18,7 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -18,7 +18,7 @@ namespace ICSharpCode.SharpDevelop.Dom
/// A case-sensitive dummy language that returns false for all Supports.. properties,
/// uses a dummy code generator and refactoring provider and returns null for CodeDomProvider.
/// </summary>
public readonly static LanguageProperties None = new LanguageProperties(StringComparer.InvariantCulture);
public readonly static LanguageProperties None = new LanguageProperties(StringComparer.Ordinal);
/// <summary>
/// C# 3.0 language properties.
@ -248,7 +248,7 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -248,7 +248,7 @@ namespace ICSharpCode.SharpDevelop.Dom
#region CSharpProperties
internal sealed class CSharpProperties : LanguageProperties
{
public CSharpProperties() : base(StringComparer.InvariantCulture) {}
public CSharpProperties() : base(StringComparer.Ordinal) {}
public override RefactoringProvider RefactoringProvider {
get {
@ -315,7 +315,7 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -315,7 +315,7 @@ namespace ICSharpCode.SharpDevelop.Dom
#region VBNetProperties
internal sealed class VBNetProperties : LanguageProperties
{
public VBNetProperties() : base(StringComparer.InvariantCultureIgnoreCase) {}
public VBNetProperties() : base(StringComparer.OrdinalIgnoreCase) {}
public override bool ShowMember(IMember member, bool showStatic)
{

3
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/VBNet/VBNetAmbience.cs

@ -484,6 +484,9 @@ namespace ICSharpCode.SharpDevelop.Dom.VBNet @@ -484,6 +484,9 @@ namespace ICSharpCode.SharpDevelop.Dom.VBNet
if (returnType == null) {
return String.Empty;
}
returnType = returnType.GetDirectReturnType();
StringBuilder builder = new StringBuilder();
string fullName = returnType.FullyQualifiedName;

2
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/XmlDoc.cs

@ -202,9 +202,11 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -202,9 +202,11 @@ namespace ICSharpCode.SharpDevelop.Dom
fs.Position = index[m].FileLocation;
string keyInFile = loader.ReadString();
if (keyInFile == key) {
//LoggingService.Debug("Got XML documentation for " + key);
resultDocu = loader.ReadString();
break;
} else {
// this is a harmless hash collision, just continue reading
LoggingService.Warn("Found " + keyInFile + " instead of " + key);
}
}

Loading…
Cancel
Save