- 生成 24 个 _cfl*.vp(10327 条 extern 声明)+ _types/_enums 常量 - __init__.vp 提供 Fl/Fl_Widget/Fl_Window/Fl_Button/Fl_Input/Fl_Text_Buffer/Fl_Group/Fl_Menu_Bar/Fl_Native_File_Chooser 等包装类 - 回调(Fl_Callback)按 bytes 不透明处理,菜单回调位传 t.CPtr(0) - 新增 examples/hello.vp、dialog.vp 冒烟样例,26 个 .vp 全部通过 vast parse - 内嵌 cfltk(C API 封装)与 FLTK 1.4 完整源码,构建目标 cfltk2
99 lines
5.4 KiB
Plaintext
99 lines
5.4 KiB
Plaintext
import t, c
|
||
from fltk._types import *
|
||
|
||
# ============================================================
|
||
# fltk/_cfl_box.vp — cfl_box.h 的 extern FFI 声明(对接 cfltk C API)
|
||
# ============================================================
|
||
|
||
# 所有函数直接对应 cfltk 生成的 C 符号(extern "C"),链接目标: cfltk2。
|
||
# 类型约定: Fl_* 对象均为不透明指针 (Fl_XxxPtr);const char* → str;
|
||
# 函数指针/void* → bytes(Viper 端传 0/NULL 或不使用)。
|
||
|
||
# ----- Fl_Box (widget_declare) -----
|
||
extern def Fl_Box_new(x: int, y: int, width: int, height: int, title: str) -> Fl_BoxPtr
|
||
extern def Fl_Box_x(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_y(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_width(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_height(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_label(self: Fl_BoxPtr) -> str
|
||
extern def Fl_Box_set_label(self: Fl_BoxPtr, title: str)
|
||
extern def Fl_Box_redraw(self: Fl_BoxPtr)
|
||
extern def Fl_Box_show(self: Fl_BoxPtr)
|
||
extern def Fl_Box_hide(self: Fl_BoxPtr)
|
||
extern def Fl_Box_activate(self: Fl_BoxPtr)
|
||
extern def Fl_Box_deactivate(self: Fl_BoxPtr)
|
||
extern def Fl_Box_redraw_label(self: Fl_BoxPtr)
|
||
extern def Fl_Box_resize(self: Fl_BoxPtr, x: int, y: int, width: int, height: int)
|
||
extern def Fl_Box_widget_resize(self: Fl_BoxPtr, x: int, y: int, width: int, height: int)
|
||
extern def Fl_Box_tooltip(self: Fl_BoxPtr) -> str
|
||
extern def Fl_Box_set_tooltip(self: Fl_BoxPtr, txt: str)
|
||
extern def Fl_Box_get_type(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_type(self: Fl_BoxPtr, typ: int)
|
||
extern def Fl_Box_color(self: Fl_BoxPtr) -> t.CUInt32T
|
||
extern def Fl_Box_set_color(self: Fl_BoxPtr, color: t.CUInt32T)
|
||
extern def Fl_Box_measure_label(self: Fl_BoxPtr, a1: bytes, a2: bytes)
|
||
extern def Fl_Box_label_color(self: Fl_BoxPtr) -> t.CUInt32T
|
||
extern def Fl_Box_set_label_color(self: Fl_BoxPtr, color: t.CUInt32T)
|
||
extern def Fl_Box_label_font(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_label_font(self: Fl_BoxPtr, font: int)
|
||
extern def Fl_Box_label_size(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_label_size(self: Fl_BoxPtr, sz: int)
|
||
extern def Fl_Box_label_type(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_label_type(self: Fl_BoxPtr, typ: int)
|
||
extern def Fl_Box_box(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_box(self: Fl_BoxPtr, typ: int)
|
||
extern def Fl_Box_changed(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_changed(self: Fl_BoxPtr)
|
||
extern def Fl_Box_clear_changed(self: Fl_BoxPtr)
|
||
extern def Fl_Box_align(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_align(self: Fl_BoxPtr, typ: int)
|
||
extern def Fl_Box_delete(self: Fl_BoxPtr)
|
||
extern def Fl_Box_set_image(self: Fl_BoxPtr, a1: bytes)
|
||
extern def Fl_Box_handle(self: Fl_BoxPtr, cb: bytes, data: bytes)
|
||
extern def Fl_Box_handle_event(self: Fl_BoxPtr, event: int) -> int
|
||
extern def Fl_Box_draw(self: Fl_BoxPtr, cb: bytes, data: bytes)
|
||
extern def Fl_Box_resize_callback(self: Fl_BoxPtr, cb1: bytes, data: bytes)
|
||
extern def Fl_Box_set_when(self: Fl_BoxPtr, a1: int)
|
||
extern def Fl_Box_when(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_image(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_parent(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_selection_color(self: Fl_BoxPtr) -> t.CUInt32T
|
||
extern def Fl_Box_set_selection_color(self: Fl_BoxPtr, color: t.CUInt32T)
|
||
extern def Fl_Box_do_callback(self: Fl_BoxPtr)
|
||
extern def Fl_Box_inside(self: Fl_BoxPtr, a1: bytes) -> int
|
||
extern def Fl_Box_window(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_top_window(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_takes_events(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_user_data(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_take_focus(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_set_visible_focus(self: Fl_BoxPtr)
|
||
extern def Fl_Box_clear_visible_focus(self: Fl_BoxPtr)
|
||
extern def Fl_Box_visible_focus(self: Fl_BoxPtr, v: int)
|
||
extern def Fl_Box_has_visible_focus(self: Fl_BoxPtr) -> t.CUInt32T
|
||
extern def Fl_Box_set_user_data(self: Fl_BoxPtr, data: bytes)
|
||
extern def Fl_Box_draw_data(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_handle_data(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_set_draw_data(self: Fl_BoxPtr, data: bytes)
|
||
extern def Fl_Box_set_handle_data(self: Fl_BoxPtr, data: bytes)
|
||
extern def Fl_Box_damage(self: Fl_BoxPtr) -> t.CUInt8T
|
||
extern def Fl_Box_set_damage(self: Fl_BoxPtr, flag: t.CUInt8T)
|
||
extern def Fl_Box_set_damage_area(self: Fl_BoxPtr, flag: t.CUInt8T, x: int, y: int, w: int, h: int)
|
||
extern def Fl_Box_clear_damage(self: Fl_BoxPtr)
|
||
extern def Fl_Box_as_window(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_as_group(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_set_deimage(self: Fl_BoxPtr, a1: bytes)
|
||
extern def Fl_Box_deimage(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_set_callback(self: Fl_BoxPtr, a1: bytes, a2: bytes)
|
||
extern def Fl_Box_visible(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_visible_r(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_active(self: Fl_BoxPtr) -> t.CUInt32T
|
||
extern def Fl_Box_active_r(self: Fl_BoxPtr) -> int
|
||
extern def Fl_Box_callback(self: Fl_BoxPtr) -> bytes
|
||
extern def Fl_Box_set_deletion_callback(self: Fl_BoxPtr, cb1: bytes, data: bytes)
|
||
extern def Fl_Box_from_dyn_ptr(ptr: Fl_WidgetPtr) -> Fl_BoxPtr
|
||
extern def Fl_Box_from_derived_dyn_ptr(ptr: Fl_WidgetPtr) -> Fl_BoxPtr
|
||
extern def Fl_Box_super_draw(ptr: Fl_WidgetPtr, flag: int)
|
||
extern def Fl_Box_super_draw_first(ptr: Fl_WidgetPtr, flag: int)
|
||
extern def Fl_Box_super_handle_first(ptr: Fl_WidgetPtr, flag: int)
|
||
|