diff --git a/platform/execution-impl/src/com/intellij/execution/target/ManageTargetEnvironmentsAction.kt b/platform/execution-impl/src/com/intellij/execution/target/ManageTargetEnvironmentsAction.kt index a367fa84a70e..547b01842dfa 100644 --- a/platform/execution-impl/src/com/intellij/execution/target/ManageTargetEnvironmentsAction.kt +++ b/platform/execution-impl/src/com/intellij/execution/target/ManageTargetEnvironmentsAction.kt @@ -1,12 +1,13 @@ // Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.execution.target +import com.intellij.execution.ExecutionBundle import com.intellij.openapi.actionSystem.AnActionEvent import com.intellij.openapi.application.Experiments import com.intellij.openapi.options.ShowSettingsUtil import com.intellij.openapi.project.DumbAwareAction -class ManageTargetEnvironmentsAction : DumbAwareAction("Manage Targets...") { +class ManageTargetEnvironmentsAction : DumbAwareAction(ExecutionBundle.message("action.manage.targets.text")) { override fun actionPerformed(e: AnActionEvent) { ShowSettingsUtil.getInstance().editConfigurable(e.project, TargetEnvironmentsConfigurable(e.project!!, null)) } diff --git a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentDetailsConfigurable.kt b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentDetailsConfigurable.kt index cf9ff1fc666b..35bd2ea20f46 100644 --- a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentDetailsConfigurable.kt +++ b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentDetailsConfigurable.kt @@ -1,11 +1,13 @@ // Copyright 2000-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.execution.target +import com.intellij.execution.ExecutionBundle import com.intellij.openapi.actionSystem.AnAction import com.intellij.openapi.actionSystem.AnActionEvent import com.intellij.openapi.options.Configurable import com.intellij.openapi.project.Project import com.intellij.openapi.ui.NamedConfigurable +import com.intellij.openapi.util.NlsActions import com.intellij.ui.TitledSeparator import com.intellij.ui.components.DropDownLink import com.intellij.ui.components.JBScrollPane @@ -106,9 +108,11 @@ internal class TargetEnvironmentDetailsConfigurable(private val project: Project createComponent()?.revalidate() } - private abstract inner class ChangeRuntimeActionBase(protected val runtime: LanguageRuntimeConfiguration, text: String) : AnAction(text) + private abstract inner class ChangeRuntimeActionBase(protected val runtime: LanguageRuntimeConfiguration, + @NlsActions.ActionText text: String) : AnAction(text) - private inner class DuplicateRuntimeAction(runtime: LanguageRuntimeConfiguration) : ChangeRuntimeActionBase(runtime, "Duplicate") { + private inner class DuplicateRuntimeAction(runtime: LanguageRuntimeConfiguration) + : ChangeRuntimeActionBase(runtime, ExecutionBundle.message("targets.details.action.duplicate.text")) { override fun actionPerformed(e: AnActionEvent) { val copy = runtime.getRuntimeType().duplicateConfig(runtime) config.runtimes.addConfig(copy) @@ -116,7 +120,8 @@ internal class TargetEnvironmentDetailsConfigurable(private val project: Project } } - private inner class RemoveRuntimeAction(runtime: LanguageRuntimeConfiguration) : ChangeRuntimeActionBase(runtime, "Remove") { + private inner class RemoveRuntimeAction(runtime: LanguageRuntimeConfiguration) + : ChangeRuntimeActionBase(runtime, ExecutionBundle.message("targets.details.action.remove.text")) { override fun actionPerformed(e: AnActionEvent) { config.runtimes.removeConfig(runtime) forceRefreshUI() diff --git a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsConfigurable.kt b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsConfigurable.kt index 57c50bcabff9..7a8dcc2bdf2f 100644 --- a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsConfigurable.kt +++ b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsConfigurable.kt @@ -1,6 +1,7 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.execution.target +import com.intellij.execution.ExecutionBundle import com.intellij.openapi.options.MasterDetails import com.intellij.openapi.options.SearchableConfigurable import com.intellij.openapi.project.Project @@ -25,7 +26,7 @@ class TargetEnvironmentsConfigurable(project: Project, initialSelectedName: Stri override fun getId(): String = "Runtime.Targets.Configurable" - override fun getDisplayName(): String = "Runtime Targets" + override fun getDisplayName(): String = ExecutionBundle.message("configurable.name.runtime.targets") override fun createComponent(): JComponent = editor.createComponent() diff --git a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsMasterDetails.kt b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsMasterDetails.kt index 82ae08e807ef..ce6ee254980e 100644 --- a/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsMasterDetails.kt +++ b/platform/execution-impl/src/com/intellij/execution/target/TargetEnvironmentsMasterDetails.kt @@ -1,6 +1,7 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.execution.target +import com.intellij.execution.ExecutionBundle import com.intellij.openapi.actionSystem.* import com.intellij.openapi.keymap.KeymapUtil import com.intellij.openapi.project.DumbAware @@ -23,7 +24,8 @@ class TargetEnvironmentsMasterDetails @JvmOverloads constructor(private val proj // note that `MasterDetailsComponent` does not work without `initTree()` initTree() myTree.emptyText.text = "No targets added" - myTree.emptyText.appendSecondaryText("Add new target", SimpleTextAttributes.LINK_ATTRIBUTES) { _ -> + myTree.emptyText.appendSecondaryText(ExecutionBundle.message("targets.details.status.text.add.new.target"), + SimpleTextAttributes.LINK_ATTRIBUTES) { _ -> val popup = ActionManager.getInstance().createActionPopupMenu("TargetEnvironmentsConfigurable.EmptyListText", CreateNewTargetGroup()) val size = myTree.emptyText.preferredSize val textY = myTree.height / if (myTree.emptyText.isShowAboveCenter) 3 else 2 @@ -33,10 +35,10 @@ class TargetEnvironmentsMasterDetails @JvmOverloads constructor(private val proj myTree.emptyText.appendSecondaryText(" ($shortcutText)", StatusText.DEFAULT_ATTRIBUTES, null) } - override fun getDisplayName(): String = "Remote Targets" + override fun getDisplayName(): String = ExecutionBundle.message("targets.details.configurable.name.remote.targets") override fun getEmptySelectionString(): String? { - return "Select target to configure" + return ExecutionBundle.message("targets.details.status.text.select.target.to.configure") } override fun reset() { @@ -125,7 +127,8 @@ class TargetEnvironmentsMasterDetails @JvmOverloads constructor(private val proj } } - private inner class CreateNewTargetGroup : ActionGroup("Add", "", IconUtil.getAddIcon()), + private inner class CreateNewTargetGroup : ActionGroup(ExecutionBundle.message("targets.details.action.add.text"), + "", IconUtil.getAddIcon()), ActionGroupWithPreselection, DumbAware { init { registerCustomShortcutSet(CommonActionsPanel.getCommonShortcut(CommonActionsPanel.Buttons.ADD), myTree) @@ -142,7 +145,9 @@ class TargetEnvironmentsMasterDetails @JvmOverloads constructor(private val proj } } - private inner class DuplicateAction : DumbAwareAction("Duplicate", "Duplicate", PlatformIcons.COPY_ICON) { + private inner class DuplicateAction : DumbAwareAction(ExecutionBundle.message("targets.details.action.duplicate.text"), + ExecutionBundle.message("targets.details.action.duplicate.description"), + PlatformIcons.COPY_ICON) { init { registerCustomShortcutSet(CommonShortcuts.getDuplicate(), myTree) } diff --git a/platform/execution-impl/src/com/intellij/execution/target/java/JavaLanguageRuntimeUI.kt b/platform/execution-impl/src/com/intellij/execution/target/java/JavaLanguageRuntimeUI.kt index 5756dc77fc4f..bbfadd1359b5 100644 --- a/platform/execution-impl/src/com/intellij/execution/target/java/JavaLanguageRuntimeUI.kt +++ b/platform/execution-impl/src/com/intellij/execution/target/java/JavaLanguageRuntimeUI.kt @@ -1,6 +1,7 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. package com.intellij.execution.target.java +import com.intellij.execution.ExecutionBundle import com.intellij.execution.target.LanguageRuntimeType.VolumeDescriptor import com.intellij.execution.target.TargetEnvironmentConfiguration import com.intellij.execution.target.TargetEnvironmentType.TargetSpecificVolumeContributionUI @@ -18,17 +19,17 @@ class JavaLanguageRuntimeUI(private val config: JavaLanguageRuntimeConfiguration override fun createPanel(): DialogPanel { return panel { - row("JDK home path:") { + row(ExecutionBundle.message("java.language.runtime.jdk.home.path")) { textField(config::homePath) - .comment("The path to the JDK on the target") + .comment(ExecutionBundle.message("java.language.runtime.text.path.to.jdk.on.target")) } - row("JDK version:") { + row(ExecutionBundle.message("java.language.runtime.jdk.version")) { textField(config::javaVersionString) } addVolumeUI(JavaLanguageRuntimeType.APPLICATION_FOLDER_VOLUME) - hideableRow("Advanced Volume Settings") { + hideableRow(ExecutionBundle.message("java.language.runtime.separator.advanced.volume.settings")) { subRowIndent = 0 addVolumeUI(JavaLanguageRuntimeType.CLASS_PATH_VOLUME) addVolumeUI(JavaLanguageRuntimeType.AGENTS_VOLUME) diff --git a/platform/lang-api/resources/messages/ExecutionBundle.properties b/platform/lang-api/resources/messages/ExecutionBundle.properties index 14b311fd752b..89df6435aa91 100644 --- a/platform/lang-api/resources/messages/ExecutionBundle.properties +++ b/platform/lang-api/resources/messages/ExecutionBundle.properties @@ -527,3 +527,16 @@ dialog.message.unknown.error=Unknown error run.on.targets.label.new.targets=New targets run.on.targets.label.saved.targets=Saved targets run.on.targets.wizard.title.new.target=New Target +action.manage.targets.text=Manage Targets... +configurable.name.runtime.targets=Runtime Targets +targets.details.action.add.text=Add +targets.details.status.text.add.new.target=Add new target +targets.details.action.duplicate.text=Duplicate +targets.details.action.duplicate.description=Duplicate +targets.details.status.text.select.target.to.configure=Select target to configure +targets.details.action.remove.text=Remove +targets.details.configurable.name.remote.targets=Remote Targets +java.language.runtime.separator.advanced.volume.settings=Advanced Volume Settings +java.language.runtime.jdk.version=JDK version: +java.language.runtime.text.path.to.jdk.on.target=The path to the JDK on the target +java.language.runtime.jdk.home.path=JDK home path: diff --git a/platform/lang-api/src/com/intellij/execution/target/LanguageRuntimeType.kt b/platform/lang-api/src/com/intellij/execution/target/LanguageRuntimeType.kt index 348f10431846..344d8e6ce078 100644 --- a/platform/lang-api/src/com/intellij/execution/target/LanguageRuntimeType.kt +++ b/platform/lang-api/src/com/intellij/execution/target/LanguageRuntimeType.kt @@ -96,9 +96,9 @@ abstract class LanguageRuntimeType(id: String) * Volume descriptor is identified by its [type] and defines the UI properties to explain user the semantic of the volume. */ data class VolumeDescriptor(val type: VolumeType, - @get:Nls val wizardLabel: String, - @get:Nls val description: String, - @get:NonNls val defaultPath: String) { + @Nls val wizardLabel: String, + @Nls val description: String, + @NonNls val defaultPath: String) { constructor(typeId: String, wizardLabel: String, description: String, defaultPath: String) : this(VolumeType(typeId), wizardLabel, description, defaultPath)