- 生成 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
52 lines
4.1 KiB
Plaintext
52 lines
4.1 KiB
Plaintext
import t, c
|
||
from fltk._types import *
|
||
|
||
# ============================================================
|
||
# fltk/_cfl_prefs.vp — cfl_prefs.h 的 extern FFI 声明(对接 cfltk C API)
|
||
# ============================================================
|
||
|
||
# 所有函数直接对应 cfltk 生成的 C 符号(extern "C"),链接目标: cfltk2。
|
||
# 类型约定: Fl_* 对象均为不透明指针 (Fl_XxxPtr);const char* → str;
|
||
# 函数指针/void* → bytes(Viper 端传 0/NULL 或不使用)。
|
||
|
||
extern def Fl_Preferences_set_file_access(flags: t.CUInt32T)
|
||
extern def Fl_Preferences_file_access() -> t.CUInt32T
|
||
extern def Fl_Preferences_remove(id_: bytes) -> t.CChar
|
||
extern def Fl_Preferences_new(root: int, vendor: str, application: str) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_from_path(path: str, vendor: str, application: str) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_from_parent_group(parent: Fl_PreferencesPtr, group: str) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_from_parent_idx(parent: Fl_PreferencesPtr, groupIndex: int) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_copy(a0: Fl_PreferencesPtr) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_delete(a0: Fl_PreferencesPtr)
|
||
extern def Fl_Preferences_from_id(id: bytes) -> Fl_PreferencesPtr
|
||
extern def Fl_Preferences_filename(prefs: Fl_PreferencesPtr, buffer: str, buffer_size: t.CUInt32T) -> int
|
||
extern def Fl_Preferences_get_userdata_path(prefs: Fl_PreferencesPtr, path: str, pathlen: int) -> t.CChar
|
||
extern def Fl_Preferences_id(prefs: Fl_PreferencesPtr) -> bytes
|
||
extern def Fl_Preferences_name(prefs: Fl_PreferencesPtr) -> str
|
||
extern def Fl_Preferences_path(prefs: Fl_PreferencesPtr) -> str
|
||
extern def Fl_Preferences_groups(prefs: Fl_PreferencesPtr) -> int
|
||
extern def Fl_Preferences_group(prefs: Fl_PreferencesPtr, num_group: int) -> str
|
||
extern def Fl_Preferences_group_exists(prefs: Fl_PreferencesPtr, key: str) -> t.CChar
|
||
extern def Fl_Preferences_delete_group(prefs: Fl_PreferencesPtr, group: str) -> t.CChar
|
||
extern def Fl_Preferences_delete_all_groups(prefs: Fl_PreferencesPtr) -> t.CChar
|
||
extern def Fl_Preferences_entries(prefs: Fl_PreferencesPtr) -> int
|
||
extern def Fl_Preferences_entry(prefs: Fl_PreferencesPtr, index: int) -> str
|
||
extern def Fl_Preferences_entry_exists(prefs: Fl_PreferencesPtr, key: str) -> t.CChar
|
||
extern def Fl_Preferences_delete_entry(prefs: Fl_PreferencesPtr, entry: str) -> t.CChar
|
||
extern def Fl_Preferences_delete_all_entries(prefs: Fl_PreferencesPtr) -> t.CChar
|
||
extern def Fl_Preferences_clear(prefs: Fl_PreferencesPtr) -> t.CChar
|
||
extern def Fl_Preferences_seti(prefs: Fl_PreferencesPtr, entry: str, value: int) -> t.CChar
|
||
extern def Fl_Preferences_setf(prefs: Fl_PreferencesPtr, entry: str, value: t.CFloat) -> t.CChar
|
||
extern def Fl_Preferences_setfp(prefs: Fl_PreferencesPtr, entry: str, value: t.CFloat, precision: int) -> t.CChar
|
||
extern def Fl_Preferences_setd(prefs: Fl_PreferencesPtr, entry: str, value: t.CDouble) -> t.CChar
|
||
extern def Fl_Preferences_setdp(prefs: Fl_PreferencesPtr, entry: str, value: t.CDouble, precision: int) -> t.CChar
|
||
extern def Fl_Preferences_sets(prefs: Fl_PreferencesPtr, entry: str, value: str) -> t.CChar
|
||
extern def Fl_Preferences_setv(prefs: Fl_PreferencesPtr, entry: str, value: bytes, size: int) -> t.CChar
|
||
extern def Fl_Preferences_geti(prefs: Fl_PreferencesPtr, entry: str, value: bytes, defaultValue: int) -> t.CChar
|
||
extern def Fl_Preferences_getf(prefs: Fl_PreferencesPtr, entry: str, value: bytes, defaultValue: t.CFloat) -> t.CChar
|
||
extern def Fl_Preferences_getd(prefs: Fl_PreferencesPtr, entry: str, value: bytes, defaultValue: t.CDouble) -> t.CChar
|
||
extern def Fl_Preferences_gets(prefs: Fl_PreferencesPtr, entry: str, value: str, defaultValue: str, maxSize: int) -> t.CChar
|
||
extern def Fl_Preferences_getv(prefs: Fl_PreferencesPtr, entry: str, value: bytes, defaultValue: bytes, defaultSize: int, maxSize: int) -> t.CChar
|
||
extern def Fl_Preferences_getv2(prefs: Fl_PreferencesPtr, entry: str, value: bytes, defaultValue: bytes, defaultSize: int, size: bytes) -> t.CChar
|
||
extern def Fl_Preferences_size(prefs: Fl_PreferencesPtr, entry: str) -> int
|