mirror of
https://github.com/JetBrains/intellij-platform-plugin-template.git
synced 2026-03-02 03:39:24 +00:00
rewrite Java classes to Kotlin
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
package org.jetbrains.plugins.template
|
||||
|
||||
import com.intellij.DynamicBundle
|
||||
import org.jetbrains.annotations.NonNls
|
||||
import org.jetbrains.annotations.PropertyKey
|
||||
|
||||
@NonNls
|
||||
private const val BUNDLE = "messages.TemplateBundle"
|
||||
|
||||
object TemplateBundle : DynamicBundle(BUNDLE) {
|
||||
@JvmStatic
|
||||
fun message(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): String = getMessage(key, *params)
|
||||
|
||||
@JvmStatic
|
||||
fun messagePointer(@PropertyKey(resourceBundle = BUNDLE) key: String, vararg params: Any): () -> String = { message(key, *params) }
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package org.jetbrains.plugins.template.listeners
|
||||
|
||||
import com.intellij.ide.plugins.DynamicPluginListener
|
||||
import com.intellij.ide.plugins.IdeaPluginDescriptor
|
||||
import com.intellij.openapi.components.ServiceManager
|
||||
import org.jetbrains.plugins.template.services.MyApplicationService
|
||||
|
||||
internal class MyDynamicPluginListener : DynamicPluginListener {
|
||||
override fun beforePluginLoaded(pluginDescriptor: IdeaPluginDescriptor) {
|
||||
ServiceManager.getService(MyApplicationService::class.java)
|
||||
}
|
||||
|
||||
override fun pluginLoaded(pluginDescriptor: IdeaPluginDescriptor) {
|
||||
println("xx")
|
||||
}
|
||||
|
||||
override fun beforePluginUnload(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
|
||||
|
||||
override fun checkUnloadPlugin(pluginDescriptor: IdeaPluginDescriptor) {
|
||||
}
|
||||
|
||||
override fun pluginUnloaded(pluginDescriptor: IdeaPluginDescriptor, isUpdate: Boolean) {}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
package org.jetbrains.plugins.template.listeners
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.project.ProjectManagerListener
|
||||
import org.jetbrains.plugins.template.services.MyProjectService
|
||||
|
||||
internal class MyProjectManagerListener : ProjectManagerListener {
|
||||
override fun projectOpened(project: Project) {
|
||||
project.getService(MyProjectService::class.java)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
package org.jetbrains.plugins.template.services
|
||||
|
||||
class MyApplicationService {
|
||||
init {
|
||||
println("MyApplicationService")
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
package org.jetbrains.plugins.template.services
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import org.jetbrains.plugins.template.TemplateBundle
|
||||
|
||||
class MyProjectService(project: Project) {
|
||||
init {
|
||||
println(TemplateBundle.message("projectService", project.name))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user