update docs

This commit is contained in:
xianjimli 2020-03-17 10:48:59 +08:00
parent 419e043eae
commit d1dcd9c479
24 changed files with 1294 additions and 33 deletions

View File

@ -2,7 +2,11 @@
* 2020/03/17
* 修复在 ubuntu 编译 fb_gl 模式下出现编译出错的问题(感谢智明提供补丁)。
* 修复圆角矩形半径为负数时候出现的bug感谢智明提供补丁
* progress circle 支持 line cap 属性。
* 增加 vgcanvas\_line\_join\_t 定义。
* 增加 vgcanvas\_line\_cap\_t 定义。
* 更新文档和idl.json
* 2020/03/16
* 无文件系统是支持多主题(感谢朝泽提供补丁)。

View File

@ -0,0 +1,72 @@
## asset\_loader\_t
### 概述
资源加载器接口。
----------------------------------
### 函数
<p id="asset_loader_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#asset_loader_t_asset_loader_create">asset\_loader\_create</a> | 创建缺省的资源加载器。 |
| <a href="#asset_loader_t_asset_loader_destroy">asset\_loader\_destroy</a> | 销毁loader对象。 |
| <a href="#asset_loader_t_asset_loader_load">asset\_loader\_load</a> | 加载指定的资源。 |
#### asset\_loader\_create 函数
-----------------------
* 函数功能:
> <p id="asset_loader_t_asset_loader_create">创建缺省的资源加载器。
* 函数原型:
```
asset_loader_t* asset_loader_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | asset\_loader\_t* | 返回loader对象。 |
#### asset\_loader\_destroy 函数
-----------------------
* 函数功能:
> <p id="asset_loader_t_asset_loader_destroy">销毁loader对象。
* 函数原型:
```
ret_t asset_loader_destroy (asset_loader_t* loader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| loader | asset\_loader\_t* | loader对象。 |
#### asset\_loader\_load 函数
-----------------------
* 函数功能:
> <p id="asset_loader_t_asset_loader_load">加载指定的资源。
* 函数原型:
```
asset_info_t* asset_loader_load (asset_loader_t* loader, uint16_t type, uint16_t subtype, const char* path, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | asset\_info\_t* | 返回资源对象(由调用者销毁)。 |
| loader | asset\_loader\_t* | loader对象。 |
| type | uint16\_t | 资源类型。 |
| subtype | uint16\_t | 资源子类型。 |
| path | const char* | 路径。 |
| name | const char* | 名称。 |

View File

@ -51,6 +51,7 @@ ui UI描述数据。
| <a href="#assets_manager_t_assets_manager_set">assets\_manager\_set</a> | 设置缺省资源管理器。 |
| <a href="#assets_manager_t_assets_manager_set_custom_build_asset_dir">assets\_manager\_set\_custom\_build\_asset\_dir</a> | 设置一个函数,该函数用于生成资源路径。 |
| <a href="#assets_manager_t_assets_manager_set_custom_load_asset">assets\_manager\_set\_custom\_load\_asset</a> | 设置一个函数,该函数用于实现自定义加载资源。 |
| <a href="#assets_manager_t_assets_manager_set_loader">assets\_manager\_set\_loader</a> | 设置loader。 |
| <a href="#assets_manager_t_assets_manager_set_locale_info">assets\_manager\_set\_locale\_info</a> | 设置locale_info对象。 |
| <a href="#assets_manager_t_assets_manager_set_res_root">assets\_manager\_set\_res\_root</a> | 设置资源所在的目录(其下目录结构请参考demos)。 |
| <a href="#assets_manager_t_assets_manager_set_system_info">assets\_manager\_set\_system\_info</a> | 设置system_info对象。 |
@ -383,6 +384,26 @@ ret_t assets_manager_set_custom_load_asset (assets_manager_t* am, assets_manager
| am | assets\_manager\_t* | asset manager对象。 |
| custom\_load\_asset | assets\_manager\_load\_asset\_t | 回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### assets\_manager\_set\_loader 函数
-----------------------
* 函数功能:
> <p id="assets_manager_t_assets_manager_set_loader">设置loader。
* 函数原型:
```
ret_t assets_manager_set_loader (assets_manager_t* am, asset_loader_t* loader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| am | assets\_manager\_t* | asset manager对象。 |
| loader | asset\_loader\_t* | 加载器(由assets manager销毁)。 |
#### assets\_manager\_set\_locale\_info 函数
-----------------------

69
docs/manual/async_t.md Normal file
View File

@ -0,0 +1,69 @@
## async\_t
### 概述
异步请求。
----------------------------------
### 函数
<p id="async_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#async_t_async_call">async\_call</a> | 异步执行exec函数执行完成后在后台线程调用on_result函数。 |
| <a href="#async_t_async_call_deinit">async\_call\_deinit</a> | 全局~初始化。 |
| <a href="#async_t_async_call_init">async\_call\_init</a> | 全局初始化。 |
#### async\_call 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call">异步执行exec函数执行完成后在后台线程调用on_result函数。
* 函数原型:
```
ret_t async_call (async_exec_t exec, async_on_result_t on_result, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| exec | async\_exec\_t | 需要异步支持的函数。 |
| on\_result | async\_on\_result\_t | 返回执行结果(可选) |
| ctx | void* | 两个回调函数的上下文。 |
#### async\_call\_deinit 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call_deinit">全局~初始化。
* 函数原型:
```
ret_t async_call_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### async\_call\_init 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call_init">全局初始化。
* 函数原型:
```
ret_t async_call_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

View File

@ -66,7 +66,7 @@ children_layouter_t* children_layouter_factory_create_layouter (children_layoute
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | children\_layouter\_t* | 返回窗口动画对象。 |
| 返回值 | children\_layouter\_t* | 返回子控件布局算法对象。 |
| factory | children\_layouter\_factory\_t* | 子控件布局算法工厂对象。 |
| type | const char* | 类型。 |
#### children\_layouter\_factory\_destroy 函数
@ -106,7 +106,7 @@ ret_t children_layouter_factory_register (children_layouter_factory_t* factory,
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | children\_layouter\_factory\_t* | highlighter工厂对象。 |
| factory | children\_layouter\_factory\_t* | layouter工厂对象。 |
| type | const char* | 子控件布局算法类型。 |
| create | children\_layouter\_create\_t | 子控件布局算法创建函数。 |
#### children\_layouter\_factory\_set 函数

View File

@ -0,0 +1,150 @@
## data\_reader\_factory\_t
### 概述
data reader工厂。
----------------------------------
### 函数
<p id="data_reader_factory_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#data_reader_factory_t_data_reader_factory">data\_reader\_factory</a> | 获取缺省的data reader工厂对象。 |
| <a href="#data_reader_factory_t_data_reader_factory_create">data\_reader\_factory\_create</a> | 创建data reader工厂对象。 |
| <a href="#data_reader_factory_t_data_reader_factory_create_reader">data\_reader\_factory\_create\_reader</a> | 创建指定类型的data reader对象。 |
| <a href="#data_reader_factory_t_data_reader_factory_destroy">data\_reader\_factory\_destroy</a> | 析构并释放data reader工厂对象。 |
| <a href="#data_reader_factory_t_data_reader_factory_register">data\_reader\_factory\_register</a> | 注册data reader创建函数。 |
| <a href="#data_reader_factory_t_data_reader_factory_set">data\_reader\_factory\_set</a> | 设置缺省的data reader工厂对象。 |
| <a href="#data_reader_factory_t_data_reader_file_create">data\_reader\_file\_create</a> | 创建基于文件的data reader。 |
#### data\_reader\_factory 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory">获取缺省的data reader工厂对象。
* 函数原型:
```
data_reader_factory_t* data_reader_factory ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_reader\_factory\_t* | 返回data reader工厂对象。 |
#### data\_reader\_factory\_create 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory_create">创建data reader工厂对象。
* 函数原型:
```
data_reader_factory_t* data_reader_factory_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_reader\_factory\_t* | 返回data reader工厂对象。 |
#### data\_reader\_factory\_create\_reader 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory_create_reader">创建指定类型的data reader对象。
* 函数原型:
```
data_reader_t* data_reader_factory_create_reader (data_reader_factory_t* factory, const char* url);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_reader\_t* | 返回data reader对象。 |
| factory | data\_reader\_factory\_t* | data reader工厂对象。 |
| url | const char* | URL。 |
#### data\_reader\_factory\_destroy 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory_destroy">析构并释放data reader工厂对象。
* 函数原型:
```
ret_t data_reader_factory_destroy (data_reader_factory_t* factory);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_reader\_factory\_t* | data reader工厂对象。 |
#### data\_reader\_factory\_register 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory_register">注册data reader创建函数。
* 函数原型:
```
ret_t data_reader_factory_register (data_reader_factory_t* factory, const char* protocol, data_reader_create_t create);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_reader\_factory\_t* | reader工厂对象。 |
| protocol | const char* | 协议(如file)。 |
| create | data\_reader\_create\_t | data reader创建函数。 |
#### data\_reader\_factory\_set 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_factory_set">设置缺省的data reader工厂对象。
* 函数原型:
```
ret_t data_reader_factory_set (data_reader_factory_t* factory);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_reader\_factory\_t* | data reader工厂对象。 |
#### data\_reader\_file\_create 函数
-----------------------
* 函数功能:
> <p id="data_reader_factory_t_data_reader_file_create">创建基于文件的data reader。
* 函数原型:
```
ret_t data_reader_file_create (data_reader_t* reader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| reader | data\_reader\_t* | reader对象。 |

View File

@ -0,0 +1,95 @@
## data\_reader\_t
### 概述
数据读取接口。
>用于抽象flash等外部设备。
----------------------------------
### 函数
<p id="data_reader_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#data_reader_t_data_reader_destroy">data\_reader\_destroy</a> | 销毁reader对象。 |
| <a href="#data_reader_t_data_reader_get_size">data\_reader\_get\_size</a> | 获取数据长度。 |
| <a href="#data_reader_t_data_reader_read">data\_reader\_read</a> | 在指定位置读取数据。 |
| <a href="#data_reader_t_data_reader_read_all">data\_reader\_read\_all</a> | 从指定的URL读取全部数据。 |
#### data\_reader\_destroy 函数
-----------------------
* 函数功能:
> <p id="data_reader_t_data_reader_destroy">销毁reader对象。
* 函数原型:
```
ret_t data_reader_destroy (data_reader_t* reader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| reader | data\_reader\_t* | reader对象。 |
#### data\_reader\_get\_size 函数
-----------------------
* 函数功能:
> <p id="data_reader_t_data_reader_get_size">获取数据长度。
* 函数原型:
```
uint64_t data_reader_get_size (data_reader_t* reader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint64\_t | 返回数据长度。 |
| reader | data\_reader\_t* | reader对象。 |
#### data\_reader\_read 函数
-----------------------
* 函数功能:
> <p id="data_reader_t_data_reader_read">在指定位置读取数据。
* 函数原型:
```
int32_t data_reader_read (data_reader_t* reader, uint64_t offset, void* data, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回实际读取数据的长度。 |
| reader | data\_reader\_t* | reader对象。 |
| offset | uint64\_t | 偏移量。 |
| data | void* | 用于读取数据的缓冲区。 |
| size | uint32\_t | 最大读取数据长度。 |
#### data\_reader\_read\_all 函数
-----------------------
* 函数功能:
> <p id="data_reader_t_data_reader_read_all">从指定的URL读取全部数据。
* 函数原型:
```
void* data_reader_read_all (const char* url, uint32_t* size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | void* | 返回全部数据调用者需要调用TKMEM\_FREE释放返回值。 |
| url | const char* | URL。 |
| size | uint32\_t* | 返回数据长度。 |

View File

@ -0,0 +1,150 @@
## data\_writer\_factory\_t
### 概述
data writer工厂。
----------------------------------
### 函数
<p id="data_writer_factory_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#data_writer_factory_t_data_writer_factory">data\_writer\_factory</a> | 获取缺省的data writer工厂对象。 |
| <a href="#data_writer_factory_t_data_writer_factory_create">data\_writer\_factory\_create</a> | 创建data writer工厂对象。 |
| <a href="#data_writer_factory_t_data_writer_factory_create_writer">data\_writer\_factory\_create\_writer</a> | 创建指定类型的data writer对象。 |
| <a href="#data_writer_factory_t_data_writer_factory_destroy">data\_writer\_factory\_destroy</a> | 析构并释放data writer工厂对象。 |
| <a href="#data_writer_factory_t_data_writer_factory_register">data\_writer\_factory\_register</a> | 注册data writer创建函数。 |
| <a href="#data_writer_factory_t_data_writer_factory_set">data\_writer\_factory\_set</a> | 设置缺省的data writer工厂对象。 |
| <a href="#data_writer_factory_t_data_writer_file_create">data\_writer\_file\_create</a> | 创建基于文件的data writer。 |
#### data\_writer\_factory 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory">获取缺省的data writer工厂对象。
* 函数原型:
```
data_writer_factory_t* data_writer_factory ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_writer\_factory\_t* | 返回data writer工厂对象。 |
#### data\_writer\_factory\_create 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory_create">创建data writer工厂对象。
* 函数原型:
```
data_writer_factory_t* data_writer_factory_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_writer\_factory\_t* | 返回data writer工厂对象。 |
#### data\_writer\_factory\_create\_writer 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory_create_writer">创建指定类型的data writer对象。
* 函数原型:
```
data_writer_t* data_writer_factory_create_writer (data_writer_factory_t* factory, const char* url);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | data\_writer\_t* | 返回data writer对象。 |
| factory | data\_writer\_factory\_t* | data writer工厂对象。 |
| url | const char* | URL。 |
#### data\_writer\_factory\_destroy 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory_destroy">析构并释放data writer工厂对象。
* 函数原型:
```
ret_t data_writer_factory_destroy (data_writer_factory_t* factory);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_writer\_factory\_t* | data writer工厂对象。 |
#### data\_writer\_factory\_register 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory_register">注册data writer创建函数。
* 函数原型:
```
ret_t data_writer_factory_register (data_writer_factory_t* factory, const char* protocol, data_writer_create_t create);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_writer\_factory\_t* | writer工厂对象。 |
| protocol | const char* | 协议(如file)。 |
| create | data\_writer\_create\_t | data writer创建函数。 |
#### data\_writer\_factory\_set 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_factory_set">设置缺省的data writer工厂对象。
* 函数原型:
```
ret_t data_writer_factory_set (data_writer_factory_t* factory);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | data\_writer\_factory\_t* | data writer工厂对象。 |
#### data\_writer\_file\_create 函数
-----------------------
* 函数功能:
> <p id="data_writer_factory_t_data_writer_file_create">创建基于文件的data writer。
* 函数原型:
```
ret_t data_writer_file_create (data_writer_t* writer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| writer | data\_writer\_t* | writer对象。 |

View File

@ -0,0 +1,54 @@
## data\_writer\_t
### 概述
数据写入接口。
>用于抽象flash等外部设备。
----------------------------------
### 函数
<p id="data_writer_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#data_writer_t_data_writer_destroy">data\_writer\_destroy</a> | 销毁writer对象。 |
| <a href="#data_writer_t_data_writer_write">data\_writer\_write</a> | 在指定位置写入数据。 |
#### data\_writer\_destroy 函数
-----------------------
* 函数功能:
> <p id="data_writer_t_data_writer_destroy">销毁writer对象。
* 函数原型:
```
ret_t data_writer_destroy (data_writer_t* writer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| writer | data\_writer\_t* | writer对象。 |
#### data\_writer\_write 函数
-----------------------
* 函数功能:
> <p id="data_writer_t_data_writer_write">在指定位置写入数据。
* 函数原型:
```
int32_t data_writer_write (data_writer_t* writer, uint64_t offset, const void* data, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回实际读取数据的长度。 |
| writer | data\_writer\_t* | writer对象。 |
| offset | uint64\_t | 偏移量。 |
| data | const void* | 数据缓冲区。 |
| size | uint32\_t | 数据长度。 |

View File

@ -7,6 +7,9 @@ TK全局对象。
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#global_t_asset_loader_default_create">asset\_loader\_default\_create</a> | 创建缺省的资源加载器。 |
| <a href="#global_t_asset_loader_zip_create">asset\_loader\_zip\_create</a> | 创建zip资源加载器。 |
| <a href="#global_t_asset_loader_zip_create_with_reader">asset\_loader\_zip\_create\_with\_reader</a> | 创建zip资源加载器。 |
| <a href="#global_t_tk_get_pointer_x">tk\_get\_pointer\_x</a> | 获取全局指针的X坐标。 |
| <a href="#global_t_tk_get_pointer_y">tk\_get\_pointer\_y</a> | 获取全局指针的Y坐标。 |
| <a href="#global_t_tk_init">tk\_init</a> | 初始化TK。 |
@ -14,6 +17,63 @@ TK全局对象。
| <a href="#global_t_tk_quit">tk\_quit</a> | 退出TK事件主循环。 |
| <a href="#global_t_tk_run">tk\_run</a> | 进入TK事件主循环。 |
| <a href="#global_t_tk_set_lcd_orientation">tk\_set\_lcd\_orientation</a> | 设置屏幕的旋转方向(XXX:目前仅支持0度和90度)。 |
#### asset\_loader\_default\_create 函数
-----------------------
* 函数功能:
> <p id="global_t_asset_loader_default_create">创建缺省的资源加载器。
* 函数原型:
```
asset_loader_t* asset_loader_default_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | asset\_loader\_t* | 返回loader对象。 |
#### asset\_loader\_zip\_create 函数
-----------------------
* 函数功能:
> <p id="global_t_asset_loader_zip_create">创建zip资源加载器。
* 函数原型:
```
asset_loader_t* asset_loader_zip_create (const char* zipfile);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | asset\_loader\_t* | 返回loader对象。 |
| zipfile | const char* | zip文件名。 |
#### asset\_loader\_zip\_create\_with\_reader 函数
-----------------------
* 函数功能:
> <p id="global_t_asset_loader_zip_create_with_reader">创建zip资源加载器。
* 函数原型:
```
asset_loader_t* asset_loader_zip_create_with_reader (data_reader_t* reader, bool_t own_the_reader);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | asset\_loader\_t* | 返回loader对象。 |
| reader | data\_reader\_t* | reader对象。 |
| own\_the\_reader | bool\_t | 如果希望销毁loader时销毁reader请设置为TRUE。 |
#### tk\_get\_pointer\_x 函数
-----------------------

View File

@ -12,6 +12,9 @@
* 2.把每个字符与image(图片文件名前缀)映射成一个图片名。
* 3.最后把这些图片显示出来。
如果设置click\_add\_delta为非0那么点击时自动增加指定的增量值超过最大值时回到最小值,
或者值超过最小值时回到最大值。
image\_value\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均适用于image\_value\_t控件。
在xml中使用"image\_value"标签创建图片值控件。如:
@ -43,17 +46,30 @@ image_value_set_value(image_value, 100);
| -------- | ------------ |
| <a href="#image_value_t_image_value_cast">image\_value\_cast</a> | 转换为image_value对象(供脚本语言使用)。 |
| <a href="#image_value_t_image_value_create">image\_value\_create</a> | 创建image_value对象 |
| <a href="#image_value_t_image_value_set_click_add_delta">image\_value\_set\_click\_add\_delta</a> | 设置点击时加上的增量。 |
| <a href="#image_value_t_image_value_set_format">image\_value\_set\_format</a> | 设置格式。 |
| <a href="#image_value_t_image_value_set_image">image\_value\_set\_image</a> | 设置图片前缀。 |
| <a href="#image_value_t_image_value_set_max">image\_value\_set\_max</a> | 设置最大值。 |
| <a href="#image_value_t_image_value_set_min">image\_value\_set\_min</a> | 设置最小值。 |
| <a href="#image_value_t_image_value_set_value">image\_value\_set\_value</a> | 设置值。 |
### 属性
<p id="image_value_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#image_value_t_click_add_delta">click\_add\_delta</a> | float\_t | 点击时加上一个增量。 |
| <a href="#image_value_t_format">format</a> | char* | 数值到字符串转换时的格式,缺省为"%d"。 |
| <a href="#image_value_t_image">image</a> | char* | 图片名称的前缀。 |
| <a href="#image_value_t_max">max</a> | float\_t | 最大值(如果设置了click\_add\_delta到达最大值后回到最小值)。 |
| <a href="#image_value_t_min">min</a> | float\_t | 最小值(如果设置了click\_add\_delta到达最小值后回到最大值)。 |
| <a href="#image_value_t_value">value</a> | float\_t | 值。 |
### 事件
<p id="image_value_t_events">
| 事件名称 | 类型 | 说明 |
| -------- | ----- | ------- |
| EVT\_VALUE\_WILL\_CHANGE | event\_t | 值即将改变事件(click\_add\_delta为非0时点击触发)。 |
| EVT\_VALUE\_CHANGED | event\_t | 值改变事件(click\_add\_delta为非0时点击触发)。 |
#### image\_value\_cast 函数
-----------------------
@ -96,6 +112,26 @@ widget_t* image_value_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h);
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### image\_value\_set\_click\_add\_delta 函数
-----------------------
* 函数功能:
> <p id="image_value_t_image_value_set_click_add_delta">设置点击时加上的增量。
* 函数原型:
```
ret_t image_value_set_click_add_delta (widget_t* widget, float_t delta);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_value对象。 |
| delta | float\_t | 增量。 |
#### image\_value\_set\_format 函数
-----------------------
@ -136,6 +172,46 @@ ret_t image_value_set_image (widget_t* widget, const char* image);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_value对象。 |
| image | const char* | 图片前缀。 |
#### image\_value\_set\_max 函数
-----------------------
* 函数功能:
> <p id="image_value_t_image_value_set_max">设置最大值。
* 函数原型:
```
ret_t image_value_set_max (widget_t* widget, float_t max);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_max对象。 |
| max | float\_t | 最大值。 |
#### image\_value\_set\_min 函数
-----------------------
* 函数功能:
> <p id="image_value_t_image_value_set_min">设置最小值。
* 函数原型:
```
ret_t image_value_set_min (widget_t* widget, float_t min);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_min对象。 |
| min | float\_t | 最小值。 |
#### image\_value\_set\_value 函数
-----------------------
@ -156,6 +232,22 @@ ret_t image_value_set_value (widget_t* widget, float_t value);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_value对象。 |
| value | float\_t | 值。 |
#### click\_add\_delta 属性
-----------------------
> <p id="image_value_t_click_add_delta">点击时加上一个增量。
* 类型float\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### format 属性
-----------------------
> <p id="image_value_t_format">数值到字符串转换时的格式,缺省为"%d"。
@ -178,6 +270,38 @@ ret_t image_value_set_value (widget_t* widget, float_t value);
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### max 属性
-----------------------
> <p id="image_value_t_max">最大值(如果设置了click\_add\_delta到达最大值后回到最小值)。
* 类型float\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### min 属性
-----------------------
> <p id="image_value_t_min">最小值(如果设置了click\_add\_delta到达最小值后回到最大值)。
* 类型float\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -50,7 +50,7 @@ time\_clock一般不需要设置style。
| <a href="#mledit_t_max_lines">max\_lines</a> | uint32\_t | 最大行数。 |
| <a href="#mledit_t_readonly">readonly</a> | bool\_t | 编辑器是否为只读。 |
| <a href="#mledit_t_right_margin">right\_margin</a> | uint8\_t | 右边距。 |
| <a href="#mledit_t_scroll_line">scroll\_line</a> | float\_t | 鼠标一次滚动行数。 |
| <a href="#mledit_t_scroll_line">scroll\_line</a> | uint32\_t | 鼠标一次滚动行数。 |
| <a href="#mledit_t_tips">tips</a> | char* | 输入提示。 |
| <a href="#mledit_t_top_margin">top\_margin</a> | uint8\_t | 上边距。 |
| <a href="#mledit_t_wrap_word">wrap\_word</a> | bool\_t | 是否自动折行。 |
@ -327,7 +327,7 @@ ret_t mledit_set_wrap_word (widget_t* widget, bool_t wrap_word);
-----------------------
> <p id="mledit_t_scroll_line">鼠标一次滚动行数。
* 类型:float\_t
* 类型:uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |

View File

@ -29,6 +29,7 @@ mutable_image_set_prepare_image(image, get_camera_image, camera);
> 创建之后:
>
> 需要用mutable\_image\_set\_create\_image设置创建图片的回调函数。
> 需要用mutable\_image\_set\_prepare\_image设置准备图片的回调函数。
> 完整示例请参考:[mutable image demo](
@ -43,6 +44,7 @@ https://github.com/zlgopen/awtk-c-demos/blob/master/demos/mutable_image.c)
| -------- | ------------ |
| <a href="#mutable_image_t_mutable_image_cast">mutable\_image\_cast</a> | 转换为mutable_image对象(供脚本语言使用)。 |
| <a href="#mutable_image_t_mutable_image_create">mutable\_image\_create</a> | 创建mutable_image对象 |
| <a href="#mutable_image_t_mutable_image_set_create_image">mutable\_image\_set\_create\_image</a> | 设置create_image回调函数。 |
| <a href="#mutable_image_t_mutable_image_set_framebuffer">mutable\_image\_set\_framebuffer</a> | 设置framebuffer(当硬件支持多层合成时才用)。 |
| <a href="#mutable_image_t_mutable_image_set_prepare_image">mutable\_image\_set\_prepare\_image</a> | 设置prepare_image回调函数。 |
#### mutable\_image\_cast 函数
@ -87,6 +89,27 @@ widget_t* mutable_image_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### mutable\_image\_set\_create\_image 函数
-----------------------
* 函数功能:
> <p id="mutable_image_t_mutable_image_set_create_image">设置create_image回调函数。
* 函数原型:
```
ret_t mutable_image_set_create_image (widget_t* widget, mutable_image_create_image_t create_image, void* create_image_ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | mutable\_image对象。 |
| create\_image | mutable\_image\_create\_image\_t | 创建图片的回调函数。 |
| create\_image\_ctx | void* | create\_image回调函数的上下文。 |
#### mutable\_image\_set\_framebuffer 函数
-----------------------

View File

@ -19,6 +19,7 @@
| <a href="#path_t_path_is_abs">path\_is\_abs</a> | 判断路径是否为绝对路径。 |
| <a href="#path_t_path_normalize">path\_normalize</a> | 规范路径字符形式。 |
| <a href="#path_t_path_replace_basename">path\_replace\_basename</a> | 替换文件名。 |
| <a href="#path_t_path_replace_extname">path\_replace\_extname</a> | 替换文件扩展名。 |
#### path\_abs 函数
-----------------------
@ -263,3 +264,25 @@ ret_t path_replace_basename (char* result, uint32_t size, char* filename, char*
| size | uint32\_t | 缓冲区大小。 |
| filename | char* | 原始文件路径。 |
| basename | char* | 替换后的文件名。 |
#### path\_replace\_extname 函数
-----------------------
* 函数功能:
> <p id="path_t_path_replace_extname">替换文件扩展名。
* 函数原型:
```
ret_t path_replace_extname (char* result, uint32_t size, char* filename, char* extname);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| result | char* | 用于返回结果。 |
| size | uint32\_t | 缓冲区大小。 |
| filename | char* | 原始文件路径。 |
| extname | char* | 替换后的文件扩展名。 |

View File

@ -47,6 +47,7 @@ default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/st
| <a href="#progress_circle_t_progress_circle_cast">progress\_circle\_cast</a> | 转换为progress_circle对象(供脚本语言使用)。 |
| <a href="#progress_circle_t_progress_circle_create">progress\_circle\_create</a> | 创建progress_circle对象 |
| <a href="#progress_circle_t_progress_circle_set_counter_clock_wise">progress\_circle\_set\_counter\_clock\_wise</a> | 设置是否为逆时针方向。 |
| <a href="#progress_circle_t_progress_circle_set_line_cap">progress\_circle\_set\_line\_cap</a> | 设置线帽类型。 |
| <a href="#progress_circle_t_progress_circle_set_line_width">progress\_circle\_set\_line\_width</a> | 设置环线的厚度。 |
| <a href="#progress_circle_t_progress_circle_set_max">progress\_circle\_set\_max</a> | 设置最大值。 |
| <a href="#progress_circle_t_progress_circle_set_show_text">progress\_circle\_set\_show\_text</a> | 设置是否显示文本。 |
@ -59,6 +60,7 @@ default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/st
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#progress_circle_t_counter_clock_wise">counter\_clock\_wise</a> | bool\_t | 是否为逆时针方向(缺省为FALSE)。 |
| <a href="#progress_circle_t_line_cap">line\_cap</a> | char* | 线帽类型(round:圆头square:方头)。 |
| <a href="#progress_circle_t_line_width">line\_width</a> | uint32\_t | 环线的厚度(缺省为8)。 |
| <a href="#progress_circle_t_max">max</a> | uint32\_t | 最大值(缺省为100)。 |
| <a href="#progress_circle_t_show_text">show\_text</a> | bool\_t | 是否显示文本(缺省为TRUE)。 |
@ -134,6 +136,26 @@ ret_t progress_circle_set_counter_clock_wise (widget_t* widget, bool_t counter_c
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| counter\_clock\_wise | bool\_t | 是否为逆时针方向。 |
#### progress\_circle\_set\_line\_cap 函数
-----------------------
* 函数功能:
> <p id="progress_circle_t_progress_circle_set_line_cap">设置线帽类型。
* 函数原型:
```
ret_t progress_circle_set_line_cap (widget_t* widget, const char* line_cap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| line\_cap | const char* | 线帽类型(round:圆头square:方头)。。 |
#### progress\_circle\_set\_line\_width 函数
-----------------------
@ -260,6 +282,22 @@ ret_t progress_circle_set_value (widget_t* widget, float_t value);
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### line\_cap 属性
-----------------------
> <p id="progress_circle_t_line_cap">线帽类型(round:圆头square:方头)。
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -66,7 +66,7 @@ self_layouter_t* self_layouter_factory_create_layouter (self_layouter_factory_t*
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | self\_layouter\_t* | 返回窗口动画对象。 |
| 返回值 | self\_layouter\_t* | 返回控件自身布局算法对象。 |
| factory | self\_layouter\_factory\_t* | 控件自身布局算法工厂对象。 |
| type | const char* | 类型。 |
#### self\_layouter\_factory\_destroy 函数
@ -106,7 +106,7 @@ ret_t self_layouter_factory_register (self_layouter_factory_t* factory, const ch
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| factory | self\_layouter\_factory\_t* | highlighter工厂对象。 |
| factory | self\_layouter\_factory\_t* | layouter工厂对象。 |
| type | const char* | 控件自身布局算法类型。 |
| create | self\_layouter\_create\_t | 控件自身布局算法创建函数。 |
#### self\_layouter\_factory\_set 函数

152
docs/manual/socket.md Normal file
View File

@ -0,0 +1,152 @@
## socket
### 概述
----------------------------------
### 函数
<p id="socket_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#socket_socket_bind">socket\_bind</a> | 绑定到指定端口。 |
| <a href="#socket_socket_bind">socket\_bind</a> | 等待数据。 |
| <a href="#socket_socket_close">socket\_close</a> | 关闭socket句柄。 |
| <a href="#socket_socket_deinit">socket\_deinit</a> | tcp/udp 平台~初始化。 |
| <a href="#socket_socket_init">socket\_init</a> | tcp/udp 平台初始化。 |
| <a href="#socket_socket_set_blocking">socket\_set\_blocking</a> | 设置为阻塞或非阻塞模式。 |
| <a href="#socket_socket_set_blocking">socket\_set\_blocking</a> | 解析主机名并初始化addr对象。 |
#### socket\_bind 函数
-----------------------
* 函数功能:
> <p id="socket_socket_bind">绑定到指定端口。
* 函数原型:
```
ret_t socket_bind (int sock, int port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| sock | int | socket句柄。 |
| port | int | 端口号。 |
#### socket\_bind 函数
-----------------------
* 函数功能:
> <p id="socket_socket_bind">等待数据。
* 函数原型:
```
ret_t socket_bind (int sock, uint32_t timeout_ms);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| sock | int | socket句柄。 |
| timeout\_ms | uint32\_t | 等待时间(ms)。 |
#### socket\_close 函数
-----------------------
* 函数功能:
> <p id="socket_socket_close">关闭socket句柄。
* 函数原型:
```
ret_t socket_close (int sock);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| sock | int | socket句柄。 |
#### socket\_deinit 函数
-----------------------
* 函数功能:
> <p id="socket_socket_deinit">tcp/udp 平台~初始化。
* 函数原型:
```
ret_t socket_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### socket\_init 函数
-----------------------
* 函数功能:
> <p id="socket_socket_init">tcp/udp 平台初始化。
* 函数原型:
```
ret_t socket_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### socket\_set\_blocking 函数
-----------------------
* 函数功能:
> <p id="socket_socket_set_blocking">设置为阻塞或非阻塞模式。
* 函数原型:
```
ret_t socket_set_blocking (int sock, bool_t blocking);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| sock | int | socket句柄。 |
| blocking | bool\_t | 是否阻塞。 |
#### socket\_set\_blocking 函数
-----------------------
* 函数功能:
> <p id="socket_socket_set_blocking">解析主机名并初始化addr对象。
* 函数原型:
```
struct sockaddr* socket_set_blocking (int sock, bool_t , struct sockaddr_in* addr);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | struct sockaddr* | 返回地址对象。 |
| sock | int | socket句柄。 |
| | bool\_t | g |
| addr | struct sockaddr\_in* | 地址对象。 |

View File

@ -12,6 +12,9 @@ style常量定义。### 常量
| STYLE\_ID\_FONT\_SIZE | 字体大小。 |
| STYLE\_ID\_FONT\_STYLE | 字体风格(粗体、斜体等)。 |
| STYLE\_ID\_TEXT\_COLOR | 文本颜色。 |
| STYLE\_ID\_HIGHLIGHT\_FONT\_NAME | 高亮文本的字体名称。 |
| STYLE\_ID\_HIGHLIGHT\_FONT\_SIZE | 高亮文本的字体大小。 |
| STYLE\_ID\_HIGHLIGHT\_TEXT\_COLOR | 高亮文本的文本颜色。 |
| STYLE\_ID\_TIPS\_TEXT\_COLOR | 提示文本颜色。 |
| STYLE\_ID\_TEXT\_ALIGN\_H | 文本水平对齐的方式。 |
| STYLE\_ID\_TEXT\_ALIGN\_V | 文本垂直对齐的方式。 |

70
docs/manual/tk_dl_t.md Normal file
View File

@ -0,0 +1,70 @@
## tk\_dl\_t
### 概述
动态链接库对象。
----------------------------------
### 函数
<p id="tk_dl_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#tk_dl_t_tk_dl_close">tk\_dl\_close</a> | 关闭dl对象。 |
| <a href="#tk_dl_t_tk_dl_open">tk\_dl\_open</a> | 打开动态链接库。 |
| <a href="#tk_dl_t_tk_dl_sym">tk\_dl\_sym</a> | 获取指定名称函数的地址。 |
#### tk\_dl\_close 函数
-----------------------
* 函数功能:
> <p id="tk_dl_t_tk_dl_close">关闭dl对象。
* 函数原型:
```
ret_t tk_dl_close (tk_dl_t* dl);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| dl | tk\_dl\_t* | dl对象。 |
#### tk\_dl\_open 函数
-----------------------
* 函数功能:
> <p id="tk_dl_t_tk_dl_open">打开动态链接库。
* 函数原型:
```
tk_dl_t* tk_dl_open (const char* filename);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_dl\_t* | 动态链接库对象。 |
| filename | const char* | 文件名。 |
#### tk\_dl\_sym 函数
-----------------------
* 函数功能:
> <p id="tk_dl_t_tk_dl_sym">获取指定名称函数的地址。
* 函数原型:
```
void* tk_dl_sym (tk_dl_t* dl, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | void* | 返回函数的地址。 |
| dl | tk\_dl\_t* | dl对象。 |
| name | const char* | 函数名。 |

111
docs/manual/udp_t.md Normal file
View File

@ -0,0 +1,111 @@
## udp\_t
### 概述
----------------------------------
### 函数
<p id="udp_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#udp_t_tcp_accept">tcp\_accept</a> | 监听指定端口成功返回sock句柄。 |
| <a href="#udp_t_tcp_connect">tcp\_connect</a> | 连接到指定服务器。 |
| <a href="#udp_t_tcp_listen">tcp\_listen</a> | 监听指定端口成功返回sock句柄。 |
| <a href="#udp_t_udp_connect">udp\_connect</a> | 连接到指定服务器。 |
| <a href="#udp_t_udp_listen">udp\_listen</a> | 监听指定端口成功返回sock句柄。 |
#### tcp\_accept 函数
-----------------------
* 函数功能:
> <p id="udp_t_tcp_accept">监听指定端口成功返回sock句柄。
* 函数原型:
```
int tcp_accept (int sock);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回sock句柄。 |
| sock | int | socket句柄。 |
#### tcp\_connect 函数
-----------------------
* 函数功能:
> <p id="udp_t_tcp_connect">连接到指定服务器。
* 函数原型:
```
int tcp_connect (const char* host, int port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回sock句柄。 |
| host | const char* | 主机名或IP地址。 |
| port | int | 端口号。 |
#### tcp\_listen 函数
-----------------------
* 函数功能:
> <p id="udp_t_tcp_listen">监听指定端口成功返回sock句柄。
* 函数原型:
```
int tcp_listen (int port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回sock句柄。 |
| port | int | 端口号。 |
#### udp\_connect 函数
-----------------------
* 函数功能:
> <p id="udp_t_udp_connect">连接到指定服务器。
* 函数原型:
```
int udp_connect (const char* host, int port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回sock句柄。 |
| host | const char* | 主机名或IP地址。 |
| port | int | 端口号。 |
#### udp\_listen 函数
-----------------------
* 函数功能:
> <p id="udp_t_udp_listen">监听指定端口成功返回sock句柄。
* 函数原型:
```
int udp_listen (int port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回sock句柄。 |
| port | int | 端口号。 |

View File

@ -0,0 +1,9 @@
## vgcanvas\_line\_cap\_t
### 概述
线帽类型。### 常量
<p id="vgcanvas_line_cap_t_consts">
| 名称 | 说明 |
| -------- | ------- |
| VGCANVAS\_LINE\_CAP\_ROUND | 圆头。 |
| VGCANVAS\_LINE\_CAP\_SQUARE | 方头。 |

View File

@ -0,0 +1,10 @@
## vgcanvas\_line\_join\_t
### 概述
线条连接类型。### 常量
<p id="vgcanvas_line_join_t_consts">
| 名称 | 说明 |
| -------- | ------- |
| VGCANVAS\_LINE\_JOIN\_ROUND | round。 |
| VGCANVAS\_LINE\_JOIN\_BEVEL | bevel。 |
| VGCANVAS\_LINE\_JOIN\_MITTER | mitter。 |

View File

@ -10,6 +10,8 @@
| WIDGET\_PROP\_Y | Y坐标。 |
| WIDGET\_PROP\_W | 宽度。 |
| WIDGET\_PROP\_H | 高度。 |
| WIDGET\_PROP\_CARET\_X | caret x。 |
| WIDGET\_PROP\_CARET\_Y | caret y。 |
| WIDGET\_PROP\_DIRTY\_RECT\_TOLERANCE | 脏矩形超出控件本身大小的最大范围。 |
| WIDGET\_PROP\_CANVAS | Canvas。 |
| WIDGET\_PROP\_LOCALIZE\_OPTIONS | Canvas。 |

View File

@ -65,6 +65,7 @@ widget_on(button, EVT_CLICK, on_click, NULL);
| <a href="#widget_t_widget_destroy_animator">widget\_destroy\_animator</a> | 销毁动画。 |
| <a href="#widget_t_widget_destroy_children">widget\_destroy\_children</a> | 销毁全部子控件。 |
| <a href="#widget_t_widget_dispatch">widget\_dispatch</a> | 分发一个事件。 |
| <a href="#widget_t_widget_dispatch_recursive">widget\_dispatch\_recursive</a> | 分发一个事件控件本身及所有子控件。 |
| <a href="#widget_t_widget_equal">widget\_equal</a> | 判断两个widget是否相同。 |
| <a href="#widget_t_widget_find_animator">widget\_find\_animator</a> | 查找指定名称的动画。 |
| <a href="#widget_t_widget_foreach">widget\_foreach</a> | 遍历当前控件及子控件。 |
@ -377,7 +378,7 @@ widget_t* widget_cast (widget_t* widget);
* 函数原型:
```
widget_t* widget_child (widget_t* widget, char* name);
widget_t* widget_child (widget_t* widget, const char* name);
```
* 参数说明:
@ -386,7 +387,7 @@ widget_t* widget_child (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 子控件或NULL。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 子控件的名称。 |
| name | const char* | 子控件的名称。 |
#### widget\_child\_on 函数
-----------------------
@ -398,7 +399,7 @@ widget_t* widget_child (widget_t* widget, char* name);
* 函数原型:
```
int32_t widget_child_on (widget_t* widget, char* name, event_type_t type, event_func_t on_event, void* ctx);
int32_t widget_child_on (widget_t* widget, const char* name, event_type_t type, event_func_t on_event, void* ctx);
```
* 参数说明:
@ -407,7 +408,7 @@ int32_t widget_child_on (widget_t* widget, char* name, event_type_t type, event_
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回id用于widget\_off。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 子控件的名称。 |
| name | const char* | 子控件的名称。 |
| type | event\_type\_t | 事件类型。 |
| on\_event | event\_func\_t | 事件处理函数。 |
| ctx | void* | 事件处理函数上下文。 |
@ -529,7 +530,7 @@ ret_t widget_destroy (widget_t* widget);
* 函数原型:
```
ret_t widget_destroy_animator (widget_t* widget, char* name);
ret_t widget_destroy_animator (widget_t* widget, const char* name);
```
* 参数说明:
@ -538,7 +539,7 @@ ret_t widget_destroy_animator (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 动画名称。 |
| name | const char* | 动画名称。 |
#### widget\_destroy\_children 函数
-----------------------
@ -573,6 +574,26 @@ ret_t widget_dispatch (widget_t* widget, event_t* e);
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| e | event\_t* | 事件。 |
#### widget\_dispatch\_recursive 函数
-----------------------
* 函数功能:
> <p id="widget_t_widget_dispatch_recursive">分发一个事件控件本身及所有子控件。
* 函数原型:
```
ret_t widget_dispatch_recursive (widget_t* widget, event_t* e);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
@ -608,7 +629,7 @@ bool_t widget_equal (widget_t* widget, widget_t* other);
* 函数原型:
```
widget_animator_t* widget_find_animator (widget_t* widget, char* name);
widget_animator_t* widget_find_animator (widget_t* widget, const char* name);
```
* 参数说明:
@ -617,7 +638,7 @@ widget_animator_t* widget_find_animator (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | widget\_animator\_t* | 成功返回动画对象失败返回NULL。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 动画名称。 |
| name | const char* | 动画名称。 |
#### widget\_foreach 函数
-----------------------
@ -1297,7 +1318,7 @@ ret_t widget_load_image (widget_t* widget, const char* name, bitmap_t* bitmap);
* 函数原型:
```
widget_t* widget_lookup (widget_t* widget, char* name, bool_t recursive);
widget_t* widget_lookup (widget_t* widget, const char* name, bool_t recursive);
```
* 参数说明:
@ -1306,7 +1327,7 @@ widget_t* widget_lookup (widget_t* widget, char* name, bool_t recursive);
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 子控件或NULL。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 子控件的名称。 |
| name | const char* | 子控件的名称。 |
| recursive | bool\_t | 是否递归查找全部子控件。 |
#### widget\_lookup\_by\_type 函数
-----------------------
@ -1318,7 +1339,7 @@ widget_t* widget_lookup (widget_t* widget, char* name, bool_t recursive);
* 函数原型:
```
widget_t* widget_lookup_by_type (widget_t* widget, char* type, bool_t recursive);
widget_t* widget_lookup_by_type (widget_t* widget, const char* type, bool_t recursive);
```
* 参数说明:
@ -1327,7 +1348,7 @@ widget_t* widget_lookup_by_type (widget_t* widget, char* type, bool_t recursive)
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 子控件或NULL。 |
| widget | widget\_t* | 控件对象。 |
| type | char* | 子控件的名称。 |
| type | const char* | 子控件的名称。 |
| recursive | bool\_t | 是否递归查找全部子控件。 |
#### widget\_move 函数
-----------------------
@ -1524,7 +1545,7 @@ int32_t widget_on_with_tag (widget_t* widget, event_type_t type, event_func_t on
* 函数原型:
```
ret_t widget_pause_animator (widget_t* widget, char* name);
ret_t widget_pause_animator (widget_t* widget, const char* name);
```
* 参数说明:
@ -1533,7 +1554,7 @@ ret_t widget_pause_animator (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 动画名称。 |
| name | const char* | 动画名称。 |
#### widget\_ref 函数
-----------------------
@ -1832,7 +1853,7 @@ ret_t widget_set_focused (widget_t* widget, bool_t focused);
* 函数原型:
```
ret_t widget_set_name (widget_t* widget, char* name);
ret_t widget_set_name (widget_t* widget, const char* name);
```
* 参数说明:
@ -1841,7 +1862,7 @@ ret_t widget_set_name (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 名称。 |
| name | const char* | 名称。 |
#### widget\_set\_opacity 函数
-----------------------
@ -1874,7 +1895,7 @@ ret_t widget_set_opacity (widget_t* widget, uint8_t opacity);
* 函数原型:
```
ret_t widget_set_pointer_cursor (widget_t* widget, char* cursor);
ret_t widget_set_pointer_cursor (widget_t* widget, const char* cursor);
```
* 参数说明:
@ -1883,7 +1904,7 @@ ret_t widget_set_pointer_cursor (widget_t* widget, char* cursor);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| cursor | char* | 图片名称(无扩展名)。 |
| cursor | const char* | 图片名称(无扩展名)。 |
#### widget\_set\_prop 函数
-----------------------
@ -2189,7 +2210,7 @@ ret_t widget_set_text_utf8 (widget_t* widget, const char* text);
* 函数原型:
```
ret_t widget_set_theme (widget_t* widget, char* name);
ret_t widget_set_theme (widget_t* widget, const char* name);
```
* 参数说明:
@ -2198,7 +2219,7 @@ ret_t widget_set_theme (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 主题的名称。 |
| name | const char* | 主题的名称。 |
#### widget\_set\_tr\_text 函数
-----------------------
@ -2209,7 +2230,7 @@ ret_t widget_set_theme (widget_t* widget, char* name);
* 函数原型:
```
ret_t widget_set_tr_text (widget_t* widget, char* text);
ret_t widget_set_tr_text (widget_t* widget, const char* text);
```
* 参数说明:
@ -2218,7 +2239,7 @@ ret_t widget_set_tr_text (widget_t* widget, char* text);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| text | char* | 文本。 |
| text | const char* | 文本。 |
#### widget\_set\_value 函数
-----------------------
@ -2321,7 +2342,7 @@ ret_t widget_start_animator (widget_t* widget, const char* name);
* 函数原型:
```
ret_t widget_stop_animator (widget_t* widget, char* name);
ret_t widget_stop_animator (widget_t* widget, const char* name);
```
* 参数说明:
@ -2330,7 +2351,7 @@ ret_t widget_stop_animator (widget_t* widget, char* name);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| name | char* | 动画名称。 |
| name | const char* | 动画名称。 |
#### widget\_take\_snapshot 函数
-----------------------
@ -2545,7 +2566,7 @@ ret_t widget_unref (widget_t* widget);
* 函数原型:
```
ret_t widget_use_style (widget_t* widget, char* style);
ret_t widget_use_style (widget_t* widget, const char* style);
```
* 参数说明:
@ -2554,7 +2575,7 @@ ret_t widget_use_style (widget_t* widget, char* style);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| style | char* | style的名称。 |
| style | const char* | style的名称。 |
#### animation 属性
-----------------------
> <p id="widget_t_animation">动画参数。请参考[控件动画](https://github.com/zlgopen/awtk/blob/master/docs/widget_animator.md)