update docs

This commit is contained in:
xianjimli 2020-11-05 11:36:21 +08:00
parent 5de684cd23
commit 43e7a72ba7
3 changed files with 85 additions and 0 deletions

View File

@ -44,6 +44,7 @@
* [如何修改 Windows 下应用程序的图标](https://github.com/zlgopen/awtk/blob/master/win32_res/README.md)
* [项目描述文件 project.json 介绍](awtk_project_description_file.md)
* [利用 app_helper 编写 SConstruct](app_helper_usage.md)
* [自定义控件支持脚本绑定](binding_custom_widget.md)
### 2.HowTos
* [AWTK 调试技巧](debug_tips.md)

View File

@ -0,0 +1,83 @@
# 自定义控件支持脚本绑定
本文 [二维码控件](https://github.com/zlgopen/awtk-widget-qr.git) 为例,介绍一下如何让自定义控件支持脚本绑定。
> 本文前提:
* 安装 node.js
* 安装 python
* awtk 编译环境
* 在 bash 中运行
## 1. 获取自定义控件的源码
```
git clone https://github.com/zlgopen/awtk-widget-qr.git
```
## 2. 把自定义控件的源码拷贝到 AWTK 的 ext_widgets 目录下
```
cp -rf awtk-widget-qr/src/qr awtk/src/ext_widgets/qr
cp -rf awtk-widget-qr/src/qr_register.* awtk/src/ext_widgets/
```
## 3. 注册控件
修改 awtk/src/ext\_widgets/ext\_widgets.c
```c
#include "qr_register.h"
ret_t tk_ext_widgets_init(void) {
...
qr_register();
...
}
```
## 4. 更新 idl
```
cd awtk/tools/idl_gen
node index.js
cd -
```
## 5. 更新 def
```
cd awtk/tools/dll_def_gen
node index.js
cd -
```
## 6. 编译 awtk
```
cd awtk
scons -j2
cd -
```
### 7. 更新绑定代码
```
https://github.com/zlgopen/awtk-binding
cd awtk-binding
./gen.sh
cd -
```
### 8. 同步绑定代码到需要的语言
```
cd awtk-jerryscript
./sync.sh
scons
```
### 9. 注意
* 开发应用程序时记得拷贝自定义控件的 style 到资源中。

View File

@ -2,6 +2,7 @@
2020/11/04
* 完善直接加载file://资源的逻辑(感谢智明提供补丁)。
* 增加文档[自定义控件支持脚本绑定](binding_custom_widget.md)
2020/11/03
* 修复资源名字超过 31 个字符导致查找不了,导致内存泄漏的问题,修改对应生成资源工具以及测试用例(感谢智明提供补丁)。