Browse Source

Fixed SD2-1164: Code completion doesn't appears for referenced projects namespaces content.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@1935 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 20 years ago
parent
commit
b222c73868
  1. 4
      src/AddIns/DisplayBindings/IconEditor/IconEditorAddIn/IconEditorAddIn.addin
  2. 16
      src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/Selection/DefaultSelection.cs
  3. 10
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/CompoundClass.cs
  4. 2
      src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs

4
src/AddIns/DisplayBindings/IconEditor/IconEditorAddIn/IconEditorAddIn.addin

@ -1,7 +1,7 @@ @@ -1,7 +1,7 @@
<AddIn name = "IconEditorAddIn"
<AddIn name = "IconViewerAddIn"
author = "Daniel Grunwald"
copyright = "prj:///doc/copyright.txt"
description = "Allows editing of .ico files inside SharpDevelop">
description = "Allows viewing .ico files inside SharpDevelop">
<Manifest>
<Identity name = "ICSharpCode.IconEditor"/>

16
src/Libraries/ICSharpCode.TextEditor/Project/Src/Document/Selection/DefaultSelection.cs

@ -15,10 +15,10 @@ namespace ICSharpCode.TextEditor.Document @@ -15,10 +15,10 @@ namespace ICSharpCode.TextEditor.Document
/// </summary>
public class DefaultSelection : ISelection
{
IDocument document = null;
bool isRectangularSelection = false;
Point startPosition = new Point(-1, -1);
Point endPosition = new Point(-1, -1);
IDocument document;
bool isRectangularSelection;
Point startPosition;
Point endPosition;
public Point StartPosition {
get {
@ -95,7 +95,7 @@ namespace ICSharpCode.TextEditor.Document @@ -95,7 +95,7 @@ namespace ICSharpCode.TextEditor.Document
/// <summary>
/// Creates a new instance of <see cref="DefaultSelection"/>
/// </summary>
/// </summary>
public DefaultSelection(IDocument document, Point startPosition, Point endPosition)
{
this.document = document;
@ -112,9 +112,11 @@ namespace ICSharpCode.TextEditor.Document @@ -112,9 +112,11 @@ namespace ICSharpCode.TextEditor.Document
}
public bool ContainsPosition(Point position)
{
if (this.IsEmpty)
return false;
return startPosition.Y < position.Y && position.Y < endPosition.Y ||
startPosition.Y == position.Y && startPosition.X <= position.X && (startPosition.Y != endPosition.Y || position.X <= endPosition.X) ||
endPosition.Y == position.Y && startPosition.Y != endPosition.Y && position.X <= endPosition.X;
startPosition.Y == position.Y && startPosition.X <= position.X && (startPosition.Y != endPosition.Y || position.X <= endPosition.X) ||
endPosition.Y == position.Y && startPosition.Y != endPosition.Y && position.X <= endPosition.X;
}
public bool ContainsOffset(int offset)

10
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Implementations/CompoundClass.cs

@ -49,11 +49,16 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -49,11 +49,16 @@ namespace ICSharpCode.SharpDevelop.Dom
this.Region = parts[0].Region;
ModifierEnum modifier = ModifierEnum.None;
const ModifierEnum defaultClassVisibility = ModifierEnum.Internal;
this.BaseTypes.Clear();
this.TypeParameters.Clear();
this.Attributes.Clear();
foreach (IClass part in parts) {
modifier |= part.Modifiers;
if ((part.Modifiers & ModifierEnum.VisibilityMask) != defaultClassVisibility) {
modifier |= part.Modifiers;
} else {
modifier |= part.Modifiers &~ ModifierEnum.VisibilityMask;
}
foreach (IReturnType rt in part.BaseTypes) {
if (!rt.IsDefaultReturnType || rt.FullyQualifiedName != "System.Object") {
this.BaseTypes.Add(rt);
@ -66,6 +71,9 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -66,6 +71,9 @@ namespace ICSharpCode.SharpDevelop.Dom
this.Attributes.Add(attribute);
}
}
if ((modifier & ModifierEnum.VisibilityMask) == ModifierEnum.None) {
modifier |= defaultClassVisibility;
}
this.Modifiers = modifier;
}

2
src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/ProjectContent/DefaultProjectContent.cs

@ -620,7 +620,7 @@ namespace ICSharpCode.SharpDevelop.Dom @@ -620,7 +620,7 @@ namespace ICSharpCode.SharpDevelop.Dom
NamespaceStruct ns = dict[nameSpace];
int newCapacity = list.Count + ns.Classes.Count + ns.SubNamespaces.Count;
if (list.Capacity < newCapacity)
list.Capacity = newCapacity;
list.Capacity = Math.Max(list.Count * 2, newCapacity);
foreach (IClass c in ns.Classes) {
if (c is GenericClassContainer) {
foreach (IClass realClass in ((GenericClassContainer)c).RealClasses) {

Loading…
Cancel
Save