Files
TransPyC/includes/fltk/cfltk/include/cfltk2/cfl_input.h
T
TermiNexus 6892183cc9 feat(fltk): 新增 FLTK 1.4 纯 extern FFI 绑定库(对接 cfltk C API)
- 生成 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
2026-09-01 19:53:54 +08:00

80 lines
3.0 KiB
C

#ifndef __CFL_INPUT_H__
#define __CFL_INPUT_H__
#include "cfl_macros.h"
#ifdef __cplusplus
extern "C" {
#endif
#define INPUT_DECLARE(widget) \
int widget##_set_value(widget *, const char *); \
const char *widget##_value(widget *); \
int widget##_maximum_size(widget *); \
void widget##_set_maximum_size(widget *, int m); \
int widget##_position(widget *); \
int widget##_set_position(widget *, int p); \
int widget##_set_mark(widget *, int m); \
int widget##_mark(widget *); \
int widget##_replace(widget *, int b, int e, const char *text, int ilen); \
int widget##_insert(widget *, const char *t, int l); \
int widget##_append(widget *, const char *t, int l, char keep_selection); \
int widget##_copy(widget *, int clipboard); \
int widget##_undo(widget *); \
int widget##_copy_cuts(widget *); \
unsigned int widget##_cursor_color(const widget *); \
void widget##_set_cursor_color(widget *, unsigned int s); \
int widget##_text_font(widget *); \
void widget##_set_text_font(widget *, int s); \
unsigned int widget##_text_color(widget *); \
void widget##_set_text_color(widget *, unsigned int s); \
int widget##_text_size(widget *); \
void widget##_set_text_size(widget *, int s); \
int widget##_readonly(widget *); \
void widget##_set_readonly(widget *, int boolean); \
int widget##_wrap(widget *); \
void widget##_set_wrap(widget *, int boolean); \
void widget##_set_tab_nav(widget *, int flag); \
int widget##_tab_nav(const widget *);
WIDGET_DECLARE(Fl_Input)
INPUT_DECLARE(Fl_Input)
WIDGET_DECLARE(Fl_Int_Input)
INPUT_DECLARE(Fl_Int_Input)
WIDGET_DECLARE(Fl_Float_Input)
INPUT_DECLARE(Fl_Float_Input)
WIDGET_DECLARE(Fl_Multiline_Input)
INPUT_DECLARE(Fl_Multiline_Input)
WIDGET_DECLARE(Fl_Secret_Input)
INPUT_DECLARE(Fl_Secret_Input)
WIDGET_DECLARE(Fl_File_Input)
void Fl_File_Input_set_down_box(Fl_File_Input *self, int box);
int Fl_File_Input_down_box(const Fl_File_Input *self);
INPUT_DECLARE(Fl_File_Input)
WIDGET_DECLARE(Fl_Output)
INPUT_DECLARE(Fl_Output)
WIDGET_DECLARE(Fl_Multiline_Output)
INPUT_DECLARE(Fl_Multiline_Output)
#ifdef __cplusplus
}
#endif
#endif