1 Star 2 Fork 0

DCOSA / VCodeEditor

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
StyleManager.cs 2.26 KB
一键复制 编辑 原始数据 按行查看 历史
Dresnclor 提交于 2024-04-28 17:05 . 更改结构,删除多余资源
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using System.Threading.Tasks;
using VCodeEditor.Document;
namespace VCodeEditor
{
/// <summary>
/// 样式管理器
/// </summary>
public static class StyleManager
{
static StyleManager()
{
StyleManager.StyleProvider = new StyleModeProvider();
StyleManager.globalStyle = new DefaultGlobalStyle();
StyleManager.DefaultStyleStrategy = new StyleStrategy("Default");
StyleManager.DefaultColorStyle = new ColorStyle(Color.White, false, false);
}
/// <summary>
/// 样式列表
/// </summary>
public static StyleModeProvider StyleProvider { get; private set; }
public static IStyleStrategy DefaultStyleStrategy { get; }
public static ColorStyle DefaultColorStyle { get; private set; }
/// <summary>
/// 全局高亮样式
/// </summary>
public static IGlobalStyle GlobalStyle
{
get => StyleManager.globalStyle;
private set
{
if (globalStyle != value)
{
StyleManager.globalStyle = value;
StyleManager.GlobalStyleChanged?.Invoke(StyleManager.globalStyle, new EventArgs());
}
}
}
private static IGlobalStyle globalStyle;
/// <summary>
/// 全局样式改变
/// </summary>
public static EventHandler GlobalStyleChanged;
/// <value>
/// 默认粗体字体
/// </value>
public static Font BoldFont => Document.FontContainer.BoldFont;
/// <value>
/// 默认字体
/// </value>
public static Font DefaultFont => Document.FontContainer.DefaultFont;
/// <value>
/// 默认粗体+斜体字体
/// </value>
public static Font BoldItalicFont => Document.FontContainer.BoldItalicFont;
/// <value>
/// 默认斜体字体
/// </value>
public static Font ItalicFont => Document.FontContainer.ItalicFont;
/// <summary>
/// 加载全局样式
/// </summary>
/// <param name="file"></param>
/// <returns></returns>
public static IGlobalStyle LoadGlobalStyle(string file)
{
return new DefaultGlobalStyle(file);
}
/// <summary>
/// 设置全局样式
/// </summary>
/// <param name="gs"></param>
/// <returns></returns>
public static void SetGlobalStyle(IGlobalStyle gs)
{
StyleManager.GlobalStyle = gs;
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C#
1
https://gitee.com/dcosa/VCodeEditor.git
git@gitee.com:dcosa/VCodeEditor.git
dcosa
VCodeEditor
VCodeEditor
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891