Update actions on configuration change
This commit is contained in:
parent
e6d25f4fa0
commit
f0a683a6dc
|
|
@ -10,10 +10,20 @@ import de.idetools.filename_template.settings.FilenameTemplateSettingsState
|
||||||
|
|
||||||
class InitializeFilenameTemplateActivity : StartupActivity {
|
class InitializeFilenameTemplateActivity : StartupActivity {
|
||||||
override fun runActivity(project: Project) {
|
override fun runActivity(project: Project) {
|
||||||
|
initializeActions()
|
||||||
|
}
|
||||||
|
|
||||||
|
internal fun initializeActions() {
|
||||||
val settings: FilenameTemplateSettingsState = FilenameTemplateSettingsState.instance
|
val settings: FilenameTemplateSettingsState = FilenameTemplateSettingsState.instance
|
||||||
|
|
||||||
val actionManager = ActionManager.getInstance()
|
val actionManager = ActionManager.getInstance()
|
||||||
val newGroup = actionManager.getAction("NewGroup") as DefaultActionGroup
|
val newGroup = actionManager.getAction("NewGroup") as DefaultActionGroup
|
||||||
|
|
||||||
|
actionManager.getActionIds("FilenameTemplate").forEach {
|
||||||
|
newGroup.remove(actionManager.getAction(it))
|
||||||
|
actionManager.unregisterAction(it)
|
||||||
|
}
|
||||||
|
|
||||||
val anchorId = "NewFile"
|
val anchorId = "NewFile"
|
||||||
val action = CreateFileWithFilenameTemplateAction(settings.text, settings.description, settings.template)
|
val action = CreateFileWithFilenameTemplateAction(settings.text, settings.description, settings.template)
|
||||||
val actionId = "FilenameTemplate.${settings.text}"
|
val actionId = "FilenameTemplate.${settings.text}"
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ package de.idetools.filename_template.settings
|
||||||
|
|
||||||
import com.intellij.openapi.options.Configurable
|
import com.intellij.openapi.options.Configurable
|
||||||
import com.intellij.openapi.options.ConfigurationException
|
import com.intellij.openapi.options.ConfigurationException
|
||||||
|
import de.idetools.filename_template.InitializeFilenameTemplateActivity
|
||||||
import org.jetbrains.annotations.Nls
|
import org.jetbrains.annotations.Nls
|
||||||
import javax.swing.JComponent
|
import javax.swing.JComponent
|
||||||
|
|
||||||
|
|
@ -31,6 +32,8 @@ class FilenameTemplateConfigurable : Configurable {
|
||||||
settings.text = component.text
|
settings.text = component.text
|
||||||
settings.description = component.description
|
settings.description = component.description
|
||||||
settings.template = component.template
|
settings.template = component.template
|
||||||
|
|
||||||
|
InitializeFilenameTemplateActivity().initializeActions()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun reset() {
|
override fun reset() {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user