diff --git a/idea/idea-analysis/resources/messages/KotlinBundle.properties b/idea/idea-analysis/resources/messages/KotlinBundle.properties index 7c368eab7e8..81d2576d875 100644 --- a/idea/idea-analysis/resources/messages/KotlinBundle.properties +++ b/idea/idea-analysis/resources/messages/KotlinBundle.properties @@ -973,6 +973,7 @@ text.refactoring.can.t.be.performed.on.the.selected.code.element=Refactoring can text.refactoring.is.not.applicable.to.this.code.fragment=Refactoring is not applicable to this code fragment text.references.in.code.to.0.1.and.its.declarations=References in code to {0} {1} and its declarations text.remove.0.no.longer.used=Remove {0} no longer used +text.remove.question=Remove '?' text.remove=remove text.rename.as.part.of.phrase=rename text.rename.is.not.applicable.to.secondary.constructors=Rename is not applicable to secondary constructors @@ -1073,4 +1074,151 @@ replace.usages.of.0.in.whole.project=Replace usages of ''{0}'' in whole project replace.with.publishedapi.bridge.call=Replace with @PublishedApi bridge call replace.with.generated.publishedapi.bridge.call.0=Replace with generated @PublishedApi bridge call ''{0}'' convert.sealed.sub.class.to.object.fix.family.name=Convert sealed sub-class to object -generate.identity.equals.fix.family.name=Generate equals & hashCode by identity \ No newline at end of file +generate.identity.equals.fix.family.name=Generate equals & hashCode by identity +and.delete.initializer=\ and delete initializer +change.to.val=Change to val +change.to.var=Change to var +change.type.of.0.to.1=Change type of {0} to ''{1}'' +change.type.to.0=Change type to ''{0}'' +base.property.0=base property {0} +make.0=Make {0} +make.0.1.explicitly=Make ''{0}'' {1} explicitly +make.0.explicitly=Make {0} explicitly +use.inherited.visibility=Use inherited visibility +replace.with.in.when=Replace ',' with '||' in when +remove.0=Remove ''.{0}'' +remove.conversion.from.kclass.to.class=Remove conversion from 'KClass' to 'Class' +convert.to.0=Convert to {0} +convert.expression.to.0.by.inserting.1=Convert expression to ''{0}'' by inserting ''.{1}'' +convert.extension.property.initializer.to.getter=Convert extension property initializer to getter +convert.supertype.to.0=Convert supertype to ''{0}'' +convert.extension.function.type.to.regular.function.type=Convert extension function type to regular function type +convert.to.notnull.delegate=Convert to notNull delegate +convert.to.anonymous.object=Convert to anonymous object +select.loop.statement.to.label=Select loop statement to label +select.lambda.to.label=Select lambda to label +create.label=Create label +create.label.0=Create label {0}@ +convert.member.to.extension=Convert member to extension +replace.annotation=Replace Annotation +replace.annotation.with.0=Replace annotation with {0} +add.initializer=Add initializer +move.to.constructor.parameters=Move to constructor parameters +initialize.with.constructor.parameter=Initialize with constructor parameter +inline.type.parameter=Inline type parameter +insert.explicit.delegation.call=Insert explicit delegation call +kotlin.add.required.module.fix.family.name=Add 'requires' directive to module-info.java +the.anonymous.object=the anonymous object +text.implement=implement +text.extend=extend +let.0.1=Let {0} {1} +let.type.implement.interface=Let type implement interface +0.interface.1={0} interface ''{1}'' +lift.assignment.out.of.try.expression=Lift assignment out of 'try' expression +make.class.an.annotation.class=Make class an annotation class +make.0.an.annotation.class=Make ''{0}'' an annotation class +make.constructor.parameter.a.property.0=Make constructor parameter a property{0} +in.class.0=\ in class ''{0}'' +add.0.to.module.1.compiler.arguments=Add ''{0}'' to module {1} compiler arguments +add.an.opt.in.requirement.marker.compiler.argument=Add an opt-in requirement marker compiler argument +make.0.in.1.open=Make ''{0}'' in {1} open +add.modifier=Add Modifier +make.private.and.0.1=Make private and {0} ''{1}'' +text.overrides=overrides +text.implements=implements +make.type.parameter.reified.and.function.inline=Make type parameter reified and function inline +change.all.usages.of.0.in.this.file.to.1=Change all usages of ''{0}'' in this file to ''{1}'' +change.all.usages.of.0.in.this.file.to.a.kotlin.class=Change all usages of ''{0}'' in this file to a Kotlin class +change.to.kotlin.class=Change to Kotlin class +choose.an.appropriate.kotlin.class=Choose an appropriate Kotlin class +add.empty.brackets.after.primary.constructor=Add empty brackets after primary constructor +add.constructor.keyword=Add 'constructor' keyword +move.annotation.to.receiver.type=Move annotation to receiver type +move.type.parameter.constraint.to.where.clause=Move type parameter constraint to 'where' clause +move.else.branch.to.the.end=Move else branch to the end +insert.number.conversion=Insert number conversion +convert.expression.to.0=Convert expression to ''{0}'' +remove.from.annotation.argument=Remove @ from annotation argument +remove.default.parameter.value=Remove default parameter value +remove.final.upper.bound=Remove final upper bound +remove.function.body=Remove function body +remove.redundant.0.modifier=Remove redundant ''{0}'' modifier +make.0.not.1=Make {0} not {1} +remove.0.modifier=Remove ''{0}'' modifier +remove.modifier=Remove modifier +remove.identifier.from.anonymous.function=Remove identifier from anonymous function +remove.constructor.call=Remove constructor call +make.not.nullable=Make not-nullable +remove.useless=Remove useless '?' +remove.redundant=Remove redundant '?' +remove.0.from.property=Remove {0} from property +remove.parts.from.property=Remove parts from property +text.initializer=initializer +text.setter=setter +text.getter=getter +remove.element=Remove element +for.0=for ''{0}'' +remove.conflicting.import.0=Remove conflicting import {0} +remove.type.parameters=Remove type parameters +remove.type.arguments=Remove type arguments +remove.star=Remove '*' +remove.variable.0=Remove variable ''{0}'' +remove.redundant.initializer=Remove redundant initializer +remove.redundant.label=Remove redundant label +remove.single.lambda.parameter.declaration=Remove single lambda parameter declaration +remove.supertype=Remove supertype +remove.0.variance.from.1=Remove ''{0}'' variance from ''{1}'' +remove.parameter.0=Remove parameter ''{0}'' +remove.redundant.assignment=Remove redundant assignment +there.are.possible.side.effects.found.in.expressions.assigned.to.the.variable.0=There are possible side effects found in expressions assigned to the variable ''{0}''
You can:
Remove the entire assignment, or
Transform assignment right-hand side into the statement on its own.
+remove.useless.cast=Remove useless cast +remove.useless.elvis.operator=Remove useless elvis operator +remove.useless.is.check=Remove useless is check +remove.val.var.from.parameter=Remove 'val/var' from parameter +remove.0.from.parameter=Remove ''{0}'' from parameter +remove.else.branch=Remove else branch +rename.identifier.fix.text=Rename +rename.to.0=Rename to ''{0}'' +rename.parameter.to.match.overridden.method=Rename parameter to match overridden method +rename.to.underscore=Rename to _ +replace.with.safe.this.call=Replace with safe (this?.) call +replace.with.safe.call=Replace with safe (?.) call +replace.scope.function.with.safe.call=Replace scope function with safe (?.) call +replace.with.dot.call=Replace with dot call +replace.with.safe.call1=Replace with safe (?.) call +replace.invalid.positioned.arguments.for.annotation=Replace invalid positioned arguments for annotation +replace.jvmfield.with.const=Replace '@JvmField' with 'const' +replace.modifier=Replace modifier +update.obsolete.label.syntax=Update obsolete label syntax +replace.with.label.0.at=Replace with label {0}@ +replace.cast.with.call.to.to.0=Replace cast with call to ''to{0}()'' +replace.cast.with.primitive.conversion.method=Replace cast with primitive conversion method +replace.with.array.call=Replace with array call +remove.expression.target=Remove EXPRESSION target +change.existent.retention.to.source=Change existent retention to SOURCE +add.source.retention=Add SOURCE retention +round.using.0=Round using {0}() +simplify.0.to.1=Simplify {0} to ''{1}'' +simplify.comparison=Simplify comparison +specify.override.for.0.explicitly=Specify override for ''{0}'' explicitly +specify.override.explicitly=Specify override explicitly +specify.return.type.explicitly=Specify return type explicitly +specify.type.explicitly=Specify type explicitly +add.constructor.parameters.from.0.1=Add constructor parameters from {0}{1} +change.to.constructor.invocation=Change to constructor invocation +add.constructor.parameters.from.superclass=Add constructor parameters from superclass +surround.with.star.0=Surround with *{0}(...) +surround.with.lambda=Surround with lambda +surround.with.null.check=Surround with null check +convert.too.long.character.literal.to.string=Convert too long character literal to string +replace.array.of.boxed.with.array.of.primitive=Replace array of boxed with array of primitive +migrate.unsupported.yield.syntax=Migrate unsupported yield syntax +wrap.with=Wrap with [] +wrap.with.array.literal=Wrap with array literal +wrap.with.collection.literal.call=Wrap with collection literal call +wrap.element.with.0.call=Wrap element with ''{0}()'' call +replace.with.0.call=Replace with ''{0}()'' call +wrap.with.let.call=Wrap with '?.let { ... }' call +change.to.0=Change to ''{0}'' +change.to.correct.long.suffix.l=Change to correct long suffix 'L' +change.to.correct.primitive.type=Change to correct primitive type \ No newline at end of file diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableMutabilityFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableMutabilityFix.kt index 72c435d8249..fa1122c375d 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableMutabilityFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableMutabilityFix.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.DiagnosticFactory1 import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.quickfix.createFromUsage.createCallable.CreatePropertyDelegateAccessorsActionFactory import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* @@ -38,7 +39,8 @@ class ChangeVariableMutabilityFix( ) : KotlinQuickFixAction(element) { override fun getText() = actionText - ?: (if (makeVar) "Change to var" else "Change to val") + (if (deleteInitializer) " and delete initializer" else "") + ?: (if (makeVar) KotlinBundle.message("change.to.var") else KotlinBundle.message("change.to.val")) + + if (deleteInitializer) KotlinBundle.message("and.delete.initializer") else "" override fun getFamilyName(): String = text @@ -125,7 +127,7 @@ class ChangeVariableMutabilityFix( val property = element.getStrictParentOfType() ?: return null val info = CreatePropertyDelegateAccessorsActionFactory.extractFixData(property, diagnostic).singleOrNull() ?: return null if (info.name != OperatorNameConventions.SET_VALUE.asString()) return null - return ChangeVariableMutabilityFix(property, makeVar = false, actionText = "Change to val") + return ChangeVariableMutabilityFix(property, makeVar = false, actionText = KotlinBundle.message("change.to.val")) } } diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableTypeFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableTypeFix.kt index 395bebb6027..65e178e4344 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableTypeFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVariableTypeFix.kt @@ -61,9 +61,9 @@ open class ChangeVariableTypeFix(element: KtVariableDeclaration, type: KotlinTyp val variablePresentation = variablePresentation() return if (variablePresentation != null) { - "Change type of $variablePresentation to '$typePresentation'" + KotlinBundle.message("change.type.of.0.to.1", variablePresentation, typePresentation) } else { - "Change type to '$typePresentation'" + KotlinBundle.message("change.type.to.0", typePresentation) } } @@ -74,7 +74,7 @@ open class ChangeVariableTypeFix(element: KtVariableDeclaration, type: KotlinTyp class ForOverridden(element: KtVariableDeclaration, type: KotlinType) : ChangeVariableTypeFix(element, type) { override fun variablePresentation(): String? { val presentation = super.variablePresentation() ?: return null - return "base property $presentation" + return KotlinBundle.message("base.property.0", presentation) } } diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityFix.kt index 943e736d3c7..2aeef3af104 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityFix.kt @@ -15,6 +15,7 @@ import org.jetbrains.kotlin.descriptors.Visibilities import org.jetbrains.kotlin.descriptors.Visibility import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.DiagnosticFactory0 +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.canBeInternal import org.jetbrains.kotlin.idea.core.canBePrivate import org.jetbrains.kotlin.idea.core.canBeProtected @@ -39,8 +40,8 @@ open class ChangeVisibilityFix( private val addImplicitVisibilityModifier: Boolean = false ) : KotlinQuickFixAction(element) { - override fun getText() = "Make '$elementName' $visibilityModifier" - override fun getFamilyName() = "Make $visibilityModifier" + override fun getText() = KotlinBundle.message("make.0.1", elementName, visibilityModifier) + override fun getFamilyName() = KotlinBundle.message("make.0", visibilityModifier) override fun invoke(project: Project, editor: Editor?, file: KtFile) { val pointer = element?.createSmartPointer() @@ -95,8 +96,8 @@ open class ChangeVisibilityFix( KtTokens.PUBLIC_KEYWORD, addImplicitVisibilityModifier = true ), HighPriorityAction { - override fun getText() = "Make '$elementName' $visibilityModifier explicitly" - override fun getFamilyName() = "Make $visibilityModifier explicitly" + override fun getText() = KotlinBundle.message("make.0.1.explicitly", elementName, visibilityModifier) + override fun getFamilyName() = KotlinBundle.message("make.0.explicitly", visibilityModifier) } companion object { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityModifierFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityModifierFix.kt index a3a199c6e6c..3ea704c819e 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityModifierFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ChangeVisibilityModifierFix.kt @@ -19,12 +19,13 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtDeclaration import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.visibilityModifierType class ChangeVisibilityModifierFix(element: KtDeclaration) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Use inherited visibility" + override fun getFamilyName() = KotlinBundle.message("use.inherited.visibility") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/CommaInWhenConditionWithoutArgumentFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/CommaInWhenConditionWithoutArgumentFix.kt index d54bce2964a..f271086ddca 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/CommaInWhenConditionWithoutArgumentFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/CommaInWhenConditionWithoutArgumentFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.branchedTransformations.combineWhenConditions import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* @@ -18,7 +19,7 @@ import java.util.* class CommaInWhenConditionWithoutArgumentFix(element: PsiElement) : KotlinQuickFixAction(element), CleanupFix { override fun getFamilyName(): String = text - override fun getText(): String = "Replace ',' with '||' in when" + override fun getText(): String = KotlinBundle.message("replace.with.in.when") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val whenExpression = element as? KtWhenExpression ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertClassToKClassFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertClassToKClassFix.kt index 54245a50724..d41ac8b77e4 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertClassToKClassFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertClassToKClassFix.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtDotQualifiedExpression @@ -45,8 +46,8 @@ class ConvertClassToKClassFix(element: KtDotQualifiedExpression, type: KotlinTyp return@run firstChildType.isSubtypeOf(type) } - override fun getText() = element?.let { "Remove '.${it.children.lastOrNull()?.text}'" } ?: "" - override fun getFamilyName() = "Remove conversion from 'KClass' to 'Class'" + override fun getText() = element?.let { KotlinBundle.message("remove.0", it.children.lastOrNull()?.text.toString()) } ?: "" + override fun getFamilyName() = KotlinBundle.message("remove.conversion.from.kclass.to.class") override fun isAvailable(project: Project, editor: Editor?, file: KtFile) = isApplicable diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertCollectionFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertCollectionFix.kt index 5bc1db73a76..a54a3df3811 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertCollectionFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertCollectionFix.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.psi.KtExpression @@ -30,8 +31,8 @@ import org.jetbrains.kotlin.types.KotlinType import org.jetbrains.kotlin.types.typeUtil.isSubtypeOf class ConvertCollectionFix(element: KtExpression, val type: CollectionType) : KotlinQuickFixAction(element) { - override fun getFamilyName(): String = "Convert to ${type.displayName}" - override fun getText() = "Convert expression to '${type.displayName}' by inserting '.${type.functionCall}'" + override fun getFamilyName(): String = KotlinBundle.message("convert.to.0", type.displayName) + override fun getText() = KotlinBundle.message("convert.expression.to.0.by.inserting.1", type.displayName, type.functionCall) override fun invoke(project: Project, editor: Editor?, file: KtFile) { val expression = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionPropertyInitializerToGetterFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionPropertyInitializerToGetterFix.kt index 2dfe7fe2fe9..fb416115d4b 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionPropertyInitializerToGetterFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionPropertyInitializerToGetterFix.kt @@ -20,6 +20,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.ConvertPropertyInitializerToGetterIntention import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.psi.KtFile @@ -27,7 +28,7 @@ import org.jetbrains.kotlin.psi.KtProperty import org.jetbrains.kotlin.psi.psiUtil.getParentOfType class ConvertExtensionPropertyInitializerToGetterFix(element: KtExpression) : KotlinQuickFixAction(element) { - override fun getText(): String = "Convert extension property initializer to getter" + override fun getText(): String = KotlinBundle.message("convert.extension.property.initializer.to.getter") override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionToFunctionTypeFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionToFunctionTypeFix.kt index 89645341aa5..baa83e63549 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionToFunctionTypeFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertExtensionToFunctionTypeFix.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.builtins.getReturnTypeFromFunctionType import org.jetbrains.kotlin.builtins.isExtensionFunctionType import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.idea.core.replaced @@ -40,8 +41,8 @@ class ConvertExtensionToFunctionTypeFix(element: KtTypeReference, type: KotlinTy private val targetTypeStringShort = type.renderType(IdeDescriptorRenderers.SOURCE_CODE_SHORT_NAMES_NO_ANNOTATIONS) private val targetTypeStringLong = type.renderType(IdeDescriptorRenderers.SOURCE_CODE) - override fun getText() = "Convert supertype to '$targetTypeStringShort'" - override fun getFamilyName() = "Convert extension function type to regular function type" + override fun getText() = KotlinBundle.message("convert.supertype.to.0", targetTypeStringShort) + override fun getFamilyName() = KotlinBundle.message("convert.extension.function.type.to.regular.function.type") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertLateinitPropertyToNotNullDelegateFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertLateinitPropertyToNotNullDelegateFix.kt index be8003daa38..9777abe886a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertLateinitPropertyToNotNullDelegateFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertLateinitPropertyToNotNullDelegateFix.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.lexer.KtTokens @@ -20,7 +21,7 @@ class ConvertLateinitPropertyToNotNullDelegateFix( property: KtProperty, private val type: String ) : KotlinQuickFixAction(property) { - override fun getText() = "Convert to notNull delegate" + override fun getText() = KotlinBundle.message("convert.to.notnull.delegate") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertToAnonymousObjectFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertToAnonymousObjectFix.kt index 94cbef32030..215f88ac5ba 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertToAnonymousObjectFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ConvertToAnonymousObjectFix.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.descriptors.SimpleFunctionDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.DiagnosticWithParameters3 import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.intentions.SamConversionToAnonymousObjectIntention import org.jetbrains.kotlin.psi.KtCallExpression @@ -23,7 +24,7 @@ import org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor import org.jetbrains.kotlin.utils.addToStdlib.firstNotNullResult class ConvertToAnonymousObjectFix(element: KtNameReferenceExpression) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Convert to anonymous object" + override fun getFamilyName() = KotlinBundle.message("convert.to.anonymous.object") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/CreateLabelFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/CreateLabelFix.kt index e05c2cacdd9..816025028fe 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/CreateLabelFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/CreateLabelFix.kt @@ -21,6 +21,7 @@ import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.refactoring.chooseContainerElementIfNecessary import org.jetbrains.kotlin.idea.util.application.executeWriteCommand import org.jetbrains.kotlin.psi.* @@ -30,22 +31,22 @@ sealed class CreateLabelFix( expression: KtLabelReferenceExpression ) : KotlinQuickFixAction(expression) { class ForLoop(expression: KtLabelReferenceExpression) : CreateLabelFix(expression) { - override val chooserTitle = "Select loop statement to label" + override val chooserTitle = KotlinBundle.message("select.loop.statement.to.label") override fun getCandidateExpressions(labelReferenceExpression: KtLabelReferenceExpression) = labelReferenceExpression.getContainingLoops().toList() } class ForLambda(expression: KtLabelReferenceExpression) : CreateLabelFix(expression) { - override val chooserTitle = "Select lambda to label" + override val chooserTitle = KotlinBundle.message("select.lambda.to.label") override fun getCandidateExpressions(labelReferenceExpression: KtLabelReferenceExpression) = labelReferenceExpression.getContainingLambdas().toList() } - override fun getFamilyName() = "Create label" + override fun getFamilyName() = KotlinBundle.message("create.label") - override fun getText() = "Create label ${element?.getReferencedName() ?: ""}@" + override fun getText() = KotlinBundle.message("create.label.0", element?.getReferencedName() ?: "") abstract val chooserTitle: String diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/DeclarationCantBeInlinedFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/DeclarationCantBeInlinedFactory.kt index 6800650eab2..9ff533bf109 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/DeclarationCantBeInlinedFactory.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/DeclarationCantBeInlinedFactory.kt @@ -9,6 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.declarations.ConvertMemberToExtensionIntention import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtFile @@ -30,7 +31,7 @@ object DeclarationCantBeInlinedFactory : KotlinIntentionActionsFactory() { } private class ConvertMemberToExtensionFix(element: KtNamedFunction) : KotlinQuickFixAction(element) { - override fun getText() = "Convert member to extension" + override fun getText() = KotlinBundle.message("convert.member.to.extension") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/DeprecatedJavaAnnotationFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/DeprecatedJavaAnnotationFix.kt index 956cf87c8ae..49319ac6a27 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/DeprecatedJavaAnnotationFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/DeprecatedJavaAnnotationFix.kt @@ -5,6 +5,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.idea.core.replaced @@ -20,8 +21,8 @@ internal class DeprecatedJavaAnnotationFix( element: KtAnnotationEntry, private val annotationFqName: FqName ) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Replace Annotation" - override fun getText(): String = "Replace annotation with ${annotationFqName.asString()}" + override fun getFamilyName() = KotlinBundle.message("replace.annotation") + override fun getText(): String = KotlinBundle.message("replace.annotation.with.0", annotationFqName.asString()) override fun startInWriteAction(): Boolean = false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/InitializePropertyQuickFixFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/InitializePropertyQuickFixFactory.kt index f81bc4a4b4c..212896e360a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/InitializePropertyQuickFixFactory.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/InitializePropertyQuickFixFactory.kt @@ -19,6 +19,7 @@ import org.jetbrains.kotlin.descriptors.ConstructorDescriptor import org.jetbrains.kotlin.descriptors.PropertyDescriptor import org.jetbrains.kotlin.descriptors.VariableDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny import org.jetbrains.kotlin.idea.codeInsight.shorten.runRefactoringAndKeepDelayedRequests import org.jetbrains.kotlin.idea.core.CollectingNameValidator @@ -41,7 +42,7 @@ import java.util.* object InitializePropertyQuickFixFactory : KotlinIntentionActionsFactory() { class AddInitializerFix(property: KtProperty) : KotlinQuickFixAction(property) { - override fun getText() = "Add initializer" + override fun getText() = KotlinBundle.message("add.initializer") override fun getFamilyName() = text override fun invoke(project: Project, editor: Editor?, file: KtFile) { @@ -58,7 +59,7 @@ object InitializePropertyQuickFixFactory : KotlinIntentionActionsFactory() { } class MoveToConstructorParameters(property: KtProperty) : KotlinQuickFixAction(property) { - override fun getText() = "Move to constructor parameters" + override fun getText() = KotlinBundle.message("move.to.constructor.parameters") override fun getFamilyName() = text override fun startInWriteAction(): Boolean = false @@ -122,7 +123,7 @@ object InitializePropertyQuickFixFactory : KotlinIntentionActionsFactory() { } class InitializeWithConstructorParameter(property: KtProperty) : KotlinQuickFixAction(property) { - override fun getText() = "Initialize with constructor parameter" + override fun getText() = KotlinBundle.message("initialize.with.constructor.parameter") override fun getFamilyName() = text override fun startInWriteAction(): Boolean = false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/InlineTypeParameterFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/InlineTypeParameterFix.kt index b7a1523a480..9d0e388f69c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/InlineTypeParameterFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/InlineTypeParameterFix.kt @@ -20,6 +20,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.forEachDescendantOfType @@ -49,7 +50,7 @@ class InlineTypeParameterFix(val typeReference: KtTypeReference) : KotlinQuickFi } } - override fun getText() = "Inline type parameter" + override fun getText() = KotlinBundle.message("inline.type.parameter") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/InsertDelegationCallQuickfix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/InsertDelegationCallQuickfix.kt index 981dbd17951..c3f93ce365c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/InsertDelegationCallQuickfix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/InsertDelegationCallQuickfix.kt @@ -28,7 +28,7 @@ import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode class InsertDelegationCallQuickfix(val isThis: Boolean, element: KtSecondaryConstructor) : KotlinQuickFixAction(element) { override fun getText() = KotlinBundle.message("fix.insert.delegation.call", keywordToUse) - override fun getFamilyName() = "Insert explicit delegation call" + override fun getFamilyName() = KotlinBundle.message("insert.explicit.delegation.call") private val keywordToUse = if (isThis) "this" else "super" diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/KotlinAddRequiredModuleFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/KotlinAddRequiredModuleFix.kt index 5f74140b2d1..5dcd59d9f2c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/KotlinAddRequiredModuleFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/KotlinAddRequiredModuleFix.kt @@ -15,6 +15,7 @@ import com.intellij.psi.* import com.intellij.psi.util.PsiUtil import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.DiagnosticFactory +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.util.findRequireDirective import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm @@ -22,7 +23,7 @@ import org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm class KotlinAddRequiredModuleFix(module: PsiJavaModule, private val requiredName: String) : LocalQuickFixAndIntentionActionOnPsiElement(module) { @Suppress("InvalidBundleOrProperty") - override fun getFamilyName(): String = "Add 'requires' directive to module-info.java" + override fun getFamilyName(): String = KotlinBundle.message("kotlin.add.required.module.fix.family.name") @Suppress("InvalidBundleOrProperty") override fun getText(): String = QuickFixBundle.message("module.info.add.requires.name", requiredName) diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/LetImplementInterfaceFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/LetImplementInterfaceFix.kt index c12b6a76987..7f20992460c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/LetImplementInterfaceFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/LetImplementInterfaceFix.kt @@ -20,6 +20,7 @@ import com.intellij.codeInsight.intention.LowPriorityAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.fileEditor.FileEditorManager import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler import org.jetbrains.kotlin.idea.quickfix.createFromUsage.callableBuilder.containsStarProjections @@ -59,14 +60,17 @@ class LetImplementInterfaceFix( expectedTypeName = expectedTypeNotNullable.renderShort() expectedTypeNameSourceCode = IdeDescriptorRenderers.SOURCE_CODE.renderType(expectedTypeNotNullable) - val verb = if (expressionType.isInterface()) "extend" else "implement" - val typeDescription = if (element.isObjectLiteral()) "the anonymous object" else "'${expressionType.renderShort()}'" - prefix = "Let $typeDescription $verb" + val verb = if (expressionType.isInterface()) KotlinBundle.message("text.extend") else KotlinBundle.message("text.implement") + val typeDescription = if (element.isObjectLiteral()) + KotlinBundle.message("the.anonymous.object") + else + "'${expressionType.renderShort()}'" + prefix = KotlinBundle.message("let.0.1", typeDescription, verb) } - override fun getFamilyName() = "Let type implement interface" - override fun getText() = "$prefix interface '$expectedTypeName'" + override fun getFamilyName() = KotlinBundle.message("let.type.implement.interface") + override fun getText() = KotlinBundle.message("0.interface.1", prefix, expectedTypeName) override fun isAvailable(project: Project, editor: Editor?, file: KtFile) = validExpectedType diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/LiftAssignmentOutOfTryFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/LiftAssignmentOutOfTryFix.kt index dae698f722a..4c315636020 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/LiftAssignmentOutOfTryFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/LiftAssignmentOutOfTryFix.kt @@ -9,6 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.branchedTransformations.BranchedFoldingUtils import org.jetbrains.kotlin.psi.KtCatchClause import org.jetbrains.kotlin.psi.KtExpression @@ -18,7 +19,7 @@ import org.jetbrains.kotlin.psi.KtTryExpression class LiftAssignmentOutOfTryFix(element: KtTryExpression) : KotlinQuickFixAction(element) { override fun getFamilyName() = text - override fun getText() = "Lift assignment out of 'try' expression" + override fun getText() = KotlinBundle.message("lift.assignment.out.of.try.expression") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeClassAnAnnotationClassFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeClassAnAnnotationClassFix.kt index d1f71b08f7f..0d5b6acfcd3 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeClassAnAnnotationClassFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeClassAnAnnotationClassFix.kt @@ -20,6 +20,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtAnnotationEntry import org.jetbrains.kotlin.psi.KtClass @@ -27,9 +28,9 @@ import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class MakeClassAnAnnotationClassFix(annotationClass: KtClass) : KotlinQuickFixAction(annotationClass) { - override fun getFamilyName() = "Make class an annotation class" + override fun getFamilyName() = KotlinBundle.message("make.class.an.annotation.class") - override fun getText() = element?.let { "Make '${it.name}' an annotation class" } ?: "" + override fun getText() = element?.let { KotlinBundle.message("make.0.an.annotation.class", it.name.toString()) } ?: "" public override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeConstructorParameterPropertyFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeConstructorParameterPropertyFix.kt index fdfed493cda..7b90fd8ebd6 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeConstructorParameterPropertyFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeConstructorParameterPropertyFix.kt @@ -21,6 +21,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.refactoring.changeSignature.KotlinValVar import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtFile @@ -32,11 +33,11 @@ import org.jetbrains.kotlin.psi.psiUtil.* class MakeConstructorParameterPropertyFix( element: KtParameter, private val kotlinValVar: KotlinValVar, className: String? ) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Make constructor parameter a property" + override fun getFamilyName() = KotlinBundle.message("make.constructor.parameter.a.property.0", "") - private val suffix = if (className != null) " in class '$className'" else "" + private val suffix = if (className != null) KotlinBundle.message("in.class.0", className) else "" - override fun getText() = "Make constructor parameter a property$suffix" + override fun getText() = KotlinBundle.message("make.constructor.parameter.a.property.0", suffix) override fun isAvailable(project: Project, editor: Editor?, file: KtFile): Boolean { val element = element ?: return false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeModuleExperimentalFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeModuleExperimentalFix.kt index 801798a292e..251cf289656 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeModuleExperimentalFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeModuleExperimentalFix.kt @@ -13,6 +13,7 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.config.CompilerSettings import org.jetbrains.kotlin.config.additionalArgumentsAsList import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.project.toDescriptor import org.jetbrains.kotlin.idea.configuration.BuildSystemType import org.jetbrains.kotlin.idea.configuration.getBuildSystemType @@ -35,9 +36,9 @@ class MakeModuleExperimentalFix( else "use-experimental" - override fun getText(): String = "Add '$compilerArgument' to module ${module.name} compiler arguments" + override fun getText(): String = KotlinBundle.message("add.0.to.module.1.compiler.arguments", compilerArgument, module.name) - override fun getFamilyName(): String = "Add an opt-in requirement marker compiler argument" + override fun getFamilyName(): String = KotlinBundle.message("add.an.opt.in.requirement.marker.compiler.argument") private val compilerArgument = "-X$experimentalPrefix=$annotationFqName" diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeOverriddenMemberOpenFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeOverriddenMemberOpenFix.kt index fda1bc7ff80..f9161470d3c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeOverriddenMemberOpenFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeOverriddenMemberOpenFix.kt @@ -17,6 +17,7 @@ import org.jetbrains.kotlin.descriptors.MemberDescriptor import org.jetbrains.kotlin.descriptors.Modality import org.jetbrains.kotlin.descriptors.isOverridable import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny import org.jetbrains.kotlin.idea.core.util.CachedValue import org.jetbrains.kotlin.idea.core.util.getValue @@ -86,15 +87,16 @@ class MakeOverriddenMemberOpenFix(declaration: KtDeclaration) : KotlinQuickFixAc val element = element ?: return "" if (containingDeclarationsNames.size == 1) { val name = containingDeclarationsNames[0] + "." + element.name - return "Make $name $OPEN_KEYWORD" + return KotlinBundle.message("make.0", "$name $OPEN_KEYWORD") } val sortedDeclarationNames = containingDeclarationsNames.sorted() - val declarations = sortedDeclarationNames.subList(0, sortedDeclarationNames.size - 1).joinToString(", ") + " and " + + val declarations = sortedDeclarationNames.subList(0, sortedDeclarationNames.size - 1).joinToString(", ") + + " ${KotlinBundle.message("configuration.text.and")} " + sortedDeclarationNames.last() - return "Make '${element.name}' in $declarations open" + return KotlinBundle.message("make.0.in.1.open", element.name.toString(), declarations) } - override fun getFamilyName(): String = "Add Modifier" + override fun getFamilyName(): String = KotlinBundle.message("add.modifier") override fun invoke(project: Project, editor: Editor?, file: KtFile) { for (overriddenMember in overriddenNonOverridableMembers) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakePrivateAndOverrideMemberFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakePrivateAndOverrideMemberFix.kt index 2997fe769c2..7c936363625 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakePrivateAndOverrideMemberFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakePrivateAndOverrideMemberFix.kt @@ -11,6 +11,7 @@ import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.descriptors.ClassKind import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideImplementMembersHandler @@ -38,9 +39,19 @@ class MakePrivateAndOverrideMemberFix( val implement = (descriptor.containingDeclaration as? ClassDescriptor)?.kind == ClassKind.INTERFACE val name = descriptor.name.asString() return if (makePrivate) { - "Make private and ${if (implement) "implements" else "overrides"} '$name'" + KotlinBundle.message( + "make.private.and.0.1", + if (implement) + KotlinBundle.message("text.implements") + else + KotlinBundle.message("text.overrides"), + name + ) } else { - "${if (implement) "Implements" else "Overrides"} '$name'" + (if (implement) + KotlinBundle.message("highlighter.text.implements") + else + KotlinBundle.message("highlighter.text.overrides")) + " '$name'" } } diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeTypeParameterReifiedAndFunctionInlineFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeTypeParameterReifiedAndFunctionInlineFix.kt index d34aeab0702..52c34fec6d1 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeTypeParameterReifiedAndFunctionInlineFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MakeTypeParameterReifiedAndFunctionInlineFix.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.search.usagesSearch.descriptor import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtFile @@ -25,7 +26,7 @@ class MakeTypeParameterReifiedAndFunctionInlineFix( private val inlineFix = AddInlineToFunctionWithReifiedFix(function) - override fun getText() = "Make type parameter reified and function inline" + override fun getText() = KotlinBundle.message("make.type.parameter.reified.and.function.inline") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MapPlatformClassToKotlinFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MapPlatformClassToKotlinFix.kt index 00908a3be1a..2561b762d57 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MapPlatformClassToKotlinFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MapPlatformClassToKotlinFix.kt @@ -19,6 +19,7 @@ import com.intellij.refactoring.rename.inplace.MyLookupExpression import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent import org.jetbrains.kotlin.idea.references.mainReference @@ -41,13 +42,16 @@ class MapPlatformClassToKotlinFix( val platformClassQualifiedName = DescriptorRenderer.FQ_NAMES_IN_TYPES.renderType(platformClass.defaultType) val singleClass = possibleClasses.singleOrNull() return if (singleClass != null) - "Change all usages of '$platformClassQualifiedName' in this file to '${DescriptorRenderer.FQ_NAMES_IN_TYPES - .renderType(singleClass.defaultType)}'" + KotlinBundle.message( + "change.all.usages.of.0.in.this.file.to.1", + platformClassQualifiedName, + DescriptorRenderer.FQ_NAMES_IN_TYPES.renderType(singleClass.defaultType) + ) else - "Change all usages of '$platformClassQualifiedName' in this file to a Kotlin class" + KotlinBundle.message("change.all.usages.of.0.in.this.file.to.a.kotlin.class", platformClassQualifiedName) } - override fun getFamilyName() = "Change to Kotlin class" + override fun getFamilyName() = KotlinBundle.message("change.to.kotlin.class") public override fun invoke(project: Project, editor: Editor?, file: KtFile) { val bindingContext = file.analyzeWithContent() @@ -121,8 +125,14 @@ class MapPlatformClassToKotlinFix( caretModel.moveToOffset(file.node.startOffset) val builder = TemplateBuilderImpl(file) - val expression = - MyLookupExpression(primaryReplacedExpression.text, options, null, null, false, "Choose an appropriate Kotlin class") + val expression = MyLookupExpression( + primaryReplacedExpression.text, + options, + null, + null, + false, + KotlinBundle.message("choose.an.appropriate.kotlin.class") + ) builder.replaceElement(primaryReplacedExpression, PRIMARY_USAGE, expression, true) for (replacedExpression in replacedElements) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorBracketsFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorBracketsFix.kt index e46edc41225..a2718f3ef72 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorBracketsFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorBracketsFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiDocumentManager import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.util.createIntentionForFirstParentOfType import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPrimaryConstructor @@ -17,7 +18,7 @@ import org.jetbrains.kotlin.psi.psiUtil.endOffset class MissingConstructorBracketsFix(element: KtPrimaryConstructor) : KotlinQuickFixAction(element), CleanupFix { override fun getFamilyName(): String = text - override fun getText(): String = "Add empty brackets after primary constructor" + override fun getText(): String = KotlinBundle.message("add.empty.brackets.after.primary.constructor") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val constructor = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorKeywordFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorKeywordFix.kt index 5b48fe6cbd8..e6fa60d6a85 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorKeywordFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MissingConstructorKeywordFix.kt @@ -9,6 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.util.addConstructorKeyword import org.jetbrains.kotlin.idea.util.createIntentionForFirstParentOfType import org.jetbrains.kotlin.psi.KtFile @@ -16,7 +17,7 @@ import org.jetbrains.kotlin.psi.KtPrimaryConstructor class MissingConstructorKeywordFix(element: KtPrimaryConstructor) : KotlinQuickFixAction(element), CleanupFix { override fun getFamilyName(): String = text - override fun getText(): String = "Add 'constructor' keyword" + override fun getText(): String = KotlinBundle.message("add.constructor.keyword") override fun invoke(project: Project, editor: Editor?, file: KtFile) { element?.addConstructorKeyword() diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveReceiverAnnotationFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveReceiverAnnotationFix.kt index 0369bbb7967..6e851eab348 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveReceiverAnnotationFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveReceiverAnnotationFix.kt @@ -21,6 +21,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.descriptors.annotations.AnnotationUseSiteTarget import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtAnnotationEntry import org.jetbrains.kotlin.psi.KtCallableDeclaration import org.jetbrains.kotlin.psi.KtFile @@ -28,7 +29,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getParentOfType class MoveReceiverAnnotationFix(element: KtAnnotationEntry) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Move annotation to receiver type" + override fun getFamilyName() = KotlinBundle.message("move.annotation.to.receiver.type") override fun getText() = familyName override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveTypeParameterConstraintFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveTypeParameterConstraintFix.kt index 6ba0f5af822..73965cd342f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveTypeParameterConstraintFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveTypeParameterConstraintFix.kt @@ -20,12 +20,13 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class MoveTypeParameterConstraintFix(element: KtTypeParameter) : KotlinQuickFixAction(element), CleanupFix { - override fun getText(): String = "Move type parameter constraint to 'where' clause" + override fun getText(): String = KotlinBundle.message("move.type.parameter.constraint.to.where.clause") override fun getFamilyName(): String = text override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveWhenElseBranchFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveWhenElseBranchFix.kt index d8707763af9..9c8df86ea57 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveWhenElseBranchFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/MoveWhenElseBranchFix.kt @@ -20,6 +20,7 @@ import com.intellij.codeInsight.CodeInsightUtilCore import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiUtil import org.jetbrains.kotlin.psi.KtWhenEntry @@ -27,7 +28,7 @@ import org.jetbrains.kotlin.psi.KtWhenExpression import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class MoveWhenElseBranchFix(element: KtWhenExpression) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Move else branch to the end" + override fun getFamilyName() = KotlinBundle.message("move.else.branch.to.the.end") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/NumberConversionFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/NumberConversionFix.kt index 5f6c3a61050..338f963595a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/NumberConversionFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/NumberConversionFix.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers @@ -46,8 +47,8 @@ class NumberConversionFix( override fun isAvailable(project: Project, editor: Editor?, file: KtFile) = disableIfAvailable?.isAvailable(project, editor, file) != true && isConversionAvailable - override fun getFamilyName() = "Insert number conversion" - override fun getText() = "Convert expression to '$typePresentation'" + override fun getFamilyName() = KotlinBundle.message("insert.number.conversion") + override fun getText() = KotlinBundle.message("convert.expression.to.0", typePresentation) override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveAtFromAnnotationArgument.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveAtFromAnnotationArgument.kt index 435f31b23d2..a957b559326 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveAtFromAnnotationArgument.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveAtFromAnnotationArgument.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtAnnotatedExpression import org.jetbrains.kotlin.psi.KtAnnotationEntry import org.jetbrains.kotlin.psi.KtFile @@ -26,7 +27,7 @@ import org.jetbrains.kotlin.psi.KtPsiFactory class RemoveAtFromAnnotationArgument(constructor: KtAnnotationEntry) : KotlinQuickFixAction(constructor) { - override fun getText() = "Remove @ from annotation argument" + override fun getText() = KotlinBundle.message("remove.from.annotation.argument") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveDefaultParameterValueFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveDefaultParameterValueFix.kt index 54b982e236f..639e97c3735 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveDefaultParameterValueFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveDefaultParameterValueFix.kt @@ -3,13 +3,14 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.util.CommentSaver import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtParameter class RemoveDefaultParameterValueFix(parameter: KtParameter) : KotlinQuickFixAction(parameter) { - override fun getText() = "Remove default parameter value" + override fun getText() = KotlinBundle.message("remove.default.parameter.value") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFinalUpperBoundFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFinalUpperBoundFix.kt index 83e5c0f4cac..8875cbc1f3f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFinalUpperBoundFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFinalUpperBoundFix.kt @@ -20,6 +20,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtTypeParameter import org.jetbrains.kotlin.psi.KtTypeReference @@ -30,7 +31,7 @@ class RemoveFinalUpperBoundFix(val typeReference: KtTypeReference) : KotlinQuick typeReference.getStrictParentOfType()?.extendsBound = null } - override fun getText() = "Remove final upper bound" + override fun getText() = KotlinBundle.message("remove.final.upper.bound") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFunctionBodyFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFunctionBodyFix.kt index 791634409c0..f10b7e8f98f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFunctionBodyFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveFunctionBodyFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.util.CommentSaver import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtFunction @@ -15,7 +16,7 @@ import org.jetbrains.kotlin.psi.psiUtil.PsiChildRange import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class RemoveFunctionBodyFix(element: KtFunction) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove function body" + override fun getFamilyName() = KotlinBundle.message("remove.function.body") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveModifierFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveModifierFix.kt index 629f9946d5b..485e9860bcc 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveModifierFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveModifierFix.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiFile import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.quickfix.QuickFixUtil import org.jetbrains.kotlin.lexer.KtModifierKeywordToken import org.jetbrains.kotlin.lexer.KtTokens @@ -26,15 +27,15 @@ class RemoveModifierFix( val modifierText = modifier.value when { isRedundant -> - "Remove redundant '$modifierText' modifier" + KotlinBundle.message("remove.redundant.0.modifier", modifierText) modifier === KtTokens.ABSTRACT_KEYWORD || modifier === KtTokens.OPEN_KEYWORD -> - "Make ${AddModifierFix.getElementName(element)} not $modifierText" + KotlinBundle.message("make.0.not.1", AddModifierFix.getElementName(element), modifierText) else -> - "Remove '$modifierText' modifier" + KotlinBundle.message("remove.0.modifier", modifierText, modifier) } } - override fun getFamilyName() = "Remove modifier" + override fun getFamilyName() = KotlinBundle.message("remove.modifier") override fun getText() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNameFromFunctionExpressionFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNameFromFunctionExpressionFix.kt index 197dcd31e25..0b3706b311f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNameFromFunctionExpressionFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNameFromFunctionExpressionFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.util.createIntentionForFirstParentOfType import org.jetbrains.kotlin.psi.* @@ -15,7 +16,7 @@ import org.jetbrains.kotlin.psi.psiUtil.forEachDescendantOfType import org.jetbrains.kotlin.resolve.BindingContext class RemoveNameFromFunctionExpressionFix(element: KtNamedFunction) : KotlinQuickFixAction(element), CleanupFix { - override fun getText(): String = "Remove identifier from anonymous function" + override fun getText(): String = KotlinBundle.message("remove.identifier.from.anonymous.function") override fun getFamilyName(): String = text override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNoConstructorFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNoConstructorFix.kt index df776b2b97f..65427334ef3 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNoConstructorFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNoConstructorFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiFactory @@ -17,7 +18,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class RemoveNoConstructorFix(constructor: KtValueArgumentList) : KotlinQuickFixAction(constructor) { - override fun getText() = "Remove constructor call" + override fun getText() = KotlinBundle.message("remove.constructor.call") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNullableFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNullableFix.kt index a235b6aa25c..5f1410130ba 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNullableFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveNullableFix.kt @@ -20,6 +20,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtNullableType import org.jetbrains.kotlin.psi.KtProperty @@ -31,13 +32,13 @@ class RemoveNullableFix( private val typeOfError: NullableKind ) : KotlinQuickFixAction(element) { enum class NullableKind(val message: String) { - REDUNDANT("Remove redundant '?'"), - SUPERTYPE("Remove '?'"), - USELESS("Remove useless '?'"), - PROPERTY("Make not-nullable") + REDUNDANT(KotlinBundle.message("remove.redundant")), + SUPERTYPE(KotlinBundle.message("text.remove.question")), + USELESS(KotlinBundle.message("remove.useless")), + PROPERTY(KotlinBundle.message("make.not.nullable")) } - override fun getFamilyName() = "Remove '?'" + override fun getFamilyName() = KotlinBundle.message("text.remove.question") override fun getText() = typeOfError.message diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePartsFromPropertyFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePartsFromPropertyFix.kt index f61db9a790c..59b27bf5803 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePartsFromPropertyFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePartsFromPropertyFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.project.Project import com.intellij.psi.util.PsiTreeUtil import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.core.quickfix.QuickFixUtil import org.jetbrains.kotlin.idea.intentions.SpecifyTypeExplicitlyIntention @@ -35,10 +36,12 @@ open class RemovePartsFromPropertyFix( element.setter?.bodyExpression != null ) - override fun getText(): String = - "Remove ${partsToRemove(removeGetter, removeSetter, removeInitializer)} from property" + override fun getText(): String = KotlinBundle.message( + "remove.0.from.property", + partsToRemove(removeGetter, removeSetter, removeInitializer) + ) - override fun getFamilyName(): String = "Remove parts from property" + override fun getFamilyName(): String = KotlinBundle.message("remove.parts.from.property") override fun isAvailable(project: Project, editor: Editor?, file: KtFile): Boolean { val type = QuickFixUtil.getDeclarationReturnType(element) ?: return false @@ -90,17 +93,17 @@ open class RemovePartsFromPropertyFix( private fun partsToRemove(getter: Boolean, setter: Boolean, initializer: Boolean): String = buildString { if (getter) { - append("getter") + append(KotlinBundle.message("text.getter")) if (setter && initializer) append(", ") else if (setter || initializer) - append(" and ") + append(" ${KotlinBundle.message("configuration.text.and")} ") } if (setter) { - append("setter") - if (initializer) append(" and ") + append(KotlinBundle.message("text.setter")) + if (initializer) append(" ${KotlinBundle.message("configuration.text.and")} ") } - if (initializer) append("initializer") + if (initializer) append(KotlinBundle.message("text.initializer")) } companion object : KotlinSingleIntentionActionFactory() { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePsiElementSimpleFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePsiElementSimpleFix.kt index e76f4af9e40..a5ca861710f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePsiElementSimpleFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemovePsiElementSimpleFix.kt @@ -20,6 +20,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.RemoveExplicitTypeIntention import org.jetbrains.kotlin.idea.util.CommentSaver import org.jetbrains.kotlin.lexer.KtTokens @@ -27,7 +28,7 @@ import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType open class RemovePsiElementSimpleFix(element: PsiElement, private val text: String) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove element" + override fun getFamilyName() = KotlinBundle.message("remove.element") override fun getText() = text @@ -38,8 +39,8 @@ open class RemovePsiElementSimpleFix(element: PsiElement, private val text: Stri object RemoveImportFactory : KotlinSingleIntentionActionFactory() { public override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { val directive = diagnostic.psiElement.getNonStrictParentOfType() ?: return null - val refText = directive.importedReference?.let { "for '${it.text}'" } ?: "" - return RemovePsiElementSimpleFix(directive, "Remove conflicting import $refText") + val refText = directive.importedReference?.let { KotlinBundle.message("for.0", it.text) } ?: "" + return RemovePsiElementSimpleFix(directive, KotlinBundle.message("remove.conflicting.import.0", refText)) } } @@ -47,21 +48,21 @@ open class RemovePsiElementSimpleFix(element: PsiElement, private val text: Stri public override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { val element = diagnostic.psiElement if (element.node.elementType != KtTokens.MUL) return null - return RemovePsiElementSimpleFix(element, "Remove '*'") + return RemovePsiElementSimpleFix(element, KotlinBundle.message("remove.star")) } } object RemoveTypeArgumentsFactory : KotlinSingleIntentionActionFactory() { public override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { val element = diagnostic.psiElement.getNonStrictParentOfType() ?: return null - return RemovePsiElementSimpleFix(element, "Remove type arguments") + return RemovePsiElementSimpleFix(element, KotlinBundle.message("remove.type.arguments")) } } object RemoveTypeParametersFactory : KotlinSingleIntentionActionFactory() { public override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { val element = diagnostic.psiElement.getNonStrictParentOfType() ?: return null - return RemovePsiElementSimpleFix(element, "Remove type parameters") + return RemovePsiElementSimpleFix(element, KotlinBundle.message("remove.type.parameters")) } } @@ -69,7 +70,7 @@ open class RemovePsiElementSimpleFix(element: PsiElement, private val text: Stri public override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { val expression = diagnostic.psiElement.getNonStrictParentOfType() ?: return null if (!RemoveExplicitTypeIntention.redundantTypeSpecification(expression.typeReference, expression.initializer)) return null - return object : RemovePsiElementSimpleFix(expression, "Remove variable '${expression.name}'") { + return object : RemovePsiElementSimpleFix(expression, KotlinBundle.message("remove.variable.0", expression.name.toString())) { override fun invoke(project: Project, editor: Editor?, file: KtFile) { val initializer = expression.initializer if (initializer != null && initializer !is KtConstantExpression) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantInitializerFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantInitializerFix.kt index 514945a1528..55067a85baa 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantInitializerFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantInitializerFix.kt @@ -18,13 +18,14 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.psi.util.PsiTreeUtil import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtProperty class RemoveRedundantInitializerFix(element: KtProperty) : RemovePartsFromPropertyFix(element, true, false, false) { - override fun getText(): String = "Remove redundant initializer" + override fun getText(): String = KotlinBundle.message("remove.redundant.initializer") - override fun getFamilyName(): String = "Remove redundant initializer" + override fun getFamilyName(): String = text companion object : KotlinSingleIntentionActionFactory() { override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantLabelFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantLabelFix.kt index 774e87189ac..a354e74ec90 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantLabelFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveRedundantLabelFix.kt @@ -8,13 +8,14 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtLabelReferenceExpression import org.jetbrains.kotlin.psi.KtLabeledExpression import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class RemoveRedundantLabelFix(element: KtLabeledExpression) : KotlinQuickFixAction(element) { - override fun getText(): String = "Remove redundant label" + override fun getText(): String = KotlinBundle.message("remove.redundant.label") override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSingleLambdaParameterFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSingleLambdaParameterFix.kt index 6043d67a19a..168dc8dcb27 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSingleLambdaParameterFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSingleLambdaParameterFix.kt @@ -20,12 +20,13 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class RemoveSingleLambdaParameterFix(element: KtParameter) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove single lambda parameter declaration" + override fun getFamilyName() = KotlinBundle.message("remove.single.lambda.parameter.declaration") override fun getText() = familyName override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSupertypeFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSupertypeFix.kt index 056ded07456..a2f8cbf5df5 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSupertypeFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveSupertypeFix.kt @@ -19,6 +19,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtClassOrObject import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtSuperTypeListEntry @@ -26,7 +27,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class RemoveSupertypeFix(superClass: KtSuperTypeListEntry) : KotlinQuickFixAction(superClass) { - override fun getFamilyName() = "Remove supertype" + override fun getFamilyName() = KotlinBundle.message("remove.supertype") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveTypeVarianceFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveTypeVarianceFix.kt index 53ebcafdee2..a4c26ef1c6e 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveTypeVarianceFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveTypeVarianceFix.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.descriptors.TypeParameterDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers import org.jetbrains.kotlin.lexer.KtTokens @@ -26,7 +27,7 @@ class RemoveTypeVarianceFix( private val type: String ) : KotlinQuickFixAction(typeParameter) { - override fun getText(): String = "Remove '${variance.label}' variance from '$type'" + override fun getText(): String = KotlinBundle.message("remove.0.variance.from.1", variance.label, type) override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedFunctionParameterFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedFunctionParameterFix.kt index f93d299294c..77f8f5da7d2 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedFunctionParameterFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedFunctionParameterFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.project.Project import com.intellij.psi.search.searches.ReferencesSearch import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToParameterDescriptorIfAny import org.jetbrains.kotlin.idea.intentions.RemoveEmptyPrimaryConstructorIntention import org.jetbrains.kotlin.idea.references.KtSimpleNameReference @@ -23,7 +24,7 @@ class RemoveUnusedFunctionParameterFix(parameter: KtParameter, private val check KotlinQuickFixAction(parameter) { override fun getFamilyName() = ChangeFunctionSignatureFix.FAMILY_NAME - override fun getText() = element?.let { "Remove parameter '${it.name}'" } ?: "" + override fun getText() = element?.let { KotlinBundle.message("remove.parameter.0", it.name.toString()) } ?: "" override fun startInWriteAction(): Boolean = false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedValueFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedValueFix.kt index 486f42b9088..f491d3694a9 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedValueFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUnusedValueFix.kt @@ -27,6 +27,7 @@ import org.jetbrains.kotlin.cfg.pseudocode.getContainingPseudocode import org.jetbrains.kotlin.cfg.pseudocode.sideEffectFree import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.references.mainReference import org.jetbrains.kotlin.psi.* @@ -40,15 +41,10 @@ class RemoveUnusedValueFix(expression: KtBinaryExpression) : KotlinQuickFixActio private fun showDialog(variable: KtProperty, project: Project, element: KtBinaryExpression, rhs: KtExpression) { if (ApplicationManager.getApplication().isUnitTestMode) return doRemove(RemoveMode.KEEP_INITIALIZE, element, rhs) - val message = - """ - - There are possible side effects found in expressions assigned to the variable '${variable.name}'
- You can:
- - Remove the entire assignment, or
- - Transform assignment right-hand side into the statement on its own.
- - """ + val message = "${KotlinBundle.message( + "there.are.possible.side.effects.found.in.expressions.assigned.to.the.variable.0", + variable.name.toString() + )}" ApplicationManager.getApplication().invokeLater { val exitCode = Messages.showYesNoCancelDialog( @@ -66,7 +62,7 @@ class RemoveUnusedValueFix(expression: KtBinaryExpression) : KotlinQuickFixActio } } - override fun getFamilyName() = "Remove redundant assignment" + override fun getFamilyName() = KotlinBundle.message("remove.redundant.assignment") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessCastFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessCastFix.kt index e9972a88002..fe505eadc22 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessCastFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessCastFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.dropEnclosingParenthesesIfPossible import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.psi.KtBinaryExpressionWithTypeRHS @@ -16,7 +17,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class RemoveUselessCastFix(element: KtBinaryExpressionWithTypeRHS) : KotlinQuickFixAction(element), CleanupFix { - override fun getFamilyName() = "Remove useless cast" + override fun getFamilyName() = KotlinBundle.message("remove.useless.cast") override fun getText(): String = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessElvisFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessElvisFix.kt index af17ac3af2b..4d853fd9592 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessElvisFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessElvisFix.kt @@ -19,13 +19,14 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.dropEnclosingParenthesesIfPossible import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.psi.KtBinaryExpression import org.jetbrains.kotlin.psi.KtFile class RemoveUselessElvisFix(element: KtBinaryExpression) : KotlinQuickFixAction(element), CleanupFix { - override fun getFamilyName(): String = "Remove useless elvis operator" + override fun getFamilyName(): String = KotlinBundle.message("remove.useless.elvis.operator") override fun getText(): String = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFix.kt index 75aa0156d8f..ecafeb22098 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFix.kt @@ -19,13 +19,14 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtIsExpression import org.jetbrains.kotlin.psi.KtPsiFactory import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class RemoveUselessIsCheckFix(element: KtIsExpression) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove useless is check" + override fun getFamilyName() = KotlinBundle.message("remove.useless.is.check") override fun getText(): String = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFixForWhen.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFixForWhen.kt index 89a3ea3c277..79e3ecead73 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFixForWhen.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveUselessIsCheckFixForWhen.kt @@ -19,11 +19,12 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class RemoveUselessIsCheckFixForWhen(element: KtWhenConditionIsPattern) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove useless is check" + override fun getFamilyName() = KotlinBundle.message("remove.useless.is.check") override fun getText(): String = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveValVarFromParameterFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveValVarFromParameterFix.kt index 9b9da4f7c28..7bd532fd8ad 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveValVarFromParameterFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveValVarFromParameterFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtValVarKeywordOwner import org.jetbrains.kotlin.psi.psiUtil.getElementTextWithContext @@ -21,12 +22,12 @@ class RemoveValVarFromParameterFix(element: KtValVarKeywordOwner) : KotlinQuickF varOrVal = valOrVarNode.text } - override fun getFamilyName() = "Remove 'val/var' from parameter" + override fun getFamilyName() = KotlinBundle.message("remove.val.var.from.parameter") override fun getText(): String { val element = element ?: return "" val varOrVal = element.valOrVarKeyword?.text ?: return familyName - return "Remove '$varOrVal' from parameter" + return KotlinBundle.message("remove.0.from.parameter", varOrVal) } override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveWhenElseBranchFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveWhenElseBranchFix.kt index b27d90f6978..61f4f491807 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveWhenElseBranchFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RemoveWhenElseBranchFix.kt @@ -19,11 +19,12 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtWhenEntry class RemoveWhenElseBranchFix(element: KtWhenEntry) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Remove else branch" + override fun getFamilyName() = KotlinBundle.message("remove.else.branch") override fun getText() = familyName diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameIdentifierFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameIdentifierFix.kt index 2f006980d95..bae23e7235b 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameIdentifierFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameIdentifierFix.kt @@ -14,9 +14,10 @@ import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import com.intellij.refactoring.RefactoringFactory import com.intellij.refactoring.rename.RenameHandlerRegistry +import org.jetbrains.kotlin.idea.KotlinBundle open class RenameIdentifierFix : LocalQuickFix { - override fun getName() = "Rename" + override fun getName() = KotlinBundle.message("rename.identifier.fix.text") override fun getFamilyName() = name override fun startInWriteAction(): Boolean = false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameModToRemFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameModToRemFix.kt index 84760780dba..0612a7bdc4f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameModToRemFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameModToRemFix.kt @@ -22,6 +22,7 @@ import com.intellij.openapi.project.Project import com.intellij.refactoring.rename.RenameProcessor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtNamedFunction @@ -29,7 +30,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType import org.jetbrains.kotlin.types.expressions.OperatorConventions.REM_TO_MOD_OPERATION_NAMES class RenameModToRemFix(element: KtNamedFunction, val newName: Name) : KotlinQuickFixAction(element) { - override fun getText(): String = "Rename to '$newName'" + override fun getText(): String = KotlinBundle.message("rename.to.0", newName) override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameParameterToMatchOverriddenMethodFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameParameterToMatchOverriddenMethodFix.kt index 8ae2d07e315..9083a25bd4f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameParameterToMatchOverriddenMethodFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameParameterToMatchOverriddenMethodFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.refactoring.rename.RenameProcessor import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToParameterDescriptorIfAny import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtParameter @@ -20,9 +21,9 @@ class RenameParameterToMatchOverriddenMethodFix( parameter: KtParameter, private val newName: String ) : KotlinQuickFixAction(parameter) { - override fun getFamilyName() = "Rename" + override fun getFamilyName() = KotlinBundle.message("rename.identifier.fix.text") - override fun getText() = "Rename parameter to match overridden method" + override fun getText() = KotlinBundle.message("rename.parameter.to.match.overridden.method") override fun startInWriteAction(): Boolean = false diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameToUnderscoreFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameToUnderscoreFix.kt index 36bd5c718d9..045cf981a55 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameToUnderscoreFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameToUnderscoreFix.kt @@ -11,11 +11,12 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.config.LanguageFeature import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.project.languageVersionSettings import org.jetbrains.kotlin.psi.* class RenameToUnderscoreFix(element: KtCallableDeclaration) : KotlinQuickFixAction(element) { - override fun getText() = "Rename to _" + override fun getText() = KotlinBundle.message("rename.to.underscore") override fun getFamilyName() = text override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameUnderscoreFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameUnderscoreFix.kt index dc1c1a2376b..d5354016e3a 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameUnderscoreFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RenameUnderscoreFix.kt @@ -23,6 +23,7 @@ import com.intellij.openapi.project.Project import com.intellij.psi.PsiNameIdentifierOwner import com.intellij.refactoring.rename.RenameHandlerRegistry import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtDeclaration import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType @@ -41,7 +42,7 @@ class RenameUnderscoreFix(declaration: KtDeclaration) : KotlinQuickFixAction(expression) { override fun getFamilyName() = text - override fun getText() = "Replace with safe (this?.) call" + override fun getText() = KotlinBundle.message("replace.with.safe.this.call") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return @@ -92,7 +93,7 @@ class ReplaceWithSafeCallFix( notNullNeeded: Boolean ) : ReplaceCallFix(expression, "?.", notNullNeeded) { - override fun getText() = "Replace with safe (?.) call" + override fun getText() = KotlinBundle.message("replace.with.safe.call") companion object : KotlinSingleIntentionActionFactory() { override fun createAction(diagnostic: Diagnostic): IntentionAction? { @@ -117,7 +118,7 @@ class ReplaceWithSafeCallForScopeFunctionFix( notNullNeeded: Boolean ) : ReplaceCallFix(expression, "?.", notNullNeeded) { - override fun getText() = "Replace scope function with safe (?.) call" + override fun getText() = KotlinBundle.message("replace.scope.function.with.safe.call") companion object : KotlinSingleIntentionActionFactory() { override fun createAction(diagnostic: Diagnostic): KotlinQuickFixAction? { @@ -168,7 +169,7 @@ class ReplaceWithSafeCallForScopeFunctionFix( } class ReplaceWithDotCallFix(expression: KtSafeQualifiedExpression) : ReplaceCallFix(expression, "."), CleanupFix { - override fun getText() = "Replace with dot call" + override fun getText() = KotlinBundle.message("replace.with.dot.call") companion object : KotlinSingleIntentionActionFactory() { override fun createAction(diagnostic: Diagnostic): IntentionAction? { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceInfixOrOperatorCallFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceInfixOrOperatorCallFix.kt index ba9cf2d7ffc..423aabb83ae 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceInfixOrOperatorCallFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceInfixOrOperatorCallFix.kt @@ -11,6 +11,7 @@ import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall import org.jetbrains.kotlin.idea.intentions.OperatorToFunctionIntention import org.jetbrains.kotlin.lexer.KtTokens @@ -25,7 +26,7 @@ class ReplaceInfixOrOperatorCallFix( private val notNullNeeded: Boolean ) : KotlinQuickFixAction(element) { - override fun getText() = "Replace with safe (?.) call" + override fun getText() = KotlinBundle.message("replace.with.safe.call1") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJavaAnnotationPositionedArgumentsFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJavaAnnotationPositionedArgumentsFix.kt index 0b43d0beeee..91c7f403e40 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJavaAnnotationPositionedArgumentsFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJavaAnnotationPositionedArgumentsFix.kt @@ -8,6 +8,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall import org.jetbrains.kotlin.idea.util.createIntentionForFirstParentOfType import org.jetbrains.kotlin.psi.KtAnnotationEntry @@ -18,7 +19,7 @@ import org.jetbrains.kotlin.resolve.jvm.checkers.JavaAnnotationCallChecker class ReplaceJavaAnnotationPositionedArgumentsFix(element: KtAnnotationEntry) : KotlinQuickFixAction(element), CleanupFix { - override fun getText(): String = "Replace invalid positioned arguments for annotation" + override fun getText(): String = KotlinBundle.message("replace.invalid.positioned.arguments.for.annotation") override fun getFamilyName(): String = text override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJvmFieldWithConstFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJvmFieldWithConstFix.kt index 7998aa4f836..c6e59c6c99c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJvmFieldWithConstFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceJvmFieldWithConstFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.descriptors.PropertyDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.search.usagesSearch.descriptor import org.jetbrains.kotlin.lexer.KtTokens @@ -24,7 +25,7 @@ import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode class ReplaceJvmFieldWithConstFix(annotation: KtAnnotationEntry) : KotlinQuickFixAction(annotation) { - override fun getText(): String = "Replace '@JvmField' with 'const'" + override fun getText(): String = KotlinBundle.message("replace.jvmfield.with.const") override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceModifierFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceModifierFix.kt index ce9eec91846..eeda527a5b8 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceModifierFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceModifierFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.lexer.KtModifierKeywordToken import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtFile @@ -21,11 +22,11 @@ class ReplaceModifierFix( private val replacement: KtModifierKeywordToken ) : KotlinQuickFixAction(element), CleanupFix { - private val text = "Replace with '${replacement.value}'" + private val text = KotlinBundle.message("replace.with.0", replacement.value) override fun getText() = text - override fun getFamilyName() = "Replace modifier" + override fun getFamilyName() = KotlinBundle.message("replace.modifier") override fun invoke(project: Project, editor: Editor?, file: KtFile) { element?.addModifier(replacement) diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceObsoleteLabelSyntaxFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceObsoleteLabelSyntaxFix.kt index 08d04185549..ec5ad7f35e7 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceObsoleteLabelSyntaxFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceObsoleteLabelSyntaxFix.kt @@ -10,12 +10,13 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.openapi.util.TextRange import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType class ReplaceObsoleteLabelSyntaxFix(element: KtAnnotationEntry) : KotlinQuickFixAction(element), CleanupFix { - override fun getFamilyName(): String = "Update obsolete label syntax" - override fun getText(): String = element?.let { "Replace with label ${it.calleeExpression?.text ?: ""}@" } ?: "" + override fun getFamilyName(): String = KotlinBundle.message("update.obsolete.label.syntax") + override fun getText(): String = element?.let { KotlinBundle.message("replace.with.label.0.at", it.calleeExpression?.text ?: "") } ?: "" override fun invoke(project: Project, editor: Editor?, file: KtFile) { replaceWithLabel(element ?: return) diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplacePrimitiveCastWithNumberConversionFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplacePrimitiveCastWithNumberConversionFix.kt index 2d446fb2a5d..b8919c7f6cf 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplacePrimitiveCastWithNumberConversionFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplacePrimitiveCastWithNumberConversionFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors.CAST_NEVER_SUCCEEDS +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers.SOURCE_CODE_SHORT_NAMES_NO_ANNOTATIONS @@ -24,8 +25,8 @@ class ReplacePrimitiveCastWithNumberConversionFix( private val targetShortType: String ) : KotlinQuickFixAction(element) { - override fun getText() = "Replace cast with call to 'to$targetShortType()'" - override fun getFamilyName() = "Replace cast with primitive conversion method" + override fun getText() = KotlinBundle.message("replace.cast.with.call.to.to.0", targetShortType) + override fun getFamilyName() = KotlinBundle.message("replace.cast.with.primitive.conversion.method") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceWithArrayCallInAnnotationFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceWithArrayCallInAnnotationFix.kt index 8d29c2583fe..10c9d54f3c5 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceWithArrayCallInAnnotationFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/ReplaceWithArrayCallInAnnotationFix.kt @@ -19,12 +19,13 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getParentOfType import org.jetbrains.kotlin.utils.addToStdlib.safeAs class ReplaceWithArrayCallInAnnotationFix(argument: KtExpression) : KotlinQuickFixAction(argument) { - override fun getText() = "Replace with array call" + override fun getText() = KotlinBundle.message("replace.with.array.call") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RestrictedRetentionForExpressionAnnotationFactory.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RestrictedRetentionForExpressionAnnotationFactory.kt index 6c41ff1ea04..86f9547cc35 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RestrictedRetentionForExpressionAnnotationFactory.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RestrictedRetentionForExpressionAnnotationFactory.kt @@ -11,6 +11,7 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.descriptors.annotations.KotlinTarget import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.name.FqName @@ -59,7 +60,7 @@ object RestrictedRetentionForExpressionAnnotationFactory : KotlinIntentionAction } private class AddSourceRetentionFix(element: KtClass) : KotlinQuickFixAction(element) { - override fun getText() = "Add SOURCE retention" + override fun getText() = KotlinBundle.message("add.source.retention") override fun getFamilyName() = text @@ -73,7 +74,7 @@ object RestrictedRetentionForExpressionAnnotationFactory : KotlinIntentionAction private class ChangeRetentionToSourceFix(retentionAnnotation: KtAnnotationEntry) : KotlinQuickFixAction(retentionAnnotation) { - override fun getText() = "Change existent retention to SOURCE" + override fun getText() = KotlinBundle.message("change.existent.retention.to.source") override fun getFamilyName() = text @@ -97,7 +98,7 @@ object RestrictedRetentionForExpressionAnnotationFactory : KotlinIntentionAction private class RemoveExpressionTargetFix(expressionTargetArgument: KtValueArgument) : KotlinQuickFixAction(expressionTargetArgument) { - override fun getText() = "Remove EXPRESSION target" + override fun getText() = KotlinBundle.message("remove.expression.target") override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/RoundNumberFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/RoundNumberFix.kt index 5c53d08672c..5db5a8299fb 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/RoundNumberFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/RoundNumberFix.kt @@ -9,6 +9,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.codeInsight.intention.LowPriorityAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.resolveImportReference import org.jetbrains.kotlin.idea.core.replaced @@ -40,7 +41,7 @@ class RoundNumberFix( override fun isAvailable(project: Project, editor: Editor?, file: KtFile) = disableIfAvailable?.isAvailable(project, editor, file) != true && isTarget - override fun getText() = "Round using $roundFunction()" + override fun getText() = KotlinBundle.message("round.using.0", roundFunction) override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SimplifyComparisonFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SimplifyComparisonFix.kt index 7fd25bf6f8d..628ae270032 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SimplifyComparisonFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SimplifyComparisonFix.kt @@ -21,6 +21,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.DiagnosticWithParameters2 +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.idea.inspections.ConstantConditionIfInspection import org.jetbrains.kotlin.idea.intentions.SimplifyBooleanWithConstantsIntention @@ -29,9 +30,9 @@ import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType class SimplifyComparisonFix(element: KtExpression, val value: Boolean) : KotlinQuickFixAction(element) { - override fun getFamilyName() = "Simplify $element to '$value'" + override fun getFamilyName() = KotlinBundle.message("simplify.0.to.1", element.toString(), value) - override fun getText() = "Simplify comparison" + override fun getText() = KotlinBundle.message("simplify.comparison") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyOverrideExplicitlyFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyOverrideExplicitlyFix.kt index 4f35c363050..53574d9c5f4 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyOverrideExplicitlyFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyOverrideExplicitlyFix.kt @@ -13,6 +13,7 @@ import org.jetbrains.kotlin.descriptors.ConstructorDescriptor import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMemberChooserObject @@ -27,9 +28,9 @@ class SpecifyOverrideExplicitlyFix( element: KtClassOrObject, private val signature: String ) : KotlinQuickFixAction(element) { - override fun getText() = "Specify override for '$signature' explicitly" + override fun getText() = KotlinBundle.message("specify.override.for.0.explicitly", signature) - override fun getFamilyName() = "Specify override explicitly" + override fun getFamilyName() = KotlinBundle.message("specify.override.explicitly") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyTypeExplicitlyFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyTypeExplicitlyFix.kt index d33d7652b38..5a8413e31c3 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyTypeExplicitlyFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SpecifyTypeExplicitlyFix.kt @@ -22,6 +22,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import com.intellij.psi.util.PsiTreeUtil +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.intentions.SpecifyTypeExplicitlyIntention import org.jetbrains.kotlin.psi.KtCallableDeclaration import org.jetbrains.kotlin.psi.KtNamedFunction @@ -29,7 +30,7 @@ import org.jetbrains.kotlin.psi.KtProperty import org.jetbrains.kotlin.types.isError class SpecifyTypeExplicitlyFix : PsiElementBaseIntentionAction() { - override fun getFamilyName() = "Specify type explicitly" + override fun getFamilyName() = KotlinBundle.message("specify.type.explicitly") override fun invoke(project: Project, editor: Editor, element: PsiElement) { if (!FileModificationService.getInstance().preparePsiElementForWrite(element)) return @@ -43,8 +44,8 @@ class SpecifyTypeExplicitlyFix : PsiElementBaseIntentionAction() { val declaration = declarationByElement(element) if (declaration?.typeReference != null) return false text = when (declaration) { - is KtProperty -> "Specify type explicitly" - is KtNamedFunction -> "Specify return type explicitly" + is KtProperty -> KotlinBundle.message("specify.type.explicitly") + is KtNamedFunction -> KotlinBundle.message("specify.return.type.explicitly") else -> return false } diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SuperClassNotInitialized.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SuperClassNotInitialized.kt index 95c7109858e..04710b9ae2d 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SuperClassNotInitialized.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SuperClassNotInitialized.kt @@ -13,6 +13,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny import org.jetbrains.kotlin.idea.caches.resolve.resolveToParameterDescriptorIfAny @@ -99,7 +100,7 @@ object SuperClassNotInitialized : KotlinIntentionActionsFactory() { types.asSequence().take(maxParamsToDisplay).map { DescriptorRenderer.SHORT_NAMES_IN_TYPES.renderType(it) } .toList() val parameterString = typesRendered.joinToString(", ", "(", if (types.size <= maxParamsToDisplay) ")" else ",...)") - val text = "Add constructor parameters from " + superClass.name.asString() + parameterString + val text = KotlinBundle.message("add.constructor.parameters.from.0.1", superClass.name.asString(), parameterString) fixes.addIfNotNull(AddParametersFix.create(delegator, classOrObjectDeclaration, constructor, text)) } } @@ -114,7 +115,7 @@ object SuperClassNotInitialized : KotlinIntentionActionsFactory() { val putCaretIntoParenthesis: Boolean ) : KotlinQuickFixAction(element), HighPriorityAction { - override fun getFamilyName() = "Change to constructor invocation" //TODO? + override fun getFamilyName() = KotlinBundle.message("change.to.constructor.invocation") //TODO? override fun getText() = familyName @@ -200,7 +201,7 @@ object SuperClassNotInitialized : KotlinIntentionActionsFactory() { } } - override fun getFamilyName() = "Add constructor parameters from superclass" + override fun getFamilyName() = KotlinBundle.message("add.constructor.parameters.from.superclass") override fun getText() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithArrayOfWithSpreadOperatorInFunctionFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithArrayOfWithSpreadOperatorInFunctionFix.kt index e23cbf7697b..920e577b2a2 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithArrayOfWithSpreadOperatorInFunctionFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithArrayOfWithSpreadOperatorInFunctionFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getParentOfType @@ -20,7 +21,7 @@ class SurroundWithArrayOfWithSpreadOperatorInFunctionFix( val wrapper: Name, argument: KtExpression ) : KotlinQuickFixAction(argument) { - override fun getText() = "Surround with *$wrapper(...)" + override fun getText() = KotlinBundle.message("surround.with.star.0", wrapper) override fun getFamilyName() = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithLambdaFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithLambdaFix.kt index 04d5de04214..ef12d922bad 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithLambdaFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithLambdaFix.kt @@ -8,6 +8,7 @@ import org.jetbrains.kotlin.builtins.isFunctionType import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors import org.jetbrains.kotlin.diagnostics.rendering.DefaultErrorMessages +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyzeWithContent import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.psi.KtFile @@ -23,7 +24,7 @@ class SurroundWithLambdaFix( ) : KotlinQuickFixAction(expression), HighPriorityAction { override fun getFamilyName() = text - override fun getText() = "Surround with lambda" + override fun getText() = KotlinBundle.message("surround.with.lambda") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val nameReference = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt index 141b2b602c6..624431f97c4 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt @@ -22,6 +22,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.intentions.branchedTransformations.isStableSimpleExpression import org.jetbrains.kotlin.psi.* @@ -41,7 +42,7 @@ class SurroundWithNullCheckFix( override fun getFamilyName() = text - override fun getText() = "Surround with null check" + override fun getText() = KotlinBundle.message("surround.with.null.check") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/TooLongCharLiteralToStringFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/TooLongCharLiteralToStringFix.kt index 32e37c9f57e..88990d9a791 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/TooLongCharLiteralToStringFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/TooLongCharLiteralToStringFix.kt @@ -4,6 +4,7 @@ import com.intellij.codeInsight.intention.IntentionAction import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtConstantExpression import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiFactory @@ -11,7 +12,7 @@ import org.jetbrains.kotlin.psi.KtPsiFactory class TooLongCharLiteralToStringFix( element: KtConstantExpression ) : KotlinQuickFixAction(element) { - override fun getText(): String = "Convert too long character literal to string" + override fun getText(): String = KotlinBundle.message("convert.too.long.character.literal.to.string") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/TypeOfAnnotationMemberFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/TypeOfAnnotationMemberFix.kt index 4c5561b0047..da567bf5eaf 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/TypeOfAnnotationMemberFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/TypeOfAnnotationMemberFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.diagnostics.Diagnostic +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiFactory @@ -22,7 +23,7 @@ class TypeOfAnnotationMemberFix( typeReference: KtTypeReference, private val fixedType: String ) : KotlinQuickFixAction(typeReference), CleanupFix { - override fun getText(): String = "Replace array of boxed with array of primitive" + override fun getText(): String = KotlinBundle.message("replace.array.of.boxed.with.array.of.primitive") override fun getFamilyName(): String = text diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/UnsupportedYieldFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/UnsupportedYieldFix.kt index 27fd0e758ad..980abac5a8f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/UnsupportedYieldFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/UnsupportedYieldFix.kt @@ -11,12 +11,13 @@ import com.intellij.openapi.project.Project import com.intellij.psi.PsiElement import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.MESSAGE_FOR_YIELD_BEFORE_LAMBDA class UnsupportedYieldFix(psiElement: PsiElement) : KotlinQuickFixAction(psiElement), CleanupFix { - override fun getFamilyName(): String = "Migrate unsupported yield syntax" + override fun getFamilyName(): String = KotlinBundle.message("migrate.unsupported.yield.syntax") override fun getText(): String = familyName override fun invoke(project: Project, editor: Editor?, file: KtFile) { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithArrayLiteralFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithArrayLiteralFix.kt index 040fe418d22..b89b4351b48 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithArrayLiteralFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithArrayLiteralFix.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiFactory @@ -14,9 +15,9 @@ import org.jetbrains.kotlin.psi.createExpressionByPattern class WrapWithArrayLiteralFix(expression: KtExpression) : KotlinQuickFixAction(expression) { - override fun getFamilyName() = "Wrap with array literal" + override fun getFamilyName() = KotlinBundle.message("wrap.with.array.literal") - override fun getText() = "Wrap with []" + override fun getText() = KotlinBundle.message("wrap.with") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithCollectionLiteralCallFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithCollectionLiteralCallFix.kt index e4f54247b2f..2c66f5ff8b6 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithCollectionLiteralCallFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithCollectionLiteralCallFix.kt @@ -7,6 +7,7 @@ package org.jetbrains.kotlin.idea.quickfix import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.idea.intentions.branchedTransformations.isNullExpression import org.jetbrains.kotlin.psi.* @@ -35,12 +36,12 @@ class WrapWithCollectionLiteralCallFix private constructor( editor?.caretModel?.moveToOffset(replaced.endOffset) } - override fun getFamilyName(): String = "Wrap with collection literal call" + override fun getFamilyName(): String = KotlinBundle.message("wrap.with.collection.literal.call") override fun getText() = if (wrapInitialElement) - "Wrap element with '$functionName()' call" + KotlinBundle.message("wrap.element.with.0.call", functionName) else - "Replace with '$functionName()' call" + KotlinBundle.message("replace.with.0.call", functionName) companion object { fun create(expectedType: KotlinType, expressionType: KotlinType, element: KtExpression): List { diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithSafeLetCallFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithSafeLetCallFix.kt index 1b1dd374da3..c54240f550e 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithSafeLetCallFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrapWithSafeLetCallFix.kt @@ -22,6 +22,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall import org.jetbrains.kotlin.idea.core.KotlinNameSuggester import org.jetbrains.kotlin.idea.core.NewDeclarationNameValidator @@ -40,7 +41,7 @@ class WrapWithSafeLetCallFix( override fun getFamilyName() = text - override fun getText() = "Wrap with '?.let { ... }' call" + override fun getText() = KotlinBundle.message("wrap.with.let.call") override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongLongSuffixFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongLongSuffixFix.kt index dd243c72b90..a146e9b2a1c 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongLongSuffixFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongLongSuffixFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.project.Project import org.jetbrains.kotlin.diagnostics.Diagnostic import org.jetbrains.kotlin.diagnostics.Errors +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.psi.KtConstantExpression import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtPsiFactory @@ -17,8 +18,8 @@ import org.jetbrains.kotlin.psi.KtPsiFactory class WrongLongSuffixFix(element: KtConstantExpression) : KotlinQuickFixAction(element) { private val corrected = element.text.trimEnd('l') + 'L' - override fun getText() = "Change to '$corrected'" - override fun getFamilyName() = "Change to correct long suffix 'L'" + override fun getText() = KotlinBundle.message("change.to.0", corrected) + override fun getFamilyName() = KotlinBundle.message("change.to.correct.long.suffix.l") override fun invoke(project: Project, editor: Editor?, file: KtFile) { element?.replace(KtPsiFactory(project).createExpression(corrected)) diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongPrimitiveLiteralFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongPrimitiveLiteralFix.kt index 41faa2f352f..32f8d36f3c1 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongPrimitiveLiteralFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/WrongPrimitiveLiteralFix.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.codegen.ExpressionCodegen import org.jetbrains.kotlin.config.LanguageFeature +import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.core.replaced import org.jetbrains.kotlin.idea.project.languageVersionSettings @@ -82,8 +83,8 @@ class WrongPrimitiveLiteralFix(element: KtConstantExpression, type: KotlinType) return constValue.toLong() in valueRanges[typeName] ?: return false } - override fun getFamilyName() = "Change to correct primitive type" - override fun getText() = "Change to '$fixedExpression'" + override fun getFamilyName() = KotlinBundle.message("change.to.correct.primitive.type") + override fun getText() = KotlinBundle.message("change.to.0", fixedExpression) override fun invoke(project: Project, editor: Editor?, file: KtFile) { val element = element ?: return