From 2471e079a8bf86a459d5975f1771d6b9a53fa89f Mon Sep 17 00:00:00 2001 From: anna Date: Tue, 21 Feb 2012 11:09:52 +0100 Subject: [PATCH] rename: override instead of implement for non-abstract methods --- .../impl/ImplementAbstractMethodAction.java | 7 +++++-- .../overrideMethod/afterProtectedMethod.java | 18 +++++++++++++++++- .../overrideMethod/beforePrivateMethod.java | 18 +++++++++++++++++- .../overrideMethod/beforeProtectedMethod.java | 18 +++++++++++++++++- .../src/messages/CodeInsightBundle.properties | 1 + 5 files changed, 57 insertions(+), 5 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInsight/intention/impl/ImplementAbstractMethodAction.java b/java/java-impl/src/com/intellij/codeInsight/intention/impl/ImplementAbstractMethodAction.java index cafe0f34e4bf..7e88af6c6766 100644 --- a/java/java-impl/src/com/intellij/codeInsight/intention/impl/ImplementAbstractMethodAction.java +++ b/java/java-impl/src/com/intellij/codeInsight/intention/impl/ImplementAbstractMethodAction.java @@ -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 { diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/afterProtectedMethod.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/afterProtectedMethod.java index f8719f2651b3..c00be390d07a 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/afterProtectedMethod.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/afterProtectedMethod.java @@ -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(){} } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforePrivateMethod.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforePrivateMethod.java index 18bffdf3f0cd..18629818d098 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforePrivateMethod.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforePrivateMethod.java @@ -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 foo(){} } diff --git a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforeProtectedMethod.java b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforeProtectedMethod.java index 477c4568b02e..fa5bc2c68ff7 100644 --- a/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforeProtectedMethod.java +++ b/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/quickFix/overrideMethod/beforeProtectedMethod.java @@ -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(){} } diff --git a/platform/platform-resources-en/src/messages/CodeInsightBundle.properties b/platform/platform-resources-en/src/messages/CodeInsightBundle.properties index 294fff60b400..96996b50611e 100644 --- a/platform/platform-resources-en/src/messages/CodeInsightBundle.properties +++ b/platform/platform-resources-en/src/messages/CodeInsightBundle.properties @@ -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}''