diff --git a/AddIns/ICSharpCode.SharpDevelop.addin b/AddIns/ICSharpCode.SharpDevelop.addin index a5f3f9560f..ee75f436da 100644 --- a/AddIns/ICSharpCode.SharpDevelop.addin +++ b/AddIns/ICSharpCode.SharpDevelop.addin @@ -1262,6 +1262,9 @@ + " + expr + "<"); ResolveResult rr = ParserService.Resolve(new ExpressionResult(expr), - editor.ActiveTextAreaControl.Caret.Line, + editor.ActiveTextAreaControl.Caret.Line + 1, t.col, editor.FileName, editor.Document.TextContent); if (rr != null && rr.ResolvedType != null) { diff --git a/src/AddIns/BackendBindings/VBNetBinding/Project/Src/VBNetCompletionBinding.cs b/src/AddIns/BackendBindings/VBNetBinding/Project/Src/VBNetCompletionBinding.cs index fc1f1a1418..ea97de8b41 100644 --- a/src/AddIns/BackendBindings/VBNetBinding/Project/Src/VBNetCompletionBinding.cs +++ b/src/AddIns/BackendBindings/VBNetBinding/Project/Src/VBNetCompletionBinding.cs @@ -70,8 +70,8 @@ namespace VBNetBinding break; } parameters.Push(ParserService.Resolve(new ExpressionResult(expr), - editor.ActiveTextAreaControl.Caret.Line, - editor.ActiveTextAreaControl.Caret.Column, + editor.ActiveTextAreaControl.Caret.Line + 1, + editor.ActiveTextAreaControl.Caret.Column + 1, editor.FileName, documentText)); cursor = ef.LastExpressionStartPosition; @@ -210,7 +210,7 @@ namespace VBNetBinding string expr = lineText.Substring(t2.col); LoggingService.Debug("DeclarationTypeInference: >" + expr + "<"); ResolveResult rr = ParserService.Resolve(new ExpressionResult(expr), - editor.ActiveTextAreaControl.Caret.Line, + editor.ActiveTextAreaControl.Caret.Line + 1, t2.col, editor.FileName, editor.Document.TextContent); if (rr != null && rr.ResolvedType != null) { diff --git a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs index a75009f4a5..77573ced08 100644 --- a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs +++ b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/DesignerGenerator/AbstractDesignerGenerator.cs @@ -169,7 +169,7 @@ namespace ICSharpCode.FormsDesigner if (formClass.Name != this.formClass.Name) { LoggingService.Info("Renaming form to " + formClass.Name); - ICSharpCode.SharpDevelop.DefaultEditor.Commands.ClassBookmarkMenuBuilder.RenameClass(this.formClass, formClass.Name); + ICSharpCode.SharpDevelop.Refactoring.FindReferencesAndRenameHelper.RenameClass(this.formClass, formClass.Name); Reparse(); } diff --git a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs index 3656ca38b8..be46a1f6df 100644 --- a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs +++ b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/DynamicHelpPad.cs @@ -202,7 +202,7 @@ namespace HtmlHelp2 this.lastPoint = caret.Position; this.AddToStringCollection(String.Format("!{0}", expr.Expression)); - return ParserService.Resolve(expr, caret.Line, caret.Column, fileName, content); + return ParserService.Resolve(expr, caret.Line + 1, caret.Column + 1, fileName, content); } #endregion diff --git a/src/Main/Base/Project/Src/Gui/Pads/DefinitionViewPad.cs b/src/Main/Base/Project/Src/Gui/Pads/DefinitionViewPad.cs index 9ff78609a7..1d3a1b2068 100644 --- a/src/Main/Base/Project/Src/Gui/Pads/DefinitionViewPad.cs +++ b/src/Main/Base/Project/Src/Gui/Pads/DefinitionViewPad.cs @@ -83,7 +83,7 @@ namespace ICSharpCode.SharpDevelop.Gui string content = (e == null) ? ctl.Text : e.Content; ExpressionResult expr = expressionFinder.FindFullExpression(content, caret.Offset); if (expr.Expression == null) return null; - return ParserService.Resolve(expr, caret.Line, caret.Column, fileName, content); + return ParserService.Resolve(expr, caret.Line + 1, caret.Column + 1, fileName, content); } delegate void OpenFileDelegate(FilePosition pos); diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs b/src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs index b90022eae5..e0c7421efb 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/CodeGenerator.cs @@ -586,7 +586,10 @@ namespace ICSharpCode.SharpDevelop.Refactoring } StringBuilder txt = new StringBuilder(); foreach (IUsing us in newUsings) { - txt.Append(GenerateCode(ConvertUsing(us), indentation)); + if (us == null) + txt.AppendLine(indentation); + else + txt.Append(GenerateCode(ConvertUsing(us), indentation)); } document.Insert(insertionOffset, txt.ToString()); actionCount++; document.UndoStack.UndoLast(actionCount); diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/FindReferencesAndRenameHelper.cs b/src/Main/Base/Project/Src/Services/RefactoringService/FindReferencesAndRenameHelper.cs index d36cd1e069..42139175b4 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/FindReferencesAndRenameHelper.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/FindReferencesAndRenameHelper.cs @@ -7,6 +7,7 @@ using System; using System.Collections.Generic; +using System.Drawing; using ICSharpCode.Core; using ICSharpCode.SharpDevelop.DefaultEditor.Gui.Editor; using ICSharpCode.SharpDevelop.Dom; @@ -19,6 +20,114 @@ namespace ICSharpCode.SharpDevelop.Refactoring { public static class FindReferencesAndRenameHelper { + #region Rename Class + public static void RenameClass(IClass c) + { + string newName = MessageService.ShowInputBox("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameClassText}", c.Name); + if (!FindReferencesAndRenameHelper.CheckName(newName, c.Name)) return; + + RenameClass(c, newName); + } + + public static void RenameClass(IClass c, string newName) + { + c = c.GetCompoundClass(); // get compound class if class is partial + + List list = RefactoringService.FindReferences(c, null); + if (list == null) return; + + // Add the class declaration(s) + foreach (IClass part in GetClassParts(c)) { + AddDeclarationAsReference(list, part.CompilationUnit.FileName, part.Region, part.Name); + } + + // Add the constructors + foreach (IMethod m in c.Methods) { + if (m.IsConstructor) { + AddDeclarationAsReference(list, m.DeclaringType.CompilationUnit.FileName, m.Region, c.Name); + } + } + + FindReferencesAndRenameHelper.RenameReferences(list, newName); + } + + static IList GetClassParts(IClass c) + { + CompoundClass cc = c as CompoundClass; + if (cc != null) { + return cc.Parts; + } else { + return new IClass[] {c}; + } + } + + static void AddDeclarationAsReference(List list, string fileName, DomRegion region, string name) + { + if (fileName == null) + return; + ProvidedDocumentInformation documentInformation = FindReferencesAndRenameHelper.GetDocumentInformation(fileName); + int offset = documentInformation.CreateDocument().PositionToOffset(new Point(region.BeginColumn - 1, region.BeginLine - 1)); + string text = documentInformation.TextBuffer.GetText(offset, Math.Min(name.Length + 30, documentInformation.TextBuffer.Length - offset - 1)); + int offsetChange = text.IndexOf(name); + if (offsetChange < 0) + return; + offset += offsetChange; + foreach (Reference r in list) { + if (r.Offset == offset) + return; + } + list.Add(new Reference(fileName, offset, name.Length, name, null)); + } + #endregion + + #region Rename member + public static void RenameMember(IMember member) + { + string newName = MessageService.ShowInputBox("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameMemberText}", member.Name); + if (!FindReferencesAndRenameHelper.CheckName(newName, member.Name)) return; + + RenameMember(member, newName); + } + + public static void RenameMember(IMember member, string newName) + { + List list = RefactoringService.FindReferences(member, null); + if (list == null) return; + FindReferencesAndRenameHelper.RenameReferences(list, newName); + + if (member is IField) { + IProperty property = FindProperty((IField)member); + if (property != null) { + string newPropertyName = member.DeclaringType.ProjectContent.Language.CodeGenerator.GetPropertyName(newName); + if (newPropertyName != newName && newPropertyName != property.Name) { + if (MessageService.AskQuestionFormatted("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameFieldAndProperty}", property.FullyQualifiedName, newPropertyName)) { + list = RefactoringService.FindReferences(property, null); + if (list != null) { + FindReferencesAndRenameHelper.RenameReferences(list, newPropertyName); + } + } + } + } + } + } + + internal static IProperty FindProperty(IField field) + { + LanguageProperties language = field.DeclaringType.ProjectContent.Language; + if (language.CodeGenerator == null) return null; + string propertyName = language.CodeGenerator.GetPropertyName(field.Name); + IProperty foundProperty = null; + foreach (IProperty prop in field.DeclaringType.Properties) { + if (language.NameComparer.Equals(propertyName, prop.Name)) { + foundProperty = prop; + break; + } + } + return foundProperty; + } + #endregion + + #region Common helper functions public static ProvidedDocumentInformation GetDocumentInformation(string fileName) { foreach (IViewContent content in WorkbenchSingleton.Workbench.ViewContentCollection) { @@ -160,5 +269,6 @@ namespace ICSharpCode.SharpDevelop.Refactoring ParserService.ParseViewContent(viewContent); } } + #endregion } } diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryRefactoringProvider.cs b/src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryRefactoringProvider.cs index f8e115091f..c06d71d22a 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryRefactoringProvider.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/NRefactoryRefactoringProvider.cs @@ -19,11 +19,12 @@ namespace ICSharpCode.SharpDevelop.Refactoring { public static readonly NRefactoryRefactoringProvider NRefactoryProviderInstance = new NRefactoryRefactoringProvider(); + #region FindUnusedUsingDeclarations protected class PossibleTypeReference { - internal string Name; - internal bool Global; - internal int TypeParameterCount; + public string Name; + public bool Global; + public int TypeParameterCount; public PossibleTypeReference(string name) { @@ -66,9 +67,16 @@ namespace ICSharpCode.SharpDevelop.Refactoring list[new PossibleTypeReference(typeReference)] = data; return base.Visit(typeReference, data); } + + public override object Visit(ICSharpCode.NRefactory.Parser.AST.Attribute attribute, object data) + { + list[new PossibleTypeReference(attribute.Name)] = data; + list[new PossibleTypeReference(attribute.Name + "Attribute")] = data; + return base.Visit(attribute, data); + } } - protected Dictionary FindPossibleTypeReferences(string extension, string fileContent) + protected virtual Dictionary FindPossibleTypeReferences(string extension, string fileContent) { NR.IParser parser; if (extension.Equals(".cs", StringComparison.InvariantCultureIgnoreCase)) @@ -125,5 +133,6 @@ namespace ICSharpCode.SharpDevelop.Refactoring } return list; } + #endregion } } diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/NamespaceRefactoringService.cs b/src/Main/Base/Project/Src/Services/RefactoringService/NamespaceRefactoringService.cs index 8625eedf6f..b69c4377a4 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/NamespaceRefactoringService.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/NamespaceRefactoringService.cs @@ -15,6 +15,11 @@ namespace ICSharpCode.SharpDevelop.Refactoring { public static class NamespaceRefactoringService { + internal static bool IsSystemNamespace(string ns) + { + return ns.StartsWith("System.") || ns == "System"; + } + static int CompareUsings(IUsing a, IUsing b) { if (a.HasAliases != b.HasAliases) @@ -22,12 +27,10 @@ namespace ICSharpCode.SharpDevelop.Refactoring if (a.Usings.Count != 0 && b.Usings.Count != 0) { string u1 = a.Usings[0]; string u2 = b.Usings[0]; - if (u1.StartsWith("System.") || u1 == "System") { - if (!(u2.StartsWith("System.") || u2 == "System")) - return -1; - } else { - if (u2.StartsWith("System.") || u2 == "System") - return 1; + if (IsSystemNamespace(u1) && !IsSystemNamespace(u2)) { + return -1; + } else if (!IsSystemNamespace(u1) && IsSystemNamespace(u2)) { + return 1; } return a.Usings[0].CompareTo(b.Usings[0]); } @@ -64,6 +67,22 @@ namespace ICSharpCode.SharpDevelop.Refactoring } } + // put empty line after last System namespace + if (sort && newUsings.Count > 1 && newUsings[0].Usings.Count > 0) { + bool inSystem = IsSystemNamespace(newUsings[0].Usings[0]); + int inSystemCount = 1; + for (int i = 1; inSystem && i < newUsings.Count; i++) { + inSystem = newUsings[i].Usings.Count > 0 && IsSystemNamespace(newUsings[i].Usings[0]); + if (inSystem) { + inSystemCount++; + } else { + if (inSystemCount > 2) { // only use empty line when there are more than 2 system namespaces + newUsings.Insert(i, null); + } + } + } + } + cu.ProjectContent.Language.CodeGenerator.ReplaceUsings(document, cu.Usings, newUsings); } } diff --git a/src/Main/Base/Project/Src/Services/RefactoringService/RefactorMenu.cs b/src/Main/Base/Project/Src/Services/RefactoringService/RefactorMenu.cs index 6a5d90f314..8aad222230 100644 --- a/src/Main/Base/Project/Src/Services/RefactoringService/RefactorMenu.cs +++ b/src/Main/Base/Project/Src/Services/RefactoringService/RefactorMenu.cs @@ -74,6 +74,18 @@ namespace ICSharpCode.SharpDevelop.Refactoring provider.TextEditorControl.Refresh(); } + protected ResolveResult ResolveAtCaret(TextEditorControl textEditor) + { + string fileName = textEditor.FileName; + IExpressionFinder expressionFinder = ParserService.GetExpressionFinder(fileName); + if (expressionFinder == null) return null; + Caret caret = textEditor.ActiveTextAreaControl.Caret; + string content = textEditor.Document.TextContent; + ExpressionResult expr = expressionFinder.FindFullExpression(content, caret.Offset); + if (expr.Expression == null) return null; + return ParserService.Resolve(expr, caret.Line + 1, caret.Column + 1, fileName, content); + } + protected abstract void Run(TextEditorControl textEditor, RefactoringProvider provider); } @@ -84,4 +96,45 @@ namespace ICSharpCode.SharpDevelop.Refactoring NamespaceRefactoringService.ManageUsings(textEditor.FileName, textEditor.Document, true, true); } } + + public class RenameCommand : AbstractRefactoringCommand + { + protected override void Run(TextEditorControl textEditor, RefactoringProvider provider) + { + ResolveResult rr = ResolveAtCaret(textEditor); + if (rr is MixedResolveResult) rr = (rr as MixedResolveResult).PrimaryResult; + if (rr is TypeResolveResult) { + IClass c = (rr as TypeResolveResult).ResolvedClass; + if (c == null) { + ShowUnknownSymbolError(); + } else if (c.CompilationUnit.FileName == null) { + MessageService.ShowMessage("The type cannot be renamed because it is not defined in user code."); + } else { + FindReferencesAndRenameHelper.RenameClass(c); + } + } else if (rr is MemberResolveResult) { + Rename((rr as MemberResolveResult).ResolvedMember); + } else if (rr is MethodResolveResult) { + Rename((rr as MethodResolveResult).GetMethodIfSingleOverload()); + } else { + ShowUnknownSymbolError(); + } + } + + static void ShowUnknownSymbolError() + { + MessageService.ShowMessage("The element at the caret position cannot be renamed."); + } + + static void Rename(IMember member) + { + if (member == null) { + ShowUnknownSymbolError(); + } else if (member.DeclaringType.CompilationUnit.FileName == null) { + MessageService.ShowMessage("The member cannot be renamed because it is not defined in user code."); + } else { + FindReferencesAndRenameHelper.RenameMember(member); + } + } + } } diff --git a/src/Main/Base/Project/Src/TextEditor/Commands/ClassBookmarkMenuBuilder.cs b/src/Main/Base/Project/Src/TextEditor/Commands/ClassBookmarkMenuBuilder.cs index a892c11567..0149642a59 100644 --- a/src/Main/Base/Project/Src/TextEditor/Commands/ClassBookmarkMenuBuilder.cs +++ b/src/Main/Base/Project/Src/TextEditor/Commands/ClassBookmarkMenuBuilder.cs @@ -132,70 +132,12 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands FileService.JumpToFilePosition(fileName, baseClass.Region.BeginLine - 1, baseClass.Region.BeginColumn - 1); } } - } void Rename(object sender, EventArgs e) { MenuCommand item = (MenuCommand)sender; - IClass c = (IClass)item.Tag; - string newName = MessageService.ShowInputBox("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameClassText}", c.Name); - if (!FindReferencesAndRenameHelper.CheckName(newName, c.Name)) return; - - RenameClass(c, newName); - } - - public static void RenameClass(IClass c, string newName) - { - c = c.GetCompoundClass(); // get compound class if class is partial - - List list = RefactoringService.FindReferences(c, null); - if (list == null) return; - - // Add the class declaration(s) - foreach (IClass part in GetClassParts(c)) { - AddDeclarationAsReference(list, part.CompilationUnit.FileName, part.Region, part.Name); - } - - // Add the constructors - foreach (IMethod m in c.Methods) { - if (m.IsConstructor) { - AddDeclarationAsReference(list, m.DeclaringType.CompilationUnit.FileName, m.Region, c.Name); - } - } - - FindReferencesAndRenameHelper.RenameReferences(list, newName); - } - - static void AddDeclarationAsReference(List list, string fileName, DomRegion region, string name) - { - if (fileName == null) - return; - ProvidedDocumentInformation documentInformation = FindReferencesAndRenameHelper.GetDocumentInformation(fileName); - int offset = documentInformation.CreateDocument().PositionToOffset(new Point(region.BeginColumn - 1, region.BeginLine - 1)); - string text = documentInformation.TextBuffer.GetText(offset, Math.Min(name.Length + 30, documentInformation.TextBuffer.Length - offset - 1)); - int offsetChange = text.IndexOf(name); - if (offsetChange < 0) - return; - offset += offsetChange; - foreach (Reference r in list) { - if (r.Offset == offset) - return; - } - list.Add(new Reference(fileName, offset, name.Length, name, null)); - } - - static List GetClassParts(IClass c) - { - List list; - CompoundClass cc = c as CompoundClass; - if (cc != null) { - list = cc.Parts; - } else { - list = new List(1); - list.Add(c); - } - return list; + FindReferencesAndRenameHelper.RenameClass((IClass)item.Tag); } void FindDerivedClasses(object sender, EventArgs e) diff --git a/src/Main/Base/Project/Src/TextEditor/Commands/ClassMemberMenuBuilder.cs b/src/Main/Base/Project/Src/TextEditor/Commands/ClassMemberMenuBuilder.cs index b093754196..f7ac9e7d7d 100644 --- a/src/Main/Base/Project/Src/TextEditor/Commands/ClassMemberMenuBuilder.cs +++ b/src/Main/Base/Project/Src/TextEditor/Commands/ClassMemberMenuBuilder.cs @@ -70,7 +70,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands list.Add(cmd); if (member is IField) { - IProperty foundProperty = FindProperty(member as IField); + IProperty foundProperty = FindReferencesAndRenameHelper.FindProperty(member as IField); if (foundProperty != null) { cmd = new MenuCommand("${res:SharpDevelop.Refactoring.GoToProperty}", GotoTagMember); cmd.Tag = foundProperty; @@ -104,21 +104,6 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands return list.ToArray(); } - IProperty FindProperty(IField field) - { - LanguageProperties language = field.DeclaringType.ProjectContent.Language; - if (language.CodeGenerator == null) return null; - string propertyName = language.CodeGenerator.GetPropertyName(field.Name); - IProperty foundProperty = null; - foreach (IProperty prop in field.DeclaringType.Properties) { - if (language.NameComparer.Equals(propertyName, prop.Name)) { - foundProperty = prop; - break; - } - } - return foundProperty; - } - void CreateProperty(object sender, EventArgs e) { CreateProperty(sender, e, true); @@ -178,28 +163,7 @@ namespace ICSharpCode.SharpDevelop.DefaultEditor.Commands void Rename(object sender, EventArgs e) { MenuCommand item = (MenuCommand)sender; - IMember member = (IMember)item.Tag; - string newName = MessageService.ShowInputBox("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameMemberText}", member.Name); - if (!FindReferencesAndRenameHelper.CheckName(newName, member.Name)) return; - - List list = RefactoringService.FindReferences(member, null); - if (list == null) return; - FindReferencesAndRenameHelper.RenameReferences(list, newName); - - if (member is IField) { - IProperty property = FindProperty((IField)member); - if (property != null) { - string newPropertyName = member.DeclaringType.ProjectContent.Language.CodeGenerator.GetPropertyName(newName); - if (newPropertyName != newName && newPropertyName != property.Name) { - if (MessageService.AskQuestionFormatted("${res:SharpDevelop.Refactoring.Rename}", "${res:SharpDevelop.Refactoring.RenameFieldAndProperty}", property.FullyQualifiedName, newPropertyName)) { - list = RefactoringService.FindReferences(property, null); - if (list != null) { - FindReferencesAndRenameHelper.RenameReferences(list, newPropertyName); - } - } - } - } - } + FindReferencesAndRenameHelper.RenameMember((IMember)item.Tag); } void FindOverrides(object sender, EventArgs e) diff --git a/src/Main/Base/Test/GenericResolverTests.cs b/src/Main/Base/Test/GenericResolverTests.cs index 06ea629f7f..b42add86cf 100644 --- a/src/Main/Base/Test/GenericResolverTests.cs +++ b/src/Main/Base/Test/GenericResolverTests.cs @@ -6,12 +6,8 @@ // using System; -using System.Collections; -using System.IO; -using NUnit.Framework; -using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; -using ICSharpCode.SharpDevelop.Dom.NRefactoryResolver; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/InnerClassesResolverTests.cs b/src/Main/Base/Test/InnerClassesResolverTests.cs index a3e2658842..9375d99273 100644 --- a/src/Main/Base/Test/InnerClassesResolverTests.cs +++ b/src/Main/Base/Test/InnerClassesResolverTests.cs @@ -7,11 +7,8 @@ using System; using System.Collections; -using System.IO; -using NUnit.Framework; -using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; -using ICSharpCode.SharpDevelop.Dom.NRefactoryResolver; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/MemberLookupHelperTests.cs b/src/Main/Base/Test/MemberLookupHelperTests.cs index 290b832bec..f49cdb6255 100644 --- a/src/Main/Base/Test/MemberLookupHelperTests.cs +++ b/src/Main/Base/Test/MemberLookupHelperTests.cs @@ -6,10 +6,9 @@ // using System; -using System.Collections.Generic; -using NUnit.Framework; using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/NRefactoryResolverTests.cs b/src/Main/Base/Test/NRefactoryResolverTests.cs index a612d0836f..600e117ac6 100644 --- a/src/Main/Base/Test/NRefactoryResolverTests.cs +++ b/src/Main/Base/Test/NRefactoryResolverTests.cs @@ -8,10 +8,11 @@ using System; using System.Collections; using System.IO; -using NUnit.Framework; + using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; using ICSharpCode.SharpDevelop.Dom.NRefactoryResolver; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/NoSuchExecutableTestFixture.cs b/src/Main/Base/Test/NoSuchExecutableTestFixture.cs index d5674f6fb5..0e4ca671dc 100644 --- a/src/Main/Base/Test/NoSuchExecutableTestFixture.cs +++ b/src/Main/Base/Test/NoSuchExecutableTestFixture.cs @@ -7,8 +7,8 @@ using System; using System.ComponentModel; -using NUnit.Framework; using ICSharpCode.SharpDevelop.Util; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/OutputTextLineParserTestFixture.cs b/src/Main/Base/Test/OutputTextLineParserTestFixture.cs index 9dfe451775..d696c13db3 100644 --- a/src/Main/Base/Test/OutputTextLineParserTestFixture.cs +++ b/src/Main/Base/Test/OutputTextLineParserTestFixture.cs @@ -5,9 +5,9 @@ // $Revision$ // +using System; using ICSharpCode.SharpDevelop.Gui; using NUnit.Framework; -using System; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/OverloadFinding.cs b/src/Main/Base/Test/OverloadFinding.cs index 14edf9ce04..cef9e5890b 100644 --- a/src/Main/Base/Test/OverloadFinding.cs +++ b/src/Main/Base/Test/OverloadFinding.cs @@ -7,8 +7,8 @@ using System; using System.Text; -using NUnit.Framework; using ICSharpCode.SharpDevelop.Dom; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/ProcessExitedTestFixture.cs b/src/Main/Base/Test/ProcessExitedTestFixture.cs index c007cc2026..32aab8f4a7 100644 --- a/src/Main/Base/Test/ProcessExitedTestFixture.cs +++ b/src/Main/Base/Test/ProcessExitedTestFixture.cs @@ -5,13 +5,13 @@ // $Revision$ // -using ICSharpCode.SharpDevelop.Util; -using NUnit.Framework; using System; -using System.Diagnostics; using System.IO; using System.Threading; +using ICSharpCode.SharpDevelop.Util; +using NUnit.Framework; + namespace ICSharpCode.SharpDevelop.Tests { [TestFixture] diff --git a/src/Main/Base/Test/ProcessRunnerNotStartedTestFixture.cs b/src/Main/Base/Test/ProcessRunnerNotStartedTestFixture.cs index 037a23833f..5d7bcaf3e1 100644 --- a/src/Main/Base/Test/ProcessRunnerNotStartedTestFixture.cs +++ b/src/Main/Base/Test/ProcessRunnerNotStartedTestFixture.cs @@ -6,8 +6,8 @@ // using System; -using NUnit.Framework; using ICSharpCode.SharpDevelop.Util; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/ReflectionLayerTests.cs b/src/Main/Base/Test/ReflectionLayerTests.cs index bc50351bd3..763b2f19f8 100644 --- a/src/Main/Base/Test/ReflectionLayerTests.cs +++ b/src/Main/Base/Test/ReflectionLayerTests.cs @@ -9,9 +9,10 @@ using System; using System.Collections.Generic; using System.IO; using System.Reflection; -using NUnit.Framework; + using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { diff --git a/src/Main/Base/Test/SearchClassTests.cs b/src/Main/Base/Test/SearchClassTests.cs index 2c88b54fd5..ed40776f71 100644 --- a/src/Main/Base/Test/SearchClassTests.cs +++ b/src/Main/Base/Test/SearchClassTests.cs @@ -6,10 +6,9 @@ // using System; -using System.Collections.Generic; -using NUnit.Framework; using ICSharpCode.Core; using ICSharpCode.SharpDevelop.Dom; +using NUnit.Framework; namespace ICSharpCode.SharpDevelop.Tests { @@ -40,7 +39,7 @@ namespace ICSharpCode.SharpDevelop.Tests IReturnType SearchType(string type) { ICompilationUnit cu = Prepare(LanguageProperties.CSharp); - IReturnType c = cu.ProjectContent.SearchType(type, 0, null, cu, 1, 1); + IReturnType c = cu.ProjectContent.SearchType(new SearchTypeRequest(type, 0, null, cu, 1, 1)).Result; Assert.IsNotNull(c, type + "not found"); return c; } @@ -48,7 +47,7 @@ namespace ICSharpCode.SharpDevelop.Tests IReturnType SearchTypeVB(string type) { ICompilationUnit cu = Prepare(LanguageProperties.VBNet); - IReturnType c = cu.ProjectContent.SearchType(type, 0, null, cu, 1, 1); + IReturnType c = cu.ProjectContent.SearchType(new SearchTypeRequest(type, 0, null, cu, 1, 1)).Result; Assert.IsNotNull(c, type + "not found"); return c; } @@ -116,7 +115,7 @@ namespace ICSharpCode.SharpDevelop.Tests public void SearchArrayList() { ICompilationUnit cu = Prepare(LanguageProperties.CSharp); - IReturnType c = cu.ProjectContent.SearchType("Collections.ArrayList", 0, null, cu, 1, 1); + IReturnType c = cu.ProjectContent.SearchType(new SearchTypeRequest("Collections.ArrayList", 0, null, cu, 1, 1)).Result; Assert.IsNull(c, "Namespaces should not be imported in C#"); } diff --git a/src/Main/Base/Test/SearchGenericClassTests.cs b/src/Main/Base/Test/SearchGenericClassTests.cs index 4c4483dbf5..f1cc75d51e 100644 --- a/src/Main/Base/Test/SearchGenericClassTests.cs +++ b/src/Main/Base/Test/SearchGenericClassTests.cs @@ -46,7 +46,7 @@ namespace ICSharpCode.SharpDevelop.Tests IReturnType SearchType(string type, int typeParameterCount) { ICompilationUnit cu = Prepare(LanguageProperties.CSharp); - IReturnType c = cu.ProjectContent.SearchType(type, typeParameterCount, null, cu, 1, 1); + IReturnType c = cu.ProjectContent.SearchType(new SearchTypeRequest(type, typeParameterCount, null, cu, 1, 1)).Result; Assert.IsNotNull(c, type + "not found"); return c; } @@ -54,7 +54,7 @@ namespace ICSharpCode.SharpDevelop.Tests IReturnType SearchTypeVB(string type, int typeParameterCount) { ICompilationUnit cu = Prepare(LanguageProperties.VBNet); - IReturnType c = cu.ProjectContent.SearchType(type, typeParameterCount, null, cu, 1, 1); + IReturnType c = cu.ProjectContent.SearchType(new SearchTypeRequest(type, typeParameterCount, null, cu, 1, 1)).Result; Assert.IsNotNull(c, type + "not found"); return c; } diff --git a/src/Main/Base/Test/StandardOutputFromProcessTestFixture.cs b/src/Main/Base/Test/StandardOutputFromProcessTestFixture.cs index 9101ea555d..ff0459d9d4 100644 --- a/src/Main/Base/Test/StandardOutputFromProcessTestFixture.cs +++ b/src/Main/Base/Test/StandardOutputFromProcessTestFixture.cs @@ -5,13 +5,14 @@ // $Revision$ // -using ICSharpCode.SharpDevelop.Util; -using NUnit.Framework; using System; using System.Diagnostics; using System.IO; using System.Text; +using ICSharpCode.SharpDevelop.Util; +using NUnit.Framework; + namespace ICSharpCode.SharpDevelop.Tests { ///