参考 FTPC FormDesigner Script编辑器文字大小调整字体调整功能开发
本次内容对字体调节功能进行优化
1.构建客户端字体设置read 和 write类
2.初始化Script编辑框,加载字体配置
3.界面更改字体后保存字体配置
Script 字体设置工具类
package com.datasweep.core.utility;
import java.awt.*;
/**
* Script 字体设置工具类
*
* @author xuweijun
* @date 2022/10/6
*/
public class FontSetting {
Font m_data = null;
public FontSetting() {
}
public Preference getPreference() {
return new Preference("~fontSetting");
}
private void updateCache(Font var1) {
this.m_data = var1;
}
public Font read() {
if (this.m_data == null) {
Object var2 = this.getPreference().load();
this.m_data = var2 instanceof Font ? (Font) var2 : new Font("DialogInput", 4, 15);
}
return this.m_data;
}
public void save(Font var1) {
this.getPreference().save(var1);
this.updateCache(var1);
}
}
com.datasweep.compatibility.scripteditor.ScriptEditor 静态加载字体配置
static {
titleCol = Color.black;
envOpColor = Color.black;
errorColor = new Color(255, 204, 204);
errorHighlighter = new ErrorHighlightPainter();
fontSetting = new FontSetting();
Font read = fontSetting.read();
textFont = read;
matchBrackets = true;
}
com.datasweep.compatibility.scripteditor.ScriptEditorActionManager.SetupTextFontAction#actionPerformed 字体修改后保存字体配置
public void actionPerformed(ActionEvent var1) {
ScriptEditor var2 = this.getEditor();
FontPropertyEditor fontPropertyEditor = new FontPropertyEditor();
fontPropertyEditor.setValue(var2.textFont);
Font font_setting = DlgFontChooser.showDialog(var2, fontPropertyEditor, "Font Setting", var2.textFont);
if (null != font_setting) {
var2.textFont = font_setting;
var2.getSourcePane().setFont(font_setting);
FontSetting fontSetting = var2.getFontSetting();
fontSetting.save(font_setting);
}
}
}