AWTK 1.2 release, the domestic open source GUI engine

AWTK called the Toolkit AnyWhere, is ZLG cordial to develop a set of C-based GUI framework. Is designed to provide users with a powerful, efficient and reliable, easy to use, can easily make cool effects GUI engine and support for the development of cross-platform synchronization, once programmed, lifetime use.

AWTK current upgrade to v1.2 version, compared to v1.1, we have improved many details, an increase of some features, controls and API, so that AWTK support more features and more cool effects.

  Version 1.2 updated content

Complete details

  • IME candidate supports scrolling;

  • support slider up and down keys;

  • guage pointer to support the anchor;

  • slide view indicator as an independent control;

  • Perfect idl gen tool;

  • Perfect doc gen tool;

  • Supports setting the control focus with a focusable property;

  • Removing TK_DEFAULT_FONT macro definition;

  • Increases style border_width;

  • Screensaver supports dynamic modification time;

  • SDL FB mode is enabled dirty rectangle;

  • New memory exhaustion process;

  • ...

New Features

  • cairo achieved vgcanvas;

  • Support for 32-bit Windows compiler;

  • Increase condition variable tk_cond_var;

  • Support focus switching controls with the tab key;

  • Full support for the pop-up window animation in a different location;

  • svg / gif supports loading images from the file system;

  • Increase widget_gen script generates custom control;

  • Increase self_layouter_menu implement pop-up menu;

  • Increase lcd_mem_special;

  • style increase the margin parameters.

New Controls

  • mledit multi-line editor;

  • overlay overlay window;

  • hscroll_label horizontally scrolling text.

Important new API

  • timer_modify

  • widget_add_idle

  • widget_find_animator

Online operating results:  http://zlgawtk.bceapp.com/

AWTK description:

AWTK  full name Toolkit AnyWhere, is  ZLG  development of open source GUI engine designed for embedded systems, WEB, a variety of small programs, mobile phone and PC to create a common GUI engine, to provide users with a powerful, efficient and reliable, easy to use, You can easily make cool effects GUI engine.

AWTK  meaning there are two aspects:

  • Toolkit AnyWhere。
  • Things ZLG operating system AWorks built GUI.

AWTK  source repository:

Screenshot operating results:

CleanAir-Demo

Meter-Demo

Chart-Demo

MusicPlayer-Demo

Second, the ultimate goal:

  • Support the development of embedded applications.
  • Support the development of Linux applications.
  • Support the development of MacOS applications.
  • Support the development of Windows applications.
  • Support the development of Web APP.
  • Support the development of small micro-channel program.
  • Alipay support the development of small programs.
  • Support the development of Baidu applet.
  • Support the development of Android applications.
  • Support the development of iOS applications.
  • Support the development of 2D games.

Third, the main features

1. Cross-platform

AWTK  is cross-platform, meaning that there are two aspects:

  • AWTK itself is cross-platform. Currently supported platforms are ZLG AWorks, Windows, Linux, MacOS, Linux embedded systems and embedded bare, can be easily ported to various RTOS. AWTK later can run in the browser (beta soon), running on a variety of small programs, Android and iOS platforms.

  • AWTK 同时还提供了一套跨平台的基础工具库。其中包括链表、数组、字符串 (UTF8 和 widechar),事件发射器、值、对象、文件系统、互斥锁和线程、表达式和字符串解析等等,让你用 AWTK 开发的应用程序可以真正跨平台运行。

2. 高效

AWTK 通过一系列的手段保证 AWTK 应用程序高效运行:

  • 通过脏矩算法只更新变化的部分。
  • 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。
  • UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。
  • 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。
  • 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。

3. 稳定

AWTK 通过下列方式极力让代码稳定可靠:

  • 使用 cppcheck 和 facebook infer 进行静态检查。
  • 使用 valgrind 进行动态内存检查。
  • 近两万行的单元测试代码。
  • ZLG 强大 GUI 团队的支持。
  • 经过多个实际项目验证。
  • 多平台 / 多编译器验证。
  • 优秀的架构设计。
  • Code Review。
  • 手工测试。

4. 强大

  • 丰富的控件 (持续增加中)。
  • 支持各种图片格式 (png/jpg/gif/svg)。
  • 支持各种字体格式 (点阵和矢量)。
  • 支持窗口动画
  • 支持控件动画
  • 支持高清屏。
  • 支持界面描述文件。
  • 支持主题描述文件。
  • 支持控件布局策略。
  • 支持对话框高亮策略。
  • 丰富的辅助工具。
  • 支持从低端的 Cortex M3 到各种高端 CPU。
  • 支持无文件系统和自定义的文件系统。
  • 支持裸系统和 RTOS。

5. 易用

  • 大量的示例代码。
  • 完善的 API 文档和使用文档。
  • ZLG 强大的技术支持团队。
  • 用 AWTK 本身开发的界面编辑器 (开发中)。
  • 声明式的界面描述语言。一行代码启用控件动画,启用窗口动画,显示图片 (png/jpg/svg/gif)。

6. 高度扩展性

  • You can expand their control.
  • You can expand their animation.
  • You can implement your own main loop.
  • You can expand their soft keyboard.
  • You can expand your picture loader.
  • You can expand your font loader.
  • You can expand your input method engines.
  • You can expand their control layout algorithm.
  • You can expand their strategies highlighted box.
  • You can implement your own LCD interface.
  • Can extend your vector engine (e.g., using skia / cairo).
  • All components and extensions built-in components have the same treatment.

7. A variety of development languages

AWTK  itself is written in C language development, the binding of various scripting languages can be generated by IDL. Binding code generated is not simply map the C language API to scripting languages, but native code generation scripting language style API. Currently supports the following languages (added later as needed):

  • C
  • take
  • Javascript on jerryscript
  • Javascript on nodejs

8. Internationalization

  • Support Unicode.
  • Support input method.
  • Support string translation (with immediate effect).
  • Support picture translation (with immediate effect).
  • Bi-directional text layout (plan).

9. open source, commercial free (LGPL).

 

Guess you like

Origin www.oschina.net/news/108635/awtk-1-2-released