UI 服务器
- 开始日期:2023-04-09
- 目标主要版本:3.x
- 参考问题:无
- 实现 PR:#272
概括
添加 UI 服务器,用于实现 UI 部件与系统窗口的数据同步。它基于 UIMutationObserver 接口监听部件的变动,能将部件的图形内容、位置和尺寸等数据同步到与之绑定的系统窗口。
基本示例
#include <ui.h>
#include <platform.h>
void example(void)
{
ui_widget_t *w;
app_window_t *wnd;
app_init(L"My Application");
ui_init();
// 初始化服务器
ui_server_init();
// 创建一个部件
w = ui_widget_create(NULL);
// 创建一个窗口
wnd = app_window_create("My Widget", 0, 0, 0, 0, NULL);
// 调整部件尺寸
ui_widget_resize(800, 600);
// 连接部件和窗口
ui_server_connect(w, wnd);
// 运行主循环
app_run();
// 解除部件与窗口的连接
ui_server_disconnect(w, wnd);
ui_server_destroy();
ui_destroy();
return 0;
}