From a1989e35641fbefa54c31ae62744a73ec4ef6dc3 Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Tue, 1 Sep 2026 21:31:11 +0800 Subject: [PATCH] =?UTF-8?q?feat(fltk):=20Fl=20=E5=85=A8=E5=B1=80=E8=A1=A5?= =?UTF-8?q?=E5=85=85=E9=A3=8E=E6=A0=BC=E5=88=87=E6=8D=A2=20API=EF=BC=88set?= =?UTF-8?q?=5Fscheme=20=E8=A1=A5=20docstring/scheme=5Fstring/reload=5Fsche?= =?UTF-8?q?me/set=5Fbackground/set=5Fbackground2/set=5Fforeground=EF=BC=89?= =?UTF-8?q?=EF=BC=9B=E4=BF=AE=E5=A4=8D=E9=87=8D=E5=A4=8D=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=20set=5Fscheme=20=E5=AF=BC=E8=87=B4=E7=9A=84=20LL=20=E7=94=9F?= =?UTF-8?q?=E6=88=90=E5=BC=82=E5=B8=B8=EF=BC=88;efine=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- fltk/__init__.vp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/fltk/__init__.vp b/fltk/__init__.vp index bf7212c..0be3c43 100644 --- a/fltk/__init__.vp +++ b/fltk/__init__.vp @@ -129,6 +129,11 @@ class Fl: @staticmethod def set_scheme(scheme: str) -> int: + """切换全局风格 scheme。 + + 内置风格: 'base' / 'plastic' / 'gtk+' / 'gleam' / 'oxy'。 + 调用后 FLTK 自动重载并重绘所有窗口。 + 用法: fltk.Fl.set_scheme("plastic")""" return Fl_set_scheme(scheme) @staticmethod @@ -175,6 +180,31 @@ class Fl: def scheme() -> int: return Fl_scheme() + @staticmethod + def scheme_string() -> str: + """当前风格名('base'/'plastic'/'gtk+'/'gleam'/'oxy')。""" + return Fl_scheme_string() + + @staticmethod + def reload_scheme() -> int: + """重载当前风格(修改背景/前景色后调用生效)。""" + return Fl_reload_scheme() + + @staticmethod + def set_background(r: int, g: int, b: int): + """设置全局背景色(0~255),之后需 Fl.reload_scheme()。""" + Fl_background(r, g, b) + + @staticmethod + def set_background2(r: int, g: int, b: int): + """设置全局次级背景色(0~255)。""" + Fl_background2(r, g, b) + + @staticmethod + def set_foreground(r: int, g: int, b: int): + """设置全局前景色(文字,0~255)。""" + Fl_foreground(r, g, b) + # ----- 定时器 / 线程唤醒 ----- @staticmethod def add_timeout(seconds: t.CDouble, cb: bytes, data: bytes = 0):