Skip to content

Commit 1e54f14

Browse files
author
fulin
committed
fix: 修复settings 中的 Modified 和 rest 问题
1 parent f0095ba commit 1e54f14

6 files changed

Lines changed: 24 additions & 55 deletions

File tree

src/main/java/com/fulinlin/model/ChangeType.java

Lines changed: 0 additions & 33 deletions
This file was deleted.

src/main/java/com/fulinlin/setting/ui/AliasEditor.form

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,17 @@
1919
<component id="f72e9" class="javax.swing.JTextField" binding="titleField">
2020
<constraints>
2121
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
22-
<preferred-size width="100" height="-1"/>
22+
<minimum-size width="100" height="-1"/>
23+
<preferred-size width="200" height="-1"/>
2324
</grid>
2425
</constraints>
2526
<properties/>
2627
</component>
2728
<component id="7611f" class="javax.swing.JTextField" binding="descriptionField">
2829
<constraints>
2930
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
30-
<preferred-size width="150" height="-1"/>
31+
<minimum-size width="100" height="-1"/>
32+
<preferred-size width="200" height="-1"/>
3133
</grid>
3234
</constraints>
3335
<properties/>

src/main/java/com/fulinlin/setting/ui/TemplateEditPane.java

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import com.intellij.openapi.editor.EditorFactory;
99
import com.intellij.openapi.editor.EditorSettings;
1010
import com.intellij.openapi.fileTypes.FileTypeManager;
11+
import com.intellij.openapi.util.text.StringUtil;
1112
import com.intellij.ui.AnActionButton;
1213
import com.intellij.ui.DoubleClickListener;
1314
import com.intellij.ui.ToolbarDecorator;
@@ -34,7 +35,7 @@ public class TemplateEditPane {
3435

3536
public TemplateEditPane(GitCommitMessageHelperSettings settings) {
3637
//get setting
37-
this.settings = settings;
38+
this.settings = settings.clone();
3839
aliasTable = new AliasTable();
3940
String template = Optional.of(settings.getDateSettings().getTemplate()).orElse("");
4041
//init templateEditor
@@ -84,23 +85,27 @@ public GitCommitMessageHelperSettings getSettings() {
8485
return settings;
8586
}
8687

87-
public void reset() {
88+
public void reset(GitCommitMessageHelperSettings settings) {
89+
this.settings = settings;
90+
aliasTable.reset(settings);
91+
ApplicationManager.getApplication().runWriteAction(() -> templateEditor.getDocument().setText(settings.getDateSettings().getTemplate()));
8892

8993
}
9094

91-
// public boolean isSettingsModified(GitCommitMessageHelperSettings settings) {
92-
// if (aliasTable.isModified(settings)) return true;
93-
// return !this.settings.equals(settings) || isModified(settings);
94-
// }
9595

96-
public boolean isModified() {
97-
/* if (!StringUtil.equals(settings.getDateSettings().getTemplate(), data.getDateSettings().getTemplate())) {
96+
public boolean isSettingsModified(GitCommitMessageHelperSettings settings) {
97+
if (aliasTable.isModified(settings)) return true;
98+
return !this.settings.equals(settings) || isModified(settings);
99+
}
100+
101+
public boolean isModified(GitCommitMessageHelperSettings data) {
102+
if (!StringUtil.equals(settings.getDateSettings().getTemplate(), templateEditor.getDocument().getText())) {
98103
return true;
99104
}
100105
if (settings.getDateSettings().getTypeAliases() != data.getDateSettings().getTypeAliases()) {
101106
return true;
102-
}*/
103-
return true;
107+
}
108+
return false;
104109
}
105110

106111

src/main/java/com/fulinlin/setting/ui/TemplateEditPaneConfigurable.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111

1212
/**
1313
* 这个类Settings 中的属性被创建的时候
14-
* User: fulin
14+
*
15+
* @author: fulin
1516
*/
1617
public class TemplateEditPaneConfigurable implements SearchableConfigurable {
1718

@@ -55,18 +56,18 @@ public String getDisplayName() {
5556

5657
public void reset() {
5758
if (templateEditPane != null) {
58-
templateEditPane.reset();
59+
templateEditPane.reset(settings);
5960
}
6061
}
6162

6263
@Override
6364
public boolean isModified() {
64-
return templateEditPane != null && templateEditPane.isModified();
65+
return templateEditPane != null && templateEditPane.isSettingsModified(settings);
6566
}
6667

6768

6869
@Override
6970
public void apply() {
70-
settings.setDateSettings(templateEditPane.getSettings().getDateSettings());
71+
this.settings = templateEditPane.getSettings().clone();
7172
}
7273
}

src/main/java/com/fulinlin/ui/CommitMessage.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
11
package com.fulinlin.ui;
22

3-
import com.fulinlin.model.ChangeType;
43
import com.fulinlin.model.CommitTemplate;
54
import com.fulinlin.model.TypeAlias;
65
import com.fulinlin.storage.GitCommitMessageHelperSettings;
76
import com.fulinlin.utils.VelocityUtils;
8-
import com.intellij.openapi.util.text.StringUtil;
97
import org.apache.commons.lang.StringUtils;
10-
import org.apache.commons.lang.WordUtils;
11-
12-
import static org.apache.commons.lang.StringUtils.isNotBlank;
138

149
/**
1510
* @author fulin

src/main/java/com/fulinlin/ui/CommitPanel.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.fulinlin.ui;
22

3-
import com.fulinlin.model.ChangeType;
43
import com.fulinlin.model.TypeAlias;
54
import com.fulinlin.storage.GitCommitMessageHelperSettings;
65
import com.intellij.openapi.project.Project;

0 commit comments

Comments
 (0)