diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/anonymousToInner/AnonymousToInnerHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/anonymousToInner/AnonymousToInnerHandler.java index cd14d09eed..ef260bee5a 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/anonymousToInner/AnonymousToInnerHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/anonymousToInner/AnonymousToInnerHandler.java @@ -82,12 +82,12 @@ public void invoke(@Nonnull final Project project, Editor editor, final PsiFile editor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); final PsiAnonymousClass anonymousClass = findAnonymousClass(file, offset); if (anonymousClass == null) { - showErrorMessage(editor, RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionAnonymous().get())); + showErrorMessage(editor, RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionAnonymous()).get()); return; } final PsiElement parent = anonymousClass.getParent(); if (parent instanceof PsiEnumConstant) { - showErrorMessage(editor, RefactoringBundle.getCannotRefactorMessage("Enum constant can't be converted to inner class")); + showErrorMessage(editor, RefactoringLocalize.cannotPerformRefactoringWithReason(LocalizeValue.localizeTODO("Enum constant can't be converted to inner class")).get()); return; } invoke(project, editor, anonymousClass); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/changeSignature/JavaChangeSignatureHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/changeSignature/JavaChangeSignatureHandler.java index ec8681a083..a19721848e 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/changeSignature/JavaChangeSignatureHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/changeSignature/JavaChangeSignatureHandler.java @@ -25,6 +25,7 @@ import consulo.codeEditor.Editor; import consulo.codeEditor.ScrollType; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; import consulo.ui.ex.awt.DialogWrapper; @@ -58,8 +59,9 @@ private static void invokeOnElement(Project project, Editor editor, PsiElement e } else if (element instanceof PsiClass psiClass) { invoke(psiClass, editor); } else { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionMethodOrClassName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME.get(), HelpID.CHANGE_SIGNATURE); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionMethodOrClassName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME.get(), HelpID.CHANGE_SIGNATURE); } } @@ -107,8 +109,9 @@ private static void invoke(final PsiClass aClass, Editor editor) { final PsiTypeParameterList typeParameterList = aClass.getTypeParameterList(); Project project = aClass.getProject(); if (typeParameterList == null) { - final String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.changeclasssignatureNoTypeParameters().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME.get(), HelpID.CHANGE_CLASS_SIGNATURE); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.changeclasssignatureNoTypeParameters()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME.get(), HelpID.CHANGE_CLASS_SIGNATURE); return; } if (!CommonRefactoringUtil.checkReadOnlyStatus(project, aClass)) { diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/convertToInstanceMethod/ConvertToInstanceMethodHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/convertToInstanceMethod/ConvertToInstanceMethodHandler.java index 286b4953fb..bc55a9ff7f 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/convertToInstanceMethod/ConvertToInstanceMethodHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/convertToInstanceMethod/ConvertToInstanceMethodHandler.java @@ -54,8 +54,8 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo if (element instanceof PsiIdentifier) element = element.getParent(); if (!(element instanceof PsiMethod)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionMethod().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.CONVERT_TO_INSTANCE_METHOD); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionMethod()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.CONVERT_TO_INSTANCE_METHOD); return; } if (LOG.isDebugEnabled()) { @@ -95,7 +95,7 @@ public void invoke(@Nonnull Project project, @Nonnull PsiElement[] elements, Dat } } if (suitableParameters.isEmpty()) { - LocalizeValue message = null; + LocalizeValue message; if (!classTypesFound) { message = RefactoringLocalize.converttoinstancemethodNoParametersWithReferenceType(); } @@ -105,12 +105,15 @@ else if (!resolvableClassesFound) { else if (!classesInProjectFound) { message = RefactoringLocalize.converttoinstancemethodAllReferenceTypeParametersAreNotInProject(); } - LOG.assertTrue(message != null); + else { + LOG.assertTrue(false); + return; + } Editor editor = dataContext.getData(Editor.KEY); CommonRefactoringUtil.showErrorHint( project, editor, - RefactoringBundle.getCannotRefactorMessage(message.get()), + RefactoringLocalize.cannotPerformRefactoringWithReason(message).get(), REFACTORING_NAME, HelpID.CONVERT_TO_INSTANCE_METHOD ); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/encapsulateFields/EncapsulateFieldsHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/encapsulateFields/EncapsulateFieldsHandler.java index c63600905a..3e8fda12f7 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/encapsulateFields/EncapsulateFieldsHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/encapsulateFields/EncapsulateFieldsHandler.java @@ -19,6 +19,7 @@ import consulo.annotation.access.RequiredReadAction; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import jakarta.annotation.Nonnull; import consulo.dataContext.DataContext; @@ -46,14 +47,14 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo PsiElement element = file.findElementAt(offset); while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionClass().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionClass()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); return; } if (element instanceof PsiField field) { if (field.getContainingClass() == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.theFieldShouldBeDeclaredInAClass().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.theFieldShouldBeDeclaredInAClass()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); return; } invoke(project, new PsiElement[]{element}, dataContext); @@ -98,10 +99,11 @@ public void invoke(@Nonnull final Project project, @Nonnull final PsiElement[] e preselectedFields.add(field); } else { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.fieldsToBeRefactoredShouldBelongToTheSameClass().get()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.fieldsToBeRefactoredShouldBelongToTheSameClass() + ); Editor editor = dataContext.getData(Editor.KEY); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); return; } } @@ -122,10 +124,11 @@ public void invoke(@Nonnull final Project project, @Nonnull final PsiElement[] e } if (aClass.isInterface()) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.encapsulateFieldsRefactoringCannotBeAppliedToInterface().get()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.encapsulateFieldsRefactoringCannotBeAppliedToInterface() + ); Editor editor = dataContext.getData(Editor.KEY); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.ENCAPSULATE_FIELDS); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractInterface/ExtractInterfaceHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractInterface/ExtractInterfaceHandler.java index b1cc328240..d0d3062d84 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractInterface/ExtractInterfaceHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractInterface/ExtractInterfaceHandler.java @@ -35,6 +35,7 @@ import consulo.language.util.IncorrectOperationException; import consulo.localHistory.LocalHistory; import consulo.localHistory.LocalHistoryAction; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.undoRedo.CommandProcessor; @@ -64,8 +65,8 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo PsiElement element = file.findElementAt(offset); while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionClass().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_INTERFACE); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionClass()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_INTERFACE); return; } if (element instanceof PsiClass && !(element instanceof PsiAnonymousClass)) { diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodHandler.java index f44dae2153..963e351795 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodHandler.java @@ -45,6 +45,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.util.IncorrectOperationException; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.navigation.OpenFileDescriptor; import consulo.navigation.OpenFileDescriptorFactory; @@ -167,10 +168,10 @@ private static ExtractMethodProcessor getProcessor( ) { if (elements == null || elements.length == 0) { if (showErrorMessages) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.selectedBlockShouldRepresentASetOfStatementsOrAnExpression().get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.selectedBlockShouldRepresentASetOfStatementsOrAnExpression() ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_METHOD); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_METHOD); } return null; } @@ -178,10 +179,10 @@ private static ExtractMethodProcessor getProcessor( for (PsiElement element : elements) { if (element instanceof PsiStatement statement && JavaHighlightUtil.isSuperOrThisCall(statement, true, true)) { if (showErrorMessages) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.selectedBlockContainsInvocationOfAnotherClassConstructor().get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.selectedBlockContainsInvocationOfAnotherClassConstructor() ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_METHOD); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_METHOD); } return null; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodProcessor.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodProcessor.java index fda10bd4fa..71156f0ebc 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodProcessor.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethod/ExtractMethodProcessor.java @@ -79,6 +79,7 @@ import consulo.language.psi.search.ReferencesSearch; import consulo.language.psi.util.PsiTreeUtil; import consulo.language.util.IncorrectOperationException; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.project.ProjectPropertiesComponent; @@ -1685,10 +1686,10 @@ private void showMultipleExitPointsMessage() { EditorColorsManager manager = EditorColorsManager.getInstance(); TextAttributes attributes = manager.getGlobalScheme().getAttributes(EditorColors.SEARCH_RESULT_ATTRIBUTES); highlightManager.addOccurrenceHighlights(myEditor, exitStatementsArray, attributes, true, null); - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.thereAreMultipleExitPointsInTheSelectedCodeFragment().get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.thereAreMultipleExitPointsInTheSelectedCodeFragment() ); - CommonRefactoringUtil.showErrorHint(myProject, myEditor, message, myRefactoringName, myHelpId); + CommonRefactoringUtil.showErrorHint(myProject, myEditor, message.get(), myRefactoringName, myHelpId); WindowManager.getInstance().getStatusBar(myProject).setInfo(RefactoringLocalize.pressEscapeToRemoveTheHighlighting().get()); } } @@ -1697,9 +1698,9 @@ private void showMultipleExitPointsMessage() { private void showMultipleOutputMessage(PsiType expressionType) { if (myShowErrorDialogs) { StringBuilder buffer = new StringBuilder(); - buffer.append( - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.thereAreMultipleOutputValuesForTheSelectedCodeFragment().get()) - ); + buffer.append(RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.thereAreMultipleOutputValuesForTheSelectedCodeFragment() + )); buffer.append("\n"); if (myHasExpressionOutput) { buffer.append(" ").append(RefactoringLocalize.expressionResult()).append(": "); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethodObject/ExtractMethodObjectHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethodObject/ExtractMethodObjectHandler.java index 0a73c50057..7c68a4de58 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethodObject/ExtractMethodObjectHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractMethodObject/ExtractMethodObjectHandler.java @@ -39,6 +39,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.util.IncorrectOperationException; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.undoRedo.CommandProcessor; @@ -59,9 +60,10 @@ public void accept(final PsiElement[] selectedValue) { private void invokeOnElements(@Nonnull final Project project, @Nonnull final Editor editor, @Nonnull PsiFile file, @Nonnull PsiElement[] elements) { if (elements.length == 0) { - String message = RefactoringBundle - .getCannotRefactorMessage(RefactoringLocalize.selectedBlockShouldRepresentASetOfStatementsOrAnExpression().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, ExtractMethodObjectProcessor.REFACTORING_NAME, HelpID.EXTRACT_METHOD_OBJECT); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.selectedBlockShouldRepresentASetOfStatementsOrAnExpression() + ); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), ExtractMethodObjectProcessor.REFACTORING_NAME, HelpID.EXTRACT_METHOD_OBJECT); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractSuperclass/ExtractSuperclassHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractSuperclass/ExtractSuperclassHandler.java index 26e6424be1..67585cbbeb 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/extractSuperclass/ExtractSuperclassHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/extractSuperclass/ExtractSuperclassHandler.java @@ -45,6 +45,7 @@ import consulo.language.util.IncorrectOperationException; import consulo.localHistory.LocalHistory; import consulo.localHistory.LocalHistoryAction; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; @@ -71,8 +72,8 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo PsiElement element = file.findElementAt(offset); while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionClass().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionClass()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); return; } if (element instanceof PsiClass && !(element instanceof PsiAnonymousClass)) { @@ -93,15 +94,16 @@ public void invoke(@Nonnull final Project project, @Nonnull PsiElement[] element Editor editor = dataContext != null ? dataContext.getData(Editor.KEY) : null; if (mySubclass.isInterface()) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.superclassCannotBeExtractedFromAnInterface().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.superclassCannotBeExtractedFromAnInterface()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); return; } if (mySubclass.isEnum()) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.superclassCannotBeExtractedFromAnEnum().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.superclassCannotBeExtractedFromAnEnum()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.EXTRACT_SUPERCLASS); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/inheritanceToDelegation/InheritanceToDelegationHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/inheritanceToDelegation/InheritanceToDelegationHandler.java index 691761a886..1e160b2d0d 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/inheritanceToDelegation/InheritanceToDelegationHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/inheritanceToDelegation/InheritanceToDelegationHandler.java @@ -39,6 +39,7 @@ import consulo.language.editor.refactoring.util.CommonRefactoringUtil; import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import jakarta.annotation.Nonnull; @@ -91,8 +92,9 @@ public void invoke(@Nonnull Project project, @Nonnull PsiElement[] elements, Dat Editor editor = dataContext.getData(Editor.KEY); if (aClass.isInterface()) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.classIsInterface(aClass.getQualifiedName()).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INHERITANCE_TO_DELEGATION); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.classIsInterface(aClass.getQualifiedName())); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INHERITANCE_TO_DELEGATION); return; } @@ -106,10 +108,10 @@ public void invoke(@Nonnull Project project, @Nonnull PsiElement[] elements, Dat final PsiClass[] bases = aClass.getSupers(); @NonNls final String javaLangObject = JavaClassNames.JAVA_LANG_OBJECT; if (bases.length == 0 || bases.length == 1 && javaLangObject.equals(bases[0].getQualifiedName())) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.classDoesNotHaveBaseClassesOrInterfaces(aClass.getQualifiedName()).get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.classDoesNotHaveBaseClassesOrInterfaces(aClass.getQualifiedName()) ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INHERITANCE_TO_DELEGATION); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INHERITANCE_TO_DELEGATION); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/inline/InlineLocalHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/inline/InlineLocalHandler.java index 2982f55647..d76fc4bc92 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/inline/InlineLocalHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/inline/InlineLocalHandler.java @@ -123,8 +123,10 @@ public static void invoke(@Nonnull final Project project, final Editor editor, f final PsiCodeBlock containerBlock = PsiTreeUtil.getParentOfType(local, PsiCodeBlock.class); if (containerBlock == null) { - final String message = RefactoringBundle.getCannotRefactorMessage("Variable is declared outside a code block"); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INLINE_VARIABLE); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + LocalizeValue.localizeTODO("Variable is declared outside a code block") + ); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INLINE_VARIABLE); return; } @@ -132,12 +134,12 @@ public static void invoke(@Nonnull final Project project, final Editor editor, f ? getDefToInline(local, refExpr, containerBlock) : getDefToInline(local, innerClassesWithUsages.get(0), containerBlock); if (defToInline == null) { - String message = RefactoringBundle.getCannotRefactorMessage( + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( refExpr == null - ? RefactoringLocalize.variableHasNoInitializer(localName).get() - : RefactoringBundle.message("variable.has.no.dominating.definition", localName) + ? RefactoringLocalize.variableHasNoInitializer(localName) + : LocalizeValue.localizeTODO(RefactoringBundle.message("variable.has.no.dominating.definition", localName)) ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INLINE_VARIABLE); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INLINE_VARIABLE); return; } @@ -162,8 +164,9 @@ public static void invoke(@Nonnull final Project project, final Editor editor, f final PsiElement[] defs = DefUseUtil.getDefs(containerBlock, local, refExpr); LOG.assertTrue(defs.length > 0); highlightManager.addOccurrenceHighlights(editor, defs, attributes, true, null); - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableIsAccessedForWriting(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INLINE_VARIABLE); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableIsAccessedForWriting(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INLINE_VARIABLE); WindowManager.getInstance().getStatusBar(project).setInfo(RefactoringBundle.message("press.escape.to.remove.the.highlighting")); return; } @@ -203,9 +206,9 @@ public static void invoke(@Nonnull final Project project, final Editor editor, f if (!isSameDefinition) { highlightManager.addOccurrenceHighlights(editor, defs, writeAttributes, true, null); highlightManager.addOccurrenceHighlights(editor, new PsiElement[]{ref}, attributes, true, null); - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableIsAccessedForWritingAndUsedWithInlined(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INLINE_VARIABLE); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.variableIsAccessedForWritingAndUsedWithInlined(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INLINE_VARIABLE); WindowManager.getInstance().getStatusBar(project).setInfo(RefactoringLocalize.pressEscapeToRemoveTheHighlighting().get()); return; } @@ -214,8 +217,9 @@ public static void invoke(@Nonnull final Project project, final Editor editor, f final PsiElement writeAccess = checkRefsInAugmentedAssignmentOrUnaryModified(refsToInline); if (writeAccess != null) { HighlightManager.getInstance(project).addOccurrenceHighlights(editor, new PsiElement[]{writeAccess}, writeAttributes, true, null); - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableIsAccessedForWriting(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.INLINE_VARIABLE); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableIsAccessedForWriting(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.INLINE_VARIABLE); WindowManager.getInstance().getStatusBar(project).setInfo(RefactoringLocalize.pressEscapeToRemoveTheHighlighting().get()); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/BaseExpressionToFieldHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/BaseExpressionToFieldHandler.java index cea6c8a683..25fe51a5f7 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/BaseExpressionToFieldHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/BaseExpressionToFieldHandler.java @@ -66,9 +66,11 @@ import consulo.language.psi.scope.GlobalSearchScope; import consulo.language.psi.util.PsiTreeUtil; import consulo.language.util.IncorrectOperationException; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.project.ui.wm.WindowManager; +import consulo.ui.annotation.RequiredUIAccess; import consulo.ui.ex.popup.JBPopup; import consulo.util.lang.Comparing; import consulo.util.lang.StringUtil; @@ -97,6 +99,7 @@ protected BaseExpressionToFieldHandler(boolean isConstant) { myIsConstant = isConstant; } + @RequiredUIAccess protected boolean invokeImpl(final Project project, @Nonnull final PsiExpression selectedExpr, final Editor editor) { final PsiElement element = getPhysicalElement(selectedExpr); @@ -109,14 +112,14 @@ protected boolean invokeImpl(final Project project, @Nonnull final PsiExpression final PsiType tempType = getTypeByExpression(selectedExpr); if (tempType == null || LambdaUtil.notInferredType(tempType)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.unknownExpressionType().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, getRefactoringName(), getHelpID()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.unknownExpressionType()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), getRefactoringName(), getHelpID()); return false; } if (PsiType.VOID.equals(tempType)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedExpressionHasVoidType().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, getRefactoringName(), getHelpID()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedExpressionHasVoidType()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), getRefactoringName(), getHelpID()); return false; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/ElementToWorkOn.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/ElementToWorkOn.java index d8a241c473..4158a96bb4 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/ElementToWorkOn.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/ElementToWorkOn.java @@ -33,6 +33,7 @@ import consulo.language.psi.PsiReference; import consulo.language.psi.PsiUtilCore; import consulo.language.psi.util.PsiTreeUtil; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; import consulo.util.dataholder.Key; @@ -195,8 +196,8 @@ private static ElementToWorkOn getElementToWorkOn(final Editor editor, } } if (expr == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, refactoringName, helpId); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), refactoringName, helpId); return null; } } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceConstantHandlerImpl.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceConstantHandlerImpl.java index 33dd15824a..e12c136e41 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceConstantHandlerImpl.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceConstantHandlerImpl.java @@ -41,6 +41,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.psi.util.PsiTreeUtil; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.project.ui.wm.WindowManager; import jakarta.annotation.Nonnull; @@ -80,8 +81,9 @@ public void invoke(@Nonnull final Project project, final Editor editor, PsiFile protected boolean invokeImpl(final Project project, final PsiLocalVariable localVariable, final Editor editor) { final PsiElement parent = localVariable.getParent(); if (!(parent instanceof PsiDeclarationStatement)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); return false; } final LocalToFieldHandler localToFieldHandler = new LocalToFieldHandler(project, true){ @@ -133,9 +135,9 @@ protected Settings showRefactoringDialog(Project project, for (PsiExpression occurrence : occurrences) { if (RefactoringUtil.isAssignmentLHS(occurrence)) { - String message = - RefactoringBundle.getCannotRefactorMessage("Selected expression is used for write"); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(LocalizeValue.localizeTODO("Selected expression is used for write")); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); highlightError(project, editor, occurrence); return null; } @@ -144,9 +146,9 @@ protected Settings showRefactoringDialog(Project project, if (localVariable == null) { final PsiElement errorElement = isStaticFinalInitializer(expr); if (errorElement != null) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedExpressionCannotBeAConstantInitializer().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedExpressionCannotBeAConstantInitializer()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); highlightError(project, editor, errorElement); return null; } @@ -154,23 +156,22 @@ protected Settings showRefactoringDialog(Project project, else { final PsiExpression initializer = localVariable.getInitializer(); if (initializer == null) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.variableDoesNotHaveAnInitializer(localVariable.getName()).get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.variableDoesNotHaveAnInitializer(localVariable.getName()) ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); return null; } final PsiElement errorElement = isStaticFinalInitializer(initializer); if (errorElement != null) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.initializerForVariableCannotBeAConstantInitializer(localVariable.getName()).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.initializerForVariableCannotBeAConstantInitializer(localVariable.getName())); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); highlightError(project, editor, errorElement); return null; } } - final TypeSelectorManagerImpl typeSelectorManager = new TypeSelectorManagerImpl(project, type, containingMethod, expr, occurrences); if (editor != null && editor.getSettings().isVariableInplaceRenameEnabled() && (expr == null || expr.isPhysical()) && activeIntroducer == null) { diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceFieldHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceFieldHandler.java index 517f8c7e60..ec0a39efdd 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceFieldHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceField/IntroduceFieldHandler.java @@ -31,6 +31,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.psi.util.PsiTreeUtil; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.project.ui.wm.WindowManager; import jakarta.annotation.Nonnull; @@ -54,8 +55,8 @@ protected String getRefactoringName() { protected boolean validClass(PsiClass parentClass, Editor editor) { if (parentClass.isInterface()) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.cannotIntroduceFieldInInterface().get()); - CommonRefactoringUtil.showErrorHint(parentClass.getProject(), editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.cannotIntroduceFieldInInterface()); + CommonRefactoringUtil.showErrorHint(parentClass.getProject(), editor, message.get(), REFACTORING_NAME, getHelpID()); return false; } else { @@ -200,9 +201,9 @@ protected OccurrenceManager createOccurrenceManager(final PsiExpression selected protected boolean invokeImpl(final Project project, PsiLocalVariable localVariable, final Editor editor) { final PsiElement parent = localVariable.getParent(); if (!(parent instanceof PsiDeclarationStatement)) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, getHelpID()); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, getHelpID()); return false; } LocalToFieldHandler localToFieldHandler = new LocalToFieldHandler(project, false) { diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceParameter/IntroduceParameterHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceParameter/IntroduceParameterHandler.java index 3734b12418..c53d7b1879 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceParameter/IntroduceParameterHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceParameter/IntroduceParameterHandler.java @@ -61,6 +61,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.psi.util.PsiTreeUtil; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.ui.ex.awt.JBList; @@ -141,25 +142,26 @@ private boolean invoke(final Editor editor, final Project project, final PsiExpr } if (expr == null && localVar == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedBlockShouldRepresentAnExpression().get()); - showErrorMessage(project, message, editor); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedBlockShouldRepresentAnExpression()); + showErrorMessage(project, message.get(), editor); return false; } if (localVar != null) { final PsiElement parent = localVar.getParent(); if (!(parent instanceof PsiDeclarationStatement)) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName().get()); - showErrorMessage(project, message, editor); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionLocalOrExpressionName()); + showErrorMessage(project, message.get(), editor); return false; } } if (method == null) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.isNotSupportedInTheCurrentContext(REFACTORING_NAME).get()); - showErrorMessage(project, message, editor); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.isNotSupportedInTheCurrentContext(REFACTORING_NAME)); + showErrorMessage(project, message.get(), editor); return false; } @@ -167,14 +169,15 @@ private boolean invoke(final Editor editor, final Project project, final PsiExpr final PsiType typeByExpression = invokedOnDeclaration ? null : RefactoringUtil.getTypeByExpressionWithExpectedType(expr); if (!invokedOnDeclaration && (typeByExpression == null || LambdaUtil.notInferredType(typeByExpression))) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.typeOfTheSelectedExpressionCannotBeDetermined().get()); - showErrorMessage(project, message, editor); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.typeOfTheSelectedExpressionCannotBeDetermined()); + showErrorMessage(project, message.get(), editor); return false; } if (!invokedOnDeclaration && PsiType.VOID.equals(typeByExpression)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedExpressionHasVoidType().get()); - showErrorMessage(project, message, editor); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedExpressionHasVoidType()); + showErrorMessage(project, message.get(), editor); return false; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceVariable/IntroduceVariableBase.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceVariable/IntroduceVariableBase.java index 29d890c0df..aec12022b5 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceVariable/IntroduceVariableBase.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/introduceVariable/IntroduceVariableBase.java @@ -532,7 +532,7 @@ protected boolean invokeImpl(final Project project, final PsiExpression expr, fi if (expr != null) { final String errorMessage = getErrorMessage(expr); if (errorMessage != null) { - showErrorMessage(project, editor, RefactoringBundle.getCannotRefactorMessage(errorMessage)); + showErrorMessage(project, editor, RefactoringLocalize.cannotPerformRefactoringWithReason(errorMessage).get()); return false; } } @@ -549,23 +549,24 @@ protected boolean invokeImpl(final Project project, final PsiExpression expr, fi return false; } if (expr == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedBlockShouldRepresentAnExpression().get()); - showErrorMessage(project, editor, message); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedBlockShouldRepresentAnExpression()); + showErrorMessage(project, editor, message.get()); return false; } } - final PsiType originalType = RefactoringUtil.getTypeByExpressionWithExpectedType(expr); + PsiType originalType = RefactoringUtil.getTypeByExpressionWithExpectedType(expr); if (originalType == null || LambdaUtil.notInferredType(originalType)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.unknownExpressionType().get()); - showErrorMessage(project, editor, message); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.unknownExpressionType()); + showErrorMessage(project, editor, message.get()); return false; } if (PsiType.VOID.equals(originalType)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.selectedExpressionHasVoidType().get()); - showErrorMessage(project, editor, message); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.selectedExpressionHasVoidType()); + showErrorMessage(project, editor, message.get()); return false; } @@ -591,8 +592,9 @@ protected boolean invokeImpl(final Project project, final PsiExpression expr, fi } if (!NotInSuperCallOccurrenceFilter.INSTANCE.isOK(expr)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.cannotIntroduceVariableInSuperConstructorCall().get()); - showErrorMessage(project, editor, message); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.cannotIntroduceVariableInSuperConstructorCall()); + showErrorMessage(project, editor, message.get()); return false; } @@ -1126,8 +1128,8 @@ public static boolean checkAnchorBeforeThisOrSuper(final Project project, final PsiMethod method = ((PsiMethodCallExpression) enclosingExpr).resolveMethod(); if (method != null && method.isConstructor()) { //This is either 'this' or 'super', both must be the first in the respective contructor - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.invalidExpressionContext().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, refactoringName, helpID); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.invalidExpressionContext()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), refactoringName, helpID); return true; } } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/invertBoolean/InvertBooleanHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/invertBoolean/InvertBooleanHandler.java index 5f32079b89..08f3d15464 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/invertBoolean/InvertBooleanHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/invertBoolean/InvertBooleanHandler.java @@ -54,7 +54,7 @@ else if (element instanceof PsiVariable variable) { CommonRefactoringUtil.showErrorHint( project, editor, - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionMethodOrVariableName().get()), + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionMethodOrVariableName()).get(), REFACTORING_NAME, HelpID.INVERT_BOOLEAN ); @@ -68,7 +68,7 @@ private static void invoke(PsiVariable var, final Project project, Editor editor CommonRefactoringUtil.showErrorHint( project, editor, - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.invertBooleanWrongType().get()), + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.invertBooleanWrongType()).get(), REFACTORING_NAME, HelpID.INVERT_BOOLEAN ); @@ -100,7 +100,7 @@ private static void invoke(PsiMethod method, final Project project, Editor edito CommonRefactoringUtil.showErrorHint( project, editor, - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.invertBooleanWrongType().get()), + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.invertBooleanWrongType()).get(), REFACTORING_NAME, HelpID.INVERT_BOOLEAN ); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/makeStatic/MakeStaticHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/makeStatic/MakeStaticHandler.java index 8cb9f758f5..e5cec67c56 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/makeStatic/MakeStaticHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/makeStatic/MakeStaticHandler.java @@ -39,6 +39,7 @@ import consulo.language.editor.refactoring.util.CommonRefactoringUtil; import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; @@ -72,8 +73,9 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo if (!(element instanceof PsiTypeParameterListOwner)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionMethodOrClassName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.MAKE_METHOD_STATIC); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionMethodOrClassName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MAKE_METHOD_STATIC); return; } if (LOG.isDebugEnabled()) @@ -158,35 +160,35 @@ public static void invoke(final PsiTypeParameterListOwner member) } @Nullable - public static String validateTarget(final PsiTypeParameterListOwner member) + public static String validateTarget(PsiTypeParameterListOwner member) { - final PsiClass containingClass = member.getContainingClass(); + PsiClass containingClass = member.getContainingClass(); // Checking various preconditions if (member instanceof PsiMethod && ((PsiMethod) member).isConstructor()) { - return RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.constructorCannotBeMadeStatic().get()); + return RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.constructorCannotBeMadeStatic()).get(); } if (member.getContainingClass() == null) { - return RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.thisMemberDoesNotSeemToBelongToAnyClass().get()); + return RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.thisMemberDoesNotSeemToBelongToAnyClass()).get(); } - if (member.hasModifierProperty(PsiModifier.STATIC)) + if (member.isStatic()) { - return RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.memberIsAlreadyStatic().get()); + return RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.memberIsAlreadyStatic()).get(); } - if (member instanceof PsiMethod && member.hasModifierProperty(PsiModifier.ABSTRACT)) + if (member instanceof PsiMethod && member.isAbstract()) { - return RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.cannotMakeAbstractMethodStatic().get()); + return RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.cannotMakeAbstractMethodStatic()).get(); } if (containingClass instanceof PsiAnonymousClass - || (containingClass.getContainingClass() != null && !containingClass.hasModifierProperty(PsiModifier.STATIC))) + || (containingClass.getContainingClass() != null && !containingClass.isStatic())) { - return RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.innerClassesCannotHaveStaticMembers().get()); + return RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.innerClassesCannotHaveStaticMembers()).get(); } return null; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPullUp/JavaPullUpHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPullUp/JavaPullUpHandler.java index ef24f1e83f..e6b9a2b7fa 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPullUp/JavaPullUpHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPullUp/JavaPullUpHandler.java @@ -29,11 +29,11 @@ import consulo.application.Application; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import jakarta.annotation.Nonnull; import com.intellij.java.language.psi.*; import consulo.dataContext.DataContext; -import consulo.application.ApplicationManager; import consulo.codeEditor.Editor; import consulo.codeEditor.ScrollType; import consulo.application.progress.ProgressManager; @@ -71,10 +71,10 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo { if (element == null || element instanceof PsiFile) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.theCaretShouldBePositionedInsideAClassToPullMembersFrom().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, - HelpID.MEMBERS_PULL_UP); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.theCaretShouldBePositionedInsideAClassToPullMembersFrom() + ); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MEMBERS_PULL_UP); return; } @@ -132,9 +132,10 @@ private void invoke(Project project, DataContext dataContext, PsiClass aClass, P final Editor editor = dataContext != null ? dataContext.getData(Editor.KEY) : null; if (aClass == null) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.isNotSupportedInTheCurrentContext(REFACTORING_NAME).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.MEMBERS_PULL_UP); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.isNotSupportedInTheCurrentContext(REFACTORING_NAME) + ); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MEMBERS_PULL_UP); return; } @@ -148,10 +149,10 @@ private void invoke(Project project, DataContext dataContext, PsiClass aClass, P invoke(project, dataContext, containingClass, aClass); return; } - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.classDoesNotHaveBaseClassesInterfacesInCurrentProject(aClass.getQualifiedName()).get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.classDoesNotHaveBaseClassesInterfacesInCurrentProject(aClass.getQualifiedName()) ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.MEMBERS_PULL_UP); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MEMBERS_PULL_UP); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPushDown/JavaPushDownHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPushDown/JavaPushDownHandler.java index 9f0cd782ee..055babfddb 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPushDown/JavaPushDownHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/memberPushDown/JavaPushDownHandler.java @@ -20,6 +20,7 @@ import consulo.codeEditor.Editor; import consulo.codeEditor.ScrollType; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.language.psi.*; import com.intellij.java.impl.refactoring.HelpID; @@ -47,10 +48,10 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.theCaretShouldBePositionedInsideAClassToPushMembersFrom().get() + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.theCaretShouldBePositionedInsideAClassToPushMembersFrom() ); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.MEMBERS_PUSH_DOWN); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MEMBERS_PUSH_DOWN); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesImpl.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesImpl.java index d5c5880631..d3b7b30f34 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesImpl.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesImpl.java @@ -177,11 +177,12 @@ else if (element instanceof PsiClass aClass) { } if (names.contains(name)) { - String message = RefactoringBundle - .getCannotRefactorMessage(RefactoringLocalize.thereAreGoingToBeMultipleDestinationFilesWithTheSameName().get()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.thereAreGoingToBeMultipleDestinationFilesWithTheSameName() + ); CommonRefactoringUtil.showErrorMessage( RefactoringLocalize.moveTitle().get(), - message, + message.get(), HelpID.getMoveHelpID(element), project ); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveInstanceMethod/MoveInstanceMethodHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveInstanceMethod/MoveInstanceMethodHandler.java index 1d9caced6e..f29e8f38f5 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveInstanceMethod/MoveInstanceMethodHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveInstanceMethod/MoveInstanceMethodHandler.java @@ -35,6 +35,7 @@ import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; import consulo.language.psi.PsiManager; +import consulo.localize.LocalizeValue; import consulo.logging.Logger; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; @@ -76,8 +77,9 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo if (!(element instanceof PsiMethod)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionMethod().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.MOVE_INSTANCE_METHOD); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionMethod()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.MOVE_INSTANCE_METHOD); return; } if (LOG.isDebugEnabled()) @@ -175,7 +177,7 @@ private static void showErrorHint(Project project, DataContext dataContext, Stri CommonRefactoringUtil.showErrorHint( project, editor, - RefactoringBundle.getCannotRefactorMessage(message), + RefactoringLocalize.cannotPerformRefactoringWithReason(message).get(), REFACTORING_NAME, HelpID.MOVE_INSTANCE_METHOD ); diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveMembers/MoveMembersImpl.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveMembers/MoveMembersImpl.java index b0f548ff62..e75d1538b6 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveMembers/MoveMembersImpl.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/move/moveMembers/MoveMembersImpl.java @@ -61,9 +61,9 @@ public static void doMove(final Project project, PsiElement[] elements, PsiEleme final Set preselectMembers = new HashSet(); for (PsiElement element : elements) { if (element instanceof PsiMember && !sourceClass.equals(((PsiMember)element).getContainingClass())) { - String message = RefactoringBundle.getCannotRefactorMessage( - RefactoringLocalize.membersToBeMovedShouldBelongToTheSameClass().get()); - CommonRefactoringUtil.showErrorMessage(REFACTORING_NAME, message, HelpID.MOVE_MEMBERS, project); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + RefactoringLocalize.membersToBeMovedShouldBelongToTheSameClass()); + CommonRefactoringUtil.showErrorMessage(REFACTORING_NAME, message.get(), HelpID.MOVE_MEMBERS, project); return; } if (element instanceof PsiField) { diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java index 298a1d1b5e..bc86f1b180 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java @@ -31,6 +31,7 @@ import consulo.application.HelpManager; import consulo.configurable.ConfigurationException; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import org.jetbrains.annotations.NonNls; import com.intellij.java.language.util.TreeClassChooser; import com.intellij.java.language.util.TreeClassChooserFactory; @@ -200,9 +201,9 @@ protected void doAction() { final PsiClass targetClass = JavaPsiFacade.getInstance(manager.getProject()).findClass(targetClassName, GlobalSearchScope.allScope(project)); if (targetClass == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.class0NotFound(targetClassName).get()); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.class0NotFound(targetClassName)); CommonRefactoringUtil.showErrorMessage(ReplaceConstructorWithFactoryHandler.REFACTORING_NAME, - message, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY, project); + message.get(), HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY, project); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryHandler.java index 6ea3a759f4..bf415fd504 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryHandler.java @@ -16,6 +16,7 @@ package com.intellij.java.impl.refactoring.replaceConstructorWithFactory; import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import consulo.ui.ex.awt.UIUtil; import jakarta.annotation.Nonnull; @@ -45,8 +46,9 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo PsiElement element = file.findElementAt(offset); while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionConstructor().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionConstructor()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); return; } @@ -129,22 +131,26 @@ private void invoke(PsiClass aClass, Editor editor) { } private void showJspOrLocalClassMessage(Editor editor) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.refactoringIsNotSupportedForLocalAndJspClasses().get()); - CommonRefactoringUtil.showErrorHint(myProject, editor, message, REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.refactoringIsNotSupportedForLocalAndJspClasses()); + CommonRefactoringUtil.showErrorHint(myProject, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); } private boolean checkAbstractClassOrInterfaceMessage(PsiClass aClass, Editor editor) { if (!aClass.hasModifierProperty(PsiModifier.ABSTRACT)) return true; - String message = RefactoringBundle.getCannotRefactorMessage(aClass.isInterface() - ? RefactoringLocalize.classIsInterface(aClass.getQualifiedName()).get() - : RefactoringLocalize.classIsAbstract(aClass.getQualifiedName()).get()); - CommonRefactoringUtil.showErrorHint(myProject, editor, message, REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason( + aClass.isInterface() + ? RefactoringLocalize.classIsInterface(aClass.getQualifiedName()) + : RefactoringLocalize.classIsAbstract(aClass.getQualifiedName()) + ); + CommonRefactoringUtil.showErrorHint(myProject, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); return false; } private void invoke(final PsiMethod method, Editor editor) { if (!method.isConstructor()) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.methodIsNotAConstructor().get()); - CommonRefactoringUtil.showErrorHint(myProject, editor, message, REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.methodIsNotAConstructor()); + CommonRefactoringUtil.showErrorHint(myProject, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_CONSTRUCTOR_WITH_FACTORY); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/tempWithQuery/TempWithQueryHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/tempWithQuery/TempWithQueryHandler.java index ca71a0fbc5..26c31d8338 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/tempWithQuery/TempWithQueryHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/tempWithQuery/TempWithQueryHandler.java @@ -71,8 +71,9 @@ public void invoke(@Nonnull final Project project, final Editor editor, PsiFile PsiElement element = TargetElementUtil.findTargetElement(editor, flags); editor.getScrollingModel().scrollToCaret(ScrollType.MAKE_VISIBLE); if (!(element instanceof PsiLocalVariable)) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionLocalName().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionLocalName()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); return; } @@ -88,8 +89,9 @@ private static void invokeOnVariable(final PsiFile file, final Project project, String localName = local.getName(); final PsiExpression initializer = local.getInitializer(); if (initializer == null) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableHasNoInitializer(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableHasNoInitializer(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); return; } @@ -97,8 +99,8 @@ private static void invokeOnVariable(final PsiFile file, final Project project, .toArray(new PsiReference[0]); if (refs.length == 0) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableIsNeverUsed(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableIsNeverUsed(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); return; } @@ -114,8 +116,9 @@ private static void invokeOnVariable(final PsiFile file, final Project project, if (!array.isEmpty()) { PsiReference[] refsForWriting = array.toArray(new PsiReference[array.size()]); highlightManager.addOccurrenceHighlights(editor, refsForWriting, attributes, true, null); - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.variableIsAccessedForWriting(localName).get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableIsAccessedForWriting(localName)); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.REPLACE_TEMP_WITH_QUERY); WindowManager.getInstance().getStatusBar(project).setInfo(RefactoringLocalize.pressEscapeToRemoveTheHighlighting().get()); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/turnRefsToSuper/TurnRefsToSuperHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/turnRefsToSuper/TurnRefsToSuperHandler.java index d1d95c5140..f5d3049f20 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/turnRefsToSuper/TurnRefsToSuperHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/turnRefsToSuper/TurnRefsToSuperHandler.java @@ -33,6 +33,7 @@ import consulo.language.editor.refactoring.util.CommonRefactoringUtil; import consulo.language.psi.PsiElement; import consulo.language.psi.PsiFile; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.ui.annotation.RequiredUIAccess; import jakarta.annotation.Nonnull; @@ -49,8 +50,8 @@ public void invoke(@Nonnull Project project, Editor editor, PsiFile file, DataCo PsiElement element = file.findElementAt(offset); while (true) { if (element == null || element instanceof PsiFile) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.errorWrongCaretPositionClass().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.TURN_REFS_TO_SUPER); + LocalizeValue message = RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.errorWrongCaretPositionClass()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.TURN_REFS_TO_SUPER); return; } if (element instanceof PsiClass && !(element instanceof PsiAnonymousClass)) { @@ -71,10 +72,10 @@ public void invoke(@Nonnull final Project project, @Nonnull PsiElement[] element ArrayList basesList = RefactoringHierarchyUtil.createBasesList(subClass, true, true); if (basesList.isEmpty()) { - String message = - RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.interfaceDoesNotHaveBaseInterfaces(subClass.getQualifiedName()).get()); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.interfaceDoesNotHaveBaseInterfaces(subClass.getQualifiedName())); Editor editor = dataContext.getData(Editor.KEY); - CommonRefactoringUtil.showErrorHint(project, editor, message, REFACTORING_NAME, HelpID.TURN_REFS_TO_SUPER); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), REFACTORING_NAME, HelpID.TURN_REFS_TO_SUPER); return; } diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/util/RefactoringMessageUtil.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/util/RefactoringMessageUtil.java index e031452c5f..83a57408ad 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/util/RefactoringMessageUtil.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/util/RefactoringMessageUtil.java @@ -20,10 +20,10 @@ import com.intellij.java.language.psi.PsiClass; import com.intellij.java.language.psi.PsiMethod; import consulo.codeEditor.Editor; -import consulo.language.editor.refactoring.RefactoringBundle; import consulo.language.editor.refactoring.localize.RefactoringLocalize; import consulo.language.editor.refactoring.util.CommonRefactoringUtil; import consulo.language.psi.PsiDirectory; +import consulo.localize.LocalizeValue; import consulo.project.Project; import consulo.usage.UsageViewUtil; import consulo.virtualFileSystem.VirtualFile; @@ -75,7 +75,8 @@ public static String getGetterSetterMessage(String newName, String action, PsiMe } public static void showNotSupportedForJspClassesError(final Project project, Editor editor, final String refactoringName, final String helpId) { - String message = RefactoringBundle.getCannotRefactorMessage(RefactoringLocalize.refactoringIsNotSupportedForJspClasses().get()); - CommonRefactoringUtil.showErrorHint(project, editor, message, refactoringName, helpId); + LocalizeValue message = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.refactoringIsNotSupportedForJspClasses()); + CommonRefactoringUtil.showErrorHint(project, editor, message.get(), refactoringName, helpId); } } \ No newline at end of file diff --git a/plugin/src/main/java/com/intellij/java/impl/refactoring/util/duplicates/MethodDuplicatesHandler.java b/plugin/src/main/java/com/intellij/java/impl/refactoring/util/duplicates/MethodDuplicatesHandler.java index 6b0d39b1b4..54f9c86f36 100644 --- a/plugin/src/main/java/com/intellij/java/impl/refactoring/util/duplicates/MethodDuplicatesHandler.java +++ b/plugin/src/main/java/com/intellij/java/impl/refactoring/util/duplicates/MethodDuplicatesHandler.java @@ -83,7 +83,7 @@ public void invoke(@Nonnull final Project project, final Editor editor, PsiFile final PsiMember member = PsiTreeUtil.getParentOfType(element, PsiMember.class); final String cannotRefactorMessage = getCannotRefactorMessage(member); if (cannotRefactorMessage != null) { - String message = RefactoringBundle.getCannotRefactorMessage(cannotRefactorMessage); + String message = RefactoringLocalize.cannotPerformRefactoringWithReason(cannotRefactorMessage).get(); showErrorMessage(message, project, editor); return; } diff --git a/plugin/src/test/java_/com/intellij/refactoring/inline/InlineLocalTest.java b/plugin/src/test/java_/com/intellij/refactoring/inline/InlineLocalTest.java index 882e958e02..892e6e9c73 100644 --- a/plugin/src/test/java_/com/intellij/refactoring/inline/InlineLocalTest.java +++ b/plugin/src/test/java_/com/intellij/refactoring/inline/InlineLocalTest.java @@ -7,6 +7,8 @@ import com.intellij.JavaTestUtil; import com.intellij.java.impl.refactoring.inline.InlineLocalHandler; import consulo.codeEditor.Editor; +import consulo.language.editor.refactoring.localize.RefactoringLocalize; +import consulo.localize.LocalizeValue; import consulo.project.Project; import com.intellij.java.language.LanguageLevel; import consulo.language.psi.PsiElement; @@ -94,8 +96,9 @@ public void testAugmentedAssignment() throws Exception { catch(RuntimeException ex) { exception = ex.getMessage(); } - String error = RefactoringBundle.getCannotRefactorMessage(RefactoringBundle.message("variable.is.accessed.for.writing", "text")); - assertEquals(error, exception); + LocalizeValue error = + RefactoringLocalize.cannotPerformRefactoringWithReason(RefactoringLocalize.variableIsAccessedForWriting("text")); + assertEquals(error.get(), exception); } public void testUsedInInnerClass() throws Exception { // IDEADEV-28786