FTPC FormDesigner Script 字体设置保存,解决修改字体后重启还原问题

参考 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);
            }
        }
    }

猜你喜欢

转载自blog.csdn.net/oXiaoWeiWuDi/article/details/127180812