static void Rename(IClass c)
 {
     if (c == null)
     {
         ShowUnknownSymbolError();
     }
     else if (c.CompilationUnit.FileName == null)
     {
         ShowNoUserCodeError();
     }
     else
     {
         FindReferencesAndRenameHelper.RenameClass(c);
     }
 }
Beispiel #2
0
        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)
                {
                    ShowNoUserCodeError();
                }
                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();
            }
        }