json doc color setting | json 注释颜色设置
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
# Show Comment Plugin
|
||||
IDEA 智能注释插件
|
||||
|
||||
https://plugins.jetbrains.com/plugin/18553-show-comment
|
||||
|
||||
English Notes:
|
||||
<ul>
|
||||
<li>Show javadoc comments at the Project view Tree structure.
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
package io.github.linwancen.plugin.show;
|
||||
|
||||
import com.intellij.json.JsonFileType;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.editor.EditorLinePainter;
|
||||
import com.intellij.openapi.editor.LineExtensionInfo;
|
||||
import com.intellij.openapi.editor.markup.TextAttributes;
|
||||
import com.intellij.openapi.project.DumbService;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
@@ -37,7 +39,10 @@ public class LineEnd extends EditorLinePainter {
|
||||
if (comment == null) {
|
||||
return null;
|
||||
}
|
||||
LineExtensionInfo info = new LineExtensionInfo(settings.lineEndPrefix + comment, settings.lineEndTextAttr);
|
||||
TextAttributes textAttr = file.getFileType().equals(JsonFileType.INSTANCE)
|
||||
? settings.lineEndJsonTextAttr
|
||||
: settings.lineEndTextAttr;
|
||||
LineExtensionInfo info = new LineExtensionInfo(settings.lineEndPrefix + comment, textAttr);
|
||||
return Collections.singletonList(info);
|
||||
}
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ public class AppSettingsComponent extends AbstractSettingsComponent {
|
||||
private final JBCheckBox fromRef = new JBCheckBox("ref ");
|
||||
private final JBCheckBox inJson = new JBCheckBox("in json ");
|
||||
private final ColorPanel lineEndColor = new ColorPanel();
|
||||
private final ColorPanel lineEndJsonColor = new ColorPanel();
|
||||
private final JBCheckBox findElementRightToLeft = new JBCheckBox("Find element right to left");
|
||||
protected final JBTextField lineEndPrefix = new JBTextField();
|
||||
protected final JBTextField lineEndCount = new JBTextField();
|
||||
@@ -48,6 +49,7 @@ public class AppSettingsComponent extends AbstractSettingsComponent {
|
||||
JPanel text = JPanelFactory.of(
|
||||
new JBLabel("object count: "), lineEndCount,
|
||||
new JBLabel("text color: "), lineEndColor,
|
||||
new JBLabel("json text color: "), lineEndJsonColor,
|
||||
new JBLabel("prefix: "), lineEndPrefix);
|
||||
FormBuilder formBuilder = FormBuilder.createFormBuilder()
|
||||
.addComponent(JPanelFactory.of(findElementRightToLeft))
|
||||
@@ -124,6 +126,14 @@ public class AppSettingsComponent extends AbstractSettingsComponent {
|
||||
lineEndColor.setSelectedColor(color);
|
||||
}
|
||||
|
||||
public Color getLineEndJsonColor() {
|
||||
return lineEndJsonColor.getSelectedColor();
|
||||
}
|
||||
|
||||
public void setLineEndJsonColor(Color color) {
|
||||
lineEndJsonColor.setSelectedColor(color);
|
||||
}
|
||||
|
||||
public boolean getFindElementRightToLeft() {
|
||||
return findElementRightToLeft.isSelected();
|
||||
}
|
||||
|
||||
@@ -44,6 +44,7 @@ public class AppSettingsConfigurable implements Configurable {
|
||||
} else {
|
||||
modified |= !mySettingsComponent.getLineEndColor().equals(settings.lineEndColorBright);
|
||||
}
|
||||
modified |= !mySettingsComponent.getLineEndJsonColor().equals(settings.lineEndJsonTextAttr.getForegroundColor());
|
||||
modified |= mySettingsComponent.getFindElementRightToLeft() != settings.findElementRightToLeft;
|
||||
modified |= !mySettingsComponent.getLineEndInclude().equals(settings.lineEndInclude);
|
||||
modified |= !mySettingsComponent.getLineEndExclude().equals(settings.lineEndExclude);
|
||||
@@ -68,6 +69,7 @@ public class AppSettingsConfigurable implements Configurable {
|
||||
}
|
||||
JBColor jbColor = new JBColor(settings.lineEndColorBright, settings.lineEndColorDark);
|
||||
settings.lineEndTextAttr.setForegroundColor(jbColor);
|
||||
settings.lineEndJsonTextAttr.setForegroundColor(mySettingsComponent.getLineEndJsonColor());
|
||||
settings.findElementRightToLeft = mySettingsComponent.getFindElementRightToLeft();
|
||||
settings.lineEndInclude = mySettingsComponent.getLineEndInclude();
|
||||
settings.lineEndExclude = mySettingsComponent.getLineEndExclude();
|
||||
@@ -95,6 +97,7 @@ public class AppSettingsConfigurable implements Configurable {
|
||||
} else {
|
||||
mySettingsComponent.setLineEndColor(settings.lineEndColorBright);
|
||||
}
|
||||
mySettingsComponent.setLineEndJsonColor(settings.lineEndJsonTextAttr.getForegroundColor());
|
||||
mySettingsComponent.setFindElementRightToLeft(settings.findElementRightToLeft);
|
||||
mySettingsComponent.setLineEndInclude(settings.lineEndInclude);
|
||||
mySettingsComponent.setLineEndExclude(settings.lineEndExclude);
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.intellij.openapi.components.PersistentStateComponent;
|
||||
import com.intellij.openapi.components.State;
|
||||
import com.intellij.openapi.components.Storage;
|
||||
import com.intellij.openapi.editor.markup.TextAttributes;
|
||||
import com.intellij.ui.Gray;
|
||||
import com.intellij.ui.JBColor;
|
||||
import com.intellij.util.xmlb.XmlSerializerUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -27,6 +28,8 @@ public class AppSettingsState implements PersistentStateComponent<AppSettingsSta
|
||||
public Color lineEndColorDark = new Color(98, 151, 85);
|
||||
public final TextAttributes lineEndTextAttr = new TextAttributes(new JBColor(lineEndColorBright, lineEndColorDark),
|
||||
null, null, null, Font.ITALIC);
|
||||
public final TextAttributes lineEndJsonTextAttr = new TextAttributes(new JBColor(Gray._140, Gray._140),
|
||||
null, null, null, Font.ITALIC);
|
||||
|
||||
public boolean findElementRightToLeft = true;
|
||||
public String lineEndPrefix = " //";
|
||||
|
||||
Reference in New Issue
Block a user