rename: override instead of implement for non-abstract methods

This commit is contained in:
anna
2012-02-21 12:18:19 +01:00
parent 5e31bd3055
commit 2471e079a8
5 changed files with 57 additions and 5 deletions
@@ -1,5 +1,5 @@
/*
* Copyright 2000-2009 JetBrains s.r.o.
* Copyright 2000-2012 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -79,7 +79,10 @@ public class ImplementAbstractMethodAction extends BaseIntentionAction {
}
protected String getIntentionName(final PsiMethod method) {
return CodeInsightBundle.message("intention.implement.abstract.method.text", method.getName());
return method.hasModifierProperty(PsiModifier.ABSTRACT) ?
CodeInsightBundle.message("intention.implement.abstract.method.text", method.getName()) :
CodeInsightBundle.message("intention.override.method.text", method.getName())
;
}
static class MyElementProcessor implements PsiElementProcessor {
@@ -1,4 +1,20 @@
// "Implement method 'foo'" "true"
/*
* Copyright 2000-2012 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// "Override method 'foo'" "true"
class Test {
protected void foo(){}
}
@@ -1,4 +1,20 @@
// "Implement method 'foo'" "false"
/*
* Copyright 2000-2012 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// "Override method 'foo'" "false"
class Test {
private void f<caret>oo(){}
}
@@ -1,4 +1,20 @@
// "Implement method 'foo'" "true"
/*
* Copyright 2000-2012 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// "Override method 'foo'" "true"
class Test {
protected void f<caret>oo(){}
}
@@ -160,6 +160,7 @@ intention.split.if.family=Split If
intention.split.if.text=Split into 2 if's
intention.implement.abstract.method.family=Implement Abstract Method
intention.implement.abstract.method.text=Implement method ''{0}''
intention.override.method.text=Override method ''{0}''
intention.add.annotation.family=Add Annotation
intention.add.on.demand.static.import.family=Add On Demand Static Import
intention.add.on.demand.static.import.text=Add on demand static import for ''{0}''