User: kyle wood Date: 13 Aug 23 23:26 Revision: f7cb291b6c44b3cb280c66160acb1bd526ec74f1 Summary: Migrate creator package to use message bundles for UI text TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=8705&personal=false Index: .gitignore =================================================================== --- .gitignore (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ .gitignore (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -5,6 +5,8 @@ .idea/* !.idea/icon.png +!.idea/encodings.xml +!.idea/inspectionProfiles/Project_Default.xml **/out/ **/build/ Index: .idea/encodings.xml =================================================================== --- .idea/encodings.xml (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) +++ .idea/encodings.xml (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file Index: src/main/kotlin/creator/MinecraftModuleBuilder.kt =================================================================== --- src/main/kotlin/creator/MinecraftModuleBuilder.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/MinecraftModuleBuilder.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.asset.PlatformAssets import com.demonwav.mcdev.creator.buildsystem.BuildSystemPropertiesStep import com.demonwav.mcdev.creator.platformtype.PlatformTypeStep @@ -40,7 +41,7 @@ override fun getNodeIcon() = PlatformAssets.MINECRAFT_ICON override fun getGroupName() = MinecraftModuleType.NAME override fun getBuilderId() = "MINECRAFT_MODULE" - override fun getDescription() = "Create a new Minecraft project" + override fun getDescription() = MCDevBundle.message("creator.ui.create_minecraft_project") override fun setupRootModel(modifiableRootModel: ModifiableRootModel) { if (moduleJdk != null) { Index: src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt =================================================================== --- src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.ProjectSetupFinalizer.Factory import com.demonwav.mcdev.creator.step.NewProjectWizardChainStep.Companion.nextStep import com.demonwav.mcdev.util.mapFirstNotNull @@ -119,7 +120,7 @@ private var sdk by sdkProperty private var sdkComboBox: JdkComboBoxWithPreference? = null private var preferredJdkLabel: Placeholder? = null - private var preferredJdkReason = "these settings" + private var preferredJdkReason = MCDevBundle.message("creator.validation.jdk_preferred_default_reason") var preferredJdk: JavaSdkVersion = JavaSdkVersion.JDK_17 private set @@ -146,7 +147,7 @@ preferredJdkLabel?.component = null } else { preferredJdkLabel?.component = - JLabel("Java ${preferredJdk.description} is recommended for $preferredJdkReason") + JLabel(MCDevBundle.message("creator.validation.jdk_preferred", preferredJdk.description, preferredJdkReason)) .also { it.foreground = JBColor.YELLOW } } } Index: src/main/kotlin/creator/buildsystem/AbstractBuildSystemStep.kt =================================================================== --- src/main/kotlin/creator/buildsystem/AbstractBuildSystemStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/buildsystem/AbstractBuildSystemStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.buildsystem +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.findStep import com.demonwav.mcdev.creator.storeToData import com.intellij.ide.util.projectWizard.WizardContext @@ -47,7 +48,8 @@ abstract val platformName: String override val self get() = this - override val label = "Build System:" + override val label + get() = MCDevBundle.message("creator.ui.build_system.label.generic") override fun initSteps(): LinkedHashMap { context.putUserData(PLATFORM_NAME_KEY, platformName) @@ -94,11 +96,13 @@ } class GradleBuildSystem : AbstractBuildSystemStep.Factory { - override val name = "Gradle" + override val name + get() = MCDevBundle.message("creator.ui.build_system.label.gradle") } class MavenBuildSystem : AbstractBuildSystemStep.Factory { - override val name = "Maven" + override val name + get() = MCDevBundle.message("creator.ui.build_system.label.maven") } abstract class AbstractRunBuildSystemStep( Index: src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt =================================================================== --- src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.buildsystem +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.storeToData import com.demonwav.mcdev.util.SemanticVersion import com.intellij.ide.wizard.AbstractNewProjectWizardStep @@ -37,11 +38,11 @@ import com.intellij.ui.dsl.builder.columns import com.intellij.ui.dsl.builder.textValidation -private val nonExampleValidation = validationErrorIf("Group ID must be changed from \"org.example\"") { +private val nonExampleValidation = validationErrorIf(MCDevBundle.message("creator.validation.group_id_non_example")) { it == "org.example" } -private val versionValidation = validationErrorIf("Version must be a valid semantic version") { +private val versionValidation = validationErrorIf(MCDevBundle.message("creator.validation.semantic_version")) { SemanticVersion.tryParse(it) == null } @@ -66,22 +67,22 @@ private fun suggestArtifactId() = parent.name override fun setupUI(builder: Panel) { - builder.collapsibleGroup("Build System Properties") { - row("Group ID:") { + builder.collapsibleGroup(MCDevBundle.message("creator.ui.group.title")) { + row(MCDevBundle.message("creator.ui.group.group_id")) { textField() .bindText(groupIdProperty) .columns(COLUMNS_MEDIUM) .validationRequestor(AFTER_GRAPH_PROPAGATION(propertyGraph)) .textValidation(CHECK_NON_EMPTY, CHECK_GROUP_ID, nonExampleValidation) } - row("Artifact ID:") { + row(MCDevBundle.message("creator.ui.group.artifact_id")) { textField() .bindText(artifactIdProperty) .columns(COLUMNS_MEDIUM) .validationRequestor(AFTER_GRAPH_PROPAGATION(propertyGraph)) .textValidation(CHECK_NON_EMPTY, CHECK_ARTIFACT_ID) } - row("Version:") { + row(MCDevBundle.message("creator.ui.group.version")) { textField() .bindText(versionProperty) .columns(COLUMNS_MEDIUM) Index: src/main/kotlin/creator/buildsystem/gradle-steps.kt =================================================================== --- src/main/kotlin/creator/buildsystem/gradle-steps.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/buildsystem/gradle-steps.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.buildsystem +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.addTemplates import com.demonwav.mcdev.creator.findStep import com.demonwav.mcdev.creator.notifyCreatedProjectNotOpened @@ -88,7 +89,8 @@ } abstract class AbstractPatchGradleFilesStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Patching Gradle files" + override val description + get() = MCDevBundle.message("creator.step.gradle.patch_gradle.description") abstract fun patch(project: Project, gradleFiles: GradleFiles) @@ -192,7 +194,8 @@ } open class GradleImportStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Importing Gradle project" + override val description + get() = MCDevBundle.message("creator.step.gradle.import_gradle.description") open val additionalRunTasks = emptyList() Index: src/main/kotlin/creator/buildsystem/maven-steps.kt =================================================================== --- src/main/kotlin/creator/buildsystem/maven-steps.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/buildsystem/maven-steps.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.buildsystem +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.findStep import com.demonwav.mcdev.creator.getVersionJson import com.demonwav.mcdev.creator.notifyCreatedProjectNotOpened @@ -62,7 +63,8 @@ } abstract class AbstractPatchPomStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Patching pom.xml" + override val description + get() = MCDevBundle.message("creator.step.maven.patch_pom.description") open fun patchPom(model: MavenDomProjectModel, root: XmlTag) { setupCore(model) @@ -168,7 +170,8 @@ } class MavenImportStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Importing Maven project" + override val description + get() = MCDevBundle.message("creator.step.maven.import_maven.description") override fun perform(project: Project) { val pomFile = VfsUtil.findFile(Path.of(context.projectFileDirectory).resolve("pom.xml"), true) Index: src/main/kotlin/creator/platformtype/ModPlatformStep.kt =================================================================== --- src/main/kotlin/creator/platformtype/ModPlatformStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/platformtype/ModPlatformStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.platformtype +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.platformtype.ModPlatformStep.Factory import com.intellij.ide.wizard.AbstractNewProjectWizardMultiStep import com.intellij.ide.wizard.NewProjectWizardMultiStepFactory @@ -39,10 +40,12 @@ } override val self = this - override val label = "Platform:" + override val label + get() = MCDevBundle.message("creator.ui.platform.label") class TypeFactory : PlatformTypeStep.Factory { - override val name = "Mod" + override val name + get() = MCDevBundle.message("creator.ui.platform.mod.name") override fun createStep(parent: PlatformTypeStep) = ModPlatformStep(parent) } Index: src/main/kotlin/creator/platformtype/PlatformTypeStep.kt =================================================================== --- src/main/kotlin/creator/platformtype/PlatformTypeStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/platformtype/PlatformTypeStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.platformtype +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.platformtype.PlatformTypeStep.Factory import com.intellij.ide.wizard.AbstractNewProjectWizardMultiStep import com.intellij.ide.wizard.NewProjectWizardBaseData @@ -45,7 +46,8 @@ } override val self = this - override val label = "Platform Type:" + override val label + get() = MCDevBundle.message("creator.ui.platform.type.label") interface Factory : NewProjectWizardMultiStepFactory } Index: src/main/kotlin/creator/platformtype/PluginPlatformStep.kt =================================================================== --- src/main/kotlin/creator/platformtype/PluginPlatformStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/platformtype/PluginPlatformStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.platformtype +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.platformtype.PluginPlatformStep.Factory import com.intellij.ide.wizard.AbstractNewProjectWizardMultiStep import com.intellij.ide.wizard.NewProjectWizardMultiStepFactory @@ -39,10 +40,12 @@ } override val self = this - override val label = "Platform:" + override val label + get() = MCDevBundle.message("creator.ui.platform.label") class TypeFactory : PlatformTypeStep.Factory { - override val name = "Plugin" + override val name + get() = MCDevBundle.message("creator.ui.platform.plugin.name") override fun createStep(parent: PlatformTypeStep) = PluginPlatformStep(parent) } Index: src/main/kotlin/creator/step/AbstractLatentStep.kt =================================================================== --- src/main/kotlin/creator/step/AbstractLatentStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/AbstractLatentStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.util.asyncIO import com.demonwav.mcdev.util.capitalize import com.demonwav.mcdev.util.invokeLater @@ -104,9 +105,9 @@ if (result == null) { placeholder.component = panel { row { - val label = label("Unable to $description") + val label = label(MCDevBundle.message("creator.ui.generic_validation_failure.message", description)) .validationRequestor(AFTER_GRAPH_PROPAGATION(propertyGraph)) - .validation(DialogValidation { ValidationInfo("Unable to $description") }) + .validation(DialogValidation { ValidationInfo(MCDevBundle.message("creator.ui.generic_validation_failure.message", description)) }) label.component.foreground = JBColor.RED } } @@ -152,7 +153,7 @@ }, ) .validationRequestor(AFTER_GRAPH_PROPAGATION(propertyGraph)) - .validation(DialogValidation { ValidationInfo("Haven't finished $description") }) + .validation(DialogValidation { ValidationInfo(MCDevBundle.message("creator.ui.generic_unfinished.message", description)) }) } } } Index: src/main/kotlin/creator/step/AbstractLongRunningStep.kt =================================================================== --- src/main/kotlin/creator/step/AbstractLongRunningStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/AbstractLongRunningStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.intellij.ide.wizard.AbstractNewProjectWizardStep import com.intellij.ide.wizard.NewProjectWizardStep import com.intellij.openapi.progress.ProgressIndicator @@ -57,13 +58,13 @@ } private fun startTaskQueue(project: Project, queue: TaskQueue) { - ProgressManager.getInstance().run(object : Task.Backgroundable(project, "Your project is being created") { + ProgressManager.getInstance().run(object : Task.Backgroundable(project, MCDevBundle.message("creator.step.generic.project_created.message")) { override fun run(indicator: ProgressIndicator) { if (project.isDisposed) { return } - indicator.text = "Your project is being created" + indicator.text = MCDevBundle.message("creator.step.generic.project_created.message") var currentQueue = queue while (true) { while (true) { Index: src/main/kotlin/creator/step/AbstractReformatFilesStep.kt =================================================================== --- src/main/kotlin/creator/step/AbstractReformatFilesStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/AbstractReformatFilesStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.notifyCreatedProjectNotOpened import com.intellij.codeInsight.actions.ReformatCodeProcessor import com.intellij.ide.wizard.NewProjectWizardStep @@ -33,7 +34,8 @@ import java.nio.file.Path abstract class AbstractReformatFilesStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Reformatting files" + override val description + get() = MCDevBundle.message("creator.step.reformat.description") private val filesToReformat = mutableListOf() Index: src/main/kotlin/creator/step/LicenseStep.kt =================================================================== --- src/main/kotlin/creator/step/LicenseStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/LicenseStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.util.License import com.intellij.ide.wizard.AbstractNewProjectWizardStep import com.intellij.ide.wizard.NewProjectWizardStep @@ -37,7 +38,7 @@ override fun setupUI(builder: Panel) { with(builder) { - row("License:") { + row(MCDevBundle.message("creator.ui.license.label")) { comboBox(License.values().toList()) .bindItem(licenseProperty.transform({ License.byId(it) ?: License.ALL_RIGHTS_RESERVED }) { it.id }) } Index: src/main/kotlin/creator/step/MainClassStep.kt =================================================================== --- src/main/kotlin/creator/step/MainClassStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/MainClassStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.buildsystem.BuildSystemPropertiesStep import com.demonwav.mcdev.creator.findStep import com.demonwav.mcdev.creator.updateWhenChanged @@ -45,8 +46,8 @@ } return buildSystemProps.groupId.toPackageName() + - ".${buildSystemProps.artifactId.toPackageName()}" + - ".${findStep().name.toJavaClassName()}" + "." + buildSystemProps.artifactId.toPackageName() + + "." + findStep().name.toJavaClassName() } private fun suggestGroupId(): String { @@ -60,6 +61,7 @@ val classNameProperty = propertyGraph.lazyProperty(::suggestMainClassName) var className by classNameProperty + init { whenStepAvailable> { buildSystemStep -> classNameProperty.updateWhenChanged(buildSystemStep.groupIdProperty, ::suggestMainClassName) @@ -72,7 +74,7 @@ override fun setupUI(builder: Panel) { with(builder) { - row("Main Class:") { + row(MCDevBundle.message("creator.ui.main_class.label")) { textField() .columns(COLUMNS_LARGE) .bindText(classNameProperty) Index: src/main/kotlin/creator/step/McVersionStep.kt =================================================================== --- src/main/kotlin/creator/step/McVersionStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/McVersionStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.JdkProjectSetupFinalizer import com.demonwav.mcdev.creator.findStep import com.demonwav.mcdev.util.MinecraftVersions @@ -34,7 +35,8 @@ parent: NewProjectWizardStep, versions: List, ) : AbstractSelectVersionStep(parent, versions) { - override val label = "Minecraft Version:" + override val label + get() = MCDevBundle.message("creator.ui.mc_version.label") override fun setupUI(builder: Panel) { super.setupUI(builder) Index: src/main/kotlin/creator/step/ModNameStep.kt =================================================================== --- src/main/kotlin/creator/step/ModNameStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/ModNameStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.storeToData import com.intellij.ide.wizard.AbstractNewProjectWizardStep import com.intellij.ide.wizard.NewProjectWizardBaseData @@ -68,9 +69,11 @@ } class ModNameStep(parent: NewProjectWizardStep) : AbstractModNameStep(parent) { - override val label = "Mod Name:" + override val label + get() = MCDevBundle.message("creator.ui.mod_name.label") } class PluginNameStep(parent: NewProjectWizardStep) : AbstractModNameStep(parent) { - override val label = "Plugin Name:" + override val label + get() = MCDevBundle.message("creator.ui.plugin_name.label") } Index: src/main/kotlin/creator/step/OptionalSteps.kt =================================================================== --- src/main/kotlin/creator/step/OptionalSteps.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/OptionalSteps.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.creator.updateWhenChanged import com.intellij.ide.users.LocalUserSettings import com.intellij.ide.wizard.AbstractNewProjectWizardStep @@ -90,7 +91,8 @@ } class DescriptionStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Description:" + override val label + get() = MCDevBundle.message("creator.ui.description.label") override fun setupProject(project: Project) { data.putUserData(KEY, value) @@ -102,7 +104,8 @@ } class AuthorsStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Authors:" + override val label + get() = MCDevBundle.message("creator.ui.authors.label") override val bindToStorage = true override fun setupProject(project: Project) { @@ -126,7 +129,8 @@ } class WebsiteStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Website:" + override val label + get() = MCDevBundle.message("creator.ui.website.label") override val bindToStorage = true override fun setupProject(project: Project) { @@ -139,7 +143,8 @@ } class RepositoryStep(parent: NewProjectWizardStep) : AbstractOptionalStringBasedOnProjectNameStep(parent) { - override val label = "Repository:" + override val label + get() = MCDevBundle.message("creator.ui.repository.label") init { if (format.isEmpty()) { @@ -157,11 +162,12 @@ } class IssueTrackerStep(parent: NewProjectWizardStep) : AbstractOptionalStringBasedOnProjectNameStep(parent) { - override val label = "Issue Tracker:" + override val label: String + get() = MCDevBundle.message("creator.ui.issue_tracker.label") init { if (format.isEmpty()) { - format = "https://${LocalUserSettings.userName}/$PROJECT_NAME_PLACEHOLDER/issues" + format = "https://github.com/${LocalUserSettings.userName}/$PROJECT_NAME_PLACEHOLDER/issues" } } @@ -175,7 +181,8 @@ } class UpdateUrlStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Update URL:" + override val label + get() = MCDevBundle.message("creator.ui.update_url.label") override fun setupProject(project: Project) { data.putUserData(KEY, value) @@ -187,7 +194,8 @@ } class DependStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Depend:" + override val label + get() = MCDevBundle.message("creator.ui.depend.label") override fun setupProject(project: Project) { data.putUserData(KEY, AuthorsStep.parseAuthors(value)) @@ -199,7 +207,8 @@ } class SoftDependStep(parent: NewProjectWizardStep) : AbstractOptionalStringStep(parent) { - override val label = "Soft Depend:" + override val label + get() = MCDevBundle.message("creator.ui.soft_depend.label") override fun setupProject(project: Project) { data.putUserData(KEY, AuthorsStep.parseAuthors(value)) Index: src/main/kotlin/creator/step/TemplateOutdatedStep.kt =================================================================== --- src/main/kotlin/creator/step/TemplateOutdatedStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/TemplateOutdatedStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.update.PluginUtil import com.intellij.ide.wizard.AbstractNewProjectWizardStep import com.intellij.ide.wizard.NewProjectWizardStep @@ -39,10 +40,7 @@ "&plugin-version=${PluginUtil.pluginVersion.urlEncode()}" + "&intellij-version=${ApplicationInfo.getInstance().build.asString().urlEncode()}" + "&operating-system=${SystemInfoRt.OS_NAME.urlEncode()}" - text( - "Is the Minecraft project wizard outdated? " + - "Create an issue on the MinecraftDev issue tracker.", - ) + text(MCDevBundle.message("creator.ui.outdated.message", issueUrl)) } } } Index: src/main/kotlin/creator/step/UseMixinsStep.kt =================================================================== --- src/main/kotlin/creator/step/UseMixinsStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/UseMixinsStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.intellij.ide.wizard.AbstractNewProjectWizardStep import com.intellij.ide.wizard.NewProjectWizardStep import com.intellij.openapi.observable.util.bindBooleanStorage @@ -35,7 +36,7 @@ override fun setupUI(builder: Panel) { with(builder) { - row("Use Mixins:") { + row(MCDevBundle.message("creator.ui.mixins.label")) { checkBox("") .bindSelected(useMixinsProperty) } Index: src/main/kotlin/creator/step/WaitForSmartModeStep.kt =================================================================== --- src/main/kotlin/creator/step/WaitForSmartModeStep.kt (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/kotlin/creator/step/WaitForSmartModeStep.kt (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.creator.step +import com.demonwav.mcdev.asset.MCDevBundle import com.intellij.ide.wizard.NewProjectWizardStep import com.intellij.openapi.project.DumbService import com.intellij.openapi.project.Project @@ -30,7 +31,8 @@ * Thus, this step is for UX purposes only. */ class WaitForSmartModeStep(parent: NewProjectWizardStep) : AbstractLongRunningStep(parent) { - override val description = "Indexing" + override val description + get() = MCDevBundle.message("creator.step.wait_for_smart.description") override fun perform(project: Project) { DumbService.getInstance(project).waitForSmartMode() Index: src/main/resources/messages/MinecraftDevelopment.properties =================================================================== --- src/main/resources/messages/MinecraftDevelopment.properties (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/resources/messages/MinecraftDevelopment.properties (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -18,10 +18,63 @@ # along with this program. If not, see . # +creator.ui.build_system.label.generic=Build System: +creator.ui.build_system.label.gradle=Gradle +creator.ui.build_system.label.maven=Maven + +creator.ui.group.title=Build System Properties +creator.ui.group.group_id=Group ID: +creator.ui.group.artifact_id=Artifact ID: +creator.ui.group.version=Version: + +creator.ui.platform.type.label=Platform Type: +creator.ui.platform.label=Platform: +creator.ui.platform.mod.name=Mod +creator.ui.platform.plugin.name=Plugin + +creator.ui.license.label=License: +creator.ui.main_class.label=Main Class: +creator.ui.mc_version.label=Minecraft Version: +creator.ui.mod_name.label=Mod Name: +creator.ui.plugin_name.label=Plugin Name: +creator.ui.description.label=Description: +creator.ui.authors.label=Authors: +creator.ui.website.label=Website: +creator.ui.repository.label=Repository: +creator.ui.issue_tracker.label=Issue Tracker: +creator.ui.update_url.label=Update URL: +creator.ui.depend.label=Depend: +creator.ui.soft_depend.label=Soft Depend: +creator.ui.mixins.label=Use Mixins: + +creator.ui.outdated.message=Is the Minecraft project wizard outdated? \ + Create an issue on the MinecraftDev issue tracker. + +creator.ui.generic_validation_failure.message=Unable to {0} +creator.ui.generic_unfinished.message=Haven''t finished {0} + +creator.ui.create_minecraft_project=Create a new Minecraft project + +creator.step.generic.project_created.message=Your project is being created + +creator.step.gradle.patch_gradle.description=Patching Gradle files +creator.step.gradle.import_gradle.description=Importing Gradle project + +creator.step.wait_for_smart.description=Indexing + +creator.step.maven.patch_pom.description=Patching pom.xml +creator.step.maven.import_maven.description=Importing Maven project + +creator.step.reformat.description=Reformatting files + +creator.validation.group_id_non_example=Group ID must be changed from "org.example" +creator.validation.semantic_version=Version must be a valid semantic version + +creator.validation.jdk_preferred=Java {0} is recommended for {1} +creator.validation.jdk_preferred_default_reason=these settings + generate.event_listener.title=Generate Event Listener generate.event_listener.settings=Event Listener Settings -action.GenerateEventListener.text=Event Listener -action.GenerateEventListener.description=Generates a new Event Listener for the appropriate platform intention.error.cannot.create.class.message=Cannot create class ''{0}''\n{1} intention.error.cannot.create.class.title=Failed to Create Class Index: src/main/resources/messages/MinecraftDevelopment_en_UK.properties =================================================================== --- src/main/resources/messages/MinecraftDevelopment_en_UK.properties (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/resources/messages/MinecraftDevelopment_en_UK.properties (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) @@ -1,24 +0,0 @@ -# -# Minecraft Development for IntelliJ -# -# https://mcdev.io/ -# -# Copyright (C) 2023 minecraft-dev -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License as published -# by the Free Software Foundation, version 3.0 only. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with this program. If not, see . -# - -generate.event_listener.title=Generate Event Listener -generate.event_listener.settings=Event Listener Settings -action.GenerateEventListener.text=Event Listener -action.GenerateEventListener.description=Generates a new Event Listener for the appropriate platform Index: src/main/resources/messages/MinecraftDevelopment_fr.properties =================================================================== --- src/main/resources/messages/MinecraftDevelopment_fr.properties (revision f7f36b16f484396a1b677253a10fc796c1ee0b76) +++ src/main/resources/messages/MinecraftDevelopment_fr.properties (revision f7cb291b6c44b3cb280c66160acb1bd526ec74f1) @@ -20,5 +20,3 @@ generate.event_listener.title=Générer un Event Listener generate.event_listener.settings=Configuration du Listener -action.GenerateEventListener.text=Event Listener -action.GenerateEventListener.description=Génère un Event Listener pour la plateforme appropriée