REFERENCE
C API
195 个条目 · 第 2/2 页
kui_platform_set_timeout按毫秒延迟安排一次回调并返回计时器 ID。回调由活跃事件循环在主线程执行;KUI 不释放 user_data,须保证其在等待及回调期间有效。触发后无需清理该一次性计时器。
kui_platform_shutdown关闭平台服务;标准流程在事件循环结束并释放句柄后调用。
kui_platform_wait_events等待事件到来或超时;timeout_seconds 为负数时无限等待。
kui_script_engine_bind_document在主线程把文档绑定到脚本引擎,使脚本可操作该文档;文档须在绑定使用期间保持有效,未启用脚本时返回 NOT_SUPPORTED。
kui_script_engine_create创建 Lua 脚本引擎句柄,使用后由 kui_script_engine_release 释放;构建未启用脚本或无法创建引擎时返回 NOT_SUPPORTED。
kui_script_engine_eval执行 Lua 源码,可传来源名,NULL 来源使用 <eval>;脚本执行结果看 out_success,错误写入调用方缓冲。重试会重新执行源码,不能把有副作用代码作为无害的两次查询;脚本未启用返回 NOT_SUPPORTED。
kui_script_engine_execute_scripts在主线程执行已绑定文档中的脚本;要求脚本引擎及相应文档绑定有效,未启用脚本时返回 NOT_SUPPORTED。
kui_script_engine_release释放并销毁脚本引擎句柄,不能重复释放;先解除窗口对该引擎的借用并停止后续调用。
kui_script_engine_set_error_handler设置脚本错误回调,提供错误文本、来源、行号及 user_data;fn 为 NULL 可清除回调。回调文本是临时借用,需及时复制;未启用脚本返回 NOT_SUPPORTED。
kui_script_engine_unbind_document在主线程解除脚本引擎的文档绑定;未启用脚本时返回 NOT_SUPPORTED。
kui_status_message取得状态码的静态说明字符串;结果始终非空,不分配内存,无须释放。 输入字符串采用 UTF-8 和显式字节长度;长度 0 表示 strlen,必填名称、选择器、路径及源码不可为 NULL。
kui_window_add_event_listener按事件名注册窗口监听器并可返回监听编号;once 非零表示只触发一次。回调内事件是借用指针,仅在回调期间有效,不可释放或留待稍后使用。
kui_window_clear_frame_radius清除窗口显式圆角半径设置;要求有效窗口句柄。
kui_window_close调用窗口关闭操作;独占窗口句柄仍需按生命周期调用 release。
kui_window_create按 KuiWindowProps 创建独占窗口;创建返回时窗口已可见。属性可先清零以采用默认值,opacity=0 按 1.0 处理;若需先隐藏配置,应立即调用 hide。句柄只能 release 一次。
kui_window_get_device_pixel_ratio读取窗口设备像素比例。
kui_window_get_devtools_port读取窗口 DevTools 服务监听端口;窗口没有 DevTools 服务时返回 NOT_FOUND。
kui_window_get_devtools_url读取窗口的 DevTools 连接 URL。 输出为调用者缓冲区中的 UTF-8:可先以 NULL/0 查询长度,再分配 out_len+1;长度不含 NUL。容量不足返回 BUFFER_TOO_SMALL 并报告所需长度;容量大于 0 时仍写入 NUL 结尾的截断结果。
kui_window_get_document取得窗口自有文档的计数引用,调用者须 release;该引用可在窗口释放后继续保活文档。窗口不支持附加外部文档。
kui_window_get_native_handle取得借用的操作系统窗口标识:Windows 为 HWND、macOS 为 NSWindow*、Linux 为 X11 Window;此值不建立独占窗口之外的新所有权。
kui_window_get_position读取窗口位置坐标。
kui_window_get_size读取窗口宽度与高度。
kui_window_get_title读取窗口标题。 输出为调用者缓冲区中的 UTF-8:可先以 NULL/0 查询长度,再分配 out_len+1;长度不含 NUL。容量不足返回 BUFFER_TOO_SMALL 并报告所需长度;容量大于 0 时仍写入 NUL 结尾的截断结果。
kui_window_hide隐藏指定窗口。
kui_window_is_maximized判断窗口是否处于最大化状态。
kui_window_is_minimized判断窗口是否处于最小化状态。
kui_window_is_visible读取窗口当前是否可见。
kui_window_maximize将窗口最大化。
kui_window_minimize将窗口最小化。
kui_window_on_resize替换窗口尺寸变化回调;传 NULL 可清除当前回调。回调接收宽度、高度及 user_data。
kui_window_release销毁独占窗口,不能当作引用计数减一;每个窗口句柄恰好调用一次。已取得的计数文档引用可继续保活文档。
kui_window_remove_event_listener使用事件名和监听编号移除窗口监听器;编号需要与对应事件类型配对。
kui_window_remove_event_listeners移除窗口指定事件名下的所有监听器。
kui_window_resize实际调整操作系统窗口的宽度和高度。
kui_window_restore恢复窗口的正常状态。
kui_window_set_always_on_top设置或取消窗口始终置顶。
kui_window_set_frame_radius设置窗口边框圆角半径;半径不能为负,window 必须是有效的独占窗口句柄。
kui_window_set_frameless_sizeable设置无边框窗口是否允许调整大小。window 是独占所有权句柄,必须保持有效,不能当引用计数对象复制释放。
kui_window_set_opacity设置窗口不透明度。
kui_window_set_position设置窗口位置坐标。
kui_window_set_script_engine在主线程给窗口关联一个借用的脚本引擎;engine 为 NULL 可解除关联。窗口不接管该句柄,引擎必须在被窗口使用期间保持有效;未启用脚本返回 NOT_SUPPORTED。
kui_window_set_title设置窗口标题。 输入字符串采用 UTF-8 和显式字节长度;长度 0 表示 strlen,必填名称、选择器、路径及源码不可为 NULL。
kui_window_should_close读取窗口是否应当关闭的状态标记。
kui_window_show显示指定窗口。
kui_window_start_devtools在指定端口启动窗口 DevTools,并通过 out_started 报告是否启动。