AWTK是一套基于C语言开发的跨平台GUI框架,目前正式推出1.8版本。本次更新不仅对许多细节进行了优化,还增添了众多重要特性和文档资料。此外,还引入了三款创新控件和两个与AWTK相关项目。
AWTK是什么
AWTK全称 Toolkit AnyWhere,是ZLG开发的开源GUI引擎,旨在为嵌入式系统、WEB、各种小程序、手机和PC打造的通用GUI引擎,为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的GUI引擎。
主源码仓库:https://github.com/zlgopen/awtk镜像源码仓库:https://gitee.com/zlgopen/awtk
图1 AWTK示例程序运行效果
AWTK主要特色
1. 跨平台:目前AWTK支持的平台有ZLG AWorksOS、Windows、Linux、MacOS、嵌入式 Linux、Android、iOS、Web 和嵌入式裸系统;
2. 高效稳定:通过脏矩形算法只刷新界面变化部分、支持GPU加速和嵌入式平台2D加速、支持单元测试并通过静态检查和动态内存检查;
3. 强大易用:丰富的控件类型并支持自定义控件扩展、支持多国语言实时翻译功能、支持全自动化UI测试、配有官方说明文档和大量示例代码;
4. 支持MVVM框架:无需学习 AWTK 控件本身的 API,彻底分离用户界面逻辑和业务逻辑,支持移植到嵌入式平台;
5. 配套AWStudio界面设计工具:拖拽方式设计界面,所见即所得;
6. 开放源码,免费商用(LGPL)。
最新版本更新内容
1. 新增文档(可在awtk/docs文件夹阅览)
-
- 《拖入文件事件》《如何使用packed图片》《如何自定义资源加载方式》《如何使用CMake构建AWTK应用》《如何将资源编译到应用程序并使用它们》
《关于自定义控件的offset的使用注意事项》
2. 新增重要特性
- 增加ROMFS;增加控制台应用类型;增加UI自动化测试框架;支持加载8位深度的图片;增加api doc错误检查工具;完善内存管理,支持使用OS提供的函数;AGGE模式增加ARGB和ABGR颜色支持;……
(更多更新内容可以浏览awtk/docs/changes.md文档)。
3. 新增控件
3.1 异形进度条
GitHub仓库网址:https://github.com/zlgopen/awtk-widget-progress-polygon
图2 异形进度条控件运行效果
3.2 滑动圆环
GitHub仓库网址:https://github.com/zlgopen/awtk-widget-slider-circle
图3 滑动圆环控件运行效果
3.3 流动效果
GitHub仓库网址:https://github.com/zlgopen/awtk-widget-liquid-flow
图4 液体流动效果控件运行效果
4. 新增相关项目
-
- awtk-ogre(在AWTK集成ORGE3D)
Gitee仓库网址:https://gitee.com/zlgopen/awtk-ogre
awtk-hmi(AWTK开源智能串口屏方案)
Gitee仓库网址:https://gitee.com/zlgopen/awtk-hmi