Skip to content

Commit 3e6ace6

Browse files
author
dengzi
committed
fix add config file template does not remove
1 parent a8216e8 commit 3e6ace6

2 files changed

Lines changed: 17 additions & 18 deletions

File tree

src/com/dengzii/plugin/template/ui/ConfigurePanel.java

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -101,11 +101,11 @@ protected void textChanged(@NotNull DocumentEvent documentEvent) {
101101
}
102102

103103
private void onAddConfig() {
104-
currentConfig = Config.INSTANCE.getTEMPLATE_ANDROID_APPLICATION();
105-
configs.add(currentConfig);
106-
templateListModel.addElement(currentConfig.getTemplateName());
104+
Module newConfig = Config.INSTANCE.getTEMPLATE_ANDROID_APPLICATION().clone();
105+
configs.add(newConfig);
106+
templateListModel.addElement(newConfig.getTemplateName());
107107
listTemplate.doLayout();
108-
listTemplate.setSelectedIndex(configs.indexOf(currentConfig));
108+
listTemplate.setSelectedIndex(configs.indexOf(newConfig));
109109
}
110110

111111
private void onRemoveConfig() {
@@ -122,11 +122,11 @@ private void onCopyConfig() {
122122
if (noSelectedConfig()) {
123123
return;
124124
}
125-
currentConfig = currentConfig.clone();
126-
configs.add(currentConfig);
127-
templateListModel.addElement(currentConfig.getTemplateName());
125+
Module newConfig = currentConfig.clone();
126+
configs.add(newConfig);
127+
templateListModel.addElement(newConfig.getTemplateName());
128128
listTemplate.doLayout();
129-
listTemplate.setSelectedIndex(configs.indexOf(currentConfig));
129+
listTemplate.setSelectedIndex(configs.indexOf(newConfig));
130130
}
131131

132132
private void loadConfig() {
@@ -144,14 +144,15 @@ private void onConfigSelect(int index) {
144144
}
145145
currentConfig = configs.get(index);
146146
tfName.setText(currentConfig.getTemplateName());
147-
panelPreview.setModuleConfig(currentConfig);
148147

149-
// update file template and placeholder table
148+
// update tree, file template and placeholder table
149+
panelPreview.setModuleConfig(currentConfig);
150150
tableFileTemp.setPairData(currentConfig.getTemplate().getFileTemplates());
151151
tablePlaceholder.setPairData(currentConfig.getTemplate().getPlaceHolderMap());
152152
}
153153

154154
private void cacheConfig() {
155+
if (currentConfig == null) return;
155156
currentConfig.getTemplate().setFileTemplates(tableFileTemp.getPairResult());
156157
currentConfig.getTemplate().setPlaceHolderMap(tablePlaceholder.getPairResult());
157158
}

src/com/dengzii/plugin/template/ui/EditableTable.kt

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ import javax.swing.table.DefaultTableModel
1515
* desc :
1616
* </pre>
1717
*/
18-
class EditableTable(header: Array<String>) : JPanel() {
18+
class EditableTable(private val header: Array<String>) : JPanel() {
1919

2020
private val scrollPanel = JBScrollPane()
2121
private val editToolbar = EditToolbar()
2222
private val table = JBTable()
23-
private val tableModel = TableModel(header)
23+
private var tableModel = TableModel(header)
2424

2525
init {
2626
layout = BorderLayout()
@@ -37,6 +37,7 @@ class EditableTable(header: Array<String>) : JPanel() {
3737

3838
fun setData(data: MutableList<MutableList<String>>) {
3939
tableModel.setData(data)
40+
tableModel.fireTableDataChanged()
4041
table.updateUI()
4142
}
4243

@@ -46,7 +47,6 @@ class EditableTable(header: Array<String>) : JPanel() {
4647
dataList.add(mutableListOf(t, u))
4748
}
4849
tableModel.setData(dataList)
49-
scrollPanel.updateUI()
5050
tableModel.fireTableDataChanged()
5151
table.updateUI()
5252
}
@@ -89,17 +89,15 @@ class EditableTable(header: Array<String>) : JPanel() {
8989
internal class TableModel(private val header: Array<String>) : DefaultTableModel() {
9090

9191
fun setData(fileTemp: MutableList<MutableList<String>>?) {
92-
if (fileTemp == null) {
93-
return
94-
}
9592
while (rowCount > 0) {
9693
removeRow(0)
9794
}
98-
fireTableDataChanged()
95+
if (fileTemp == null) {
96+
return
97+
}
9998
fileTemp.forEach {
10099
addRow(it.toTypedArray())
101100
}
102-
fireTableDataChanged()
103101
}
104102

105103
fun add() {

0 commit comments

Comments
 (0)