User: joe Date: 10 Sep 23 16:23 Revision: 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643 Summary: Merge branch '2022.3' into 2023.1 # Conflicts: # src/main/kotlin/creator/step/AbstractLatentStep.kt TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=8713&personal=false Index: src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt =================================================================== --- src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/creator/ProjectSetupFinalizerWizardStep.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -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 @@ -123,7 +124,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("creator.validation.jdk_preferred_default_reason") var preferredJdk: JavaSdkVersion = JavaSdkVersion.JDK_17 private set @@ -150,7 +151,7 @@ preferredJdkLabel?.component = null } else { preferredJdkLabel?.component = - JLabel("Java ${preferredJdk.description} is recommended for $preferredJdkReason") + JLabel(MCDevBundle("creator.validation.jdk_preferred", preferredJdk.description, preferredJdkReason)) .also { it.foreground = JBColor.YELLOW } } } Index: src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt =================================================================== --- src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/creator/buildsystem/BuildSystemPropertiesStep.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -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("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("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("creator.ui.group.title")) { + row(MCDevBundle("creator.ui.group.group_id")) { textField() .bindText(groupIdProperty) .columns(COLUMNS_MEDIUM) .validationRequestor(WHEN_GRAPH_PROPAGATION_FINISHED(propertyGraph)) .textValidation(CHECK_NON_EMPTY, CHECK_GROUP_ID, nonExampleValidation) } - row("Artifact ID:") { + row(MCDevBundle("creator.ui.group.artifact_id")) { textField() .bindText(artifactIdProperty) .columns(COLUMNS_MEDIUM) .validationRequestor(WHEN_GRAPH_PROPAGATION_FINISHED(propertyGraph)) .textValidation(CHECK_NON_EMPTY, CHECK_ARTIFACT_ID) } - row("Version:") { + row(MCDevBundle("creator.ui.group.version")) { textField() .bindText(versionProperty) .columns(COLUMNS_MEDIUM) Index: src/main/kotlin/creator/step/AbstractLatentStep.kt =================================================================== --- src/main/kotlin/creator/step/AbstractLatentStep.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/creator/step/AbstractLatentStep.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -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,17 @@ if (result == null) { placeholder.component = panel { row { - val label = label("Unable to $description") + val label = label(MCDevBundle("creator.ui.generic_validation_failure.message", description)) .validationRequestor(WHEN_GRAPH_PROPAGATION_FINISHED(propertyGraph)) - .validation(DialogValidation { ValidationInfo("Unable to $description") }) + .validation( + DialogValidation { + val labelValidationText = MCDevBundle( + "creator.ui.generic_validation_failure.message", + description + ) + ValidationInfo(labelValidationText) + } + ) label.component.foreground = JBColor.RED } } @@ -152,10 +161,14 @@ }, ) .validationRequestor(WHEN_GRAPH_PROPAGATION_FINISHED(propertyGraph)) - .validation(DialogValidation { ValidationInfo("Haven't finished $description") }) + .validation( + DialogValidation { + ValidationInfo(MCDevBundle("creator.ui.generic_unfinished.message", description)) - } + } + ) - } - } + } + } + } override fun setupProject(project: Project) { step?.setupProject(project) Index: src/main/kotlin/creator/step/ModNameStep.kt =================================================================== --- src/main/kotlin/creator/step/ModNameStep.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/creator/step/ModNameStep.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -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("creator.ui.mod_name.label") } class PluginNameStep(parent: NewProjectWizardStep) : AbstractModNameStep(parent) { - override val label = "Plugin Name:" + override val label + get() = MCDevBundle("creator.ui.plugin_name.label") } Index: src/main/kotlin/creator/step/OptionalSteps.kt =================================================================== --- src/main/kotlin/creator/step/OptionalSteps.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/creator/step/OptionalSteps.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -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("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("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("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("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("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("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("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("creator.ui.soft_depend.label") override fun setupProject(project: Project) { data.putUserData(KEY, AuthorsStep.parseAuthors(value)) Index: src/main/kotlin/facet/MinecraftFacetEditorTabV2.kt =================================================================== --- src/main/kotlin/facet/MinecraftFacetEditorTabV2.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/facet/MinecraftFacetEditorTabV2.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -20,6 +20,7 @@ package com.demonwav.mcdev.facet +import com.demonwav.mcdev.asset.MCDevBundle import com.demonwav.mcdev.asset.PlatformAssets import com.demonwav.mcdev.platform.PlatformType import com.intellij.facet.ui.FacetEditorTab @@ -152,7 +153,7 @@ } } - override fun getDisplayName() = "Minecraft Module Settings" + override fun getDisplayName() = MCDevBundle("facet.editor.name") override fun isModified(): Boolean { var modified = false Index: src/main/kotlin/platform/mixin/action/GenerateAccessorHandler.kt =================================================================== --- src/main/kotlin/platform/mixin/action/GenerateAccessorHandler.kt (revision 5ce632492d722745ef3e94c87bca9d80c6fd7035) +++ src/main/kotlin/platform/mixin/action/GenerateAccessorHandler.kt (revision 7d4ba10eed830461b853e2f9f4cf63c8bd2f5643) @@ -288,7 +288,7 @@ JavaDirectoryService.getInstance().createInterface(pkg, name) } catch (e: IncorrectOperationException) { invokeLater { - val message = MCDevBundle.message( + val message = MCDevBundle( "intention.error.cannot.create.class.message", name, e.localizedMessage, @@ -296,7 +296,7 @@ Messages.showErrorDialog( project, message, - MCDevBundle.message("intention.error.cannot.create.class.title"), + MCDevBundle("intention.error.cannot.create.class.title"), ) } return@compute null