Skip to content

Commit d295637

Browse files
committed
Minor fixes and cleanup
1 parent 9e604c2 commit d295637

File tree

7 files changed

+50
-28
lines changed

7 files changed

+50
-28
lines changed

.editorconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
[*.{kt,kts}]
22
max_line_length=120
3+
# noinspection EditorConfigKeyCorrectness
4+
kotlin_imports_layout=ascii

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ plugins {
2424
idea
2525
id("org.jetbrains.intellij") version "0.4.21"
2626
id("net.minecrell.licenser") version "0.4.1"
27-
id("org.jlleitschuh.gradle.ktlint") version "9.2.1"
27+
id("org.jlleitschuh.gradle.ktlint") version "9.3.0"
2828
}
2929

3030
apply(from = "gradle/attach-sources.gradle.kts")

src/main/kotlin/com/demonwav/mcdev/platform/fabric/creator/FabricProjectCreator.kt

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,7 @@ class FabricProjectCreator(
8989
if (config.mixins) {
9090
steps += MixinConfigStep(project, buildSystem)
9191
}
92-
for (entry in config.entryPoints.groupBy { it.className }.entries.sortedBy { it.key }) {
93-
steps += CreateEntryPointStep(project, buildSystem, entry.key, entry.value)
94-
}
92+
createPostSteps(steps)
9593
steps += FabricModJsonStep(project, buildSystem, config)
9694
return steps
9795
}
@@ -119,11 +117,15 @@ class FabricProjectCreator(
119117

120118
override fun getPostMultiModuleSteps(projectBaseDir: Path): Iterable<CreatorStep> {
121119
val steps = mutableListOf<CreatorStep>()
120+
createPostSteps(steps)
121+
steps += FabricModJsonStep(project, buildSystem, config)
122+
return steps
123+
}
124+
125+
private fun createPostSteps(steps: MutableList<CreatorStep>) {
122126
for (entry in config.entryPoints.groupBy { it.className }.entries.sortedBy { it.key }) {
123127
steps += CreateEntryPointStep(project, buildSystem, entry.key, entry.value)
124128
}
125-
steps += FabricModJsonStep(project, buildSystem, config)
126-
return steps
127129
}
128130
}
129131

@@ -297,10 +299,10 @@ class CreateEntryPointStep(
297299
JavaDirectoryService.getInstance().createClass(psiDir, className)
298300
} catch (e: IncorrectOperationException) {
299301
invokeLater {
300-
val message = "${CodeInsightBundle.message(
302+
val message = CodeInsightBundle.message(
301303
"intention.error.cannot.create.class.message",
302304
className
303-
)}\n${e.localizedMessage}"
305+
) + '\n' + e.localizedMessage
304306
Messages.showErrorDialog(
305307
project,
306308
message,
@@ -329,8 +331,7 @@ class CreateEntryPointStep(
329331
(entryPoint.methodName ?: functionalMethod.name) to paramTypes
330332
}
331333
.entries
332-
.filter { it.key != null }
333-
.map { it.key!! to it.value }
334+
.mapNotNull { it.key?.let { k -> k to it.value } }
334335
.sortedBy { it.first.first }
335336

336337
val elementFactory = JavaPsiFacade.getElementFactory(project)

src/main/kotlin/com/demonwav/mcdev/platform/fabric/creator/FabricProjectSettingsWizard.kt

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import com.demonwav.mcdev.platform.fabric.util.FabricConstants
2222
import com.demonwav.mcdev.platform.forge.inspections.sideonly.Side
2323
import com.demonwav.mcdev.util.License
2424
import com.demonwav.mcdev.util.SemanticVersion
25-
import com.demonwav.mcdev.util.firstOfType
25+
import com.demonwav.mcdev.util.modUpdateStep
2626
import com.demonwav.mcdev.util.toPackageName
2727
import com.extracraftx.minecraft.templatemakerfabric.data.DataProvider
2828
import com.intellij.openapi.ui.ComboBox
@@ -135,13 +135,8 @@ class FabricProjectSettingsWizard(private val creator: MinecraftProjectCreator)
135135
}
136136

137137
override fun updateStep() {
138-
config = creator.configs.firstOfType()
139-
140-
val buildSystem = creator.buildSystem ?: return
141-
142-
modNameField.text = WordUtils.capitalize(buildSystem.artifactId.replace('-', ' '))
143-
144-
val conf = config ?: return
138+
val (conf, buildSystem) = modUpdateStep<FabricProjectConfig>(creator, modNameField) ?: return
139+
config = conf
145140

146141
if (creator.configs.indexOf(conf) != 0) {
147142
modNameField.isEditable = false
@@ -354,7 +349,7 @@ class FabricProjectSettingsWizard(private val creator: MinecraftProjectCreator)
354349

355350
override fun getColumnCount() = 5
356351

357-
override fun getValueAt(row: Int, col: Int) = when (col) {
352+
override fun getValueAt(row: Int, col: Int): Any? = when (col) {
358353
0 -> entryPoints[row].category
359354
1 -> entryPoints[row].type
360355
2 -> entryPoints[row].className

src/main/kotlin/com/demonwav/mcdev/platform/forge/creator/ForgeProjectSettingsWizard.kt

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ import com.demonwav.mcdev.platform.forge.version.ForgeVersion
2222
import com.demonwav.mcdev.platform.mcp.version.McpVersion
2323
import com.demonwav.mcdev.platform.mcp.version.McpVersionEntry
2424
import com.demonwav.mcdev.util.SemanticVersion
25-
import com.demonwav.mcdev.util.firstOfType
25+
import com.demonwav.mcdev.util.modUpdateStep
2626
import com.intellij.ui.CollectionComboBoxModel
2727
import java.awt.event.ActionListener
2828
import javax.swing.JComboBox
@@ -39,7 +39,6 @@ import kotlinx.coroutines.async
3939
import kotlinx.coroutines.coroutineScope
4040
import kotlinx.coroutines.launch
4141
import kotlinx.coroutines.swing.Swing
42-
import org.apache.commons.lang.WordUtils
4342

4443
class ForgeProjectSettingsWizard(private val creator: MinecraftProjectCreator) : MinecraftModuleWizardStep() {
4544

@@ -98,13 +97,8 @@ class ForgeProjectSettingsWizard(private val creator: MinecraftProjectCreator) :
9897
}
9998

10099
override fun updateStep() {
101-
config = creator.configs.firstOfType()
102-
103-
val buildSystem = creator.buildSystem ?: return
104-
105-
modNameField.text = WordUtils.capitalize(buildSystem.artifactId.replace('-', ' '))
106-
107-
val conf = config ?: return
100+
val (conf, buildSystem) = modUpdateStep<ForgeProjectConfig>(creator, modNameField) ?: return
101+
config = conf
108102

109103
if (creator.configs.indexOf(conf) != 0) {
110104
modNameField.isEditable = false
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/*
2+
* Minecraft Dev for IntelliJ
3+
*
4+
* https://minecraftdev.org
5+
*
6+
* Copyright (c) 2020 minecraft-dev
7+
*
8+
* MIT License
9+
*/
10+
11+
package com.demonwav.mcdev.util
12+
13+
import com.demonwav.mcdev.creator.MinecraftProjectCreator
14+
import com.demonwav.mcdev.creator.ProjectConfig
15+
import com.demonwav.mcdev.creator.buildsystem.BuildSystem
16+
import javax.swing.JTextField
17+
import org.apache.commons.lang.WordUtils
18+
19+
inline fun <reified T : ProjectConfig> modUpdateStep(
20+
creator: MinecraftProjectCreator,
21+
modNameField: JTextField
22+
): Pair<T, BuildSystem>? {
23+
val buildSystem = creator.buildSystem ?: return null
24+
25+
modNameField.text = WordUtils.capitalize(buildSystem.artifactId.replace('-', ' '))
26+
27+
val config = creator.configs.firstOfType<T>() ?: return null
28+
return config to buildSystem
29+
}

src/test/kotlin/com/demonwav/mcdev/framework/test-util.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
*/
1010

1111
@file:JvmName("TestUtil")
12+
1213
package com.demonwav.mcdev.framework
1314

1415
import com.intellij.lexer.Lexer

0 commit comments

Comments
 (0)