Browse Source

Fixed SD2-773: Unable to design Boo form containing ListBox

Fixed code-completion on closure parameters.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1323 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 20 years ago
parent
commit
4f03337a8c
  1. 5
      src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/VariableLookupVisitor.cs
  2. 5
      src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/Designer/CodeDomVisitor.cs

5
src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/CodeCompletion/VariableLookupVisitor.cs

@ -26,6 +26,11 @@ namespace Grunwald.BooBinding.CodeCompletion @@ -26,6 +26,11 @@ namespace Grunwald.BooBinding.CodeCompletion
DeclarationFound(node.Declaration.Name, node.Declaration.Type, node.Initializer, node.LexicalInfo);
}
public override void OnParameterDeclaration(ParameterDeclaration node)
{
DeclarationFound(node.Name, node.Type, null, node.LexicalInfo);
}
protected override void OnError(Node node, Exception error)
{
MessageService.ShowError(error, "VariableLookupVisitor: error processing " + node);

5
src/AddIns/BackendBindings/Boo/BooBinding/Project/Src/Designer/CodeDomVisitor.cs

@ -508,7 +508,9 @@ namespace Grunwald.BooBinding.Designer @@ -508,7 +508,9 @@ namespace Grunwald.BooBinding.Designer
int count = Math.Min(m.Parameters.Count, cmie.Parameters.Count);
for (int i = 0; i < count; i++) {
CodeArrayCreateExpression cace = cmie.Parameters[i] as CodeArrayCreateExpression;
if (cace != null) {
if (cace != null && (bool)cace.UserData["unknownType"]
&& m.Parameters[i].ReturnType.ArrayDimensions > 0)
{
cace.CreateType = new CodeTypeReference(m.Parameters[i].ReturnType.FullyQualifiedName);
}
}
@ -561,6 +563,7 @@ namespace Grunwald.BooBinding.Designer @@ -561,6 +563,7 @@ namespace Grunwald.BooBinding.Designer
initializers[i] = _expression;
}
_expression = new CodeArrayCreateExpression(createType.FullyQualifiedName, initializers);
_expression.UserData["unknownType"] = node.Type != null;
}
}
}

Loading…
Cancel
Save