@@ -48,8 +48,12 @@ class RealConfigurePanel : ConfigurePanel() {
4848
4949 fun cacheConfig () {
5050 currentConfig ? : return
51- currentConfig!! .template.fileTemplates = tableFileTemp.getPairResult()
52- currentConfig!! .template.placeholders = tablePlaceholder.getPairResult()
51+ currentConfig!! .template.run {
52+ removeAllPlaceHolderInTree()
53+ removeAllTemplateInTree()
54+ fileTemplates = tableFileTemp.getPairResult()
55+ placeholders = tablePlaceholder.getPairResult()
56+ }
5357 }
5458
5559 fun saveConfig () {
@@ -68,7 +72,6 @@ class RealConfigurePanel : ConfigurePanel() {
6872 panelFileTemp.add(tableFileTemp, BorderLayout .CENTER )
6973 }
7074
71-
7275 private fun initData () {
7376 actionbar.onAdd { e ->
7477 if (e != null ) {
@@ -93,9 +96,12 @@ class RealConfigurePanel : ConfigurePanel() {
9396 tabbedPane.addChangeListener {
9497 currentConfig ? : return @addChangeListener
9598 when (tabbedPane.selectedIndex) {
96- 0 -> currentConfig!! .template.placeholders = tablePlaceholder.getPairResult()
97- 1 -> updateTableFileTemplate()
98- 2 -> updateTablePlaceholder()
99+ 0 -> {
100+ currentConfig!! .template.placeholders = tablePlaceholder.getPairResult()
101+ currentConfig!! .template.fileTemplates = tableFileTemp.getPairResult()
102+ }
103+ 1 -> tableFileTemp.setPairData(currentConfig!! .template.getAllTemplateMap())
104+ 2 -> tablePlaceholder.setPairData(currentConfig!! .template.getAllPlaceholdersMap().toMutableMap())
99105 }
100106 panelPreview.setModuleConfig(currentConfig!! )
101107 }
@@ -115,22 +121,6 @@ class RealConfigurePanel : ConfigurePanel() {
115121 }
116122 }
117123
118- private fun updateTableFileTemplate () {
119- val fileTemplates = currentConfig!! .template.getAllTemplateMap()
120- tableFileTemp.setPairData(fileTemplates)
121- }
122-
123- private fun updateTablePlaceholder () {
124- val mergedPlaceholder = currentConfig!! .template.getAllPlaceholdersMap().toMutableMap()
125- val allPlaceholders = currentConfig!! .template.getAllPlaceholderInTree()
126- allPlaceholders.forEach { s: String ->
127- if (s !in mergedPlaceholder) {
128- mergedPlaceholder[s] = " "
129- }
130- }
131- tablePlaceholder.setPairData(mergedPlaceholder)
132- }
133-
134124 private fun addModuleTemplate (module : Module ) {
135125 configs!! .add(module)
136126 templateListModel!! .addElement(module.templateName)
@@ -146,6 +136,17 @@ class RealConfigurePanel : ConfigurePanel() {
146136 val selectedIndex = getSelectedConfigIndex()
147137 configs!! .removeAt(selectedIndex)
148138 templateListModel!! .remove(selectedIndex)
139+ if (! listTemplate.isEmpty) {
140+ panelPreview.isEnabled = true
141+ listTemplate.selectedIndex = 0
142+ onConfigListSelected()
143+ } else {
144+ currentConfig = null
145+ tablePlaceholder.setPairData(mapOf ())
146+ tableFileTemp.setPairData(mapOf ())
147+ panelPreview.setModuleConfig(getEmpty())
148+ panelPreview.isEnabled = false
149+ }
149150 listTemplate.doLayout()
150151 }
151152
0 commit comments