可可GUI, 基于DirectUI技术的跨平台GUI库。
此项目目标是参考Sciter和Qt的方案,实现一个开源的跨平台方案。
新增便利功能:
- 针对多语言开发进行兼容和优化。
- 基于xml和CSS进行GUI绘制,参考Qt
- CSS和html的实现轻量化,兼容嵌入式平台
- CPP 17 语法规范, 不使用复杂有争议语法
- 后端可定制,方便移植
- 第三方依赖尽可能小
- 跨平台Windows, Linux
- 字符编码UTF-8, meson编译系统
- 0.1.0
- Windows 平台实现
- Layout, Container, ScrollContainer, Edit, ComboBox 实现
- 基础CSS属性支持,伪状态支持
- 简单xml生成gui
- Engine使用Cairo
- 0.2.0
- 更多layout支持,flex
- 更多CSS属性支持
- 更好的xml描述
- 更多的UI控件
- Engine接口和效率优化
2025.2
- 参考了 Slint, SKUI, LVGL 等项目, 确定下来:
- 开发语言为C++,基于class实现核心架构
- 后端不实现所有功能,够用就行。初步为 Gdiplus, cairo. Skia2 等后续看需求再说。
- 平台支持window, linux就可以了,其他的后续再说
- CSS不支持大部分语法,只借鉴部分特性,够用就行。
- GUI builder支持XML文件,支持CSS描述。html特性,以后再说。
- 项目定位为一般的小程序,工具。大型软件的特性,不在范围内。
- C++版本做好后,新建一个C接口实现,进而支持跨语言调用。
- 控件类型支持参考MFC的控件类型,并支持Webview嵌入。COM控件等,以后再说。
- Theme功能,皮肤功能,资源文件嵌入功能。
- 嵌入式平台暂不支持,以后再说。
BBDXF