regen docs

This commit is contained in:
lixianjing 2022-12-05 12:10:53 +08:00
parent 265f8f3a16
commit 6997e1b2ad
377 changed files with 12851 additions and 1287 deletions

View File

@ -0,0 +1,321 @@
## action\_darray\_thread\_t
### 概述
执行action的线程。
> 每个线程都有一个action darray可以是共享的darray也可以是私有的darray。
----------------------------------
### 函数
<p id="action_darray_thread_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#action_darray_thread_t_action_darray_thread_create">action\_darray\_thread\_create</a> | 创建action_darray_thread对象。 |
| <a href="#action_darray_thread_t_action_darray_thread_create_ex">action\_darray\_thread\_create\_ex</a> | 创建action_darray_thread对象。 |
| <a href="#action_darray_thread_t_action_darray_thread_create_with_darray">action\_darray\_thread\_create\_with\_darray</a> | 创建action_darray_thread对象。 |
| <a href="#action_darray_thread_t_action_darray_thread_create_with_darray_ex">action\_darray\_thread\_create\_with\_darray\_ex</a> | 创建action_darray_thread对象。 |
| <a href="#action_darray_thread_t_action_darray_thread_destroy">action\_darray\_thread\_destroy</a> | 销毁。 |
| <a href="#action_darray_thread_t_action_darray_thread_exec">action\_darray\_thread\_exec</a> | 让线程执行action。 |
| <a href="#action_darray_thread_t_action_darray_thread_set_on_idle">action\_darray\_thread\_set\_on\_idle</a> | 设置空闲时的回调函数。 |
| <a href="#action_darray_thread_t_action_darray_thread_set_on_quit">action\_darray\_thread\_set\_on\_quit</a> | 设置退出时的回调函数。 |
| <a href="#action_darray_thread_t_action_darray_thread_set_strategy">action\_darray\_thread\_set\_strategy</a> | 设置策略 |
| <a href="#action_darray_thread_t_action_queue_create">action\_queue\_create</a> | 创建action_queue对象。 |
| <a href="#action_darray_thread_t_action_queue_destroy">action\_queue\_destroy</a> | 销毁。 |
| <a href="#action_darray_thread_t_action_queue_recv">action\_queue\_recv</a> | 接收一个请求。 |
| <a href="#action_darray_thread_t_action_queue_send">action\_queue\_send</a> | 发送一个请求。 |
### 属性
<p id="action_darray_thread_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#action_darray_thread_t_darray">darray</a> | waitable\_action\_darray\_t* | action darray。 |
| <a href="#action_darray_thread_t_executed_actions_nr">executed\_actions\_nr</a> | uint32\_t | 已经执行action的个数。 |
| <a href="#action_darray_thread_t_thread">thread</a> | tk\_thread\_t* | 线程对象。 |
#### action\_darray\_thread\_create 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_create">创建action_darray_thread对象。
* 函数原型:
```
action_darray_thread_t* action_darray_thread_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
#### action\_darray\_thread\_create\_ex 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_create_ex">创建action_darray_thread对象。
* 函数原型:
```
action_darray_thread_t* action_darray_thread_create_ex (const char* name, uint32_t stack_size, tk_thread_priority_t priority);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| name | const char* | 名称。 |
| stack\_size | uint32\_t | 栈的大小。 |
| priority | tk\_thread\_priority\_t | 优先级。 |
#### action\_darray\_thread\_create\_with\_darray 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_create_with_darray">创建action_darray_thread对象。
* 函数原型:
```
action_darray_thread_t* action_darray_thread_create_with_darray (waitable_action_darray_t* darray);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| darray | waitable\_action\_darray\_t* | darray对象。 |
#### action\_darray\_thread\_create\_with\_darray\_ex 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_create_with_darray_ex">创建action_darray_thread对象。
* 函数原型:
```
action_darray_thread_t* action_darray_thread_create_with_darray_ex (waitable_action_darray_t* darray, const char* name, uint32_t stack_size, tk_thread_priority_t priority);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| darray | waitable\_action\_darray\_t* | darray对象。 |
| name | const char* | 名称。 |
| stack\_size | uint32\_t | 栈的大小。 |
| priority | tk\_thread\_priority\_t | 优先级。 |
#### action\_darray\_thread\_destroy 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_destroy">销毁。
* 函数原型:
```
ret_t action_darray_thread_destroy (action_darray_thread_t* thread);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| thread | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
#### action\_darray\_thread\_exec 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_exec">让线程执行action。
* 函数原型:
```
ret_t action_darray_thread_exec (action_darray_thread_t* thread, qaction_t* action);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| thread | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| action | qaction\_t* | action对象。 |
#### action\_darray\_thread\_set\_on\_idle 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_set_on_idle">设置空闲时的回调函数。
* 函数原型:
```
ret_t action_darray_thread_set_on_idle (action_darray_thread_t* thread, action_darray_thread_on_idle_t on_idle, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| thread | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| on\_idle | action\_darray\_thread\_on\_idle\_t | 空闲时的回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### action\_darray\_thread\_set\_on\_quit 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_set_on_quit">设置退出时的回调函数。
* 函数原型:
```
ret_t action_darray_thread_set_on_quit (action_darray_thread_t* thread, action_darray_thread_on_quit_t on_quit, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| thread | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| on\_quit | action\_darray\_thread\_on\_quit\_t | 退出时的回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### action\_darray\_thread\_set\_strategy 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_darray_thread_set_strategy">设置策略
* 函数原型:
```
ret_t action_darray_thread_set_strategy (action_darray_thread_t* thread, action_darray_thread_strategy_t strategy);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回 ret\_t值 |
| thread | action\_darray\_thread\_t* | action\_darray\_thread对象。 |
| strategy | action\_darray\_thread\_strategy\_t | 策略 |
#### action\_queue\_create 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_queue_create">创建action_queue对象。
* 函数原型:
```
action_queue_t* action_queue_create (uint32_t capacity);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | action\_queue\_t* | action\_queue对象。 |
| capacity | uint32\_t | action的容量。 |
#### action\_queue\_destroy 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_queue_destroy">销毁。
* 函数原型:
```
ret_t action_queue_destroy (action_queue_t* q);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| q | action\_queue\_t* | action\_queue对象。 |
#### action\_queue\_recv 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_queue_recv">接收一个请求。
* 函数原型:
```
ret_t action_queue_recv (action_queue_t* q, qaction_t** action);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| q | action\_queue\_t* | action\_queue对象。 |
| action | qaction\_t** | 用于返回action对象。 |
#### action\_queue\_send 函数
-----------------------
* 函数功能:
> <p id="action_darray_thread_t_action_queue_send">发送一个请求。
* 函数原型:
```
ret_t action_queue_send (action_queue_t* q, qaction_t* action);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| q | action\_queue\_t* | action\_queue对象。 |
| action | qaction\_t* | action对象。 |
#### darray 属性
-----------------------
> <p id="action_darray_thread_t_darray">action darray。
* 类型waitable\_action\_darray\_t*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### executed\_actions\_nr 属性
-----------------------
> <p id="action_darray_thread_t_executed_actions_nr">已经执行action的个数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### thread 属性
-----------------------
> <p id="action_darray_thread_t_thread">线程对象。
* 类型tk\_thread\_t*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -41,6 +41,7 @@ widget_t* app_bar = app_bar_create(win, 0, 0, 320, 30);
| -------- | ------------ |
| <a href="#app_bar_t_app_bar_cast">app\_bar\_cast</a> | 转换为app_bar对象(供脚本语言使用)。 |
| <a href="#app_bar_t_app_bar_create">app\_bar\_create</a> | 创建app_bar对象 |
| <a href="#app_bar_t_app_bar_get_widget_vtable">app\_bar\_get\_widget\_vtable</a> | 获取 app_bar 虚表。 |
#### app\_bar\_cast 函数
-----------------------
@ -83,3 +84,21 @@ widget_t* app_bar_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 | 高度 |
#### app\_bar\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="app_bar_t_app_bar_get_widget_vtable">获取 app_bar 虚表。
* 函数原型:
```
const widget_vtable_t* app_bar_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 app\_bar 虚表。 |

View File

@ -148,14 +148,14 @@ double app_conf_get_double (const char* key, double defval);
* 函数原型:
```
object_t* app_conf_get_instance ();
tk_object_t* app_conf_get_instance ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回app\_conf实例。 |
| 返回值 | tk\_object\_t* | 返回app\_conf实例。 |
#### app\_conf\_get\_int 函数
-----------------------
@ -420,7 +420,7 @@ ret_t app_conf_set_double (const char* key, double v);
* 函数原型:
```
ret_t app_conf_set_instance (object_t* );
ret_t app_conf_set_instance (tk_object_t* );
```
* 参数说明:
@ -428,7 +428,7 @@ ret_t app_conf_set_instance (object_t* );
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| | object\_t* | 。 |
| | tk\_object\_t* | 。 |
#### app\_conf\_set\_int 函数
-----------------------

View File

@ -49,6 +49,7 @@ ui UI描述数据。
| <a href="#assets_manager_t_assets_manager_find_in_cache">assets\_manager\_find\_in\_cache</a> | 在资源管理器的缓存中查找指定的资源(不引用)。 |
| <a href="#assets_manager_t_assets_manager_get_res_root">assets\_manager\_get\_res\_root</a> | 获取资源所在的目录(其下目录结构请参考demos)。 |
| <a href="#assets_manager_t_assets_manager_init">assets\_manager\_init</a> | 初始化资源管理器。 |
| <a href="#assets_manager_t_assets_manager_is_save_assets_list">assets\_manager\_is\_save\_assets\_list</a> | 检查指定类型是否需要保存。 |
| <a href="#assets_manager_t_assets_manager_load">assets\_manager\_load</a> | 从文件系统中加载指定的资源并缓存到内存中。在定义了宏WITH\_FS\_RES时才生效。 |
| <a href="#assets_manager_t_assets_manager_load_ex">assets\_manager\_load\_ex</a> | 从文件系统中加载指定的资源并缓存到内存中。在定义了宏WITH\_FS\_RES时才生效。 |
| <a href="#assets_manager_t_assets_manager_load_file">assets\_manager\_load\_file</a> | 获取path里的资源。 |
@ -58,6 +59,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_fallback_load_asset">assets\_manager\_set\_fallback\_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)。 |
@ -88,6 +90,7 @@ assets_manager_t* assets_manager ();
* 函数功能:
> <p id="assets_manager_t_assets_manager_add">向资源管理器中增加一个资源。
备注:同一份资源多次调用会出现缓存叠加的问题,导致内存泄露
* 函数原型:
@ -108,6 +111,7 @@ ret_t assets_manager_add (assets_manager_t* am, asset_info_t info);
* 函数功能:
> <p id="assets_manager_t_assets_manager_add_data">向资源管理器中增加一个资源data。
备注:同一份资源多次调用会出现缓存叠加的问题,导致内存泄露
* 函数原型:
@ -304,12 +308,32 @@ assets_manager_t* assets_manager_init (assets_manager_t* am, uint32_t init_nr);
| 返回值 | assets\_manager\_t* | 返回asset manager对象。 |
| am | assets\_manager\_t* | asset manager对象。 |
| init\_nr | uint32\_t | 预先分配资源的个数。 |
#### assets\_manager\_is\_save\_assets\_list 函数
-----------------------
* 函数功能:
> <p id="assets_manager_t_assets_manager_is_save_assets_list">检查指定类型是否需要保存。
* 函数原型:
```
bool_t assets_manager_is_save_assets_list (asset_type_t type);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示需要保持否则不需要保存。 |
| type | asset\_type\_t | 资源类型。 |
#### assets\_manager\_load 函数
-----------------------
* 函数功能:
> <p id="assets_manager_t_assets_manager_load">从文件系统中加载指定的资源并缓存到内存中。在定义了宏WITH\_FS\_RES时才生效。
备注:内部使用的,如果是加载资源的话,建议使用 assets_manager_ref 函数。
* 函数原型:
@ -331,11 +355,12 @@ asset_info_t* assets_manager_load (assets_manager_t* am, asset_type_t type, cons
* 函数功能:
> <p id="assets_manager_t_assets_manager_load_ex">从文件系统中加载指定的资源并缓存到内存中。在定义了宏WITH\_FS\_RES时才生效。
备注:内部使用的,如果是加载资源的话,建议使用 assets_manager_ref_ex 函数。
* 函数原型:
```
asset_info_t* assets_manager_load_ex (assets_manager_t* am, asset_type_t type, asset_type_t type, char* name);
asset_info_t* assets_manager_load_ex (assets_manager_t* am, asset_type_t type, uint16_t subtype, char* name);
```
* 参数说明:
@ -345,7 +370,7 @@ asset_info_t* assets_manager_load_ex (assets_manager_t* am, asset_type_t type, a
| 返回值 | asset\_info\_t* | 返回资源。 |
| am | assets\_manager\_t* | asset manager对象。 |
| type | asset\_type\_t | 资源的类型。 |
| type | asset\_type\_t | 资源的子类型。 |
| subtype | uint16\_t | 资源的子类型。 |
| name | char* | 资源的名称。 |
#### assets\_manager\_load\_file 函数
-----------------------
@ -374,6 +399,7 @@ asset_info_t* assets_manager_load_file (assets_manager_t* am, asset_type_t type,
* 函数功能:
> <p id="assets_manager_t_assets_manager_preload">从文件系统中加载指定的资源并缓存到内存中。在定义了宏WITH\_FS\_RES时才生效。
备注:内部使用的,不建议用户自行调用。
* 函数原型:
@ -497,6 +523,27 @@ 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\_fallback\_load\_asset 函数
-----------------------
* 函数功能:
> <p id="assets_manager_t_assets_manager_set_fallback_load_asset">设置一个函数,该函数在找不到资源时加载后补资源。
* 函数原型:
```
ret_t assets_manager_set_fallback_load_asset (assets_manager_t* am, assets_manager_load_asset_t fallback_load_asset, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| am | assets\_manager\_t* | asset manager对象。 |
| fallback\_load\_asset | assets\_manager\_load\_asset\_t | 回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### assets\_manager\_set\_loader 函数
-----------------------

View File

@ -0,0 +1,130 @@
## assets\_managers\_t
### 概述
在某些情况下,需要多个资源管理器。比如在手表系统里,每个小应用或表盘,可能放在独立的资源包中,
此时优先加载应用自己的资源,如果没有就加载系统的资源。
> 通常AWTK是单进程应用程序为了避免概念混淆我们把这些独立可安装的小应用成为"applet"。
----------------------------------
### 函数
<p id="assets_managers_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#assets_managers_t_assets_manager_get_theme_name">assets\_manager\_get\_theme\_name</a> | 获取当前的主题名称。 |
| <a href="#assets_managers_t_assets_managers_is_applet_assets_supported">assets\_managers\_is\_applet\_assets\_supported</a> | 是否支持小应用程序(applet)拥有独立资源目录。 |
| <a href="#assets_managers_t_assets_managers_ref">assets\_managers\_ref</a> | 获取指定小应用程序(applet)的资源管理器。 |
| <a href="#assets_managers_t_assets_managers_set_applet_res_root">assets\_managers\_set\_applet\_res\_root</a> | 设置小应用程序(applet)的资源根目录。 |
| <a href="#assets_managers_t_assets_managers_set_theme">assets\_managers\_set\_theme</a> | 设置当前的主题。 |
| <a href="#assets_managers_t_assets_managers_unref">assets\_managers\_unref</a> | 释放指定小应用程序(applet)的资源管理器。 |
#### assets\_manager\_get\_theme\_name 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_manager_get_theme_name">获取当前的主题名称。
* 函数原型:
```
const char* assets_manager_get_theme_name (assets_manager_t* am);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回主题名称。 |
| am | assets\_manager\_t* | 资源管理器对象。 |
#### assets\_managers\_is\_applet\_assets\_supported 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_managers_is_applet_assets_supported">是否支持小应用程序(applet)拥有独立资源目录。
* 函数原型:
```
bool_t assets_managers_is_applet_assets_supported ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示支持否则表示不支持。 |
#### assets\_managers\_ref 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_managers_ref">获取指定小应用程序(applet)的资源管理器。
* 函数原型:
```
assets_manager_t* assets_managers_ref (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | assets\_manager\_t* | 返回asset manager对象。 |
| name | const char* | 小应用程序(applet)的名称。 |
#### assets\_managers\_set\_applet\_res\_root 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_managers_set_applet_res_root">设置小应用程序(applet)的资源根目录。
* 函数原型:
```
ret_t assets_managers_set_applet_res_root (const char* res_root);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| res\_root | const char* | 资源根目录。 |
#### assets\_managers\_set\_theme 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_managers_set_theme">设置当前的主题。
* 函数原型:
```
ret_t assets_managers_set_theme (const char* theme);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| theme | const char* | 主题名称。 |
#### assets\_managers\_unref 函数
-----------------------
* 函数功能:
> <p id="assets_managers_t_assets_managers_unref">释放指定小应用程序(applet)的资源管理器。
* 函数原型:
```
ret_t assets_managers_unref (assets_manager_t* am);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| am | assets\_manager\_t* | 资源管理器对象。 |

View File

@ -10,6 +10,7 @@
| <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_ex">async\_call\_init\_ex</a> | 全局初始化。 |
| <a href="#async_t_async_call_init_ex2">async\_call\_init\_ex2</a> | 全局初始化。 |
#### async\_call 函数
-----------------------
@ -69,3 +70,24 @@ ret_t async_call_init_ex (uint32_t max_threads, uint32_t min_threads);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| max\_threads | uint32\_t | 最大线程数。 |
| min\_threads | uint32\_t | 最小线程数。 |
#### async\_call\_init\_ex2 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call_init_ex2">全局初始化。
* 函数原型:
```
ret_t async_call_init_ex2 (uint32_t max_threads, uint32_t min_threads, uint32_t stack_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| max\_threads | uint32\_t | 最大线程数。 |
| min\_threads | uint32\_t | 最小线程数。 |
| stack\_size | uint32\_t | 栈空间大小(字节)。 |

View File

@ -12,3 +12,5 @@
| BITMAP\_FLAG\_TEXTURE | OpenGL Texture, bitmap的id是有效的texture id。 |
| BITMAP\_FLAG\_CHANGED | 如果是MUTABLE的图片更新时需要设置此标志底层可能会做特殊处理比如更新图片到GPU。 |
| BITMAP\_FLAG\_PREMULTI\_ALPHA | 预乘alpha。 |
| BITMAP\_FLAG\_LCD\_ORIENTATION | 位图数据已经处理了 lcd 旋转,同时说明 bitmap 的宽高和真实数据的宽高可能不一致 |
| BITMAP\_FLAG\_GPU\_FBO\_TEXTURE | 该位图为 GPU 的 fbo 数据。 |

View File

@ -15,8 +15,12 @@
| <a href="#bitmap_t_bitmap_get_bpp">bitmap\_get\_bpp</a> | 获取图片一个像素占用的字节数。 |
| <a href="#bitmap_t_bitmap_get_bpp_of_format">bitmap\_get\_bpp\_of\_format</a> | 获取位图格式对应的颜色位数。 |
| <a href="#bitmap_t_bitmap_get_line_length">bitmap\_get\_line\_length</a> | 获取每一行占用内存的字节数。 |
| <a href="#bitmap_t_bitmap_get_physical_height">bitmap\_get\_physical\_height</a> | 获取图片真实物理的高度。 |
| <a href="#bitmap_t_bitmap_get_physical_line_length">bitmap\_get\_physical\_line\_length</a> | 获取图片真实物理的每一行占用内存的字节数。 |
| <a href="#bitmap_t_bitmap_get_physical_width">bitmap\_get\_physical\_width</a> | 获取图片真实物理的宽度。 |
| <a href="#bitmap_t_bitmap_get_pixel">bitmap\_get\_pixel</a> | 获取图片指定像素的rgba颜色值(主要用于测试程序)。 |
| <a href="#bitmap_t_bitmap_init">bitmap\_init</a> | 初始化图片。 |
| <a href="#bitmap_t_bitmap_init_ex">bitmap\_init\_ex</a> | 初始化图片。 |
| <a href="#bitmap_t_bitmap_init_from_bgra">bitmap\_init\_from\_bgra</a> | 初始化图片。 |
| <a href="#bitmap_t_bitmap_init_from_rgba">bitmap\_init\_from\_rgba</a> | 初始化图片。 |
| <a href="#bitmap_t_bitmap_lock_buffer_for_read">bitmap\_lock\_buffer\_for\_read</a> | 为读取数据而锁定bitmap的图片缓冲区。 |
@ -37,6 +41,7 @@
| <a href="#bitmap_t_h">h</a> | wh\_t | 高度。 |
| <a href="#bitmap_t_line_length">line\_length</a> | uint32\_t | 每一行实际占用的内存(也称为stride或pitch)一般情况下为w*bpp。 |
| <a href="#bitmap_t_name">name</a> | const char* | 名称。 |
| <a href="#bitmap_t_orientation">orientation</a> | lcd\_orientation\_t | 图片数据旋转。(修改了图片数据旋转后 flags 会带有 BITMAP_FLAG_LCD_ORIENTATION |
| <a href="#bitmap_t_w">w</a> | wh\_t | 宽度。 |
#### bitmap\_clone 函数
-----------------------
@ -183,14 +188,71 @@ uint32_t bitmap_get_bpp_of_format (bitmap_format_t format);
* 函数原型:
```
ret_t bitmap_get_line_length (bitmap_t* bitmap);
uint32_t bitmap_get_line_length (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回每一行占用内存的字节数。 |
| 返回值 | uint32\_t | 返回每一行占用内存的字节数。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_get\_physical\_height 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_get_physical_height">获取图片真实物理的高度。
* 函数原型:
```
uint32_t bitmap_get_physical_height (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回图片高度。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_get\_physical\_line\_length 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_get_physical_line_length">获取图片真实物理的每一行占用内存的字节数。
* 函数原型:
```
uint32_t bitmap_get_physical_line_length (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回每一行占用内存的字节数。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_get\_physical\_width 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_get_physical_width">获取图片真实物理的宽度。
* 函数原型:
```
uint32_t bitmap_get_physical_width (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回图片宽度。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_get\_pixel 函数
-----------------------
@ -237,6 +299,30 @@ ret_t bitmap_init (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t for
| h | uint32\_t | 高度。 |
| format | bitmap\_format\_t | 格式。 |
| data | const uint8\_t* | 数据,直接引用,但不负责释放。如果为空,由内部自动分配和释放。 |
#### bitmap\_init\_ex 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_init_ex">初始化图片。
* 函数原型:
```
ret_t bitmap_init_ex (bitmap_t* bitmap, uint32_t w, uint32_t h, uint32_t line_length, bitmap_format_t format, const uint8_t* data);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| bitmap | bitmap\_t* | bitmap对象。 |
| w | uint32\_t | 宽度。 |
| h | uint32\_t | 高度。 |
| line\_length | uint32\_t | 行长。 |
| format | bitmap\_format\_t | 格式。 |
| data | const uint8\_t* | 数据,直接引用,但不负责释放。如果为空,由内部自动分配和释放。 |
#### bitmap\_init\_from\_bgra 函数
-----------------------
@ -248,7 +334,7 @@ ret_t bitmap_init (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t for
* 函数原型:
```
ret_t bitmap_init_from_bgra (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t format, const uint8_t* , uint32_t comp);
ret_t bitmap_init_from_bgra (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t format, const uint8_t* , uint32_t comp, lcd_orientation_t o);
```
* 参数说明:
@ -262,6 +348,7 @@ ret_t bitmap_init_from_bgra (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_fo
| format | bitmap\_format\_t | 格式。 |
| | const uint8\_t* | a |
| comp | uint32\_t | 颜色通道数(目前支持3(bgr)和4(bgra))。 |
| o | lcd\_orientation\_t | 旋转方向。 |
#### bitmap\_init\_from\_rgba 函数
-----------------------
@ -273,7 +360,7 @@ ret_t bitmap_init_from_bgra (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_fo
* 函数原型:
```
ret_t bitmap_init_from_rgba (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t format, const uint8_t* , uint32_t comp);
ret_t bitmap_init_from_rgba (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_format_t format, const uint8_t* , uint32_t comp, lcd_orientation_t o);
```
* 参数说明:
@ -287,6 +374,7 @@ ret_t bitmap_init_from_rgba (bitmap_t* bitmap, uint32_t w, uint32_t h, bitmap_fo
| format | bitmap\_format\_t | 格式。 |
| | const uint8\_t* | a |
| comp | uint32\_t | 颜色通道数(目前支持3(rgb)和4(rgba))。 |
| o | lcd\_orientation\_t | 旋转方向。 |
#### bitmap\_lock\_buffer\_for\_read 函数
-----------------------
@ -491,6 +579,16 @@ ret_t bitmap_unlock_buffer (bitmap_t* bitmap);
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可脚本化 | 是 |
#### orientation 属性
-----------------------
> <p id="bitmap_t_orientation">图片数据旋转。(修改了图片数据旋转后 flags 会带有 BITMAP_FLAG_LCD_ORIENTATION
* 类型lcd\_orientation\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### w 属性
-----------------------
> <p id="bitmap_t_w">宽度。

View File

@ -1,13 +1,55 @@
## bsvg\_t
### 概述
SVG的二进制格式。
----------------------------------
### 函数
<p id="bsvg_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#bsvg_t_bsvg_draw">bsvg\_draw</a> | 绘制bsvg。 |
| <a href="#bsvg_t_bsvg_draw_path">bsvg\_draw\_path</a> | 绘制bsvg路径。 |
| <a href="#bsvg_t_bsvg_init">bsvg\_init</a> | 初始化bsvg对象。 |
#### bsvg\_draw 函数
-----------------------
* 函数功能:
> <p id="bsvg_t_bsvg_draw">绘制bsvg。
* 函数原型:
```
ret_t bsvg_draw (bsvg_t* svg, vgcanvas_t* canvas);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| svg | bsvg\_t* | SVG对象。 |
| canvas | vgcanvas\_t* | vgcanvas对象。 |
#### bsvg\_draw\_path 函数
-----------------------
* 函数功能:
> <p id="bsvg_t_bsvg_draw_path">绘制bsvg路径。
* 函数原型:
```
ret_t bsvg_draw_path (bsvg_draw_ctx_t* ctx, svg_path_t* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ctx | bsvg\_draw\_ctx\_t* | 绘制上下文。 |
| path | svg\_path\_t* | path对象。 |
#### bsvg\_init 函数
-----------------------
@ -18,7 +60,7 @@ SVG的二进制格式。
* 函数原型:
```
bsvg_t* bsvg_init (bsvg_t* , const uint32_t* data, size size);
bsvg_t* bsvg_init (bsvg_t* , const uint32_t* data, uint32_t size);
```
* 参数说明:
@ -28,4 +70,4 @@ bsvg_t* bsvg_init (bsvg_t* , const uint32_t* data, size size);
| 返回值 | bsvg\_t* | 返回解析后的svg。 |
| | bsvg\_t* | 。 |
| data | const uint32\_t* | svg数据。 |
| size | size | data长度。 |
| size | uint32\_t | data长度。 |

View File

@ -36,6 +36,7 @@ button\_group\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数
| -------- | ------------ |
| <a href="#button_group_t_button_group_cast">button\_group\_cast</a> | 转换为button_group对象(供脚本语言使用)。 |
| <a href="#button_group_t_button_group_create">button\_group\_create</a> | 创建button_group对象 |
| <a href="#button_group_t_button_group_get_widget_vtable">button\_group\_get\_widget\_vtable</a> | 获取 button_group 虚表。 |
#### button\_group\_cast 函数
-----------------------
@ -78,3 +79,21 @@ widget_t* button_group_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 | 高度 |
#### button\_group\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="button_group_t_button_group_get_widget_vtable">获取 button_group 虚表。
* 函数原型:
```
const widget_vtable_t* button_group_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 button\_group 虚表。 |

View File

@ -54,7 +54,9 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| -------- | ------------ |
| <a href="#button_t_button_cast">button\_cast</a> | 转换为button对象(供脚本语言使用)。 |
| <a href="#button_t_button_create">button\_create</a> | 创建button对象 |
| <a href="#button_t_button_get_widget_vtable">button\_get\_widget\_vtable</a> | 获取 button 虚表。 |
| <a href="#button_t_button_set_enable_long_press">button\_set\_enable\_long\_press</a> | 设置是否启用长按事件。 |
| <a href="#button_t_button_set_enable_preview">button\_set\_enable\_preview</a> | 设置是否启用预览。 |
| <a href="#button_t_button_set_long_press_time">button\_set\_long\_press\_time</a> | 设置触发长按事件的时间。 |
| <a href="#button_t_button_set_repeat">button\_set\_repeat</a> | 设置触发EVT\_CLICK事件的时间间隔。为0则不重复触发EVT\_CLICK事件。 |
### 属性
@ -63,7 +65,9 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#button_t_enable_long_press">enable\_long\_press</a> | bool\_t | 是否启用长按事件为true时才触发长按事件。 |
| <a href="#button_t_enable_preview">enable\_preview</a> | bool\_t | 是否启用预览(主要用于软键盘)。 |
| <a href="#button_t_long_press_time">long\_press\_time</a> | uint32\_t | 触发长按事件的时间(ms) |
| <a href="#button_t_pressed">pressed</a> | bool\_t | 当前是否按下。 |
| <a href="#button_t_repeat">repeat</a> | int32\_t | 重复触发EVT\_CLICK事件的时间间隔。 |
### 事件
<p id="button_t_events">
@ -114,6 +118,24 @@ widget_t* button_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 | 高度 |
#### button\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="button_t_button_get_widget_vtable">获取 button 虚表。
* 函数原型:
```
const widget_vtable_t* button_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 button 虚表。 |
#### button\_set\_enable\_long\_press 函数
-----------------------
@ -134,6 +156,26 @@ ret_t button_set_enable_long_press (widget_t* widget, bool_t enable_long_press);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| enable\_long\_press | bool\_t | 是否启用长按事件。 |
#### button\_set\_enable\_preview 函数
-----------------------
* 函数功能:
> <p id="button_t_button_set_enable_preview">设置是否启用预览。
* 函数原型:
```
ret_t button_set_enable_preview (widget_t* widget, bool_t enable_preview);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| enable\_preview | bool\_t | 是否启用预览。 |
#### button\_set\_long\_press\_time 函数
-----------------------
@ -183,6 +225,22 @@ ret_t button_set_repeat (widget_t* widget, int32_t repeat);
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### enable\_preview 属性
-----------------------
> <p id="button_t_enable_preview">是否启用预览(主要用于软键盘)。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
@ -209,6 +267,20 @@ ret_t button_set_repeat (widget_t* widget, int32_t repeat);
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### pressed 属性
-----------------------
> <p id="button_t_pressed">当前是否按下。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可脚本化 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### repeat 属性
-----------------------
> <p id="button_t_repeat">重复触发EVT\_CLICK事件的时间间隔。

View File

@ -32,6 +32,7 @@ widget_t* win = calibration_win_create(NULL, 0, 0, 320, 480);
| -------- | ------------ |
| <a href="#calibration_win_t_calibration_win_cast">calibration\_win\_cast</a> | 转换为calibration_win对象(供脚本语言使用)。 |
| <a href="#calibration_win_t_calibration_win_create">calibration\_win\_create</a> | 创建calibration_win对象 |
| <a href="#calibration_win_t_calibration_win_get_widget_vtable">calibration\_win\_get\_widget\_vtable</a> | 获取 calibration_win 虚表。 |
| <a href="#calibration_win_t_calibration_win_set_on_click">calibration\_win\_set\_on\_click</a> | 设置校准点击事件的处理函数。 |
| <a href="#calibration_win_t_calibration_win_set_on_done">calibration\_win\_set\_on\_done</a> | 设置校准完成的处理函数。 |
#### calibration\_win\_cast 函数
@ -76,6 +77,24 @@ widget_t* calibration_win_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### calibration\_win\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="calibration_win_t_calibration_win_get_widget_vtable">获取 calibration_win 虚表。
* 函数原型:
```
const widget_vtable_t* calibration_win_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 calibration\_win 虚表。 |
#### calibration\_win\_set\_on\_click 函数
-----------------------

View File

@ -32,6 +32,7 @@
| -------- | ------------ |
| <a href="#candidates_t_candidates_cast">candidates\_cast</a> | 转换为candidates对象(供脚本语言使用)。 |
| <a href="#candidates_t_candidates_create">candidates\_create</a> | 创建candidates对象 |
| <a href="#candidates_t_candidates_get_widget_vtable">candidates\_get\_widget\_vtable</a> | 获取 candidates 虚表。 |
| <a href="#candidates_t_candidates_set_auto_hide">candidates\_set\_auto\_hide</a> | 设置是否自动隐藏。 |
| <a href="#candidates_t_candidates_set_button_style">candidates\_set\_button\_style</a> | 设置按钮的style名称。 |
| <a href="#candidates_t_candidates_set_pre">candidates\_set\_pre</a> | 设置是否为预候选字列表。 |
@ -43,6 +44,7 @@
| -------- | ----- | ------------ |
| <a href="#candidates_t_auto_hide">auto\_hide</a> | bool\_t | 没有候选字时,是否自动隐藏控件。 |
| <a href="#candidates_t_button_style">button\_style</a> | char* | 按钮的style名称。 |
| <a href="#candidates_t_enable_preview">enable\_preview</a> | bool\_t | 是否启用候选字预览。 |
| <a href="#candidates_t_pre">pre</a> | bool\_t | 是否为预候选字。 |
| <a href="#candidates_t_select_by_num">select\_by\_num</a> | bool\_t | 是否启用用数字选择候选字。比如按下1选择第1个候选字按下2选择第2个候选字。 |
#### candidates\_cast 函数
@ -87,6 +89,24 @@ widget_t* candidates_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 | 高度 |
#### candidates\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="candidates_t_candidates_get_widget_vtable">获取 candidates 虚表。
* 函数原型:
```
const widget_vtable_t* candidates_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 candidates 虚表。 |
#### candidates\_set\_auto\_hide 函数
-----------------------
@ -191,6 +211,22 @@ ret_t candidates_set_select_by_num (widget_t* widget, bool_t select_by_num);
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### enable\_preview 属性
-----------------------
> <p id="candidates_t_enable_preview">是否启用候选字预览。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -55,7 +55,6 @@ ret_t canvas_offline_begin_draw (canvas_t* canvas);
> <p id="canvas_offline_t_canvas_offline_bitmap_move_to_new_bitmap">把离线 canvas 的离线 bitmap 移动赋值给新的 bitmap。
移动赋值后原来的离线 canvas 的离线 bitmap 就会被置空。
备注:在移动赋值之前会先调用 canvas_offline_flush_bitmap 把数据回流到内存中。
* 函数原型:
@ -99,6 +98,7 @@ ret_t canvas_offline_clear_canvas (canvas_t* canvas);
> <p id="canvas_offline_t_canvas_offline_create">创建一个离线的 canvas
在 opengl 模式下 format 参数只能为 BITMAP_FMT_RGBA8888
在其他模式下,离线 canvas 格式可以为 rgbabgarbgr565和rgb565
旋转方向和 lcd 旋转方向保存一致,旋转方向不同可能会导致 bitmap 的逻辑宽高不同。
* 函数原型:
@ -111,8 +111,8 @@ canvas_t* canvas_offline_create (uint32_t w, uint32_t h, bitmap_format_t format)
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | canvas\_t* | 成功返回 canvas ,失败返回 NULL。 |
| w | uint32\_t | 离线 canvas 的宽。 |
| h | uint32\_t | 离线 canvas 的高。 |
| w | uint32\_t | 离线 canvas 的物理宽。 |
| h | uint32\_t | 离线 canvas 的物理高。 |
| format | bitmap\_format\_t | 离线 canvas 的格式。 |
#### canvas\_offline\_custom\_begin\_draw 函数
-----------------------

View File

@ -12,6 +12,7 @@
| <a href="#canvas_t_canvas_clear_rect">canvas\_clear\_rect</a> | 用填充颜色填充指定矩形。 |
| <a href="#canvas_t_canvas_draw_hline">canvas\_draw\_hline</a> | 画水平线。 |
| <a href="#canvas_t_canvas_draw_icon">canvas\_draw\_icon</a> | 绘制图标。 |
| <a href="#canvas_t_canvas_draw_icon_in_rect">canvas\_draw\_icon\_in\_rect</a> | 在指定rect内绘制icon。 |
| <a href="#canvas_t_canvas_draw_image">canvas\_draw\_image</a> | 绘制图片。 |
| <a href="#canvas_t_canvas_draw_image_at">canvas\_draw\_image\_at</a> | 在指定位置画图。 |
| <a href="#canvas_t_canvas_draw_image_ex">canvas\_draw\_image\_ex</a> | 绘制图片。 |
@ -38,9 +39,12 @@
| <a href="#canvas_t_canvas_get_vgcanvas">canvas\_get\_vgcanvas</a> | 获取vgcanvas对象。 |
| <a href="#canvas_t_canvas_get_width">canvas\_get\_width</a> | 获取画布的宽度。 |
| <a href="#canvas_t_canvas_init">canvas\_init</a> | 初始化,系统内部调用。 |
| <a href="#canvas_t_canvas_is_rect_in_clip_rect">canvas\_is\_rect\_in\_clip\_rect</a> | 判断改矩形区域是否在裁剪区中 |
| <a href="#canvas_t_canvas_measure_text">canvas\_measure\_text</a> | 计算文本所占的宽度。 |
| <a href="#canvas_t_canvas_measure_utf8">canvas\_measure\_utf8</a> | 计算文本所占的宽度。 |
| <a href="#canvas_t_canvas_reset">canvas\_reset</a> | 释放相关资源。 |
| <a href="#canvas_t_canvas_reset_cache">canvas\_reset\_cache</a> | 清除canvas中缓存。 |
| <a href="#canvas_t_canvas_reset_font">canvas\_reset\_font</a> | 释放canvas中字体相关的资源。 |
| <a href="#canvas_t_canvas_set_assets_manager">canvas\_set\_assets\_manager</a> | 设置canvas的assets_manager对象。 |
| <a href="#canvas_t_canvas_set_clip_rect">canvas\_set\_clip\_rect</a> | 设置裁剪区。 |
| <a href="#canvas_t_canvas_set_clip_rect_ex">canvas\_set\_clip\_rect\_ex</a> | 设置裁剪区。 |
@ -191,6 +195,27 @@ ret_t canvas_draw_icon (canvas_t* c, bitmap_t* img, xy_t cx, xy_t cy);
| img | bitmap\_t* | 图片对象。 |
| cx | xy\_t | 中心点x坐标。 |
| cy | xy\_t | 中心点y坐标。 |
#### canvas\_draw\_icon\_in\_rect 函数
-----------------------
* 函数功能:
> <p id="canvas_t_canvas_draw_icon_in_rect">在指定rect内绘制icon。
* 函数原型:
```
ret_t canvas_draw_icon_in_rect (canvas_t* c, bitmap_t* img, const rect_t* r);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
| img | bitmap\_t* | 图片对象。 |
| r | const rect\_t* | 矩形区域。 |
#### canvas\_draw\_image 函数
-----------------------
@ -538,7 +563,7 @@ ret_t canvas_fill_rect_gradient (canvas_t* c, xy_t x, xy_t y, wh_t w, wh_t h, gr
* 函数原型:
```
ret_t canvas_fill_rounded_rect (canvas_t* c, const rect_t* r, const color_t* color, uint32_t radius);
ret_t canvas_fill_rounded_rect (canvas_t* c, const rect_t* r, const rect_t* bg_r, const color_t* color, uint32_t radius);
```
* 参数说明:
@ -548,6 +573,7 @@ ret_t canvas_fill_rounded_rect (canvas_t* c, const rect_t* r, const color_t* col
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
| r | const rect\_t* | 矩形。 |
| bg\_r | const rect\_t* | 矩形(默认为 NULL当圆角直径大于 r 矩形的宽高后,会根据 bg\_r 矩形来决定是否需要缩小圆角半径)。 |
| color | const color\_t* | 颜色。 |
| radius | uint32\_t | 圆角半径。 |
#### canvas\_fill\_rounded\_rect\_ex 函数
@ -588,7 +614,7 @@ ret_t canvas_fill_rounded_rect_ex (canvas_t* c, const rect_t* r, const rect_t* b
* 函数原型:
```
ret_t canvas_fill_rounded_rect_gradient (canvas_t* c, const rect_t* r, const gradient_t* gradient, uint32_t radius);
ret_t canvas_fill_rounded_rect_gradient (canvas_t* c, const rect_t* r, const rect_t* bg_r, const gradient_t* gradient, uint32_t radius);
```
* 参数说明:
@ -598,6 +624,7 @@ ret_t canvas_fill_rounded_rect_gradient (canvas_t* c, const rect_t* r, const gra
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
| r | const rect\_t* | 矩形。 |
| bg\_r | const rect\_t* | 矩形(默认为 NULL当圆角直径大于 r 矩形的宽高后,会根据 bg\_r 矩形来决定是否需要缩小圆角半径)。 |
| gradient | const gradient\_t* | 渐变颜色。 |
| radius | uint32\_t | 圆角半径。 |
#### canvas\_fill\_rounded\_rect\_gradient\_ex 函数
@ -767,6 +794,29 @@ canvas_t* canvas_init (canvas_t* c, lcd_t* lcd, font_manager_t* font_manager);
| c | canvas\_t* | canvas对象。 |
| lcd | lcd\_t* | lcd对象。 |
| font\_manager | font\_manager\_t* | 字体管理器对象。 |
#### canvas\_is\_rect\_in\_clip\_rect 函数
-----------------------
* 函数功能:
> <p id="canvas_t_canvas_is_rect_in_clip_rect">判断改矩形区域是否在裁剪区中
* 函数原型:
```
bool_t canvas_is_rect_in_clip_rect (canvas_t* c, xy_t left, xy_t top, xy_t right, xy_t bottom);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示是否则表示不是。 |
| c | canvas\_t* | canvas对象。 |
| left | xy\_t | 矩形区域左边。 |
| top | xy\_t | 矩形区域上边。 |
| right | xy\_t | 矩形区域右边。 |
| bottom | xy\_t | 矩形区域下边。 |
#### canvas\_measure\_text 函数
-----------------------
@ -825,6 +875,45 @@ ret_t canvas_reset (canvas_t* c);
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
#### canvas\_reset\_cache 函数
-----------------------
* 函数功能:
> <p id="canvas_t_canvas_reset_cache">清除canvas中缓存。
> 备注主要用于窗口动画的离线画布绘制完成后重置在线画布使下一帧中lcd对象的数据保持一致。
* 函数原型:
```
ret_t canvas_reset_cache (canvas_t* c);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
#### canvas\_reset\_font 函数
-----------------------
* 函数功能:
> <p id="canvas_t_canvas_reset_font">释放canvas中字体相关的资源。
* 函数原型:
```
ret_t canvas_reset_font (canvas_t* c);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
@ -1152,7 +1241,7 @@ ret_t canvas_stroke_rect (canvas_t* c, xy_t x, xy_t y, wh_t w, wh_t h);
* 函数原型:
```
ret_t canvas_stroke_rounded_rect (canvas_t* c, const rect_t* r, const color_t* color, uint32_t radius, uint32_t border_width);
ret_t canvas_stroke_rounded_rect (canvas_t* c, const rect_t* r, const rect_t* bg_r, const color_t* color, uint32_t radius, uint32_t border_width);
```
* 参数说明:
@ -1162,6 +1251,7 @@ ret_t canvas_stroke_rounded_rect (canvas_t* c, const rect_t* r, const color_t* c
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
| r | const rect\_t* | 矩形。 |
| bg\_r | const rect\_t* | 矩形(默认为 NULL当圆角直径大于 r 矩形的宽高后,会根据 bg\_r 矩形来决定是否需要缩小圆角半径)。 |
| color | const color\_t* | 颜色。 |
| radius | uint32\_t | 圆角半径。 |
| border\_width | uint32\_t | 边宽。 |
@ -1177,7 +1267,7 @@ ret_t canvas_stroke_rounded_rect (canvas_t* c, const rect_t* r, const color_t* c
* 函数原型:
```
ret_t canvas_stroke_rounded_rect_ex (canvas_t* c, const rect_t* r, const color_t* color, uint32_t radius_tl, uint32_t radius_tr, uint32_t radius_bl, uint32_t radius_br, uint32_t border_width, uint32_t border_model);
ret_t canvas_stroke_rounded_rect_ex (canvas_t* c, const rect_t* r, const rect_t* bg_r, const color_t* color, uint32_t radius_tl, uint32_t radius_tr, uint32_t radius_bl, uint32_t radius_br, uint32_t border_width, uint32_t border_model);
```
* 参数说明:
@ -1187,6 +1277,7 @@ ret_t canvas_stroke_rounded_rect_ex (canvas_t* c, const rect_t* r, const color_t
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| c | canvas\_t* | canvas对象。 |
| r | const rect\_t* | 矩形。 |
| bg\_r | const rect\_t* | 矩形(默认为 NULL当圆角直径大于 r 矩形的宽高后,会根据 bg\_r 矩形来决定是否需要缩小圆角半径)。 |
| color | const color\_t* | 颜色。 |
| radius\_tl | uint32\_t | 左上角圆角半径。 |
| radius\_tr | uint32\_t | 右上角圆角半径。 |

View File

@ -69,6 +69,7 @@ return RET_OK;
| -------- | ------------ |
| <a href="#canvas_widget_t_canvas_widget_cast">canvas\_widget\_cast</a> | 转换为canvas_widget对象(供脚本语言使用)。 |
| <a href="#canvas_widget_t_canvas_widget_create">canvas\_widget\_create</a> | 创建canvas_widget对象 |
| <a href="#canvas_widget_t_canvas_widget_get_widget_vtable">canvas\_widget\_get\_widget\_vtable</a> | 获取 canvas_widget 虚表。 |
#### canvas\_widget\_cast 函数
-----------------------
@ -111,3 +112,21 @@ widget_t* canvas_widget_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 | 高度 |
#### canvas\_widget\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="canvas_widget_t_canvas_widget_get_widget_vtable">获取 canvas_widget 虚表。
* 函数原型:
```
const widget_vtable_t* canvas_widget_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 canvas\_widget 虚表。 |

View File

@ -64,8 +64,10 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| -------- | ------------ |
| <a href="#check_button_t_check_button_cast">check\_button\_cast</a> | 转换check_button对象(供脚本语言使用)。 |
| <a href="#check_button_t_check_button_create">check\_button\_create</a> | 创建多选按钮对象 |
| <a href="#check_button_t_check_button_create_ex">check\_button\_create\_ex</a> | 创建check button对象 |
| <a href="#check_button_t_check_button_create_radio">check\_button\_create\_radio</a> | 创建单选按钮对象 |
| <a href="#check_button_t_check_button_get_checked_button">check\_button\_get\_checked\_button</a> | 用于radio button获取同组中勾选的radio button。 |
| <a href="#check_button_t_check_button_get_widget_vtable">check\_button\_get\_widget\_vtable</a> | 获取 check_button 虚表。 |
| <a href="#check_button_t_check_button_set_value">check\_button\_set\_value</a> | 设置控件的值。 |
### 属性
<p id="check_button_t_properties">
@ -124,6 +126,31 @@ widget_t* check_button_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 | 高度 |
#### check\_button\_create\_ex 函数
-----------------------
* 函数功能:
> <p id="check_button_t_check_button_create_ex">创建check button对象
* 函数原型:
```
widget_t* check_button_create_ex (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h, const char* type, bool_t radio);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | widget\_t* | widget对象。 |
| parent | widget\_t* | 父控件 |
| x | xy\_t | x坐标 |
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
| type | const char* | 类型。 |
| radio | bool\_t | 是否单选。 |
#### check\_button\_create\_radio 函数
-----------------------
@ -166,6 +193,24 @@ widget_t* check_button_get_checked_button (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 同组中勾选的radio button对象。 |
| widget | widget\_t* | radio\_button对象。 |
#### check\_button\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="check_button_t_check_button_get_widget_vtable">获取 check_button 虚表。
* 函数原型:
```
const widget_vtable_t* check_button_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 check\_button 虚表。 |
#### check\_button\_set\_value 函数
-----------------------

View File

@ -81,7 +81,7 @@ ret_t clip_board_destroy (clip_board_t* cl);
* 函数原型:
```
ret_t clip_board_get_data (clip_board_t* cl, clip_board_data_type_t* type, void** data data, uint32_t* size);
ret_t clip_board_get_data (clip_board_t* cl, clip_board_data_type_t* type, void** data, uint32_t* size);
```
* 参数说明:
@ -91,7 +91,7 @@ ret_t clip_board_get_data (clip_board_t* cl, clip_board_data_type_t* type, void*
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| cl | clip\_board\_t* | 剪切板对象。 |
| type | clip\_board\_data\_type\_t* | 返回数据类型(可为NULL)。 |
| data | void** data | 返回数据(可为NULL)。 |
| data | void** | 返回数据(可为NULL)。 |
| size | uint32\_t* | 返回数据长度(可为NULL)。 |
#### clip\_board\_get\_text 函数
-----------------------
@ -140,7 +140,7 @@ ret_t clip_board_set (clip_board_t* cl);
* 函数原型:
```
ret_t clip_board_set_data (clip_board_t* cl, clip_board_data_type_t type, const void* data data, uint32_t size);
ret_t clip_board_set_data (clip_board_t* cl, clip_board_data_type_t type, const void* data, uint32_t size);
```
* 参数说明:
@ -150,7 +150,7 @@ ret_t clip_board_set_data (clip_board_t* cl, clip_board_data_type_t type, const
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| cl | clip\_board\_t* | 剪切板对象。 |
| type | clip\_board\_data\_type\_t | 数据类型。 |
| data | const void* data | 数据。 |
| data | const void* | 数据。 |
| size | uint32\_t | 数据长度 |
#### clip\_board\_set\_text 函数
-----------------------

View File

@ -17,6 +17,7 @@ COLOR_PICKER_CHILD_H: 水平为同色垂直为Hue(递减)。
| <a href="#color_component_t_color_component_get_h">color\_component\_get\_h</a> | 获取h分量。 |
| <a href="#color_component_t_color_component_get_s">color\_component\_get\_s</a> | 获取s分量。 |
| <a href="#color_component_t_color_component_get_v">color\_component\_get\_v</a> | 获取v分量。 |
| <a href="#color_component_t_color_component_get_widget_vtable">color\_component\_get\_widget\_vtable</a> | 获取 color_component 虚表。 |
| <a href="#color_component_t_color_component_set_color">color\_component\_set\_color</a> | 设置颜色。 |
| <a href="#color_component_t_color_component_set_hsv">color\_component\_set\_hsv</a> | 设置颜色。 |
### 事件
@ -124,6 +125,24 @@ float color_component_get_v (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | float | 返回v分量。 |
| widget | widget\_t* | color\_component对象。 |
#### color\_component\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="color_component_t_color_component_get_widget_vtable">获取 color_component 虚表。
* 函数原型:
```
const widget_vtable_t* color_component_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 color\_component 虚表。 |
#### color\_component\_set\_color 函数
-----------------------

View File

@ -39,6 +39,7 @@ color\_picker\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数
| -------- | ------------ |
| <a href="#color_picker_t_color_picker_cast">color\_picker\_cast</a> | 转换为color_picker对象(供脚本语言使用)。 |
| <a href="#color_picker_t_color_picker_create">color\_picker\_create</a> | 创建color_picker对象 |
| <a href="#color_picker_t_color_picker_get_widget_vtable">color\_picker\_get\_widget\_vtable</a> | 获取 color_picker 虚表。 |
| <a href="#color_picker_t_color_picker_set_color">color\_picker\_set\_color</a> | 设置颜色。 |
### 属性
<p id="color_picker_t_properties">
@ -95,6 +96,24 @@ widget_t* color_picker_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 | 高度 |
#### color\_picker\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="color_picker_t_color_picker_get_widget_vtable">获取 color_picker 虚表。
* 函数原型:
```
const widget_vtable_t* color_picker_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 color\_picker 虚表。 |
#### color\_picker\_set\_color 函数
-----------------------

View File

@ -36,6 +36,7 @@ color_tile_set_bg_color(color_tile, "red");
| <a href="#color_tile_t_color_tile_create">color\_tile\_create</a> | 创建color_tile对象 |
| <a href="#color_tile_t_color_tile_get_bg_color">color\_tile\_get\_bg\_color</a> | 获取背景颜色。 |
| <a href="#color_tile_t_color_tile_get_border_color">color\_tile\_get\_border\_color</a> | 获取边框颜色。 |
| <a href="#color_tile_t_color_tile_get_widget_vtable">color\_tile\_get\_widget\_vtable</a> | 获取 color_tile 虚表。 |
| <a href="#color_tile_t_color_tile_set_bg_color">color\_tile\_set\_bg\_color</a> | 设置背景颜色。 |
| <a href="#color_tile_t_color_tile_set_border_color">color\_tile\_set\_border\_color</a> | 设置边框颜色。 |
| <a href="#color_tile_t_color_tile_set_value">color\_tile\_set\_value</a> | 设置背景颜色。 |
@ -133,6 +134,24 @@ const char* color_tile_get_border_color (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | const char* | 返回边框颜色。 |
| widget | widget\_t* | 控件对象。 |
#### color\_tile\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="color_tile_t_color_tile_get_widget_vtable">获取 color_tile 虚表。
* 函数原型:
```
const widget_vtable_t* color_tile_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 color\_tile 虚表。 |
#### color\_tile\_set\_bg\_color 函数
-----------------------

View File

@ -36,6 +36,7 @@ column\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均适
| -------- | ------------ |
| <a href="#column_t_column_cast">column\_cast</a> | 转换为column对象(供脚本语言使用)。 |
| <a href="#column_t_column_create">column\_create</a> | 创建column对象 |
| <a href="#column_t_column_get_widget_vtable">column\_get\_widget\_vtable</a> | 获取 column 虚表。 |
#### column\_cast 函数
-----------------------
@ -78,3 +79,21 @@ widget_t* column_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 | 高度 |
#### column\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="column_t_column_get_widget_vtable">获取 column 虚表。
* 函数原型:
```
const widget_vtable_t* column_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 column 虚表。 |

View File

@ -2,7 +2,10 @@
### 概述
![image](images/combo_box_ex_t_0.png)
可滚动的combo_box控件。
扩展combo_box控件。支持以下功能
* 支持滚动。项目比较多时显示滚动条。
* 自动调整弹出窗口的宽度。根据最长文本自动调整弹出窗口的宽度。
* 支持分组显示。如果item的文本以"seperator."开头,视为一个分组开始,其后的文本为分组的标题。比如: "seperator.basic"会创建一个basic为标题的分组。
----------------------------------
### 函数
<p id="combo_box_ex_t_methods">

View File

@ -13,6 +13,7 @@ ComboBox Item控件。
| -------- | ------------ |
| <a href="#combo_box_item_t_combo_box_item_cast">combo\_box\_item\_cast</a> | 转换combo_box_item对象(供脚本语言使用)。 |
| <a href="#combo_box_item_t_combo_box_item_create">combo\_box\_item\_create</a> | 创建combo_box_item对象 |
| <a href="#combo_box_item_t_combo_box_item_get_widget_vtable">combo\_box\_item\_get\_widget\_vtable</a> | 获取 combo_box_item 虚表。 |
| <a href="#combo_box_item_t_combo_box_item_set_checked">combo\_box\_item\_set\_checked</a> | 设置控件是否被选中。 |
| <a href="#combo_box_item_t_combo_box_item_set_value">combo\_box\_item\_set\_value</a> | 设置控件的值。 |
### 属性
@ -72,6 +73,24 @@ widget_t* combo_box_item_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### combo\_box\_item\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="combo_box_item_t_combo_box_item_get_widget_vtable">获取 combo_box_item 虚表。
* 函数原型:
```
const widget_vtable_t* combo_box_item_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 combo\_box\_item 虚表。 |
#### combo\_box\_item\_set\_checked 函数
-----------------------

View File

@ -109,6 +109,22 @@ demo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/combo_box.c)
</style>
</popup>
```
* 3.combobox的下拉框中的列表项的样式可以设置combo_box_item的style来改变。
```xml
<combo_box_item>
<style name="default" icon_at="left" text_color="black" bg_color="#f0f0f0">
<normal icon="empty"/>
<focused icon="empty" bg_color="#1296db" text_color="gold" />
<pressed icon="empty" bg_color="#1296db" text_color="white" />
<over icon="empty" bg_color="#1296db" text_color="white" />
<normal_of_checked icon="check"/>
<focused_of_checked icon="check" bg_color="#1296db" text_color="gold"/>
<pressed_of_checked icon="check" bg_color="#1296db" text_color="white" />
<over_of_checked icon="check" bg_color="#1296db" text_color="white" />
</style>
</combo_box_item>
```
> 更多用法请参考:[theme
default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L422)
@ -123,8 +139,11 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| <a href="#combo_box_t_combo_box_count_options">combo\_box\_count\_options</a> | 获取选项个数。 |
| <a href="#combo_box_t_combo_box_create">combo\_box\_create</a> | 创建combo_box对象 |
| <a href="#combo_box_t_combo_box_get_option">combo\_box\_get\_option</a> | 获取第index个选项。 |
| <a href="#combo_box_t_combo_box_get_text">combo\_box\_get\_text</a> | 获取combo_box的文本。 |
| <a href="#combo_box_t_combo_box_get_text">combo\_box\_get\_text</a> | 获取combo_box的文本(可能是翻译后的文本)。 |
| <a href="#combo_box_t_combo_box_get_text_of_selected">combo\_box\_get\_text\_of\_selected</a> | 获取combo_box当前选中项目的文本(原生非翻译的文本)。 |
| <a href="#combo_box_t_combo_box_get_value">combo\_box\_get\_value</a> | 获取combo_box的值。 |
| <a href="#combo_box_t_combo_box_get_widget_vtable">combo\_box\_get\_widget\_vtable</a> | 获取 combo_box 虚表。 |
| <a href="#combo_box_t_combo_box_has_option_text">combo\_box\_has\_option\_text</a> | 检查选项中是否存在指定的文本。 |
| <a href="#combo_box_t_combo_box_remove_option">combo\_box\_remove\_option</a> | 删除选项。 |
| <a href="#combo_box_t_combo_box_reset_options">combo\_box\_reset\_options</a> | 重置所有选项。 |
| <a href="#combo_box_t_combo_box_set_custom_open_popup">combo\_box\_set\_custom\_open\_popup</a> | 设置自定义的打开弹出窗口的函数。 |
@ -133,6 +152,8 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| <a href="#combo_box_t_combo_box_set_open_window">combo\_box\_set\_open\_window</a> | 点击按钮时可以打开popup窗口本函数可设置窗口的名称。 |
| <a href="#combo_box_t_combo_box_set_options">combo\_box\_set\_options</a> | 设置选项。 |
| <a href="#combo_box_t_combo_box_set_selected_index">combo\_box\_set\_selected\_index</a> | 设置第index个选项为当前选中的选项。 |
| <a href="#combo_box_t_combo_box_set_selected_index_by_text">combo\_box\_set\_selected\_index\_by\_text</a> | 根据文本设置当前选中的选项。 |
| <a href="#combo_box_t_combo_box_set_theme_of_popup">combo\_box\_set\_theme\_of\_popup</a> | 设置弹出窗口的主题。 |
| <a href="#combo_box_t_combo_box_set_value">combo\_box\_set\_value</a> | 设置值。 |
### 属性
<p id="combo_box_t_properties">
@ -144,6 +165,7 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| <a href="#combo_box_t_open_window">open\_window</a> | char* | 为点击按钮时,要打开窗口的名称。 |
| <a href="#combo_box_t_options">options</a> | char* | 设置可选项(冒号分隔值和文本,分号分隔选项,如:1:red;2:green;3:blue)。 |
| <a href="#combo_box_t_selected_index">selected\_index</a> | int32\_t | 当前选中的选项。 |
| <a href="#combo_box_t_theme_of_popup">theme\_of\_popup</a> | char* | 弹出窗口的主题(对应的style文件必须存在)方便为不同combo box的弹出窗口指定不同的样式。 |
| <a href="#combo_box_t_value">value</a> | int32\_t | 值。 |
### 事件
<p id="combo_box_t_events">
@ -259,7 +281,7 @@ combo_box_option_t* combo_box_get_option (widget_t* widget, uint32_t index);
* 函数功能:
> <p id="combo_box_t_combo_box_get_text">获取combo_box的文本。
> <p id="combo_box_t_combo_box_get_text">获取combo_box的文本(可能是翻译后的文本)
* 函数原型:
@ -269,6 +291,25 @@ const char* combo_box_get_text (widget_t* widget);
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回文本。 |
| widget | widget\_t* | combo\_box对象。 |
#### combo\_box\_get\_text\_of\_selected 函数
-----------------------
* 函数功能:
> <p id="combo_box_t_combo_box_get_text_of_selected">获取combo_box当前选中项目的文本(原生非翻译的文本)。
* 函数原型:
```
const char* combo_box_get_text_of_selected (widget_t* widget);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回文本。 |
@ -292,6 +333,44 @@ int32_t combo_box_get_value (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回值。 |
| widget | widget\_t* | combo\_box对象。 |
#### combo\_box\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="combo_box_t_combo_box_get_widget_vtable">获取 combo_box 虚表。
* 函数原型:
```
const widget_vtable_t* combo_box_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 combo\_box 虚表。 |
#### combo\_box\_has\_option\_text 函数
-----------------------
* 函数功能:
> <p id="combo_box_t_combo_box_has_option_text">检查选项中是否存在指定的文本。
* 函数原型:
```
bool_t combo_box_has_option_text (widget_t* widget, const char* text);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示存在否则表示不存在。 |
| widget | widget\_t* | combo\_box对象。 |
| text | const char* | option text |
#### combo\_box\_remove\_option 函数
-----------------------
@ -452,6 +531,46 @@ ret_t combo_box_set_selected_index (widget_t* widget, uint32_t index);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | combo\_box对象。 |
| index | uint32\_t | 选项的索引。 |
#### combo\_box\_set\_selected\_index\_by\_text 函数
-----------------------
* 函数功能:
> <p id="combo_box_t_combo_box_set_selected_index_by_text">根据文本设置当前选中的选项。
* 函数原型:
```
ret_t combo_box_set_selected_index_by_text (widget_t* widget, const char* text);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | combo\_box对象。 |
| text | const char* | 原生(非翻译的文本)。 |
#### combo\_box\_set\_theme\_of\_popup 函数
-----------------------
* 函数功能:
> <p id="combo_box_t_combo_box_set_theme_of_popup">设置弹出窗口的主题。
* 函数原型:
```
ret_t combo_box_set_theme_of_popup (widget_t* widget, const char* theme_of_popup);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | combo\_box对象。 |
| theme\_of\_popup | const char* | 弹出的窗口主题。 |
#### combo\_box\_set\_value 函数
-----------------------
@ -523,6 +642,9 @@ ret_t combo_box_set_value (widget_t* widget, int32_t value);
#### options 属性
-----------------------
> <p id="combo_box_t_options">设置可选项(冒号分隔值和文本,分号分隔选项,如:1:red;2:green;3:blue)。
> 如果数据本身中有英文冒号(:)和英文分号(;)请用16进制转义。
> * 英文冒号(:)写为\\x3a
> * 英文冒号(;)写为\\x3b
* 类型char*
@ -542,6 +664,22 @@ ret_t combo_box_set_value (widget_t* widget, int32_t value);
* 类型int32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### theme\_of\_popup 属性
-----------------------
> <p id="combo_box_t_theme_of_popup">弹出窗口的主题(对应的style文件必须存在)方便为不同combo box的弹出窗口指定不同的样式。
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -15,6 +15,7 @@
| <a href="#conf_doc_t_conf_doc_create_node">conf\_doc\_create\_node</a> | 创建一个空节点。 |
| <a href="#conf_doc_t_conf_doc_destroy">conf\_doc\_destroy</a> | 析构函数。 |
| <a href="#conf_doc_t_conf_doc_destroy_node">conf\_doc\_destroy\_node</a> | 销毁节点对象。 |
| <a href="#conf_doc_t_conf_doc_dup_node">conf\_doc\_dup\_node</a> | 拷贝一个节点,并追加到其后。 |
| <a href="#conf_doc_t_conf_doc_exists">conf\_doc\_exists</a> | 判断指定路径的节点是否存在。 |
| <a href="#conf_doc_t_conf_doc_find_node">conf\_doc\_find\_node</a> | 根据path查找节点。 |
| <a href="#conf_doc_t_conf_doc_get">conf\_doc\_get</a> | 获取指定路径节点的值。 |
@ -36,6 +37,7 @@
| <a href="#conf_doc_t_conf_doc_set_bool">conf\_doc\_set\_bool</a> | 设置指定路径节点的值。 |
| <a href="#conf_doc_t_conf_doc_set_float">conf\_doc\_set\_float</a> | 设置指定路径节点的值。 |
| <a href="#conf_doc_t_conf_doc_set_int">conf\_doc\_set\_int</a> | 设置指定路径节点的值。 |
| <a href="#conf_doc_t_conf_doc_set_node_prop">conf\_doc\_set\_node\_prop</a> | 设置节点的属性。 |
| <a href="#conf_doc_t_conf_doc_set_str">conf\_doc\_set\_str</a> | 设置指定路径节点的值。 |
### 属性
<p id="conf_doc_t_properties">
@ -203,6 +205,27 @@ ret_t conf_doc_destroy_node (conf_doc_t* doc, conf_node_t* node);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| doc | conf\_doc\_t* | 文档对象。 |
| node | conf\_node\_t* | 节点对象。 |
#### conf\_doc\_dup\_node 函数
-----------------------
* 函数功能:
> <p id="conf_doc_t_conf_doc_dup_node">拷贝一个节点,并追加到其后。
* 函数原型:
```
ret_t conf_doc_dup_node (conf_doc_t* doc, conf_node_t* node, const char* new_name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回新节点。 |
| doc | conf\_doc\_t* | 文档对象。 |
| node | conf\_node\_t* | 节点对象。 |
| new\_name | const char* | 节点名称。 |
#### conf\_doc\_exists 函数
-----------------------
@ -639,6 +662,28 @@ ret_t conf_doc_set_int (conf_doc_t* doc, const char* path, int32_t v);
| doc | conf\_doc\_t* | 文档对象。 |
| path | const char* | 节点的路径。 |
| v | int32\_t | 值。 |
#### conf\_doc\_set\_node\_prop 函数
-----------------------
* 函数功能:
> <p id="conf_doc_t_conf_doc_set_node_prop">设置节点的属性。
* 函数原型:
```
ret_t conf_doc_set_node_prop (conf_doc_t* doc, conf_node_t* node, const char* name, const value_t* v );
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| doc | conf\_doc\_t* | 文档对象。 |
| node | conf\_node\_t* | 节点对象。 |
| name | const char* | 名称。 |
| | const value\_t* v | 。 |
#### conf\_doc\_set\_str 函数
-----------------------

View File

@ -22,14 +22,14 @@ conf ini对象。
* 函数原型:
```
object_t* conf_ini_create ();
tk_object_t* conf_ini_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
#### conf\_ini\_load 函数
-----------------------
@ -40,14 +40,14 @@ object_t* conf_ini_create ();
* 函数原型:
```
object_t* conf_ini_load (const char* url, bool_t create_if_not_exist);
tk_object_t* conf_ini_load (const char* url, bool_t create_if_not_exist);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| url | const char* | 路径(通常是文件路径)。 |
| create\_if\_not\_exist | bool\_t | 如果不存在是否创建。 |
#### conf\_ini\_save\_as 函数
@ -60,7 +60,7 @@ object_t* conf_ini_load (const char* url, bool_t create_if_not_exist);
* 函数原型:
```
ret_t conf_ini_save_as (object_t* obj, const char* url);
ret_t conf_ini_save_as (tk_object_t* obj, const char* url);
```
* 参数说明:
@ -68,5 +68,5 @@ ret_t conf_ini_save_as (object_t* obj, const char* url);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| obj | object\_t* | doc对象。 |
| obj | tk\_object\_t* | doc对象。 |
| url | const char* | 保存的位置。 |

View File

@ -22,14 +22,14 @@ conf json对象。
* 函数原型:
```
object_t* conf_json_create ();
tk_object_t* conf_json_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
#### conf\_json\_load 函数
-----------------------
@ -40,14 +40,14 @@ object_t* conf_json_create ();
* 函数原型:
```
object_t* conf_json_load (const char* url, bool_t create_if_not_exist);
tk_object_t* conf_json_load (const char* url, bool_t create_if_not_exist);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| url | const char* | 路径(通常是文件路径)。 |
| create\_if\_not\_exist | bool\_t | 如果不存在是否创建。 |
#### conf\_json\_save\_as 函数
@ -60,7 +60,7 @@ object_t* conf_json_load (const char* url, bool_t create_if_not_exist);
* 函数原型:
```
ret_t conf_json_save_as (object_t* obj, const char* url);
ret_t conf_json_save_as (tk_object_t* obj, const char* url);
```
* 参数说明:
@ -68,5 +68,5 @@ ret_t conf_json_save_as (object_t* obj, const char* url);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| obj | object\_t* | doc对象。 |
| obj | tk\_object\_t* | doc对象。 |
| url | const char* | 保存的位置。 |

View File

@ -7,6 +7,7 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#conf_node_t_conf_node_count_children">conf\_node\_count\_children</a> | 获取节点的子集个数。 |
| <a href="#conf_node_t_conf_node_find_child">conf\_node\_find\_child</a> | 查找指定名称的子节点。 |
| <a href="#conf_node_t_conf_node_find_sibling">conf\_node\_find\_sibling</a> | 查找指定名称的兄弟节点。 |
| <a href="#conf_node_t_conf_node_get_first_child">conf\_node\_get\_first\_child</a> | 获取第一个子节点。 |
@ -23,6 +24,25 @@
| <a href="#conf_node_t_node_type">node\_type</a> | uint8\_t | 节点类型。 |
| <a href="#conf_node_t_parent">parent</a> | conf\_node\_t* | 父节点。 |
| <a href="#conf_node_t_value_type">value\_type</a> | uint8\_t | 值的类型。 |
#### conf\_node\_count\_children 函数
-----------------------
* 函数功能:
> <p id="conf_node_t_conf_node_count_children">获取节点的子集个数。
* 函数原型:
```
uint32_t conf_node_count_children (conf_node_t* node);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 成功返回节点个数。 |
| node | conf\_node\_t* | 节点对象。 |
#### conf\_node\_find\_child 函数
-----------------------

View File

@ -10,6 +10,7 @@ conf对象。
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#conf_obj_t_conf_obj_create">conf\_obj\_create</a> | |
| <a href="#conf_obj_t_conf_obj_create_sub_object">conf\_obj\_create\_sub\_object</a> | 根据路径创建一个子对象。 |
| <a href="#conf_obj_t_conf_obj_get_doc">conf\_obj\_get\_doc</a> | 获取doc对象用于更高级的操作。 |
| <a href="#conf_obj_t_conf_obj_save">conf\_obj\_save</a> | 保存文档。 |
| <a href="#conf_obj_t_conf_obj_set_readonly">conf\_obj\_set\_readonly</a> | 设置为只读模式。 |
@ -23,18 +24,38 @@ conf对象。
* 函数原型:
```
object_t* conf_obj_create (conf_doc_save_t save, conf_doc_load_t load, const char* url, bool_t create_if_not_exist);
tk_object_t* conf_obj_create (conf_doc_save_t save, conf_doc_load_t load, const char* url, bool_t create_if_not_exist);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| save | conf\_doc\_save\_t | 保存函数。 |
| load | conf\_doc\_load\_t | 加载函数。 |
| url | const char* | 路径。 |
| create\_if\_not\_exist | bool\_t | 如果不存在是否创建。 |
#### conf\_obj\_create\_sub\_object 函数
-----------------------
* 函数功能:
> <p id="conf_obj_t_conf_obj_create_sub_object">根据路径创建一个子对象。
* 函数原型:
```
tk_object_t* conf_obj_create_sub_object (tk_object_t* conf, const char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| conf | tk\_object\_t* | 配置对象。 |
| path | const char* | 路径。 |
#### conf\_obj\_get\_doc 函数
-----------------------
@ -45,15 +66,15 @@ object_t* conf_obj_create (conf_doc_save_t save, conf_doc_load_t load, const cha
* 函数原型:
```
conf_dot_t conf_obj_get_doc (object_t* conf);
conf_doc_t* conf_obj_get_doc (tk_object_t* conf);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | conf\_dot\_t | 返回doc对象。 |
| conf | object\_t* | conf对象。 |
| 返回值 | conf\_doc\_t* | 返回doc对象。 |
| conf | tk\_object\_t* | conf对象。 |
#### conf\_obj\_save 函数
-----------------------
@ -64,7 +85,7 @@ conf_dot_t conf_obj_get_doc (object_t* conf);
* 函数原型:
```
ret_t conf_obj_save (object_t* conf);
ret_t conf_obj_save (tk_object_t* conf);
```
* 参数说明:
@ -72,7 +93,7 @@ ret_t conf_obj_save (object_t* conf);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| conf | object\_t* | conf对象。 |
| conf | tk\_object\_t* | conf对象。 |
#### conf\_obj\_set\_readonly 函数
-----------------------
@ -83,7 +104,7 @@ ret_t conf_obj_save (object_t* conf);
* 函数原型:
```
ret_t conf_obj_set_readonly (object_t* conf, bool_t readonly);
ret_t conf_obj_set_readonly (tk_object_t* conf, bool_t readonly);
```
* 参数说明:
@ -91,5 +112,5 @@ ret_t conf_obj_set_readonly (object_t* conf, bool_t readonly);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| conf | object\_t* | conf对象。 |
| conf | tk\_object\_t* | conf对象。 |
| readonly | bool\_t | 只读模式。 |

View File

@ -22,14 +22,14 @@ conf json对象。
* 函数原型:
```
object_t* conf_ubjson_create ();
tk_object_t* conf_ubjson_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
#### conf\_ubjson\_load 函数
-----------------------
@ -40,14 +40,14 @@ object_t* conf_ubjson_create ();
* 函数原型:
```
object_t* conf_ubjson_load (const char* url, bool_t create_if_not_exist);
tk_object_t* conf_ubjson_load (const char* url, bool_t create_if_not_exist);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回配置对象。 |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| url | const char* | 路径(通常是文件路径)。 |
| create\_if\_not\_exist | bool\_t | 如果不存在是否创建。 |
#### conf\_ubjson\_save\_as 函数
@ -60,7 +60,7 @@ object_t* conf_ubjson_load (const char* url, bool_t create_if_not_exist);
* 函数原型:
```
ret_t conf_ubjson_save_as (object_t* obj, const char* url);
ret_t conf_ubjson_save_as (tk_object_t* obj, const char* url);
```
* 参数说明:
@ -68,5 +68,5 @@ ret_t conf_ubjson_save_as (object_t* obj, const char* url);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| obj | object\_t* | doc对象。 |
| obj | tk\_object\_t* | doc对象。 |
| url | const char* | 保存的位置。 |

72
docs/manual/conf_xml_t.md Normal file
View File

@ -0,0 +1,72 @@
## conf\_xml\_t
### 概述
![image](images/conf_xml_t_0.png)
conf xml对象。
----------------------------------
### 函数
<p id="conf_xml_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#conf_xml_t_conf_xml_create">conf\_xml\_create</a> | 创建一个空的conf对象。 |
| <a href="#conf_xml_t_conf_xml_load">conf\_xml\_load</a> | 从指定URL加载XML对象。 |
| <a href="#conf_xml_t_conf_xml_save_as">conf\_xml\_save\_as</a> | 将doc对象保存到指定URL。 |
#### conf\_xml\_create 函数
-----------------------
* 函数功能:
> <p id="conf_xml_t_conf_xml_create">创建一个空的conf对象。
* 函数原型:
```
tk_object_t* conf_xml_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
#### conf\_xml\_load 函数
-----------------------
* 函数功能:
> <p id="conf_xml_t_conf_xml_load">从指定URL加载XML对象。
* 函数原型:
```
tk_object_t* conf_xml_load (const char* url, bool_t create_if_not_exist);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回配置对象。 |
| url | const char* | 路径(通常是文件路径)。 |
| create\_if\_not\_exist | bool\_t | 如果不存在是否创建。 |
#### conf\_xml\_save\_as 函数
-----------------------
* 函数功能:
> <p id="conf_xml_t_conf_xml_save_as">将doc对象保存到指定URL。
* 函数原型:
```
ret_t conf_xml_save_as (tk_object_t* obj, const char* url);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败 |
| obj | tk\_object\_t* | doc对象。 |
| url | const char* | 保存的位置。 |

View File

@ -21,14 +21,14 @@
* 函数原型:
```
object_t* csv_file_object_create (csv_file_t* csv);
tk_object_t* csv_file_object_create (csv_file_t* csv);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回对象。 |
| 返回值 | tk\_object\_t* | 返回对象。 |
| csv | csv\_file\_t* | csv对象(由object释放)。 |
#### csv\_file\_object\_get\_csv 函数
-----------------------
@ -40,7 +40,7 @@ object_t* csv_file_object_create (csv_file_t* csv);
* 函数原型:
```
csv_file_t* csv_file_object_get_csv (object_t* obj);
csv_file_t* csv_file_object_get_csv (tk_object_t* obj);
```
* 参数说明:
@ -48,4 +48,4 @@ csv_file_t* csv_file_object_get_csv (object_t* obj);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | csv\_file\_t* | 返回csv对象。 |
| obj | object\_t* | obj对象。 |
| obj | tk\_object\_t* | obj对象。 |

View File

@ -30,28 +30,6 @@
| <a href="#csv_file_t_csv_file_set">csv\_file\_set</a> | 修改指定行列的数据。 |
| <a href="#csv_file_t_csv_file_set_filter">csv\_file\_set\_filter</a> | 设置过滤函数。 |
| <a href="#csv_file_t_csv_file_set_row_checked">csv\_file\_set\_row\_checked</a> | 勾选指定行。 |
| <a href="#csv_file_t_fargs_get_data_and_size">fargs\_get\_data\_and\_size</a> | 从参数中获取数据和长度。 |
| <a href="#csv_file_t_fscript_app_conf_register">fscript\_app\_conf\_register</a> | 注册app_conf函数。 |
| <a href="#csv_file_t_fscript_array_register">fscript\_array\_register</a> | 注册typed array函数。 |
| <a href="#csv_file_t_fscript_bits_register">fscript\_bits\_register</a> | 注册数学函数。 |
| <a href="#csv_file_t_fscript_crc_register">fscript\_crc\_register</a> | 注册crc16/crc32/cksum等函数。 |
| <a href="#csv_file_t_fscript_date_time_register">fscript\_date\_time\_register</a> | 注册date time函数。 |
| <a href="#csv_file_t_fscript_endian_register">fscript\_endian\_register</a> | 注册大端小断转换函数等函数。 |
| <a href="#csv_file_t_fscript_ext_init">fscript\_ext\_init</a> | 注册扩展函数。 |
| <a href="#csv_file_t_fscript_fs_register">fscript\_fs\_register</a> | 注册文件系统函数。 |
| <a href="#csv_file_t_fscript_iostream_file_register">fscript\_iostream\_file\_register</a> | 注册iostream_file相关函数。 |
| <a href="#csv_file_t_fscript_iostream_inet_register">fscript\_iostream\_inet\_register</a> | 注册iostream_inet相关函数。 |
| <a href="#csv_file_t_fscript_iostream_register">fscript\_iostream\_register</a> | 注册iostream相关函数。 |
| <a href="#csv_file_t_fscript_iostream_serial_register">fscript\_iostream\_serial\_register</a> | 注册iostream_serial相关函数。 |
| <a href="#csv_file_t_fscript_istream_register">fscript\_istream\_register</a> | 注册istream相关等函数。 |
| <a href="#csv_file_t_fscript_json_register">fscript\_json\_register</a> | 注册json函数。 |
| <a href="#csv_file_t_fscript_math_register">fscript\_math\_register</a> | 注册数学函数。 |
| <a href="#csv_file_t_fscript_object_register">fscript\_object\_register</a> | 注册object函数。 |
| <a href="#csv_file_t_fscript_ostream_register">fscript\_ostream\_register</a> | 注册ostream相关函数。 |
| <a href="#csv_file_t_fscript_rbuffer_register">fscript\_rbuffer\_register</a> | 注册rbuffer相关函数。 |
| <a href="#csv_file_t_fscript_typed_array_register">fscript\_typed\_array\_register</a> | 注册typed array函数。 |
| <a href="#csv_file_t_fscript_wbuffer_register">fscript\_wbuffer\_register</a> | 注册wbuffer相关函数。 |
| <a href="#csv_file_t_fscript_widget_register">fscript\_widget\_register</a> | 注册widget函数。 |
### 属性
<p id="csv_file_t_properties">
@ -520,405 +498,6 @@ ret_t csv_file_set_row_checked (csv_file_t* csv, uint32_t row, bool_t checked);
| csv | csv\_file\_t* | csv对象。 |
| row | uint32\_t | 行号。 |
| checked | bool\_t | 是否勾选。 |
#### fargs\_get\_data\_and\_size 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fargs_get_data_and_size">从参数中获取数据和长度。
* 函数原型:
```
ret_t fargs_get_data_and_size (fscript_args_t* args, const uint8_t** , uint32_t* ret_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| args | fscript\_args\_t* | 参数。 |
| | const uint8\_t** | 。 |
| ret\_size | uint32\_t* | 返回数据的长度。 |
#### fscript\_app\_conf\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_app_conf_register">注册app_conf函数。
* 函数原型:
```
ret_t fscript_app_conf_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_array\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_array_register">注册typed array函数。
* 函数原型:
```
ret_t fscript_array_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_bits\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_bits_register">注册数学函数。
* 函数原型:
```
ret_t fscript_bits_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_crc\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_crc_register">注册crc16/crc32/cksum等函数。
* 函数原型:
```
ret_t fscript_crc_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_date\_time\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_date_time_register">注册date time函数。
* 函数原型:
```
ret_t fscript_date_time_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_endian\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_endian_register">注册大端小断转换函数等函数。
* 函数原型:
```
ret_t fscript_endian_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_ext\_init 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_ext_init">注册扩展函数。
* 函数原型:
```
ret_t fscript_ext_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_fs\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_fs_register">注册文件系统函数。
* 函数原型:
```
ret_t fscript_fs_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_iostream\_file\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_iostream_file_register">注册iostream_file相关函数。
* 函数原型:
```
ret_t fscript_iostream_file_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_iostream\_inet\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_iostream_inet_register">注册iostream_inet相关函数。
* 函数原型:
```
ret_t fscript_iostream_inet_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_iostream\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_iostream_register">注册iostream相关函数。
* 函数原型:
```
ret_t fscript_iostream_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_iostream\_serial\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_iostream_serial_register">注册iostream_serial相关函数。
* 函数原型:
```
ret_t fscript_iostream_serial_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_istream\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_istream_register">注册istream相关等函数。
* 函数原型:
```
ret_t fscript_istream_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_json\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_json_register">注册json函数。
* 函数原型:
```
ret_t fscript_json_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_math\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_math_register">注册数学函数。
* 函数原型:
```
ret_t fscript_math_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_object\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_object_register">注册object函数。
* 函数原型:
```
ret_t fscript_object_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_ostream\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_ostream_register">注册ostream相关函数。
* 函数原型:
```
ret_t fscript_ostream_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_rbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_rbuffer_register">注册rbuffer相关函数。
* 函数原型:
```
ret_t fscript_rbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_typed\_array\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_typed_array_register">注册typed array函数。
* 函数原型:
```
ret_t fscript_typed_array_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_wbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_wbuffer_register">注册wbuffer相关函数。
* 函数原型:
```
ret_t fscript_wbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_widget\_register 函数
-----------------------
* 函数功能:
> <p id="csv_file_t_fscript_widget_register">注册widget函数。
* 函数原型:
```
ret_t fscript_widget_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### has\_title 属性
-----------------------
> <p id="csv_file_t_has_title">是否有标题。

View File

@ -48,6 +48,7 @@ darray_destroy(darray);
| <a href="#darray_t_darray_remove_all">darray\_remove\_all</a> | 删除全部满足条件的元素。 |
| <a href="#darray_t_darray_remove_ex">darray\_remove\_ex</a> | 删除第一个满足条件的元素。 |
| <a href="#darray_t_darray_remove_index">darray\_remove\_index</a> | 删除指定位置的元素。 |
| <a href="#darray_t_darray_remove_range">darray\_remove\_range</a> | 删除指定范围的元素。 |
| <a href="#darray_t_darray_replace">darray\_replace</a> | 设置指定序数的元素(销毁旧的数据)。 |
| <a href="#darray_t_darray_set">darray\_set</a> | 设置指定序数的元素(不销毁旧的数据)。 |
| <a href="#darray_t_darray_sort">darray\_sort</a> | 排序。 |
@ -560,6 +561,28 @@ ret_t darray_remove_index (darray_t* darray, uint32_t index);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| index | uint32\_t | 位置序数。 |
#### darray\_remove\_range 函数
-----------------------
* 函数功能:
> <p id="darray_t_darray_remove_range">删除指定范围的元素。
删除范围为[start, end)
* 函数原型:
```
ret_t darray_remove_range (darray_t* darray, uint32_t start, uint32_t end);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| start | uint32\_t | 起始位置。 |
| end | uint32\_t | 结束位置。 |
#### darray\_replace 函数
-----------------------

View File

@ -25,7 +25,7 @@ mem://addr:size
* 函数原型:
```
const char* data_reader_mem_build_url (mem_t* mem, uint32_t size, char* url);
const char* data_reader_mem_build_url (const void* mem, uint32_t size, char* url);
```
* 参数说明:
@ -33,7 +33,7 @@ const char* data_reader_mem_build_url (mem_t* mem, uint32_t size, char* url);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回URL。 |
| mem | mem\_t* | 内存的地址。 |
| mem | const void* | 内存的地址。 |
| size | uint32\_t | 内存的长度。 |
| url | char* | 生成的URL。 |
#### data\_reader\_mem\_create 函数

View File

@ -7,14 +7,17 @@
* M 代表月(1-12)
* D 代表日(1-31)
* h 代表时(0-23)
* H 代表时(0-11)
* m 代表分(0-59)
* s 代表秒(0-59)
* w 代表星期(0-6)
* W 代表星期的英文缩写(支持翻译)
* T 代表时段AM/PM(支持翻译)
* YY 代表年(只显示末两位)
* MM 代表月(01-12)
* DD 代表日(01-31)
* hh 代表时(00-23)
* HH 代表时(00-11)
* mm 代表分(00-59)
* ss 代表秒(00-59)
* MMM 代表月的英文缩写(支持翻译)

View File

@ -0,0 +1,68 @@
## debugger\_breaked\_event\_t
### 概述
![image](images/debugger_breaked_event_t_0.png)
调试器中断运行的事件。
----------------------------------
### 函数
<p id="debugger_breaked_event_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_breaked_event_t_debugger_breaked_event_cast">debugger\_breaked\_event\_cast</a> | 把event对象转debugger_breaked_event_t对象。 |
| <a href="#debugger_breaked_event_t_debugger_breaked_event_init">debugger\_breaked\_event\_init</a> | 初始调试器中断运行的事件。 |
### 属性
<p id="debugger_breaked_event_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_breaked_event_t_line">line</a> | uint32\_t | 中断运行的行号。 |
#### debugger\_breaked\_event\_cast 函数
-----------------------
* 函数功能:
> <p id="debugger_breaked_event_t_debugger_breaked_event_cast">把event对象转debugger_breaked_event_t对象。
* 函数原型:
```
debugger_breaked_event_t* debugger_breaked_event_cast (event_t* event);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_breaked\_event\_t* | 返回event对象。 |
| event | event\_t* | event对象。 |
#### debugger\_breaked\_event\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_breaked_event_t_debugger_breaked_event_init">初始调试器中断运行的事件。
* 函数原型:
```
event_t* debugger_breaked_event_init (debugger_breaked_event_t* event, uint32_t line);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | event\_t* | 返回event对象。 |
| event | debugger\_breaked\_event\_t* | event对象。 |
| line | uint32\_t | 中断运行的行号。 |
#### line 属性
-----------------------
> <p id="debugger_breaked_event_t_line">中断运行的行号。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,105 @@
## debugger\_client\_t
### 概述
调试器客户端。
----------------------------------
### 函数
<p id="debugger_client_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_client_t_debugger_client_cast">debugger\_client\_cast</a> | 类型转换。 |
| <a href="#debugger_client_t_debugger_client_create">debugger\_client\_create</a> | 创建调试器对象。 |
| <a href="#debugger_client_t_debugger_client_dispatch">debugger\_client\_dispatch</a> | 分发一个服务端推送的事件。 |
| <a href="#debugger_client_t_debugger_client_wait_for_completed">debugger\_client\_wait\_for\_completed</a> | 等待完成事件。 |
### 属性
<p id="debugger_client_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_client_t_io">io</a> | tk\_iostream\_t* | 与服务器通信的stream对象。 |
#### debugger\_client\_cast 函数
-----------------------
* 函数功能:
> <p id="debugger_client_t_debugger_client_cast">类型转换。
* 函数原型:
```
debugger_client_t* debugger_client_cast (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_client\_t* | 返回debugger对象。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_client\_create 函数
-----------------------
* 函数功能:
> <p id="debugger_client_t_debugger_client_create">创建调试器对象。
* 函数原型:
```
debugger_t* debugger_client_create (tk_iostream_t* io);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象。 |
| io | tk\_iostream\_t* | io对象。 |
#### debugger\_client\_dispatch 函数
-----------------------
* 函数功能:
> <p id="debugger_client_t_debugger_client_dispatch">分发一个服务端推送的事件。
* 函数原型:
```
ret_t debugger_client_dispatch (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_client\_wait\_for\_completed 函数
-----------------------
* 函数功能:
> <p id="debugger_client_t_debugger_client_wait_for_completed">等待完成事件。
* 函数原型:
```
ret_t debugger_client_wait_for_completed (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### io 属性
-----------------------
> <p id="debugger_client_t_io">与服务器通信的stream对象。
* 类型tk\_iostream\_t*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,30 @@
## debugger\_client\_tcp\_t
### 概述
调试器TCP客户端。
----------------------------------
### 函数
<p id="debugger_client_tcp_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_client_tcp_t_debugger_client_tcp_create">debugger\_client\_tcp\_create</a> | 创建调试器TCP客户端对象。 |
#### debugger\_client\_tcp\_create 函数
-----------------------
* 函数功能:
> <p id="debugger_client_tcp_t_debugger_client_tcp_create">创建调试器TCP客户端对象。
* 函数原型:
```
debugger_t* debugger_client_tcp_create (const char* host, uint32_t port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象。 |
| host | const char* | 目标主机。 |
| port | uint32\_t | 目标端口。 |

View File

@ -0,0 +1,80 @@
## debugger\_error\_event\_t
### 概述
![image](images/debugger_error_event_t_0.png)
程序错误事件。
----------------------------------
### 函数
<p id="debugger_error_event_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_error_event_t_debugger_error_event_cast">debugger\_error\_event\_cast</a> | 把event对象转debugger_error_event_t对象。 |
| <a href="#debugger_error_event_t_debugger_error_event_init">debugger\_error\_event\_init</a> | 初始程序错误的事件。 |
### 属性
<p id="debugger_error_event_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_error_event_t_line">line</a> | uint32\_t | 出现错误的行号。 |
| <a href="#debugger_error_event_t_message">message</a> | const char* | 错误消息。 |
#### debugger\_error\_event\_cast 函数
-----------------------
* 函数功能:
> <p id="debugger_error_event_t_debugger_error_event_cast">把event对象转debugger_error_event_t对象。
* 函数原型:
```
debugger_error_event_t* debugger_error_event_cast (event_t* event);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_error\_event\_t* | 返回event对象。 |
| event | event\_t* | event对象。 |
#### debugger\_error\_event\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_error_event_t_debugger_error_event_init">初始程序错误的事件。
* 函数原型:
```
event_t* debugger_error_event_init (debugger_error_event_t* event, uint32_t line, const char* message);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | event\_t* | 返回event对象。 |
| event | debugger\_error\_event\_t* | event对象。 |
| line | uint32\_t | 出现错误的行号。 |
| message | const char* | 错误信息。 |
#### line 属性
-----------------------
> <p id="debugger_error_event_t_line">出现错误的行号。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### message 属性
-----------------------
> <p id="debugger_error_event_t_message">错误消息。
* 类型const char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,111 @@
## debugger\_factory\_t
### 概述
@annotaion ["fake"]
调试器工厂
----------------------------------
### 函数
<p id="debugger_factory_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_factory_t_debugger_factory_attach_debugger">debugger\_factory\_attach\_debugger</a> | 创建调试器。 |
| <a href="#debugger_factory_t_debugger_factory_deinit">debugger\_factory\_deinit</a> | 释放资源。 |
| <a href="#debugger_factory_t_debugger_factory_init">debugger\_factory\_init</a> | 初始化工厂。 |
| <a href="#debugger_factory_t_debugger_factory_launch_debugger">debugger\_factory\_launch\_debugger</a> | 创建调试器。 |
| <a href="#debugger_factory_t_debugger_factory_reg">debugger\_factory\_reg</a> | 注册创建函数。 |
#### debugger\_factory\_attach\_debugger 函数
-----------------------
* 函数功能:
> <p id="debugger_factory_t_debugger_factory_attach_debugger">创建调试器。
* 函数原型:
```
debugger_t* debugger_factory_attach_debugger (const char* lang, const char* code_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回调试器对象。 |
| lang | const char* | 语言类型。 |
| code\_id | const char* | 代码的ID。 |
#### debugger\_factory\_deinit 函数
-----------------------
* 函数功能:
> <p id="debugger_factory_t_debugger_factory_deinit">释放资源。
* 函数原型:
```
ret_t debugger_factory_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_factory\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_factory_t_debugger_factory_init">初始化工厂。
* 函数原型:
```
ret_t debugger_factory_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_factory\_launch\_debugger 函数
-----------------------
* 函数功能:
> <p id="debugger_factory_t_debugger_factory_launch_debugger">创建调试器。
* 函数原型:
```
debugger_t* debugger_factory_launch_debugger (const char* lang, const binary_data_t* code);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回调试器对象。 |
| lang | const char* | 语言类型。 |
| code | const binary\_data\_t* | 代码。 |
#### debugger\_factory\_reg 函数
-----------------------
* 函数功能:
> <p id="debugger_factory_t_debugger_factory_reg">注册创建函数。
* 函数原型:
```
ret_t debugger_factory_reg (const char* lang, debugger_fscript_create_t create);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| lang | const char* | 语言类型。 |
| create | debugger\_fscript\_create\_t | 创建函数。 |

View File

@ -0,0 +1,111 @@
## debugger\_fscript\_t
### 概述
fscript调试器
----------------------------------
### 函数
<p id="debugger_fscript_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_fscript_t_debugger_fscript_cast">debugger\_fscript\_cast</a> | 类型转换。 |
| <a href="#debugger_fscript_t_debugger_fscript_create">debugger\_fscript\_create</a> | 创建调试器对象。 |
| <a href="#debugger_fscript_t_debugger_fscript_get_start_line">debugger\_fscript\_get\_start\_line</a> | 获取第一行被执行的代码的行号。 |
| <a href="#debugger_fscript_t_debugger_fscript_set_code">debugger\_fscript\_set\_code</a> | 设置代码。 |
| <a href="#debugger_fscript_t_debugger_fscript_set_fscript">debugger\_fscript\_set\_fscript</a> | 设置fscript对象。 |
#### debugger\_fscript\_cast 函数
-----------------------
* 函数功能:
> <p id="debugger_fscript_t_debugger_fscript_cast">类型转换。
* 函数原型:
```
debugger_fscript_t* debugger_fscript_cast (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_fscript\_t* | 返回debugger对象。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_fscript\_create 函数
-----------------------
* 函数功能:
> <p id="debugger_fscript_t_debugger_fscript_create">创建调试器对象。
* 函数原型:
```
debugger_t* debugger_fscript_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象。 |
#### debugger\_fscript\_get\_start\_line 函数
-----------------------
* 函数功能:
> <p id="debugger_fscript_t_debugger_fscript_get_start_line">获取第一行被执行的代码的行号。
* 函数原型:
```
int32_t debugger_fscript_get_start_line (fscript_t* fscript);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回行号。 |
| fscript | fscript\_t* | fscript对象。 |
#### debugger\_fscript\_set\_code 函数
-----------------------
* 函数功能:
> <p id="debugger_fscript_t_debugger_fscript_set_code">设置代码。
* 函数原型:
```
debugger_t* debugger_fscript_set_code (debugger_t* debugger, const binary_data_t* code, bool_t changed);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象。 |
| debugger | debugger\_t* | debugger对象。 |
| code | const binary\_data\_t* | 代码。 |
| changed | bool\_t | 是否重新加载。 |
#### debugger\_fscript\_set\_fscript 函数
-----------------------
* 函数功能:
> <p id="debugger_fscript_t_debugger_fscript_set_fscript">设置fscript对象。
* 函数原型:
```
debugger_t* debugger_fscript_set_fscript (debugger_t* debugger, fscript_t* fscript);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象。 |
| debugger | debugger\_t* | debugger对象。 |
| fscript | fscript\_t* | 脚本对象。 |

View File

@ -0,0 +1,48 @@
## debugger\_global\_t
### 概述
@annotaion ["fake"]
调试器全局函数。
----------------------------------
### 函数
<p id="debugger_global_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_global_t_debugger_global_deinit">debugger\_global\_deinit</a> | 禁用调试器。 |
| <a href="#debugger_global_t_debugger_global_init">debugger\_global\_init</a> | 启用调试器。 |
#### debugger\_global\_deinit 函数
-----------------------
* 函数功能:
> <p id="debugger_global_t_debugger_global_deinit">禁用调试器。
* 函数原型:
```
ret_t debugger_global_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_global\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_global_t_debugger_global_init">启用调试器。
* 函数原型:
```
ret_t debugger_global_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

View File

@ -0,0 +1,80 @@
## debugger\_log\_event\_t
### 概述
![image](images/debugger_log_event_t_0.png)
调试器打印日志的事件。
----------------------------------
### 函数
<p id="debugger_log_event_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_log_event_t_debugger_log_event_cast">debugger\_log\_event\_cast</a> | 把event对象转debugger_log_event_t对象。 |
| <a href="#debugger_log_event_t_debugger_log_event_init">debugger\_log\_event\_init</a> | 初始调试器打印日志的事件。 |
### 属性
<p id="debugger_log_event_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_log_event_t_line">line</a> | int32\_t | 打印日志的行号(<0表示原生代码打印的日志)。 |
| <a href="#debugger_log_event_t_message">message</a> | const char* | 日志消息。 |
#### debugger\_log\_event\_cast 函数
-----------------------
* 函数功能:
> <p id="debugger_log_event_t_debugger_log_event_cast">把event对象转debugger_log_event_t对象。
* 函数原型:
```
debugger_log_event_t* debugger_log_event_cast (event_t* event);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_log\_event\_t* | 返回event对象。 |
| event | event\_t* | event对象。 |
#### debugger\_log\_event\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_log_event_t_debugger_log_event_init">初始调试器打印日志的事件。
* 函数原型:
```
event_t* debugger_log_event_init (debugger_log_event_t* event, uint32_t line, const char* message);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | event\_t* | 返回event对象。 |
| event | debugger\_log\_event\_t* | event对象。 |
| line | uint32\_t | 打印日志的行号。 |
| message | const char* | 日志。 |
#### line 属性
-----------------------
> <p id="debugger_log_event_t_line">打印日志的行号(<0表示原生代码打印的日志)
* 类型int32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### message 属性
-----------------------
> <p id="debugger_log_event_t_message">日志消息。
* 类型const char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,53 @@
## debugger\_req\_t
### 概述
调试器请求头。
----------------------------------
### 属性
<p id="debugger_req_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_req_t_code">code</a> | uint32\_t | 请求码。 |
| <a href="#debugger_req_t_data">data</a> | uint32\_t | 数据。 |
| <a href="#debugger_req_t_size">size</a> | uint32\_t | 数据长度(除请求头外)。 |
| <a href="#debugger_req_t_version">version</a> | uint32\_t | 版本号。 |
#### code 属性
-----------------------
> <p id="debugger_req_t_code">请求码。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### data 属性
-----------------------
> <p id="debugger_req_t_data">数据。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### size 属性
-----------------------
> <p id="debugger_req_t_size">数据长度(除请求头外)。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### version 属性
-----------------------
> <p id="debugger_req_t_version">版本号。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,31 @@
## debugger\_req\_type\_t
### 概述
请求的消息类型。
### 常量
<p id="debugger_req_type_t_consts">
| 名称 | 说明 |
| -------- | ------- |
| DEBUGGER\_REQ\_ATTACH | attach请求码。 |
| DEBUGGER\_REQ\_STOP | 停止运行请求码。 |
| DEBUGGER\_REQ\_PAUSE | 暂停运行请求码。 |
| DEBUGGER\_REQ\_IS\_PAUSED | 查询是否处于暂停状态请求码。 |
| DEBUGGER\_REQ\_NEXT | 运行下一步请求码。 |
| DEBUGGER\_REQ\_STEP\_IN | 运行进入函数请求码。 |
| DEBUGGER\_REQ\_STEP\_OUT | 运行退出函数请求码。 |
| DEBUGGER\_REQ\_NEXT | 运行下一行请求码。 |
| DEBUGGER\_REQ\_CONTINUE | 运行到下一个断点请求码。 |
| DEBUGGER\_REQ\_SET\_BREAK\_POINT | 设置断点请求码。 |
| DEBUGGER\_REQ\_REMOVE\_BREAK\_POINT | 移除断点请求码。 |
| DEBUGGER\_REQ\_CLEAR\_BREAK\_POINTS | 清除断点请求码。 |
| DEBUGGER\_REQ\_GET\_SELF | 获取self对象请求码。 |
| DEBUGGER\_REQ\_GET\_LOCAL | 获取局部变量和函数参数对象请求码。 |
| DEBUGGER\_REQ\_GET\_GLOBAL | 获取global对象请求码。 |
| DEBUGGER\_REQ\_GET\_CODE | 获取源代码请求码。 |
| DEBUGGER\_REQ\_GET\_DEBUGGERS | 获取调试器列表。 |
| DEBUGGER\_REQ\_GET\_BREAK\_POINTS | 获取断点列表。 |
| DEBUGGER\_REQ\_GET\_CALLSTACK | 获取callstack请求码。 |
| DEBUGGER\_REQ\_UPDATE\_CODE | 更新源代码请求码。 |
| DEBUGGER\_REQ\_LAUNCH | 执行代码请求码。 |
| DEBUGGER\_REQ\_DEINIT | 断开调试器请求码。 |
| DEBUGGER\_REQ\_RESTART | 重新运行运行请求码。 |

View File

@ -0,0 +1,53 @@
## debugger\_resp\_t
### 概述
调试器响应头。
----------------------------------
### 属性
<p id="debugger_resp_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#debugger_resp_t_code">code</a> | uint32\_t | 响应码。 |
| <a href="#debugger_resp_t_error">error</a> | uint32\_t | 错误码(定义同ret_t)。 |
| <a href="#debugger_resp_t_size">size</a> | uint32\_t | 数据长度(除请求头外)。 |
| <a href="#debugger_resp_t_version">version</a> | uint32\_t | 版本号。 |
#### code 属性
-----------------------
> <p id="debugger_resp_t_code">响应码。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### error 属性
-----------------------
> <p id="debugger_resp_t_error">错误码(定义同ret_t)。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### size 属性
-----------------------
> <p id="debugger_resp_t_size">数据长度(除请求头外)。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### version 属性
-----------------------
> <p id="debugger_resp_t_version">版本号。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,34 @@
## debugger\_resp\_type\_t
### 概述
响应/推送的消息类型。
### 常量
<p id="debugger_resp_type_t_consts">
| 名称 | 说明 |
| -------- | ------- |
| DEBUGGER\_RESP\_ATTACH | attach响应码。 |
| DEBUGGER\_RESP\_STOP | 停止运行响应码。 |
| DEBUGGER\_RESP\_IS\_PAUSED | 查询是否处于暂停状态响应码。 |
| DEBUGGER\_RESP\_PAUSE | 暂停运行响应码。 |
| DEBUGGER\_RESP\_NEXT | 运行下一步响应码。 |
| DEBUGGER\_RESP\_STEP\_IN | 运行进入函数响应码。 |
| DEBUGGER\_RESP\_STEP\_OUT | 运行退出函数响应码。 |
| DEBUGGER\_RESP\_NEXT | 运行下一行响应码。 |
| DEBUGGER\_RESP\_CONTINUE | 运行到下一个断点响应码。 |
| DEBUGGER\_REQ\_SET\_BREAK\_POINT | 设置断点响应码。 |
| DEBUGGER\_RESP\_REMOVE\_BREAK\_POINT | 移除断点响应码。 |
| DEBUGGER\_RESP\_CLEAR\_BREAK\_POINTS | 清除断点响应码。 |
| DEBUGGER\_RESP\_GET\_SELF | 获取self对象响应码。 |
| DEBUGGER\_RESP\_GET\_LOCAL | 获取局部变量和函数参数对象响应码。 |
| DEBUGGER\_RESP\_GET\_GLOBAL | 获取global对象响应码。 |
| DEBUGGER\_RESP\_GET\_CODE | 获取源代码响应码。 |
| DEBUGGER\_RESP\_GET\_DEBUGGERS | 获取调试器列表响应码。 |
| DEBUGGER\_RESP\_GET\_BREAK\_POINTS | 获取断点列表响应码。 |
| DEBUGGER\_RESP\_GET\_CALLSTACK | 获取callstack响应码。 |
| DEBUGGER\_RESP\_UPDATE\_CODE | 更新源代码响应码。 |
| DEBUGGER\_RESP\_LAUNCH | 执行代码响应码。 |
| DEBUGGER\_RESP\_DEINIT | 断开调试器响应码。 |
| DEBUGGER\_RESP\_MSG\_LOG | 程序打印日志的响应码/事件码。 |
| DEBUGGER\_RESP\_MSG\_ERROR | 程序出现错误的响应码/事件码。 |
| DEBUGGER\_RESP\_MSG\_BREAKED | 程序中断的响应码/事件码。 |
| DEBUGGER\_RESP\_MSG\_COMPLETED | 程序执行完成的响应码/事件码。 |

View File

@ -0,0 +1,149 @@
## debugger\_server\_t
### 概述
@annotaion ["fake"]
调试器服务器。
----------------------------------
### 函数
<p id="debugger_server_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_server_t_debugger_server_find_debugger">debugger\_server\_find\_debugger</a> | 查找调试器对象。 |
| <a href="#debugger_server_t_debugger_server_is_running">debugger\_server\_is\_running</a> | 判断服务是否在运行。 |
| <a href="#debugger_server_t_debugger_server_set_single_mode">debugger\_server\_set\_single\_mode</a> | 设置为单一debugger模式。 |
| <a href="#debugger_server_t_debugger_server_set_single_mode_ex">debugger\_server\_set\_single\_mode\_ex</a> | 设置为单一debugger模式。 |
| <a href="#debugger_server_t_debugger_server_start">debugger\_server\_start</a> | 启用调试器服务。 |
| <a href="#debugger_server_t_debugger_server_stop">debugger\_server\_stop</a> | 停用调试器服务。 |
| <a href="#debugger_server_t_debugger_server_wait">debugger\_server\_wait</a> | 等待调试器服务退出。 |
#### debugger\_server\_find\_debugger 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_find_debugger">查找调试器对象。
* 函数原型:
```
debugger_t* debugger_server_find_debugger (const char* code_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | debugger\_t* | 返回debugger对象或者NULL。 |
| code\_id | const char* | 代码ID。 |
#### debugger\_server\_is\_running 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_is_running">判断服务是否在运行。
* 函数原型:
```
bool_t debugger_server_is_running ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示在运行否则表示没有运行。 |
#### debugger\_server\_set\_single\_mode 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_set_single_mode">设置为单一debugger模式。
* 函数原型:
```
ret_t debugger_server_set_single_mode (bool_t single_mode);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| single\_mode | bool\_t | 单一debugger模式 |
#### debugger\_server\_set\_single\_mode\_ex 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_set_single_mode_ex">设置为单一debugger模式。
* 函数原型:
```
ret_t debugger_server_set_single_mode_ex (bool_t single_mode, const char* lang, const char* code_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| single\_mode | bool\_t | 单一debugger模式 |
| lang | const char* | 语言。 |
| code\_id | const char* | 代码ID。 |
#### debugger\_server\_start 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_start">启用调试器服务。
* 函数原型:
```
ret_t debugger_server_start (tk_iostream_t* io);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| io | tk\_iostream\_t* | IO对象用于和客户端通信。 |
#### debugger\_server\_stop 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_stop">停用调试器服务。
* 函数原型:
```
ret_t debugger_server_stop ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_server\_wait 函数
-----------------------
* 函数功能:
> <p id="debugger_server_t_debugger_server_wait">等待调试器服务退出。
* 函数原型:
```
ret_t debugger_server_wait ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

View File

@ -0,0 +1,107 @@
## debugger\_server\_tcp\_t
### 概述
调试器TCP服务端。
----------------------------------
### 函数
<p id="debugger_server_tcp_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_server_tcp_t_debugger_server_tcp_deinit">debugger\_server\_tcp\_deinit</a> | 停止调试器服务。 |
| <a href="#debugger_server_tcp_t_debugger_server_tcp_init">debugger\_server\_tcp\_init</a> | 初始化调试器服务。 |
| <a href="#debugger_server_tcp_t_debugger_server_tcp_is_inited">debugger\_server\_tcp\_is\_inited</a> | 检查是否已经初始化。 |
| <a href="#debugger_server_tcp_t_debugger_server_tcp_start">debugger\_server\_tcp\_start</a> | 启动调试器服务。 |
| <a href="#debugger_server_tcp_t_debugger_server_tcp_start_async">debugger\_server\_tcp\_start\_async</a> | 启动调试器服务。 |
#### debugger\_server\_tcp\_deinit 函数
-----------------------
* 函数功能:
> <p id="debugger_server_tcp_t_debugger_server_tcp_deinit">停止调试器服务。
* 函数原型:
```
ret_t debugger_server_tcp_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_server\_tcp\_init 函数
-----------------------
* 函数功能:
> <p id="debugger_server_tcp_t_debugger_server_tcp_init">初始化调试器服务。
* 函数原型:
```
ret_t debugger_server_tcp_init (uint32_t port);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| port | uint32\_t | 监听端口。 |
#### debugger\_server\_tcp\_is\_inited 函数
-----------------------
* 函数功能:
> <p id="debugger_server_tcp_t_debugger_server_tcp_is_inited">检查是否已经初始化。
* 函数原型:
```
bool_t debugger_server_tcp_is_inited ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示已经初始化否则表示没有。 |
#### debugger\_server\_tcp\_start 函数
-----------------------
* 函数功能:
> <p id="debugger_server_tcp_t_debugger_server_tcp_start">启动调试器服务。
> 接收客户端请求,并启动服务。
* 函数原型:
```
ret_t debugger_server_tcp_start ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### debugger\_server\_tcp\_start\_async 函数
-----------------------
* 函数功能:
> <p id="debugger_server_tcp_t_debugger_server_tcp_start_async">启动调试器服务。
> 接收客户端请求,并启动服务。
* 函数原型:
```
ret_t debugger_server_tcp_start_async ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

551
docs/manual/debugger_t.md Normal file
View File

@ -0,0 +1,551 @@
## debugger\_t
### 概述
调试器接口。
----------------------------------
### 函数
<p id="debugger_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#debugger_t_debugger_attach">debugger\_attach</a> | 附近到指定的代码片段。 |
| <a href="#debugger_t_debugger_clear_break_points">debugger\_clear\_break\_points</a> | 清除全部断点。 |
| <a href="#debugger_t_debugger_continue">debugger\_continue</a> | 执行到下一个断点。 |
| <a href="#debugger_t_debugger_deinit">debugger\_deinit</a> | 释放资源。 |
| <a href="#debugger_t_debugger_get_break_points">debugger\_get\_break\_points</a> | 获取断点列表。 |
| <a href="#debugger_t_debugger_get_callstack">debugger\_get\_callstack</a> | 获取callstack。 |
| <a href="#debugger_t_debugger_get_code">debugger\_get\_code</a> | 获取代码。 |
| <a href="#debugger_t_debugger_get_debuggers">debugger\_get\_debuggers</a> | 获取调试器列表。 |
| <a href="#debugger_t_debugger_get_global">debugger\_get\_global</a> | 获取全局对象。 |
| <a href="#debugger_t_debugger_get_local">debugger\_get\_local</a> | 获取局部变量对象。 |
| <a href="#debugger_t_debugger_get_self">debugger\_get\_self</a> | 获取self对象。 |
| <a href="#debugger_t_debugger_is_paused">debugger\_is\_paused</a> | 查看当前是否处于暂停运行状态。 |
| <a href="#debugger_t_debugger_launch">debugger\_launch</a> | 执行代码。 |
| <a href="#debugger_t_debugger_lock">debugger\_lock</a> | 锁定debugger对象。 |
| <a href="#debugger_t_debugger_match">debugger\_match</a> | 检查code_id是否与当前debugger匹配。 |
| <a href="#debugger_t_debugger_next">debugger\_next</a> | 执行到下一行代码。 |
| <a href="#debugger_t_debugger_pause">debugger\_pause</a> | 暂停运行。 |
| <a href="#debugger_t_debugger_remove_break_point">debugger\_remove\_break\_point</a> | 清除断点。 |
| <a href="#debugger_t_debugger_restart">debugger\_restart</a> | 重新运行。 |
| <a href="#debugger_t_debugger_set_break_point">debugger\_set\_break\_point</a> | 设置断点。 |
| <a href="#debugger_t_debugger_step_in">debugger\_step\_in</a> | 进入函数。 |
| <a href="#debugger_t_debugger_step_out">debugger\_step\_out</a> | 执行到函数结束。 |
| <a href="#debugger_t_debugger_step_over">debugger\_step\_over</a> | 执行下一条语句(跳过循环) |
| <a href="#debugger_t_debugger_stop">debugger\_stop</a> | 停止运行。 |
| <a href="#debugger_t_debugger_unlock">debugger\_unlock</a> | 解锁debugger对象。 |
| <a href="#debugger_t_debugger_update_code">debugger\_update\_code</a> | 更新代码。 |
#### debugger\_attach 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_attach">附近到指定的代码片段。
* 函数原型:
```
ret_t debugger_attach (debugger_t* debugger, const char* lang, const char* code_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| lang | const char* | 代码的语言。 |
| code\_id | const char* | 代码的ID。 |
#### debugger\_clear\_break\_points 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_clear_break_points">清除全部断点。
* 函数原型:
```
ret_t debugger_clear_break_points (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_continue 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_continue">执行到下一个断点。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
ret_t debugger_continue (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_deinit 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_deinit">释放资源。
* 函数原型:
```
ret_t debugger_deinit (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_get\_break\_points 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_break_points">获取断点列表。
* 函数原型:
```
ret_t debugger_get_break_points (debugger_t* debugger, binary_data_t* break_points);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| break\_points | binary\_data\_t* | 断点列表(每行一个)。 |
#### debugger\_get\_callstack 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_callstack">获取callstack。
* 函数原型:
```
ret_t debugger_get_callstack (debugger_t* debugger, binary_data_t* callstack);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| callstack | binary\_data\_t* | callstack。 |
#### debugger\_get\_code 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_code">获取代码。
* 函数原型:
```
ret_t debugger_get_code (debugger_t* debugger, binary_data_t* code);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| code | binary\_data\_t* | 代码。 |
#### debugger\_get\_debuggers 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_debuggers">获取调试器列表。
* 函数原型:
```
ret_t debugger_get_debuggers (debugger_t* debugger, binary_data_t* debuggers);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| debuggers | binary\_data\_t* | 调试器列表(每行一个)。 |
#### debugger\_get\_global 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_global">获取全局对象。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
tk_object_t* debugger_get_global (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回全局对象。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_get\_local 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_local">获取局部变量对象。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
tk_object_t* debugger_get_local (debugger_t* debugger, uint32_t frame_index);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回局部变量对象。 |
| debugger | debugger\_t* | debugger对象。 |
| frame\_index | uint32\_t | frame序数(0表示当前) |
#### debugger\_get\_self 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_get_self">获取self对象。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
tk_object_t* debugger_get_self (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回self对象。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_is\_paused 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_is_paused">查看当前是否处于暂停运行状态。
* 函数原型:
```
bool_t debugger_is_paused (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示处于暂停运行状态。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_launch 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_launch">执行代码。
* 函数原型:
```
ret_t debugger_launch (debugger_t* debugger, const char* lang, const binary_data_t* code);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| lang | const char* | 代码的语言。 |
| code | const binary\_data\_t* | 代码。 |
#### debugger\_lock 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_lock">锁定debugger对象。
* 函数原型:
```
ret_t debugger_lock (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_match 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_match">检查code_id是否与当前debugger匹配。
* 函数原型:
```
bool_t debugger_match (debugger_t* debugger, const char* code_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示匹配到。 |
| debugger | debugger\_t* | debugger对象。 |
| code\_id | const char* | 代码ID。 |
#### debugger\_next 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_next">执行到下一行代码。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
ret_t debugger_next (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_pause 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_pause">暂停运行。
> 暂停后才能执行next/step_xxx等函数。
* 函数原型:
```
ret_t debugger_pause (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_remove\_break\_point 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_remove_break_point">清除断点。
* 函数原型:
```
ret_t debugger_remove_break_point (debugger_t* debugger, uint32_t line);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| line | uint32\_t | 代码行号。 |
#### debugger\_restart 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_restart">重新运行。
* 函数原型:
```
ret_t debugger_restart (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_set\_break\_point 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_set_break_point">设置断点。
* 函数原型:
```
ret_t debugger_set_break_point (debugger_t* debugger, uint32_t line);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| line | uint32\_t | 代码行号。 |
#### debugger\_step\_in 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_step_in">进入函数。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
ret_t debugger_step_in (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_step\_out 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_step_out">执行到函数结束。
> 处于暂停状态才能执行本命令。
* 函数原型:
```
ret_t debugger_step_out (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_step\_over 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_step_over">执行下一条语句(跳过循环)
> 处于暂停状态才能执行本命令。
* 函数原型:
```
ret_t debugger_step_over (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_stop 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_stop">停止运行。
* 函数原型:
```
ret_t debugger_stop (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_unlock 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_unlock">解锁debugger对象。
* 函数原型:
```
ret_t debugger_unlock (debugger_t* debugger);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
#### debugger\_update\_code 函数
-----------------------
* 函数功能:
> <p id="debugger_t_debugger_update_code">更新代码。
* 函数原型:
```
ret_t debugger_update_code (debugger_t* debugger, const binary_data_t* code);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| debugger | debugger\_t* | debugger对象。 |
| code | const binary\_data\_t* | 代码。 |

View File

@ -32,6 +32,7 @@ dialog\_client\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数
| -------- | ------------ |
| <a href="#dialog_client_t_dialog_client_cast">dialog\_client\_cast</a> | 转换为dialog_client对象(供脚本语言使用)。 |
| <a href="#dialog_client_t_dialog_client_create">dialog\_client\_create</a> | 创建dialog客户区对象。 |
| <a href="#dialog_client_t_dialog_client_get_widget_vtable">dialog\_client\_get\_widget\_vtable</a> | 获取 dialog_client 虚表。 |
#### dialog\_client\_cast 函数
-----------------------
@ -74,3 +75,21 @@ widget_t* dialog_client_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 | 高度 |
#### dialog\_client\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="dialog_client_t_dialog_client_get_widget_vtable">获取 dialog_client 虚表。
* 函数原型:
```
const widget_vtable_t* dialog_client_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 dialog\_client 虚表。 |

View File

@ -19,6 +19,7 @@
| <a href="#dialog_highlighter_default_t_end_alpha">end\_alpha</a> | uint8\_t | 结束alpha打开对话框的动画结束(直到对话框被关闭)时的alpha值。 |
| <a href="#dialog_highlighter_default_t_start_alpha">start\_alpha</a> | uint8\_t | 起始alpha打开对话框的动画开始时的alpha值。 |
| <a href="#dialog_highlighter_default_t_system_bar_alpha">system\_bar\_alpha</a> | uint8\_t | 由于在没有过度动画的情况下,截图中已经包括黑色色块,为了让 system_bar 也同步高亮部分的色块透明。 |
| <a href="#dialog_highlighter_default_t_update_background">update\_background</a> | bool\_t | 是否刷新底层窗口的截图。 |
#### dialog\_highlighter\_default\_create 函数
-----------------------
@ -29,7 +30,7 @@
* 函数原型:
```
dialog_highlighter_t* dialog_highlighter_default_create (object_t* args);
dialog_highlighter_t* dialog_highlighter_default_create (tk_object_t* args);
```
* 参数说明:
@ -37,7 +38,7 @@ dialog_highlighter_t* dialog_highlighter_default_create (object_t* args);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | dialog\_highlighter\_t* | 返回对话框高亮策略对象。 |
| args | object\_t* | 参数。 |
| args | tk\_object\_t* | 参数。 |
#### end\_alpha 属性
-----------------------
> <p id="dialog_highlighter_default_t_end_alpha">结束alpha打开对话框的动画结束(直到对话框被关闭)时的alpha值。
@ -56,3 +57,9 @@ dialog_highlighter_t* dialog_highlighter_default_create (object_t* args);
* 类型uint8\_t
#### update\_background 属性
-----------------------
> <p id="dialog_highlighter_default_t_update_background">是否刷新底层窗口的截图。
* 类型bool\_t

View File

@ -20,6 +20,7 @@
| <a href="#dialog_highlighter_t_dialog_highlighter_set_bg">dialog\_highlighter\_set\_bg</a> | 设置背景图片。 |
| <a href="#dialog_highlighter_t_dialog_highlighter_set_bg_clip_rect">dialog\_highlighter\_set\_bg\_clip\_rect</a> | 设置背景图片的显示裁剪区。 |
| <a href="#dialog_highlighter_t_dialog_highlighter_set_system_bar_alpha">dialog\_highlighter\_set\_system\_bar\_alpha</a> | 设置 sytem_bar 的高亮透明值。 |
| <a href="#dialog_highlighter_t_dialog_highlighter_set_win">dialog\_highlighter\_set\_win</a> | 设置底层窗口。 |
### 属性
<p id="dialog_highlighter_t_properties">
@ -29,6 +30,7 @@
| <a href="#dialog_highlighter_t_clip_rect">clip\_rect</a> | rect\_t* | 截图的显示裁减区 |
| <a href="#dialog_highlighter_t_dialog">dialog</a> | widget\_t* | 对应的对话框。 |
| <a href="#dialog_highlighter_t_img">img</a> | bitmap\_t | 底层窗口的截图。 |
| <a href="#dialog_highlighter_t_win">win</a> | widget\_t* | 底层窗口。 |
#### dialog\_highlighter\_create 函数
-----------------------
@ -250,6 +252,26 @@ ret_t dialog_highlighter_set_system_bar_alpha (dialog_highlighter_t* h, uint8_t
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| h | dialog\_highlighter\_t* | 对话框高亮策略对象。 |
| alpha | uint8\_t | 设置 sytem\_bar 的高亮透明值。 |
#### dialog\_highlighter\_set\_win 函数
-----------------------
* 函数功能:
> <p id="dialog_highlighter_t_dialog_highlighter_set_win">设置底层窗口。
* 函数原型:
```
ret_t dialog_highlighter_set_win (dialog_highlighter_t* h, widget_t* win);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| h | dialog\_highlighter\_t* | 对话框高亮策略对象。 |
| win | widget\_t* | 底层窗口。 |
#### canvas 属性
-----------------------
> <p id="dialog_highlighter_t_canvas">画布。
@ -274,3 +296,9 @@ ret_t dialog_highlighter_set_system_bar_alpha (dialog_highlighter_t* h, uint8_t
* 类型bitmap\_t
#### win 属性
-----------------------
> <p id="dialog_highlighter_t_win">底层窗口。
* 类型widget\_t*

View File

@ -106,8 +106,10 @@ return RET_OK;
| <a href="#dialog_t_dialog_confirm">dialog\_confirm</a> | 显示『确认』对话框。 |
| <a href="#dialog_t_dialog_create">dialog\_create</a> | 创建dialog对象。 |
| <a href="#dialog_t_dialog_create_simple">dialog\_create\_simple</a> | 创建dialog对象同时创建title/client。 |
| <a href="#dialog_t_dialog_create_with_ok_cancel">dialog\_create\_with\_ok\_cancel</a> | 创建一个带有OK/Cancel按钮的对话框。 |
| <a href="#dialog_t_dialog_get_client">dialog\_get\_client</a> | 获取client控件。 |
| <a href="#dialog_t_dialog_get_title">dialog\_get\_title</a> | 获取title控件。 |
| <a href="#dialog_t_dialog_get_widget_vtable">dialog\_get\_widget\_vtable</a> | 获取 dialog 虚表。 |
| <a href="#dialog_t_dialog_info">dialog\_info</a> | 显示『提示信息』对话框。 |
| <a href="#dialog_t_dialog_is_modal">dialog\_is\_modal</a> | 检查对话框是否为模态对话框。 |
| <a href="#dialog_t_dialog_is_quited">dialog\_is\_quited</a> | 检查对话框是否已经退出模态。 |
@ -115,6 +117,7 @@ return RET_OK;
| <a href="#dialog_t_dialog_open">dialog\_open</a> | 从资源文件中加载并创建Dialog对象。 |
| <a href="#dialog_t_dialog_quit">dialog\_quit</a> | 退出模态显示,关闭对话框。 |
| <a href="#dialog_t_dialog_set_title">dialog\_set\_title</a> | 设置对话框的标题文本。 |
| <a href="#dialog_t_dialog_simple_show">dialog\_simple\_show</a> | |
| <a href="#dialog_t_dialog_toast">dialog\_toast</a> | 显示『短暂提示信息』对话框。 |
| <a href="#dialog_t_dialog_warn">dialog\_warn</a> | 显示『警告』对话框。 |
### 属性
@ -210,6 +213,27 @@ widget_t* dialog_create_simple (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 | 高度 |
#### dialog\_create\_with\_ok\_cancel 函数
-----------------------
* 函数功能:
> <p id="dialog_t_dialog_create_with_ok_cancel">创建一个带有OK/Cancel按钮的对话框。
* 函数原型:
```
widget_t* dialog_create_with_ok_cancel (const char* stitle, uint32_t w, uint32_t h);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 成功返回dialog对象失败返回NULL。 |
| stitle | const char* | 标题。 |
| w | uint32\_t | 宽度。 |
| h | uint32\_t | 高度。 |
#### dialog\_get\_client 函数
-----------------------
@ -248,6 +272,24 @@ widget_t* dialog_get_title (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | widget\_t* | title对象。 |
| widget | widget\_t* | dialog对象。 |
#### dialog\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="dialog_t_dialog_get_widget_vtable">获取 dialog 虚表。
* 函数原型:
```
const widget_vtable_t* dialog_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 dialog 虚表。 |
#### dialog\_info 函数
-----------------------

View File

@ -32,6 +32,7 @@ dialog\_title\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数
| -------- | ------------ |
| <a href="#dialog_title_t_dialog_title_cast">dialog\_title\_cast</a> | 转换为dialog_title对象(供脚本语言使用)。 |
| <a href="#dialog_title_t_dialog_title_create">dialog\_title\_create</a> | 创建dialog对象。 |
| <a href="#dialog_title_t_dialog_title_get_widget_vtable">dialog\_title\_get\_widget\_vtable</a> | 获取 dialog_title 虚表。 |
#### dialog\_title\_cast 函数
-----------------------
@ -74,3 +75,21 @@ widget_t* dialog_title_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 | 高度 |
#### dialog\_title\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="dialog_title_t_dialog_title_get_widget_vtable">获取 dialog_title 虚表。
* 函数原型:
```
const widget_vtable_t* dialog_title_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 dialog\_title 虚表。 |

View File

@ -43,6 +43,7 @@ https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L1
| -------- | ------------ |
| <a href="#digit_clock_t_digit_clock_cast">digit\_clock\_cast</a> | 转换为digit_clock对象(供脚本语言使用)。 |
| <a href="#digit_clock_t_digit_clock_create">digit\_clock\_create</a> | 创建digit_clock对象 |
| <a href="#digit_clock_t_digit_clock_get_widget_vtable">digit\_clock\_get\_widget\_vtable</a> | 获取 digit_clock 虚表。 |
| <a href="#digit_clock_t_digit_clock_set_format">digit\_clock\_set\_format</a> | 设置显示格式。 |
### 属性
<p id="digit_clock_t_properties">
@ -92,6 +93,24 @@ widget_t* digit_clock_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 | 高度 |
#### digit\_clock\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="digit_clock_t_digit_clock_get_widget_vtable">获取 digit_clock 虚表。
* 函数原型:
```
const widget_vtable_t* digit_clock_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 digit\_clock 虚表。 |
#### digit\_clock\_set\_format 函数
-----------------------
@ -120,14 +139,17 @@ ret_t digit_clock_set_format (widget_t* widget, const char* format);
* M 代表月(1-12)
* D 代表日(1-31)
* h 代表时(0-23)
* H 代表时(0-11)
* m 代表分(0-59)
* s 代表秒(0-59)
* w 代表星期(0-6)
* W 代表星期的英文缩写(支持翻译)
* T 代表时段AM/PM(支持翻译)
* YY 代表年(只显示末两位)
* MM 代表月(01-12)
* DD 代表日(01-31)
* hh 代表时(00-23)
* HH 代表时(00-11)
* mm 代表分(00-59)
* ss 代表秒(00-59)
* MMM 代表月的英文缩写(支持翻译)

View File

@ -40,7 +40,10 @@ widget_t* draggable = draggable_create(target, 0, 0, 0, 0);
| -------- | ------------ |
| <a href="#draggable_t_draggable_cast">draggable\_cast</a> | 转换为draggable对象(供脚本语言使用)。 |
| <a href="#draggable_t_draggable_create">draggable\_create</a> | 创建draggable对象 |
| <a href="#draggable_t_draggable_get_widget_vtable">draggable\_get\_widget\_vtable</a> | 获取 draggable 虚表。 |
| <a href="#draggable_t_draggable_set_bottom">draggable\_set\_bottom</a> | 设置bottom。 |
| <a href="#draggable_t_draggable_set_drag_native_window">draggable\_set\_drag\_native\_window</a> | 设置drag_native_window。 |
| <a href="#draggable_t_draggable_set_drag_parent">draggable\_set\_drag\_parent</a> | 设置drag_parent。 |
| <a href="#draggable_t_draggable_set_drag_window">draggable\_set\_drag\_window</a> | 设置drag_window。 |
| <a href="#draggable_t_draggable_set_horizontal_only">draggable\_set\_horizontal\_only</a> | 设置horizontal_only。 |
| <a href="#draggable_t_draggable_set_left">draggable\_set\_left</a> | 设置left。 |
@ -53,6 +56,8 @@ widget_t* draggable = draggable_create(target, 0, 0, 0, 0);
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#draggable_t_bottom">bottom</a> | int32\_t | 拖动范围的底部限制。缺省为父控件的底部。 |
| <a href="#draggable_t_drag_native_window">drag\_native\_window</a> | bool\_t | 拖动原生窗口。 |
| <a href="#draggable_t_drag_parent">drag\_parent</a> | uint32\_t | 拖动父控件。0表示直系父控件1表示父控件的父控件依次类推。 |
| <a href="#draggable_t_drag_window">drag\_window</a> | bool\_t | 拖动窗口而不是父控件。比如放在对话框的titlebar上拖动titlebar其实是希望拖动对话框。 |
| <a href="#draggable_t_horizontal_only">horizontal\_only</a> | bool\_t | 只允许水平拖动。 |
| <a href="#draggable_t_left">left</a> | int32\_t | 拖动范围的左边限制。缺省为父控件的左边。 |
@ -101,6 +106,24 @@ widget_t* draggable_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 | 高度 |
#### draggable\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="draggable_t_draggable_get_widget_vtable">获取 draggable 虚表。
* 函数原型:
```
const widget_vtable_t* draggable_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 draggable 虚表。 |
#### draggable\_set\_bottom 函数
-----------------------
@ -121,6 +144,47 @@ ret_t draggable_set_bottom (widget_t* widget, int32_t bottom);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| bottom | int32\_t | 拖动范围的底部限制。缺省为父控件的底部。 |
#### draggable\_set\_drag\_native\_window 函数
-----------------------
* 函数功能:
> <p id="draggable_t_draggable_set_drag_native_window">设置drag_native_window。
* 函数原型:
```
ret_t draggable_set_drag_native_window (widget_t* widget, bool_t drag_native_window);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| drag\_native\_window | bool\_t | 是否拖动原生窗口。 |
#### draggable\_set\_drag\_parent 函数
-----------------------
* 函数功能:
> <p id="draggable_t_draggable_set_drag_parent">设置drag_parent。
拖动窗口而不是父控件。比如放在对话框的titlebar上拖动titlebar其实是希望拖动对话框。
* 函数原型:
```
ret_t draggable_set_drag_parent (widget_t* widget, uint32_t drag_parent);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| drag\_parent | uint32\_t | 0表示直系父控件1表示父控件的父控件依次类推。 |
#### draggable\_set\_drag\_window 函数
-----------------------
@ -141,7 +205,7 @@ ret_t draggable_set_drag_window (widget_t* widget, bool_t drag_window);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| drag\_window | bool\_t | drag\_window |
| drag\_window | bool\_t | 是否拖动窗口。 |
#### draggable\_set\_horizontal\_only 函数
-----------------------
@ -248,6 +312,38 @@ ret_t draggable_set_vertical_only (widget_t* widget, bool_t vertical_only);
* 类型int32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### drag\_native\_window 属性
-----------------------
> <p id="draggable_t_drag_native_window">拖动原生窗口。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### drag\_parent 属性
-----------------------
> <p id="draggable_t_drag_parent">拖动父控件。0表示直系父控件1表示父控件的父控件依次类推。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -13,6 +13,7 @@ dragger控件。
| -------- | ------------ |
| <a href="#dragger_t_dragger_cast">dragger\_cast</a> | 转换为dragger对象(供脚本语言使用)。 |
| <a href="#dragger_t_dragger_create">dragger\_create</a> | 创建dragger对象。 |
| <a href="#dragger_t_dragger_get_widget_vtable">dragger\_get\_widget\_vtable</a> | 获取 dragger 虚表。 |
| <a href="#dragger_t_dragger_set_range">dragger\_set\_range</a> | 设置拖动的范围。 |
### 属性
<p id="dragger_t_properties">
@ -73,6 +74,24 @@ widget_t* dragger_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 | 高度 |
#### dragger\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="dragger_t_dragger_get_widget_vtable">获取 dragger 虚表。
* 函数原型:
```
const widget_vtable_t* dragger_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 dragger 虚表。 |
#### dragger\_set\_range 函数
-----------------------

View File

@ -68,6 +68,7 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| <a href="#edit_t_edit_get_double">edit\_get\_double</a> | 获取double类型的值。 |
| <a href="#edit_t_edit_get_int">edit\_get\_int</a> | 获取int类型的值。 |
| <a href="#edit_t_edit_get_selected_text">edit\_get\_selected\_text</a> | 获取选中的文本。 |
| <a href="#edit_t_edit_get_widget_vtable">edit\_get\_widget\_vtable</a> | 获取 edit 虚表。 |
| <a href="#edit_t_edit_set_action_text">edit\_set\_action\_text</a> | 设置软键盘上action按钮的文本。 |
| <a href="#edit_t_edit_set_auto_fix">edit\_set\_auto\_fix</a> | 设置编辑器是否为自动改正。 |
| <a href="#edit_t_edit_set_cancelable">edit\_set\_cancelable</a> | 设置编辑器是否为可撤销修改。 |
@ -75,6 +76,7 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| <a href="#edit_t_edit_set_cursor">edit\_set\_cursor</a> | 设置输入框的光标位置。 |
| <a href="#edit_t_edit_set_dec_value">edit\_set\_dec\_value</a> | 设置减少值的回调函数。 |
| <a href="#edit_t_edit_set_double">edit\_set\_double</a> | 设置double类型的值。 |
| <a href="#edit_t_edit_set_double_ex">edit\_set\_double\_ex</a> | 设置double类型的值。 |
| <a href="#edit_t_edit_set_fix_value">edit\_set\_fix\_value</a> | 设置修正输入内容的回调函数。 |
| <a href="#edit_t_edit_set_float_limit">edit\_set\_float\_limit</a> | 设置为浮点数输入及取值范围。 |
| <a href="#edit_t_edit_set_focus">edit\_set\_focus</a> | 设置为焦点。 |
@ -121,6 +123,7 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| -------- | ----- | ------- |
| EVT\_VALUE\_CHANGING | value\_change\_event\_t | 文本正在改变事件(编辑中)。 |
| EVT\_VALUE\_CHANGED | value\_change\_event\_t | 文本改变事件。 |
| EVT\_IM\_ACTION | event\_t | 软键盘Action点击事件。 |
#### edit\_cast 函数
-----------------------
@ -240,6 +243,24 @@ char* edit_get_selected_text (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | char* | 返回选中文本。 |
| widget | widget\_t* | widget对象。 |
#### edit\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_get_widget_vtable">获取 edit 虚表。
* 函数原型:
```
const widget_vtable_t* edit_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 edit 虚表。 |
#### edit\_set\_action\_text 函数
-----------------------
@ -381,6 +402,27 @@ ret_t edit_set_double (widget_t* widget, double value);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| value | double | 值。 |
#### edit\_set\_double\_ex 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_double_ex">设置double类型的值。
* 函数原型:
```
ret_t edit_set_double_ex (widget_t* widget, const char* format, double value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| format | const char* | 格式(缺省为"%2.2lf")。 |
| value | double | 值。 |
#### edit\_set\_fix\_value 函数
-----------------------

View File

@ -10,8 +10,10 @@
| <a href="#enum_helper_asset_type_find_by_value">asset\_type\_find\_by\_value</a> | 获取资源类型枚值和名称的对应关系。 |
| <a href="#enum_helper_find_item">find\_item</a> | 获取特定枚值和名称的对应关系。 |
| <a href="#enum_helper_find_item_by_value">find\_item\_by\_value</a> | 获取特定枚值和名称的对应关系。 |
| <a href="#enum_helper_input_type_find">input\_type\_find</a> | 获取输入类型值和名称的对应关系。 |
| <a href="#enum_helper_keys_type_find">keys\_type\_find</a> | 获取按键值和名称的对应关系。 |
| <a href="#enum_helper_keys_type_find_by_value">keys\_type\_find\_by\_value</a> | 获取按键值和名称的对应关系。 |
| <a href="#enum_helper_keys_type_set_custom_keys">keys\_type\_set\_custom\_keys</a> | 设置自定义键值表。 |
#### asset\_type\_find\_by\_value 函数
-----------------------
@ -73,6 +75,25 @@ const key_type_value_t* find_item_by_value (const key_type_value_t* items, uint3
| items | const key\_type\_value\_t* | 特定枚举值对应列表。 |
| nr | uint32\_t | 列表长度。 |
| value | uint32\_t | 资源的类型。 |
#### input\_type\_find 函数
-----------------------
* 函数功能:
> <p id="enum_helper_input_type_find">获取输入类型值和名称的对应关系。
* 函数原型:
```
const key_type_value_t* input_type_find (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const key\_type\_value\_t* | 返回输入类型值和名称的对应关系。 |
| name | const char* | 输入类型名。 |
#### keys\_type\_find 函数
-----------------------
@ -111,3 +132,24 @@ const key_type_value_t* keys_type_find_by_value (uint32_t value);
| -------- | ----- | --------- |
| 返回值 | const key\_type\_value\_t* | 返回按键值和名称的对应关系。 |
| value | uint32\_t | 按键值。 |
#### keys\_type\_set\_custom\_keys 函数
-----------------------
* 函数功能:
> <p id="enum_helper_keys_type_set_custom_keys">设置自定义键值表。
> 请确保键值表的生命周期在程序运行期一直存在,不要传入局部变量。
* 函数原型:
```
ret_t keys_type_set_custom_keys (const key_type_value_t* table, uint32_t nr);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| table | const key\_type\_value\_t* | 键值表(NULL清除之前的设置)。 |
| nr | uint32\_t | 键值表的长度。 |

View File

@ -11,6 +11,7 @@
| <a href="#event_t_event_clone">event\_clone</a> | clone事件对象。 |
| <a href="#event_t_event_create">event\_create</a> | 创建event对象。 |
| <a href="#event_t_event_destroy">event\_destroy</a> | 销毁事件对象。 |
| <a href="#event_t_event_from_name">event\_from\_name</a> | 将事件名转换成事件的值。 |
| <a href="#event_t_event_get_type">event\_get\_type</a> | 获取event类型。 |
| <a href="#event_t_event_init">event\_init</a> | 初始化事件。 |
### 属性
@ -21,7 +22,7 @@
| <a href="#event_t_native_window_handle">native\_window\_handle</a> | void* | 原生窗口句柄。 |
| <a href="#event_t_size">size</a> | int32\_t | 结构体的大小。 |
| <a href="#event_t_target">target</a> | void* | 事件发生的目标对象。 |
| <a href="#event_t_time">time</a> | uint64\_t | 事件发生的时间。 |
| <a href="#event_t_time">time</a> | uint64\_t | 事件发生的时间点(该时间点并非真实时间)。 |
| <a href="#event_t_type">type</a> | int32\_t | 类型。 |
#### event\_cast 函数
-----------------------
@ -105,6 +106,25 @@ ret_t event_destroy (event_t* event);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| event | event\_t* | event对象。 |
#### event\_from\_name 函数
-----------------------
* 函数功能:
> <p id="event_t_event_from_name">将事件名转换成事件的值。
* 函数原型:
```
int32_t event_from_name (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回事件的值。 |
| name | const char* | 事件名。 |
#### event\_get\_type 函数
-----------------------
@ -178,7 +198,7 @@ event_t event_init (uint32_t type, void* target);
| 可脚本化 | 是 |
#### time 属性
-----------------------
> <p id="event_t_time">事件发生的时间。
> <p id="event_t_time">事件发生的时间点(该时间点并非真实时间)
* 类型uint64\_t

View File

@ -6,6 +6,103 @@
| 名称 | 说明 |
| -------- | ------- |
| EVT\_POINTER\_DOWN | 指针按下事件名(pointer\_event\_t)。 |
| EVT\_POINTER\_DOWN\_BEFORE\_CHILDREN | 指针按下事件名,在子控件处理之前触发(pointer\_event\_t)。 |
| EVT\_POINTER\_MOVE | 指针移动事件名(pointer\_event\_t)。 |
| EVT\_POINTER\_MOVE\_BEFORE\_CHILDREN | 指针移动事件名,在子控件处理之前触发(pointer\_event\_t)。 |
| EVT\_POINTER\_UP | 指针抬起事件名(pointer\_event\_t)。 |
| EVT\_POINTER\_UP\_BEFORE\_CHILDREN | 指针抬起事件名,在子控件处理之前触发(pointer\_event\_t)。 |
| EVT\_WHEEL | 滚轮事件名(wheel\_event\_t)。 |
| EVT\_WHEEL\_BEFORE\_CHILDREN | 鼠标滚轮事件名,在子控件处理之前触发(wheel\_event\_t)。 |
| EVT\_POINTER\_DOWN\_ABORT | 取消前一个指针按下事件名(pointer\_event\_t)。 |
| EVT\_CONTEXT\_MENU | 右键/长按弹出上下文菜单的事件名(pointer\_event\_t)。 |
| EVT\_POINTER\_ENTER | 指针进入事件名(pointer\_event\_t)。 |
| EVT\_POINTER\_LEAVE | 指针离开事件名(pointer\_event\_t)。 |
| EVT\_LONG\_PRESS | 长按事件名(pointer\_event\_t)。 |
| EVT\_CLICK | 点击事件名(pointer\_event\_t)。 |
| EVT\_DOUBLE\_CLICK | 双击事件名(pointer\_event\_t)。 |
| EVT\_FOCUS | 得到焦点事件名(event\_t)。 |
| EVT\_BLUR | 失去焦点事件名(event\_t)。 |
| EVT\_KEY\_DOWN | 键按下事件名(key\_event\_t)。 |
| EVT\_KEY\_LONG\_PRESS | 键长按事件名(key\_event\_t)。 |
| EVT\_KEY\_DOWN\_BEFORE\_CHILDREN | 键按下事件名,在子控件处理之前触发(key\_event\_t)。 |
| EVT\_KEY\_REPEAT | 按键repeat事件名(key\_event\_t)。 |
| EVT\_KEY\_UP | 键抬起事件名(key\_event\_t)。 |
| EVT\_KEY\_UP\_BEFORE\_CHILDREN | 键抬起事件名,在子控件处理之前触发(key\_event\_t)。 |
| EVT\_WILL\_MOVE | 即将移动Widget的事件名(event\_t)。 |
| EVT\_MOVE | 移动Widget的事件名(event\_t)。 |
| EVT\_WILL\_RESIZE | 即将调整Widget大小的事件名(event\_t)。 |
| EVT\_RESIZE | 调整Widget大小的事件名(event\_t)。 |
| EVT\_WILL\_MOVE\_RESIZE | 即将调整Widget大小/位置的事件名(event\_t)。 |
| EVT\_MOVE\_RESIZE | 调整Widget大小/位置的事件名(event\_t)。 |
| EVT\_VALUE\_WILL\_CHANGE | 控件的值即将改变的事件名(value\_change\_event\_t)。 |
| EVT\_VALUE\_CHANGED | 控件的值改变的事件名(value\_change\_event\_t)。 |
| EVT\_VALUE\_CHANGING | 控件的值持续改变(如编辑器正在编辑)的事件名(value\_change\_event\_t)。 |
| EVT\_PAINT | 绘制的事件名(paint\_event\_t)。 |
| EVT\_BEFORE\_PAINT | 即将绘制的事件名(paint\_event\_t)。 |
| EVT\_AFTER\_PAINT | 绘制完成的事件名(paint\_event\_t)。 |
| EVT\_PAINT\_DONE | 绘制完成(canvas状态已经恢复)的事件名(paint\_event\_t)。 |
| EVT\_LOCALE\_CHANGED | locale改变的事件(event\_t)。 |
| EVT\_ANIM\_START | 控件动画开始事件(event\_t)。 |
| EVT\_ANIM\_STOP | 控件动画被主动停止的事件(event\_t)。 |
| EVT\_ANIM\_PAUSE | 控件动画被暂停的事件(event\_t)。 |
| EVT\_ANIM\_ONCE | 控件动画yoyo/repeat时完成一次的事件(event\_t)。 |
| EVT\_ANIM\_END | 控件动画完成事件(event\_t)。 |
| EVT\_WINDOW\_LOAD | 窗口加载完成事件(event\_t)。 |
| EVT\_WIDGET\_LOAD | 控件加载完成事件(event\_t)。 |
| EVT\_WINDOW\_WILL\_OPEN | 窗口即将打开事件(event\_t)。如果有窗口动画,在窗口动画开始前触发。如果没有窗口动画,在窗口被加载后的下一次循环中触发。 |
| EVT\_WINDOW\_OPEN | 窗口打开事件(event\_t)。如果有窗口动画,在窗口动画完成时触发。如果没有窗口动画,在窗口被加载后的下一次循环中触发。 |
| EVT\_WINDOW\_TO\_BACKGROUND | 窗口被切换到后台事件(event\_t)。打开新窗口时,当前窗口被切换到后台时,对当前窗口触发本事件。 |
| EVT\_WINDOW\_TO\_FOREGROUND | 窗口被切换到前台事件(event\_t)。关闭当前窗口时,前一个窗口被切换到前台时,对前一个窗口触发本事件。 |
| EVT\_WINDOW\_CLOSE | 窗口关闭事件。 |
| EVT\_REQUEST\_CLOSE\_WINDOW | 请求关闭窗口的事件(event\_t)。 |
| EVT\_TOP\_WINDOW\_CHANGED | 顶层窗口改变的事件(window\_event\_t)。 |
| EVT\_IM\_START | 输入法启动(event\_t)。 |
| EVT\_IM\_STOP | 输入法停止(event\_t)。 |
| EVT\_IM\_COMMIT | 输入法提交输入的文本事件(im\_commit\_event\_t)。 |
| EVT\_IM\_CLEAR | 清除编辑器内容(event\_t)。 |
| EVT\_IM\_CANCEL | 取消编辑,恢复之前的内容(event\_t)。 |
| EVT\_IM\_PREEDIT | 进入预编辑状态(event\_t)。 |
| EVT\_IM\_PREEDIT\_CONFIRM | 确认预编辑内容,退出预编辑状态(event\_t)。 |
| EVT\_IM\_PREEDIT\_ABORT | 删除预编辑内容退出预编辑状态event\_t)。 |
| EVT\_IM\_SHOW\_CANDIDATES | 输入法请求显示候选字事件(im\_candidates\_event\_t)。 |
| EVT\_IM\_SHOW\_PRE\_CANDIDATES | 输入法请求显示预候选字事件(im\_candidates\_event\_t)。 |
| EVT\_IM\_LANG\_CHANGED | 输入法语言改变事件(event\_t)。 |
| EVT\_IM\_ACTION | 软键盘Action点击事件(event\_t)。 |
| EVT\_IM\_ACTION\_INFO | 请求更新软键盘上的Action按钮的信息(im\_action\_button\_info\_event\_t)。 |
| EVT\_DRAG\_START | 开始拖动(event\_t)。 |
| EVT\_DRAG | 拖动(event\_t)。 |
| EVT\_DRAG\_END | 结束拖动(event\_t)。 |
| EVT\_RESET | Reset(event\_t)。 |
| EVT\_SCREEN\_SAVER | 在指定的时间内,没有用户输入事件,由窗口管理器触发。 |
| EVT\_LOW\_MEMORY | 内存不足(event\_t)。 |
| EVT\_OUT\_OF\_MEMORY | 内存耗尽(event\_t)。 |
| EVT\_ORIENTATION\_WILL\_CHANGED | 屏幕即将旋转(event\_t)。 |
| EVT\_ORIENTATION\_CHANGED | 屏幕旋转(event\_t)。 |
| EVT\_WIDGET\_CREATED | 控件创建事件(event\_t)。 |
| EVT\_REQUEST\_QUIT\_APP | 请求退出应用程序事件。点击原生窗口关闭按钮时通过窗口管理器触发注册该事件并返回RET\_STOP可以阻止窗口关闭。 |
| EVT\_THEME\_WILL\_CHANGE | 即将改变主题(event\_t)。 |
| EVT\_THEME\_CHANGED | 主题变化(event\_t)。 |
| EVT\_WIDGET\_ADD\_CHILD | 控件加载新的子控件(event\_t)。 |
| EVT\_WIDGET\_REMOVE\_CHILD | 控件移除子控件(event\_t)。 |
| EVT\_WIDGET\_WILL\_RESTACK\_CHILD | 控件即将调整子控件位置序数(event\_t)。在该事件的回调函数中返回RET\_STOP停止调整动作。 |
| EVT\_WIDGET\_RESTACK\_CHILD | 控件调整子控件位置序数(event\_t)。 |
| EVT\_SCROLL\_START | scroll view开始滚动(event\_t)。 |
| EVT\_SCROLL | scroll view滚动(event\_t)。 |
| EVT\_SCROLL\_END | scroll view结束滚动(event\_t)。 |
| EVT\_MULTI\_GESTURE | 多点触摸手势(multi\_gesture\_event\_t)。 |
| EVT\_PAGE\_CHANGED | 页面改变了(event\_t)。 |
| EVT\_PAGE\_CHANGING | 页面正在改变(offset\_change\_event\_t)。 |
| EVT\_ASSET\_MANAGER\_LOAD\_ASSET | 资源管理加载某个资源(assets\_event\_t)。 |
| EVT\_ASSET\_MANAGER\_UNLOAD\_ASSET | 资源管理卸载某个资源(assets\_event\_t)。 |
| EVT\_ASSET\_MANAGER\_CLEAR\_CACHE | 资源管理移除同种资源缓存(assets\_event\_t)。 |
| EVT\_TIMER | 定时器(event\_t)。 |
| EVT\_DATA | 数据到来(event\_t)。 |
| EVT\_CONNECT | 客户连接到来(event\_t)。 |
| EVT\_MODEL\_CHANGE | 模型变化。用于fscript实现窗口间通讯(model\_event\_t)。 |
| EVT\_SYSTEM | SDL系统事件(system\_event\_t)。 |
| EVT\_REQ\_START | event queue其它请求编号起始值。 |
| EVT\_USER\_START | 用户定义事件起始值。 |
| EVT\_NONE | 无效事件名称。 |
| EVT\_PROP\_WILL\_CHANGE | 对象的属性即将改变的事件名(prop\_change\_event\_t)。 |
| EVT\_PROP\_CHANGED | 对象的属性改变的事件名(prop\_change\_event\_t)。 |

View File

@ -49,6 +49,7 @@ https://github.com/zlgopen/awtk/blob/master/design/default/ui/file_chooser_for_o
| <a href="#file_browser_view_t_file_browser_view_create_file">file\_browser\_view\_create\_file</a> | 在当前文件夹创建文件。 |
| <a href="#file_browser_view_t_file_browser_view_get_cwd">file\_browser\_view\_get\_cwd</a> | 获取当前路径。 |
| <a href="#file_browser_view_t_file_browser_view_get_selected_items">file\_browser\_view\_get\_selected\_items</a> | 返回当前选中的项目。 |
| <a href="#file_browser_view_t_file_browser_view_get_widget_vtable">file\_browser\_view\_get\_widget\_vtable</a> | 获取 file_browser_view 虚表。 |
| <a href="#file_browser_view_t_file_browser_view_reload">file\_browser\_view\_reload</a> | 重新加载。 |
| <a href="#file_browser_view_t_file_browser_view_set_filter">file\_browser\_view\_set\_filter</a> | 设置 过滤规则。 |
| <a href="#file_browser_view_t_file_browser_view_set_ignore_hidden_files">file\_browser\_view\_set\_ignore\_hidden\_files</a> | 设置 忽略隐藏文件。 |
@ -200,6 +201,24 @@ darray_t* file_browser_view_get_selected_items (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | darray\_t* | 返回当前选中的项目。 |
| widget | widget\_t* | widget对象。 |
#### file\_browser\_view\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="file_browser_view_t_file_browser_view_get_widget_vtable">获取 file_browser_view 虚表。
* 函数原型:
```
const widget_vtable_t* file_browser_view_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 file\_browser\_view 虚表。 |
#### file\_browser\_view\_reload 函数
-----------------------

View File

@ -0,0 +1,92 @@
## file\_dialog\_t
### 概述
文件对话框。
----------------------------------
### 函数
<p id="file_dialog_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#file_dialog_t_tk_choose_file">tk\_choose\_file</a> | 选择单个文件。 |
| <a href="#file_dialog_t_tk_choose_file_for_save">tk\_choose\_file\_for\_save</a> | 选择单个文件用于保存。 |
| <a href="#file_dialog_t_tk_choose_files">tk\_choose\_files</a> | 多选文件。 |
| <a href="#file_dialog_t_tk_choose_folder">tk\_choose\_folder</a> | 选择单个目录。 |
#### tk\_choose\_file 函数
-----------------------
* 函数功能:
> <p id="file_dialog_t_tk_choose_file">选择单个文件。
* 函数原型:
```
char* tk_choose_file (const char* filters, const char* init_dir);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回NULL表示失败返回非NULL为文件名用完后请调用TKMEM\_FREE销毁。 |
| filters | const char* | 过滤规则(文件扩展名列表,如:".c.cpp.cxx")。 |
| init\_dir | const char* | 初始目录。 |
#### tk\_choose\_file\_for\_save 函数
-----------------------
* 函数功能:
> <p id="file_dialog_t_tk_choose_file_for_save">选择单个文件用于保存。
* 函数原型:
```
char* tk_choose_file_for_save (const char* filters, const char* init_dir);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回NULL表示失败返回非NULL为文件名用完后请调用TKMEM\_FREE销毁。 |
| filters | const char* | 过滤规则(文件扩展名列表,如:".c.cpp.cxx")。 |
| init\_dir | const char* | 初始目录。 |
#### tk\_choose\_files 函数
-----------------------
* 函数功能:
> <p id="file_dialog_t_tk_choose_files">多选文件。
* 函数原型:
```
darray_t* tk_choose_files (const char* filters, const char* init_dir);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | darray\_t* | 返回NULL表示失败返回非NULL为文件名列表用完后请调用darray\_destroy销毁。 |
| filters | const char* | 过滤规则(文件扩展名列表,如:".c.cpp.cxx")。 |
| init\_dir | const char* | 初始目录。 |
#### tk\_choose\_folder 函数
-----------------------
* 函数功能:
> <p id="file_dialog_t_tk_choose_folder">选择单个目录。
* 函数原型:
```
char* tk_choose_folder (const char* init_dir);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回NULL表示失败返回非NULL为文件名用完后请调用TKMEM\_FREE销毁。 |
| init\_dir | const char* | 初始目录。 |

View File

@ -11,12 +11,12 @@ stb主要用于加载矢量字体(如truetype),它功能强大,体积小巧
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#font_loader_stb_t_fargs_get_data_and_size">fargs\_get\_data\_and\_size</a> | 从参数中获取数据和长度。 |
| <a href="#font_loader_stb_t_font_loader_stb">font\_loader\_stb</a> | 获取stb字体加载器对象。 |
| <a href="#font_loader_stb_t_font_loader_stb_mono">font\_loader\_stb\_mono</a> | 获取stb mono字体加载器对象。 |
| <a href="#font_loader_stb_t_font_stb_create">font\_stb\_create</a> | 创建stb字体对象。 |
| <a href="#font_loader_stb_t_font_stb_mono_create">font\_stb\_mono\_create</a> | 创建stb mono字体对象。 |
| <a href="#font_loader_stb_t_fscript_app_conf_register">fscript\_app\_conf\_register</a> | 注册app_conf函数。 |
| <a href="#font_loader_stb_t_fscript_array_get_fscript_array_vt">fscript\_array\_get\_fscript\_array\_vt</a> | 获取 fscript array 的虚表。 |
| <a href="#font_loader_stb_t_fscript_array_register">fscript\_array\_register</a> | 注册typed array函数。 |
| <a href="#font_loader_stb_t_fscript_bits_register">fscript\_bits\_register</a> | 注册数学函数。 |
| <a href="#font_loader_stb_t_fscript_crc_register">fscript\_crc\_register</a> | 注册crc16/crc32/cksum等函数。 |
@ -31,33 +31,6 @@ stb主要用于加载矢量字体(如truetype),它功能强大,体积小巧
| <a href="#font_loader_stb_t_fscript_istream_register">fscript\_istream\_register</a> | 注册istream相关等函数。 |
| <a href="#font_loader_stb_t_fscript_json_register">fscript\_json\_register</a> | 注册json函数。 |
| <a href="#font_loader_stb_t_fscript_math_register">fscript\_math\_register</a> | 注册数学函数。 |
| <a href="#font_loader_stb_t_fscript_object_register">fscript\_object\_register</a> | 注册object函数。 |
| <a href="#font_loader_stb_t_fscript_ostream_register">fscript\_ostream\_register</a> | 注册ostream相关函数。 |
| <a href="#font_loader_stb_t_fscript_rbuffer_register">fscript\_rbuffer\_register</a> | 注册rbuffer相关函数。 |
| <a href="#font_loader_stb_t_fscript_typed_array_register">fscript\_typed\_array\_register</a> | 注册typed array函数。 |
| <a href="#font_loader_stb_t_fscript_wbuffer_register">fscript\_wbuffer\_register</a> | 注册wbuffer相关函数。 |
| <a href="#font_loader_stb_t_fscript_widget_register">fscript\_widget\_register</a> | 注册widget函数。 |
#### fargs\_get\_data\_and\_size 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fargs_get_data_and_size">从参数中获取数据和长度。
* 函数原型:
```
ret_t fargs_get_data_and_size (fscript_args_t* args, const uint8_t** , uint32_t* ret_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| args | fscript\_args\_t* | 参数。 |
| | const uint8\_t** | 。 |
| ret\_size | uint32\_t* | 返回数据的长度。 |
#### font\_loader\_stb 函数
-----------------------
@ -154,6 +127,24 @@ ret_t fscript_app_conf_register ();
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_array\_get\_fscript\_array\_vt 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_array_get_fscript_array_vt">获取 fscript array 的虚表。
* 函数原型:
```
ret_t fscript_array_get_fscript_array_vt ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 成功返回虚表指针,失败返回 NULL。 |
#### fscript\_array\_register 函数
-----------------------
@ -406,111 +397,3 @@ ret_t fscript_math_register ();
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_object\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_object_register">注册object函数。
* 函数原型:
```
ret_t fscript_object_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_ostream\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_ostream_register">注册ostream相关函数。
* 函数原型:
```
ret_t fscript_ostream_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_rbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_rbuffer_register">注册rbuffer相关函数。
* 函数原型:
```
ret_t fscript_rbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_typed\_array\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_typed_array_register">注册typed array函数。
* 函数原型:
```
ret_t fscript_typed_array_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_wbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_wbuffer_register">注册wbuffer相关函数。
* 函数原型:
```
ret_t fscript_wbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_widget\_register 函数
-----------------------
* 函数功能:
> <p id="font_loader_stb_t_fscript_widget_register">注册widget函数。
* 函数原型:
```
ret_t fscript_widget_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

View File

@ -1,5 +1,7 @@
## font\_manager\_t
### 概述
![image](images/font_manager_t_0.png)
字体管理器,负责字体的加载和缓存管理。
(如果使用nanovg字体由nanovg内部管理)
----------------------------------
@ -18,6 +20,7 @@
| <a href="#font_manager_t_font_manager_lookup">font\_manager\_lookup</a> | 查找字体。 |
| <a href="#font_manager_t_font_manager_set">font\_manager\_set</a> | 设置缺省的字体管理器。 |
| <a href="#font_manager_t_font_manager_set_assets_manager">font\_manager\_set\_assets\_manager</a> | 设置资源管理器对象 |
| <a href="#font_manager_t_font_manager_set_fallback_get_font">font\_manager\_set\_fallback\_get\_font</a> | 设置一个函数,该函数在找不到字体时加载后补字体。 |
| <a href="#font_manager_t_font_manager_shrink_cache">font\_manager\_shrink\_cache</a> | 清除最久没有被使用的缓冲字模。 |
| <a href="#font_manager_t_font_manager_unload_all">font\_manager\_unload\_all</a> | 卸载全部字体。 |
| <a href="#font_manager_t_font_manager_unload_font">font\_manager\_unload\_font</a> | 卸载指定的字体。 |
@ -231,6 +234,27 @@ ret_t font_manager_set_assets_manager (font_manager_t* imm, assets_manager_t* as
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | font\_manager\_t* | 字体管理器对象。 |
| assets\_manager | assets\_manager\_t* | 资源管理器。 |
#### font\_manager\_set\_fallback\_get\_font 函数
-----------------------
* 函数功能:
> <p id="font_manager_t_font_manager_set_fallback_get_font">设置一个函数,该函数在找不到字体时加载后补字体。
* 函数原型:
```
ret_t font_manager_set_fallback_get_font (font_manager_t* fm, font_manager_get_font_t fallback_get_font, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fm | font\_manager\_t* | font manager对象。 |
| fallback\_get\_font | font\_manager\_get\_font\_t | 回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### font\_manager\_shrink\_cache 函数
-----------------------

View File

@ -0,0 +1,69 @@
## font\_managers\_t
### 概述
在某些情况下,需要多个资源管理器。比如在手表系统里,每个应用或表盘,可能放在独立的资源包中,
此时优先加载应用自己的资源,如果没有就加载系统的资源。
----------------------------------
### 函数
<p id="font_managers_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#font_managers_t_font_managers_ref">font\_managers\_ref</a> | 获取指定小应用程序(applet)的字体管理器。 |
| <a href="#font_managers_t_font_managers_unload_all">font\_managers\_unload\_all</a> | 卸载全部字体。 |
| <a href="#font_managers_t_font_managers_unref">font\_managers\_unref</a> | 释放指定小应用程序(applet)的字体管理器。 |
#### font\_managers\_ref 函数
-----------------------
* 函数功能:
> <p id="font_managers_t_font_managers_ref">获取指定小应用程序(applet)的字体管理器。
* 函数原型:
```
font_manager_t* font_managers_ref (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | font\_manager\_t* | 返回asset manager对象。 |
| name | const char* | 小应用程序(applet)的名称。 |
#### font\_managers\_unload\_all 函数
-----------------------
* 函数功能:
> <p id="font_managers_t_font_managers_unload_all">卸载全部字体。
* 函数原型:
```
ret_t font_managers_unload_all ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### font\_managers\_unref 函数
-----------------------
* 函数功能:
> <p id="font_managers_t_font_managers_unref">释放指定小应用程序(applet)的字体管理器。
* 函数原型:
```
ret_t font_managers_unref (font_manager_t* imm);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | font\_manager\_t* | 字体管理器对象。 |

View File

@ -17,10 +17,12 @@
| <a href="#fs_t_fs_build_user_storage_file_name">fs\_build\_user\_storage\_file\_name</a> | 生成一个保存数据文件的完整路径的文件名。 |
| <a href="#fs_t_fs_change_dir">fs\_change\_dir</a> | 修改当前目录。 |
| <a href="#fs_t_fs_copy_dir">fs\_copy\_dir</a> | 拷贝目录。 |
| <a href="#fs_t_fs_copy_dir_ex">fs\_copy\_dir\_ex</a> | 拷贝目录。 |
| <a href="#fs_t_fs_copy_file">fs\_copy\_file</a> | 拷贝文件。 |
| <a href="#fs_t_fs_create_dir">fs\_create\_dir</a> | 创建目录。 |
| <a href="#fs_t_fs_create_dir_r">fs\_create\_dir\_r</a> | 递归创建目录。 |
| <a href="#fs_t_fs_dir_exist">fs\_dir\_exist</a> | 判断目录是否存在。 |
| <a href="#fs_t_fs_dir_is_empty">fs\_dir\_is\_empty</a> | 判断目录是否为空。 |
| <a href="#fs_t_fs_dir_rename">fs\_dir\_rename</a> | 目录重命名。 |
| <a href="#fs_t_fs_file_exist">fs\_file\_exist</a> | 判断文件是否存在。 |
| <a href="#fs_t_fs_file_rename">fs\_file\_rename</a> | 文件重命名。 |
@ -239,6 +241,28 @@ ret_t fs_copy_dir (fs_t* fs, const char* src, const char* dst);
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| src | const char* | 源目录。 |
| dst | const char* | 目标目录。 |
#### fs\_copy\_dir\_ex 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_copy_dir_ex">拷贝目录。
* 函数原型:
```
ret_t fs_copy_dir_ex (fs_t* fs, const char* src, const char* dst, bool_t overwrite);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| src | const char* | 源目录。 |
| dst | const char* | 目标目录。 |
| overwrite | bool\_t | 是否覆盖。 |
#### fs\_copy\_file 函数
-----------------------
@ -320,6 +344,26 @@ bool_t fs_dir_exist (fs_t* fs, const char* name);
| 返回值 | bool\_t | 返回TRUE表示存在否则表示不存在。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 目录名称。 |
#### fs\_dir\_is\_empty 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_dir_is_empty">判断目录是否为空。
* 函数原型:
```
bool_t fs_dir_is_empty (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示目录为空否则表示目录不为空。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 目录名称。 |
#### fs\_dir\_rename 函数
-----------------------

View File

@ -0,0 +1,206 @@
## fscript\_func\_call\_t
### 概述
函数描述。
----------------------------------
### 函数
<p id="fscript_func_call_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#fscript_func_call_t_fscript_ensure_locals">fscript\_ensure\_locals</a> | export for debugger |
| <a href="#fscript_func_call_t_fscript_exec_func_default">fscript\_exec\_func\_default</a> | 执行函数的默认实现。 |
| <a href="#fscript_func_call_t_fscript_find_func">fscript\_find\_func</a> | 查找函数。 |
| <a href="#fscript_func_call_t_fscript_get_code_id">fscript\_get\_code\_id</a> | 获取code_id。 |
| <a href="#fscript_func_call_t_fscript_set_hooks">fscript\_set\_hooks</a> | 设置回调函数。 |
| <a href="#fscript_func_call_t_fscript_set_self_hooks">fscript\_set\_self\_hooks</a> | 设置 fscript 对象的回调函数。 |
| <a href="#fscript_func_call_t_fscript_set_var_default">fscript\_set\_var\_default</a> | 设置变量的默认实现。 |
### 属性
<p id="fscript_func_call_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#fscript_func_call_t_ctx">ctx</a> | void* | 函数需要的上下文。 |
| <a href="#fscript_func_call_t_func">func</a> | fscript\_func\_t | 函数指针。 |
| <a href="#fscript_func_call_t_row">row</a> | uint16\_t | 对应源代码行号。 |
| <a href="#fscript_func_call_t_row">row</a> | uint16\_t | 对应源代码列号。 |
#### fscript\_ensure\_locals 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_ensure_locals">export for debugger
* 函数原型:
```
ret_t fscript_ensure_locals (fscript_t* fscript);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
#### fscript\_exec\_func\_default 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_exec_func_default">执行函数的默认实现。
* 函数原型:
```
ret_t fscript_exec_func_default (fscript_t* fscript, fscript_func_call_t* iter, value_t* result);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| iter | fscript\_func\_call\_t* | 当前函数。 |
| result | value\_t* | 返回结果。 |
#### fscript\_find\_func 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_find_func">查找函数。
* 函数原型:
```
fscript_func_t fscript_find_func (fscript_t* fscript, const char* name, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fscript\_func\_t | 返回函数指针NULL表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| name | const char* | 函数名。 |
| size | uint32\_t | 函数名长度。 |
#### fscript\_get\_code\_id 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_get_code_id">获取code_id。
* 函数原型:
```
char* fscript_get_code_id (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回code\_id有调用者释放返回的字符串。 |
| str | const char* | 代码。 |
#### fscript\_set\_hooks 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_set_hooks">设置回调函数。
* 函数原型:
```
ret_t fscript_set_hooks (const fscript_hooks_t* hooks);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| hooks | const fscript\_hooks\_t* | 回调函数。 |
#### fscript\_set\_self\_hooks 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_set_self_hooks">设置 fscript 对象的回调函数。
* 函数原型:
```
ret_t fscript_set_self_hooks (fscript_t* fscript, const fscript_hooks_t* hooks);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | fscript 对象。 |
| hooks | const fscript\_hooks\_t* | 回调函数。 |
#### fscript\_set\_var\_default 函数
-----------------------
* 函数功能:
> <p id="fscript_func_call_t_fscript_set_var_default">设置变量的默认实现。
* 函数原型:
```
ret_t fscript_set_var_default (fscript_t* fscript, const char* name, const value_t* value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| name | const char* | 变量名。 |
| value | const value\_t* | 值。 |
#### ctx 属性
-----------------------
> <p id="fscript_func_call_t_ctx">函数需要的上下文。
>目前主要保持自定义函数的实现。
* 类型void*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### func 属性
-----------------------
> <p id="fscript_func_call_t_func">函数指针。
* 类型fscript\_func\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### row 属性
-----------------------
> <p id="fscript_func_call_t_row">对应源代码行号。
* 类型uint16\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### row 属性
-----------------------
> <p id="fscript_func_call_t_row">对应源代码列号。
* 类型uint16\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,42 @@
## fscript\_function\_def\_t
### 概述
脚本函数定义。
----------------------------------
### 属性
<p id="fscript_function_def_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#fscript_function_def_t_body">body</a> | fscript\_func\_call\_t* | 函数体。 |
| <a href="#fscript_function_def_t_name">name</a> | char* | 函数名。 |
| <a href="#fscript_function_def_t_params">params</a> | darray\_t | 参数列表。 |
#### body 属性
-----------------------
> <p id="fscript_function_def_t_body">函数体。
* 类型fscript\_func\_call\_t*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### name 属性
-----------------------
> <p id="fscript_function_def_t_name">函数名。
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### params 属性
-----------------------
> <p id="fscript_function_def_t_params">参数列表。
* 类型darray\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,206 @@
## fscript\_module\_t
### 概述
![image](images/fscript_module_t_0.png)
用require加载外部模块。
----------------------------------
### 函数
<p id="fscript_module_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#fscript_module_t_fargs_get_data_and_size">fargs\_get\_data\_and\_size</a> | 从参数中获取数据和长度。 |
| <a href="#fscript_module_t_fscript_module_cast">fscript\_module\_cast</a> | 转换为fscript_module对象。 |
| <a href="#fscript_module_t_fscript_module_create">fscript\_module\_create</a> | 创建对象。 |
| <a href="#fscript_module_t_fscript_module_register">fscript\_module\_register</a> | 注册module函数。 |
| <a href="#fscript_module_t_fscript_object_register">fscript\_object\_register</a> | 注册object函数。 |
| <a href="#fscript_module_t_fscript_ostream_register">fscript\_ostream\_register</a> | 注册ostream相关函数。 |
| <a href="#fscript_module_t_fscript_rbuffer_register">fscript\_rbuffer\_register</a> | 注册rbuffer相关函数。 |
| <a href="#fscript_module_t_fscript_typed_array_register">fscript\_typed\_array\_register</a> | 注册typed array函数。 |
| <a href="#fscript_module_t_fscript_wbuffer_register">fscript\_wbuffer\_register</a> | 注册wbuffer相关函数。 |
| <a href="#fscript_module_t_fscript_widget_register">fscript\_widget\_register</a> | 注册widget函数。 |
#### fargs\_get\_data\_and\_size 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fargs_get_data_and_size">从参数中获取数据和长度。
* 函数原型:
```
ret_t fargs_get_data_and_size (fscript_args_t* args, const uint8_t** , uint32_t* ret_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| args | fscript\_args\_t* | 参数。 |
| | const uint8\_t** | 。 |
| ret\_size | uint32\_t* | 返回数据的长度。 |
#### fscript\_module\_cast 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_module_cast">转换为fscript_module对象。
* 函数原型:
```
fscript_module_t* fscript_module_cast (tk_object_t* obj);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fscript\_module\_t* | fscript\_module对象。 |
| obj | tk\_object\_t* | fscript\_module对象。 |
#### fscript\_module\_create 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_module_create">创建对象。
* 函数原型:
```
tk_object_t* fscript_module_create (const char* url);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回object对象。 |
| url | const char* | URL(用于读取数据) |
#### fscript\_module\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_module_register">注册module函数。
* 函数原型:
```
ret_t fscript_module_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_object\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_object_register">注册object函数。
* 函数原型:
```
ret_t fscript_object_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_ostream\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_ostream_register">注册ostream相关函数。
* 函数原型:
```
ret_t fscript_ostream_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_rbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_rbuffer_register">注册rbuffer相关函数。
* 函数原型:
```
ret_t fscript_rbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_typed\_array\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_typed_array_register">注册typed array函数。
* 函数原型:
```
ret_t fscript_typed_array_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_wbuffer\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_wbuffer_register">注册wbuffer相关函数。
* 函数原型:
```
ret_t fscript_wbuffer_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_widget\_register 函数
-----------------------
* 函数功能:
> <p id="fscript_module_t_fscript_widget_register">注册widget函数。
* 函数原型:
```
ret_t fscript_widget_register ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |

View File

@ -8,15 +8,27 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#fscript_t_fscript_clean">fscript\_clean</a> | 使用lua或其它脚本来运行fscript时本函数用于清理不必要的数据结构。 |
| <a href="#fscript_t_fscript_create">fscript\_create</a> | 创建引擎对象,并解析代码。 |
| <a href="#fscript_t_fscript_create_ex">fscript\_create\_ex</a> | 创建引擎对象,并解析代码。 |
| <a href="#fscript_t_fscript_deinit">fscript\_deinit</a> | 清除引擎对象的数据。 |
| <a href="#fscript_t_fscript_destroy">fscript\_destroy</a> | 销毁引擎对象。 |
| <a href="#fscript_t_fscript_eval">fscript\_eval</a> | 执行一段脚本。 |
| <a href="#fscript_t_fscript_exec">fscript\_exec</a> | 执行解析后的代码。 |
| <a href="#fscript_t_fscript_get_global_object">fscript\_get\_global\_object</a> | 获取fscript的全局对象。 |
| <a href="#fscript_t_fscript_global_deinit">fscript\_global\_deinit</a> | 全局释放。 |
| <a href="#fscript_t_fscript_global_init">fscript\_global\_init</a> | 全局初始化。 |
| <a href="#fscript_t_fscript_init">fscript\_init</a> | 初始化引擎对象,并解析代码。 |
| <a href="#fscript_t_fscript_register_const_double">fscript\_register\_const\_double</a> | 注册浮点数常量。 |
| <a href="#fscript_t_fscript_register_const_int">fscript\_register\_const\_int</a> | 注册整数常量。 |
| <a href="#fscript_t_fscript_register_const_value">fscript\_register\_const\_value</a> | 注册常量。 |
| <a href="#fscript_t_fscript_register_func">fscript\_register\_func</a> | 注册全局自定义函数。 |
| <a href="#fscript_t_fscript_register_funcs">fscript\_register\_funcs</a> | 注册全局自定义函数。 |
| <a href="#fscript_t_fscript_reload">fscript\_reload</a> | 重新加载代码。 |
| <a href="#fscript_t_fscript_set_error">fscript\_set\_error</a> | 用于扩展函数设置遇到的错误。 |
| <a href="#fscript_t_fscript_set_global_object">fscript\_set\_global\_object</a> | 用于替换默认的全局对象。 |
| <a href="#fscript_t_fscript_set_on_error">fscript\_set\_on\_error</a> | 设置错误处理函数。 |
| <a href="#fscript_t_fscript_set_print_func">fscript\_set\_print\_func</a> | 设置打印日志的函数。 |
| <a href="#fscript_t_fscript_syntax_check">fscript\_syntax\_check</a> | 解析代码,分析是否有语法错误。 |
| <a href="#fscript_t_tk_expr_eval">tk\_expr\_eval</a> | 对fscript的简单包装。 |
### 属性
@ -24,9 +36,32 @@
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#fscript_t_fast_vars">fast\_vars</a> | value\_t* | 快速访问变量。在脚本可以用a/b/c/d来访问需要优化时使用。 |
| <a href="#fscript_t_obj">obj</a> | object\_t* | 脚本执行上下文。 |
| <a href="#fscript_t_error_code">error\_code</a> | ret\_t | 运行时错误码。 |
| <a href="#fscript_t_error_message">error\_message</a> | char* | 运行时错误信息。 |
| <a href="#fscript_t_error_row">error\_row</a> | int32\_t | 运行时错误的行号。 |
| <a href="#fscript_t_error_row">error\_row</a> | int32\_t | 运行时错误的列号。 |
| <a href="#fscript_t_lines">lines</a> | uint16\_t | 代码总行数。 |
| <a href="#fscript_t_obj">obj</a> | tk\_object\_t* | 脚本执行上下文。 |
| <a href="#fscript_t_str">str</a> | str\_t | C语言实现函数可以使用这个变量可以有效避免内存分配。 |
#### fscript\_clean 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_clean">使用lua或其它脚本来运行fscript时本函数用于清理不必要的数据结构。
* 函数原型:
```
ret_t fscript_clean (fscript_t* fscript);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
#### fscript\_create 函数
-----------------------
@ -37,7 +72,7 @@
* 函数原型:
```
fscript_t* fscript_create (object_t* obj, const char* script);
fscript_t* fscript_create (tk_object_t* obj, const char* script);
```
* 参数说明:
@ -45,8 +80,48 @@ fscript_t* fscript_create (object_t* obj, const char* script);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fscript\_t* | 返回fscript对象。 |
| obj | object\_t* | 脚本执行上下文。 |
| obj | tk\_object\_t* | 脚本执行上下文。 |
| script | const char* | 脚本代码。 |
#### fscript\_create\_ex 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_create_ex">创建引擎对象,并解析代码。
* 函数原型:
```
fscript_t* fscript_create_ex (tk_object_t* obj, const char* script, bool_t keep_func_name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fscript\_t* | 返回fscript对象。 |
| obj | tk\_object\_t* | 脚本执行上下文。 |
| script | const char* | 脚本代码。 |
| keep\_func\_name | bool\_t | 是否在func\_call结构后保存函数名。 |
#### fscript\_deinit 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_deinit">清除引擎对象的数据。
* 函数原型:
```
ret_t fscript_deinit (fscript_t* fscript);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
#### fscript\_destroy 函数
-----------------------
@ -76,7 +151,7 @@ ret_t fscript_destroy (fscript_t* fscript);
* 函数原型:
```
ret_t fscript_eval (object_t* obj, const char* script, value_t* result);
ret_t fscript_eval (tk_object_t* obj, const char* script, value_t* result);
```
* 参数说明:
@ -84,7 +159,7 @@ ret_t fscript_eval (object_t* obj, const char* script, value_t* result);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| obj | object\_t* | 脚本执行上下文。 |
| obj | tk\_object\_t* | 脚本执行上下文。 |
| script | const char* | 脚本代码。 |
| result | value\_t* | 执行结果(调用者需要用value\_reset函数清除result)。 |
#### fscript\_exec 函数
@ -107,6 +182,24 @@ ret_t fscript_exec (fscript_t* fscript, value_t* result);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| result | value\_t* | 执行结果(调用者需要用value\_reset函数清除result)。 |
#### fscript\_get\_global\_object 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_get_global_object">获取fscript的全局对象。
* 函数原型:
```
tk_object_t* fscript_get_global_object ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_object\_t* | 返回fscript的全局对象。 |
#### fscript\_global\_deinit 函数
-----------------------
@ -143,6 +236,89 @@ ret_t fscript_global_init ();
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### fscript\_init 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_init">初始化引擎对象,并解析代码。
* 函数原型:
```
fscript_t* fscript_init (fscript_t* fscript, tk_object_t* obj, const char* script, const char* first_call_name, bool_t keep_func_name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fscript\_t* | 返回fscript对象。 |
| fscript | fscript\_t* | 初始化 fscript 对象。 |
| obj | tk\_object\_t* | 脚本执行上下文。 |
| script | const char* | 脚本代码。 |
| first\_call\_name | const char* | 第一个函数的名字。 |
| keep\_func\_name | bool\_t | 是否在func\_call结构后保存函数名。 |
#### fscript\_register\_const\_double 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_register_const_double">注册浮点数常量。
* 函数原型:
```
ret_t fscript_register_const_double (const char* name, double value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| name | const char* | 常量名。 |
| value | double | 数据。 |
#### fscript\_register\_const\_int 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_register_const_int">注册整数常量。
* 函数原型:
```
ret_t fscript_register_const_int (const char* name, int value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| name | const char* | 常量名。 |
| value | int | 数据。 |
#### fscript\_register\_const\_value 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_register_const_value">注册常量。
* 函数原型:
```
ret_t fscript_register_const_value (const char* name, const value_t* value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| name | const char* | 常量名。 |
| value | const value\_t* | 数据。 |
#### fscript\_register\_func 函数
-----------------------
@ -182,6 +358,26 @@ ret_t fscript_register_funcs (const general_factory_table_t* table);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| table | const general\_factory\_table\_t* | 函数表。 |
#### fscript\_reload 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_reload">重新加载代码。
* 函数原型:
```
ret_t fscript_reload (fscript_t* fscript, const char* script);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| script | const char* | 脚本代码。 |
#### fscript\_set\_error 函数
-----------------------
@ -204,6 +400,67 @@ ret_t fscript_set_error (fscript_t* fscript, ret_t code, const char* func, const
| code | ret\_t | 错误码。 |
| func | const char* | 函数名。 |
| message | const char* | 错误消息。 |
#### fscript\_set\_global\_object 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_set_global_object">用于替换默认的全局对象。
>仅限于在系统初始化时调用。
* 函数原型:
```
ret_t fscript_set_global_object (tk_object_t* obj);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| obj | tk\_object\_t* | 全局对象。 |
#### fscript\_set\_on\_error 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_set_on_error">设置错误处理函数。
* 函数原型:
```
ret_t fscript_set_on_error (fscript_t* fscript, fscript_on_error_t on_error, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| on\_error | fscript\_on\_error\_t | 错误处理函数。 |
| ctx | void* | 错误处理函数的上下文。 |
#### fscript\_set\_print\_func 函数
-----------------------
* 函数功能:
> <p id="fscript_t_fscript_set_print_func">设置打印日志的函数。
* 函数原型:
```
ret_t fscript_set_print_func (fscript_t* fscript, fscript_func_t print_func);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fscript | fscript\_t* | 脚本引擎对象。 |
| print\_func | fscript\_func\_t | 打印日志的函数。 |
#### fscript\_syntax\_check 函数
-----------------------
@ -221,7 +478,7 @@ fscript_parser_error_deinit(&error);
* 函数原型:
```
ret_t fscript_syntax_check (object_t* obj, const char* script, fscript_parser_error_t* error);
ret_t fscript_syntax_check (tk_object_t* obj, const char* script, fscript_parser_error_t* error);
```
* 参数说明:
@ -229,7 +486,7 @@ ret_t fscript_syntax_check (object_t* obj, const char* script, fscript_parser_er
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| obj | object\_t* | 脚本执行上下文。 |
| obj | tk\_object\_t* | 脚本执行上下文。 |
| script | const char* | 脚本代码。 |
| error | fscript\_parser\_error\_t* | 用于返回错误信息。 |
#### tk\_expr\_eval 函数
@ -251,11 +508,51 @@ double tk_expr_eval (const char* expr);
| -------- | ----- | --------- |
| 返回值 | double | 返回表达式的值。 |
| expr | const char* | 表达式。 |
#### fast\_vars 属性
#### error\_code 属性
-----------------------
> <p id="fscript_t_fast_vars">快速访问变量。在脚本可以用a/b/c/d来访问需要优化时使用
> <p id="fscript_t_error_code">运行时错误码
* 类型value\_t*
* 类型ret\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### error\_message 属性
-----------------------
> <p id="fscript_t_error_message">运行时错误信息。
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### error\_row 属性
-----------------------
> <p id="fscript_t_error_row">运行时错误的行号。
* 类型int32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### error\_row 属性
-----------------------
> <p id="fscript_t_error_row">运行时错误的列号。
* 类型int32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### lines 属性
-----------------------
> <p id="fscript_t_lines">代码总行数。
* 类型uint16\_t
| 特性 | 是否支持 |
| -------- | ----- |
@ -265,7 +562,7 @@ double tk_expr_eval (const char* expr);
-----------------------
> <p id="fscript_t_obj">脚本执行上下文。
* 类型object\_t*
* 类型:tk\_object\_t*
| 特性 | 是否支持 |
| -------- | ----- |

View File

@ -35,14 +35,14 @@ value = int | float | ID
* 函数原型:
```
object_t* func_call_parse (const char* str, uint32_t size);
tk_object_t* func_call_parse (const char* str, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | object\_t* | 返回object对象。 |
| 返回值 | tk\_object\_t* | 返回object对象。 |
| str | const char* | 要解析的字符串。 |
| size | uint32\_t | 字符串长度。 |
#### func\_call\_parser\_deinit 函数

View File

@ -8,9 +8,11 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#g2d_t_g2d_blend_image">g2d\_blend\_image</a> | 把图片指定的区域渲染到framebuffer指定的区域src的大小和dst的大小不一致则进行缩放。 |
| <a href="#g2d_t_g2d_blend_image_rotate">g2d\_blend\_image\_rotate</a> | 把图片指定的区域渲染到framebuffer指定的区域src的大小和dst的大小不一致则进行缩放以及旋转。 |
| <a href="#g2d_t_g2d_copy_image">g2d\_copy\_image</a> | 把图片指定的区域拷贝到framebuffer中。 |
| <a href="#g2d_t_g2d_fill_rect">g2d\_fill\_rect</a> | 用颜色填充指定的区域。 |
| <a href="#g2d_t_g2d_rotate_image">g2d\_rotate\_image</a> | 把图片指定的区域进行旋转并拷贝到framebuffer相应的区域本函数主要用于辅助实现横屏和竖屏的切换一般支持90度旋转即可。 |
| <a href="#g2d_t_image_rotate_ex">image\_rotate\_ex</a> | 把图片指定的区域进行旋转。 |
#### g2d\_blend\_image 函数
-----------------------
@ -36,6 +38,30 @@ ret_t g2d_blend_image (bitmap_t* fb, bitmap_t* img, const rect_t* dst, const rec
| dst | const rect\_t* | 目的区域。 |
| src | const rect\_t* | 源区域。 |
| global\_alpha | uint8\_t | 全局alpha。 |
#### g2d\_blend\_image\_rotate 函数
-----------------------
* 函数功能:
> <p id="g2d_t_g2d_blend_image_rotate">把图片指定的区域渲染到framebuffer指定的区域src的大小和dst的大小不一致则进行缩放以及旋转。
* 函数原型:
```
ret_t g2d_blend_image_rotate (bitmap_t* dst, bitmap_t* src, const rectf_t* dst_r, const rectf_t* src_r, uint8_t global_alpha, lcd_orientation_t o);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| dst | bitmap\_t* | 目标图片对象。 |
| src | bitmap\_t* | 源图片对象。 |
| dst\_r | const rectf\_t* | 目的区域。(坐标原点为旋转后的坐标系原点,并非是 dst 的左上角) |
| src\_r | const rectf\_t* | 源区域。 |
| global\_alpha | uint8\_t | 全局alpha。 |
| o | lcd\_orientation\_t | 旋转角度(一般支持90度即可旋转方向为逆时针)。 |
#### g2d\_copy\_image 函数
-----------------------
@ -102,3 +128,27 @@ ret_t g2d_rotate_image (bitmap_t* fb, bitmap_t* img, const rect_t* src, lcd_orie
| img | bitmap\_t* | 图片对象。 |
| src | const rect\_t* | 要旋转并拷贝的区域。 |
| o | lcd\_orientation\_t | 旋转角度(一般支持90度即可)。 |
#### image\_rotate\_ex 函数
-----------------------
* 函数功能:
> <p id="g2d_t_image_rotate_ex">把图片指定的区域进行旋转。
* 函数原型:
```
ret_t image_rotate_ex (bitmap_t* dst, bitmap_t* src, const rect_t* src_r, xy_t dx, xy_t dy, lcd_orientation_t o);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败返回失败则上层用软件实现。 |
| dst | bitmap\_t* | 目标图片对象。 |
| src | bitmap\_t* | 源图片对象。 |
| src\_r | const rect\_t* | 要旋转并拷贝的区域。 |
| dx | xy\_t | 目标位置的x坐标。坐标原点为旋转后的坐标系原点并非是 dst 的左上角) |
| dy | xy\_t | 目标位置的y坐标。坐标原点为旋转后的坐标系原点并非是 dst 的左上角) |
| o | lcd\_orientation\_t | 旋转角度(一般支持90度即可旋转方向为逆时针)。 |

View File

@ -35,6 +35,7 @@ gauge_pointer_set_image(gauge_pointer, "gauge_pointer");
| -------- | ------------ |
| <a href="#gauge_pointer_t_gauge_pointer_cast">gauge\_pointer\_cast</a> | 转换为gauge_pointer对象(供脚本语言使用)。 |
| <a href="#gauge_pointer_t_gauge_pointer_create">gauge\_pointer\_create</a> | 创建gauge_pointer对象 |
| <a href="#gauge_pointer_t_gauge_pointer_get_widget_vtable">gauge\_pointer\_get\_widget\_vtable</a> | 获取 gauge_pointer 虚表。 |
| <a href="#gauge_pointer_t_gauge_pointer_set_anchor">gauge\_pointer\_set\_anchor</a> | 设置指针的旋转锚点。 |
| <a href="#gauge_pointer_t_gauge_pointer_set_angle">gauge\_pointer\_set\_angle</a> | 设置指针角度。12点钟方向为0度顺时钟方向为正单位为度。 |
| <a href="#gauge_pointer_t_gauge_pointer_set_image">gauge\_pointer\_set\_image</a> | 设置指针的图片。 |
@ -96,6 +97,24 @@ widget_t* gauge_pointer_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 | 高度 |
#### gauge\_pointer\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="gauge_pointer_t_gauge_pointer_get_widget_vtable">获取 gauge_pointer 虚表。
* 函数原型:
```
const widget_vtable_t* gauge_pointer_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 gauge\_pointer 虚表。 |
#### gauge\_pointer\_set\_anchor 函数
-----------------------

View File

@ -45,6 +45,7 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| -------- | ------------ |
| <a href="#gauge_t_gauge_cast">gauge\_cast</a> | 转换为gauge对象(供脚本语言使用)。 |
| <a href="#gauge_t_gauge_create">gauge\_create</a> | 创建gauge对象 |
| <a href="#gauge_t_gauge_get_widget_vtable">gauge\_get\_widget\_vtable</a> | 获取 gauge 虚表。 |
| <a href="#gauge_t_gauge_set_draw_type">gauge\_set\_draw\_type</a> | 设置图片的显示方式。 |
| <a href="#gauge_t_gauge_set_image">gauge\_set\_image</a> | 设置背景图片的名称。 |
### 属性
@ -96,6 +97,24 @@ widget_t* gauge_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 | 高度 |
#### gauge\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="gauge_t_gauge_get_widget_vtable">获取 gauge 虚表。
* 函数原型:
```
const widget_vtable_t* gauge_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 gauge 虚表。 |
#### gauge\_set\_draw\_type 函数
-----------------------

View File

@ -53,14 +53,17 @@ https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml)
| -------- | ------------ |
| <a href="#gif_image_t_gif_image_cast">gif\_image\_cast</a> | 转换为gif_image对象(供脚本语言使用)。 |
| <a href="#gif_image_t_gif_image_create">gif\_image\_create</a> | 创建gif_image对象 |
| <a href="#gif_image_t_gif_image_get_widget_vtable">gif\_image\_get\_widget\_vtable</a> | 获取 gif_image 虚表。 |
| <a href="#gif_image_t_gif_image_pause">gif\_image\_pause</a> | 暂停。 |
| <a href="#gif_image_t_gif_image_play">gif\_image\_play</a> | 播放。 |
| <a href="#gif_image_t_gif_image_set_loop">gif\_image\_set\_loop</a> | 设置循环播放次数。 |
| <a href="#gif_image_t_gif_image_stop">gif\_image\_stop</a> | 停止(并重置index为-1)。 |
### 属性
<p id="gif_image_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#gif_image_t_loop">loop</a> | uint32\_t | 循环播放的次数。 |
| <a href="#gif_image_t_running">running</a> | bool\_t | 是否正在运行。 |
#### gif\_image\_cast 函数
-----------------------
@ -104,6 +107,24 @@ widget_t* gif_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 | 高度 |
#### gif\_image\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="gif_image_t_gif_image_get_widget_vtable">获取 gif_image 虚表。
* 函数原型:
```
const widget_vtable_t* gif_image_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 gif\_image 虚表。 |
#### gif\_image\_pause 函数
-----------------------
@ -142,6 +163,26 @@ ret_t gif_image_play (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | gif\_image对象。 |
#### gif\_image\_set\_loop 函数
-----------------------
* 函数功能:
> <p id="gif_image_t_gif_image_set_loop">设置循环播放次数。
* 函数原型:
```
ret_t gif_image_set_loop (widget_t* widget, uint32_t loop);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| loop | uint32\_t | 循环播放次数。 |
#### gif\_image\_stop 函数
-----------------------
@ -161,6 +202,22 @@ ret_t gif_image_stop (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | gif\_image对象。 |
#### loop 属性
-----------------------
> <p id="gif_image_t_loop">循环播放的次数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### running 属性
-----------------------
> <p id="gif_image_t_running">是否正在运行。
@ -171,3 +228,6 @@ ret_t gif_image_stop (widget_t* widget);
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |

View File

@ -11,6 +11,7 @@ TK全局对象。
| <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_deinit_internal">tk\_deinit\_internal</a> | deinit。 |
| <a href="#global_t_tk_enable_fast_lcd_portrait">tk\_enable\_fast\_lcd\_portrait</a> | 设置是否开启快速旋转功能。(开启这个功能需要定义 WITH_FAST_LCD_PORTRAIT 宏) |
| <a href="#global_t_tk_exit">tk\_exit</a> | public for web |
| <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坐标。 |
@ -18,11 +19,11 @@ TK全局对象。
| <a href="#global_t_tk_init_assets">tk\_init\_assets</a> | 初始化资源。 |
| <a href="#global_t_tk_init_internal">tk\_init\_internal</a> | init。 |
| <a href="#global_t_tk_is_pointer_pressed">tk\_is\_pointer\_pressed</a> | 获取全局指针是否按下。 |
| <a href="#global_t_tk_is_ui_thread">tk\_is\_ui\_thread</a> | 判断当前线程是否是UI线程。 |
| <a href="#global_t_tk_pre_init">tk\_pre\_init</a> | 初始化基本功能。 |
| <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_run_in_ui_thread">tk\_run\_in\_ui\_thread</a> | 后台线程在UI线程执行指定的函数。 |
| <a href="#global_t_tk_set_lcd_orientation">tk\_set\_lcd\_orientation</a> | 设置屏幕的旋转方向(XXX:目前仅支持0度和90度)。 |
| <a href="#global_t_tk_set_lcd_orientation">tk\_set\_lcd\_orientation</a> | 设置屏幕的旋转方向(XXX:目前仅支持0度,90度,180度和270度旋转方向为逆时针方向)。 |
#### asset\_loader\_default\_create 函数
-----------------------
@ -99,6 +100,26 @@ ret_t tk_deinit_internal ();
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### tk\_enable\_fast\_lcd\_portrait 函数
-----------------------
* 函数功能:
> <p id="global_t_tk_enable_fast_lcd_portrait">设置是否开启快速旋转功能。(开启这个功能需要定义 WITH_FAST_LCD_PORTRAIT 宏)
备注:需要在 tk_set_lcd_orientation 函数之前调用
* 函数原型:
```
ret_t tk_enable_fast_lcd_portrait (bool_t enable);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| enable | bool\_t | 是否开启。 |
#### tk\_exit 函数
-----------------------
@ -231,24 +252,26 @@ bool_t tk_is_pointer_pressed ();
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回全局指针是否按下。 |
#### tk\_is\_ui\_thread 函数
#### tk\_pre\_init 函数
-----------------------
* 函数功能:
> <p id="global_t_tk_is_ui_thread">判断当前线程是否是UI线程。
> <p id="global_t_tk_pre_init">初始化基本功能。
> 在tk_init之前应用程序可能需要加载配置文件
> 为了保证这些功能正常工作可以先调用tk_pre_init来初始化平台、内存和data reader等等。
* 函数原型:
```
bool_t tk_is_ui_thread ();
ret_t tk_pre_init ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示是否则表示否。 |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### tk\_quit 函数
-----------------------
@ -311,7 +334,7 @@ ret_t tk_run_in_ui_thread (tk_callback_t func, void* ctx, bool_t wait_until_done
* 函数功能:
> <p id="global_t_tk_set_lcd_orientation">设置屏幕的旋转方向(XXX:目前仅支持0度和90度)。
> <p id="global_t_tk_set_lcd_orientation">设置屏幕的旋转方向(XXX:目前仅支持0度,90度,180度和270度旋转方向为逆时针方向)。
* 函数原型:

View File

@ -9,3 +9,5 @@
| GLYPH\_FMT\_ALPHA | 每个像素占用1个字节(缺省)。 |
| GLYPH\_FMT\_MONO | 每个像素占用1个比特。 |
| GLYPH\_FMT\_RGBA | 每个像素占用4个字节。 |
| GLYPH\_FMT\_ALPHA2 | 每个像素占用2bit。 |
| GLYPH\_FMT\_ALPHA4 | 每个像素占用4bit。 |

View File

@ -11,6 +11,9 @@ graphic_buffer。
| <a href="#graphic_buffer_t_graphic_buffer_create_for_bitmap">graphic\_buffer\_create\_for\_bitmap</a> | 为位图创建缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_create_with_data">graphic\_buffer\_create\_with\_data</a> | 创建缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_destroy">graphic\_buffer\_destroy</a> | 销毁缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_get_physical_height">graphic\_buffer\_get\_physical\_height</a> | 获取 graphic_buffer 真实物理的的高度 |
| <a href="#graphic_buffer_t_graphic_buffer_get_physical_line_length">graphic\_buffer\_get\_physical\_line\_length</a> | 获取 graphic_buffer 真实物理的的行长度 |
| <a href="#graphic_buffer_t_graphic_buffer_get_physical_width">graphic\_buffer\_get\_physical\_width</a> | 获取 graphic_buffer 真实物理的的宽度 |
| <a href="#graphic_buffer_t_graphic_buffer_is_valid_for">graphic\_buffer\_is\_valid\_for</a> | 用于检查graphic buffer的有效性。 |
| <a href="#graphic_buffer_t_graphic_buffer_lock_for_read">graphic\_buffer\_lock\_for\_read</a> | 为读取数据而锁定缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_lock_for_write">graphic\_buffer\_lock\_for\_write</a> | 为修改数据而锁定缓冲区。 |
@ -99,6 +102,63 @@ ret_t graphic_buffer_destroy (graphic_buffer_t* buffer);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_get\_physical\_height 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_get_physical_height">获取 graphic_buffer 真实物理的的高度
* 函数原型:
```
uint32_t graphic_buffer_get_physical_height (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回高度。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_get\_physical\_line\_length 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_get_physical_line_length">获取 graphic_buffer 真实物理的的行长度
* 函数原型:
```
uint32_t graphic_buffer_get_physical_line_length (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回行长度。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_get\_physical\_width 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_get_physical_width">获取 graphic_buffer 真实物理的的宽度
* 函数原型:
```
uint32_t graphic_buffer_get_physical_width (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回宽度。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_is\_valid\_for 函数
-----------------------

View File

@ -45,6 +45,7 @@ grid\_item\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均
| -------- | ------------ |
| <a href="#grid_item_t_grid_item_cast">grid\_item\_cast</a> | 转换为grid_item对象(供脚本语言使用)。 |
| <a href="#grid_item_t_grid_item_create">grid\_item\_create</a> | 创建grid_item对象 |
| <a href="#grid_item_t_grid_item_get_widget_vtable">grid\_item\_get\_widget\_vtable</a> | 获取 grid_item 虚表。 |
#### grid\_item\_cast 函数
-----------------------
@ -87,3 +88,21 @@ widget_t* grid_item_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 | 高度 |
#### grid\_item\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="grid_item_t_grid_item_get_widget_vtable">获取 grid_item 虚表。
* 函数原型:
```
const widget_vtable_t* grid_item_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 grid\_item 虚表。 |

View File

@ -2,31 +2,23 @@
### 概述
![image](images/grid_t_0.png)
grid控件。一个简单的容器控件用于网格排列一组控件。
它本身不提供布局功能仅提供具有语义的标签让xml更具有可读性。
子控件的布局可用layout\_children属性指定。
请参考[布局参数](https://github.com/zlgopen/awtk/blob/master/docs/layout.md)。
grid\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均适用于grid\_t控件。
在xml中使用"grid"标签创建grid。如
网格。
在xml中使用"grid"标签创建控件。如:
```xml
<grid x="0" y="0" w="100%" h="100%" children_layout="default(c=2,r=2,m=5,s=5)">
<button name="open:basic" text="Basic"/>
<button name="open:button" text="Buttons"/>
<button name="open:edit" text="Edits"/>
<button name="open:keyboard" text="KeyBoard"/>
</grid>
<!-- ui -->
<grid x="c" y="50" w="100" h="100"/>
```
可用通过style来设置控件的显示风格背景颜色等。如:
可用通过style来设置控件的显示风格如字体的大小和颜色等等。如
```xml
<style name="default" border_color="#a0a0a0">
<normal bg_color="#f0f0f0" />
<!-- style -->
<grid>
<style name="default" grid_color="gray" border_color="black" odd_bg_color="#f5f5f5" even_bg_color="#eeeeee">
<normal />
</style>
</grid>
```
----------------------------------
### 函数
@ -36,6 +28,18 @@ grid\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均适用
| -------- | ------------ |
| <a href="#grid_t_grid_cast">grid\_cast</a> | 转换为grid对象(供脚本语言使用)。 |
| <a href="#grid_t_grid_create">grid\_create</a> | 创建grid对象 |
| <a href="#grid_t_grid_get_widget_vtable">grid\_get\_widget\_vtable</a> | 获取 grid 虚表。 |
| <a href="#grid_t_grid_set_columns_definition">grid\_set\_columns\_definition</a> | 设置 各列的参数。 |
| <a href="#grid_t_grid_set_rows">grid\_set\_rows</a> | 设置 行数。 |
| <a href="#grid_t_grid_set_show_grid">grid\_set\_show\_grid</a> | 设置 是否显示网格。 |
### 属性
<p id="grid_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#grid_t_columns_definition">columns\_definition</a> | char* | 各列的参数。 |
| <a href="#grid_t_rows">rows</a> | uint32\_t | 行数。 |
| <a href="#grid_t_show_grid">show\_grid</a> | bool\_t | 是否显示网格。 |
#### grid\_cast 函数
-----------------------
@ -72,9 +76,147 @@ widget_t* grid_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 对象。 |
| 返回值 | widget\_t* | grid对象。 |
| parent | widget\_t* | 父控件 |
| x | xy\_t | x坐标 |
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### grid\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="grid_t_grid_get_widget_vtable">获取 grid 虚表。
* 函数原型:
```
const widget_vtable_t* grid_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 grid 虚表。 |
#### grid\_set\_columns\_definition 函数
-----------------------
* 函数功能:
> <p id="grid_t_grid_set_columns_definition">设置 各列的参数。
* 函数原型:
```
ret_t grid_set_columns_definition (widget_t* widget, const char* columns_definition);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| columns\_definition | const char* | 各列的参数。 |
#### grid\_set\_rows 函数
-----------------------
* 函数功能:
> <p id="grid_t_grid_set_rows">设置 行数。
* 函数原型:
```
ret_t grid_set_rows (widget_t* widget, uint32_t rows);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| rows | uint32\_t | 行数。 |
#### grid\_set\_show\_grid 函数
-----------------------
* 函数功能:
> <p id="grid_t_grid_set_show_grid">设置 是否显示网格。
* 函数原型:
```
ret_t grid_set_show_grid (widget_t* widget, bool_t show_grid);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| show\_grid | bool\_t | 是否显示网格。 |
#### columns\_definition 属性
-----------------------
> <p id="grid_t_columns_definition">各列的参数。
各列的参数之间用英文的分号(;)分隔,每列参数的格式为:
col(w=?,left_margin=?,right_margin=?,top_maorgin=?,bottom_margin=?)
* w 为列的宽度(必须存在)。取值在(0-1]区间时视为grid控件宽度的比例否则为像素宽度。
(如果为负数,将计算结果加上控件的宽度)
* left_margin(可选可缩写为l) 该列左边的边距。
* right_margin(可选可缩写为r) 该列右边的边距。
* top_margin(可选可缩写为t) 该列顶部的边距。
* bottom_margin(可选可缩写为b) 该列底部的边距。
* margin(可选可缩写为m) 同时指定上面4个边距。
* fill_available(可选可缩写为f) 填充剩余宽度(只有一列可以指定)。
* 类型char*
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### rows 属性
-----------------------
> <p id="grid_t_rows">行数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### show\_grid 属性
-----------------------
> <p id="grid_t_show_grid">是否显示网格。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |

View File

@ -37,6 +37,7 @@ group\_box\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均
| -------- | ------------ |
| <a href="#group_box_t_group_box_cast">group\_box\_cast</a> | 转换为group_box对象(供脚本语言使用)。 |
| <a href="#group_box_t_group_box_create">group\_box\_create</a> | 创建group_box对象 |
| <a href="#group_box_t_group_box_get_widget_vtable">group\_box\_get\_widget\_vtable</a> | 获取 group_box 虚表。 |
#### group\_box\_cast 函数
-----------------------
@ -79,3 +80,21 @@ widget_t* group_box_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 | 高度 |
#### group\_box\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="group_box_t_group_box_get_widget_vtable">获取 group_box 虚表。
* 函数原型:
```
const widget_vtable_t* group_box_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 group\_box 虚表。 |

View File

@ -30,12 +30,15 @@ https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml)
| -------- | ------------ |
| <a href="#hscroll_label_t_hscroll_label_cast">hscroll\_label\_cast</a> | 转换为hscroll_label对象(供脚本语言使用)。 |
| <a href="#hscroll_label_t_hscroll_label_create">hscroll\_label\_create</a> | 创建hscroll_label对象 |
| <a href="#hscroll_label_t_hscroll_label_get_widget_vtable">hscroll\_label\_get\_widget\_vtable</a> | 获取 hscroll_label 虚表。 |
| <a href="#hscroll_label_t_hscroll_label_set_duration">hscroll\_label\_set\_duration</a> | 设置duration。 |
| <a href="#hscroll_label_t_hscroll_label_set_ellipses">hscroll\_label\_set\_ellipses</a> | 设置ellipses。 |
| <a href="#hscroll_label_t_hscroll_label_set_loop">hscroll\_label\_set\_loop</a> | 设置loop。 |
| <a href="#hscroll_label_t_hscroll_label_set_lull">hscroll\_label\_set\_lull</a> | 设置lull。 |
| <a href="#hscroll_label_t_hscroll_label_set_only_focus">hscroll\_label\_set\_only\_focus</a> | 设置only_focus。 |
| <a href="#hscroll_label_t_hscroll_label_set_only_parent_focus">hscroll\_label\_set\_only\_parent\_focus</a> | 设置only_parent_focus。 |
| <a href="#hscroll_label_t_hscroll_label_set_speed">hscroll\_label\_set\_speed</a> | 设置speed设置后 duration 不生效)。 |
| <a href="#hscroll_label_t_hscroll_label_set_stop_at_begin">hscroll\_label\_set\_stop\_at\_begin</a> | 设置stop_at_begin。 |
| <a href="#hscroll_label_t_hscroll_label_set_xoffset">hscroll\_label\_set\_xoffset</a> | 设置x偏移(一般无需用户调用)。。 |
| <a href="#hscroll_label_t_hscroll_label_set_yoyo">hscroll\_label\_set\_yoyo</a> | 设置yoyo。 |
| <a href="#hscroll_label_t_hscroll_label_start">hscroll\_label\_start</a> | 启动(一般无需用户调用)。 |
@ -51,6 +54,8 @@ https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml)
| <a href="#hscroll_label_t_lull">lull</a> | int32\_t | 滚动之间的间歇时间(ms)缺省3000ms。 |
| <a href="#hscroll_label_t_only_focus">only\_focus</a> | bool\_t | 只有处于focus时才滚动(缺省否)。 |
| <a href="#hscroll_label_t_only_parent_focus">only\_parent\_focus</a> | bool\_t | 只有父控件处于focus时才滚动(缺省否)。 |
| <a href="#hscroll_label_t_speed">speed</a> | float\_t | 滚动速度(px/ms)(设置后 duration 不生效)。 |
| <a href="#hscroll_label_t_stop_at_begin">stop\_at\_begin</a> | bool\_t | 滚动完毕后停在文本开头(缺省FALSE)。 |
| <a href="#hscroll_label_t_text_w">text\_w</a> | int32\_t | 文本的宽度。 |
| <a href="#hscroll_label_t_xoffset">xoffset</a> | int32\_t | 偏移量。 |
| <a href="#hscroll_label_t_yoyo">yoyo</a> | bool\_t | 是否往返滚动(缺省FALSE)。 |
@ -96,6 +101,24 @@ widget_t* hscroll_label_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 | 高度 |
#### hscroll\_label\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="hscroll_label_t_hscroll_label_get_widget_vtable">获取 hscroll_label 虚表。
* 函数原型:
```
const widget_vtable_t* hscroll_label_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 hscroll\_label 虚表。 |
#### hscroll\_label\_set\_duration 函数
-----------------------
@ -216,6 +239,46 @@ ret_t hscroll_label_set_only_parent_focus (widget_t* widget, bool_t only_parent_
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| only\_parent\_focus | bool\_t | 是否只有处于focus时才滚动。 |
#### hscroll\_label\_set\_speed 函数
-----------------------
* 函数功能:
> <p id="hscroll_label_t_hscroll_label_set_speed">设置speed设置后 duration 不生效)。
* 函数原型:
```
ret_t hscroll_label_set_speed (widget_t* widget, float_t speed);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| speed | float\_t | 滚动速度(px/ms)。 |
#### hscroll\_label\_set\_stop\_at\_begin 函数
-----------------------
* 函数功能:
> <p id="hscroll_label_t_hscroll_label_set_stop_at_begin">设置stop_at_begin。
* 函数原型:
```
ret_t hscroll_label_set_stop_at_begin (widget_t* widget, bool_t stop_at_begin);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| stop\_at\_begin | bool\_t | 是否在滚动完毕后停在文本结尾。 |
#### hscroll\_label\_set\_xoffset 函数
-----------------------
@ -378,6 +441,37 @@ ret_t hscroll_label_stop (widget_t* widget);
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### speed 属性
-----------------------
> <p id="hscroll_label_t_speed">滚动速度(px/ms)(设置后 duration 不生效)。
* 类型float\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可脚本化 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### stop\_at\_begin 属性
-----------------------
> <p id="hscroll_label_t_stop_at_begin">滚动完毕后停在文本开头(缺省FALSE)。
> 注loop为FALSE时才可用。
* 类型bool\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |

View File

@ -9,16 +9,23 @@ idle_manager_t管理器。
| -------- | ------------ |
| <a href="#idle_manager_t_idle_manager">idle\_manager</a> | 获取缺省的idle_manager_t管理器。 |
| <a href="#idle_manager_t_idle_manager_add">idle\_manager\_add</a> | 添加idle。 |
| <a href="#idle_manager_t_idle_manager_add_with_id">idle\_manager\_add\_with\_id</a> | 添加 idle可以指定 idle_id ,如果发现 idle_id 冲突则添加失败)。 |
| <a href="#idle_manager_t_idle_manager_add_with_type">idle\_manager\_add\_with\_type</a> | |
| <a href="#idle_manager_t_idle_manager_add_with_type_and_id">idle\_manager\_add\_with\_type\_and\_id</a> | |
| <a href="#idle_manager_t_idle_manager_append">idle\_manager\_append</a> | 追加idle。 |
| <a href="#idle_manager_t_idle_manager_count">idle\_manager\_count</a> | 返回idle的个数。 |
| <a href="#idle_manager_t_idle_manager_create">idle\_manager\_create</a> | 创建idle_manager_t管理器。 |
| <a href="#idle_manager_t_idle_manager_deinit">idle\_manager\_deinit</a> | 析构idle_manager_t管理器。 |
| <a href="#idle_manager_t_idle_manager_destroy">idle\_manager\_destroy</a> | 析构并释放idle_manager_t管理器。 |
| <a href="#idle_manager_t_idle_manager_dispatch">idle\_manager\_dispatch</a> | 检查全部idle的函数如果时间到期调用相应的idle函数。 |
| <a href="#idle_manager_t_idle_manager_exist">idle\_manager\_exist</a> | |
| <a href="#idle_manager_t_idle_manager_find">idle\_manager\_find</a> | 查找指定ID的idle。 |
| <a href="#idle_manager_t_idle_manager_get_next_idle_id">idle\_manager\_get\_next\_idle\_id</a> | 获取下一个可用的 idle_id。 |
| <a href="#idle_manager_t_idle_manager_init">idle\_manager\_init</a> | 初始化idle_manager_t管理器。 |
| <a href="#idle_manager_t_idle_manager_remove">idle\_manager\_remove</a> | 根据idle_id删除idle。 |
| <a href="#idle_manager_t_idle_manager_remove_all">idle\_manager\_remove\_all</a> | 删除全部idle。 |
| <a href="#idle_manager_t_idle_manager_remove_all">idle\_manager\_remove\_all</a> | 根据上下文删除所有符合条件的idle。 |
| <a href="#idle_manager_t_idle_manager_remove_all_by_ctx">idle\_manager\_remove\_all\_by\_ctx</a> | 根据上下文删除所有符合条件的idle。 |
| <a href="#idle_manager_t_idle_manager_remove_all_by_ctx_and_type">idle\_manager\_remove\_all\_by\_ctx\_and\_type</a> | |
| <a href="#idle_manager_t_idle_manager_set">idle\_manager\_set</a> | 设置缺省的idle_manager_t管理器。 |
#### idle\_manager 函数
-----------------------
@ -59,6 +66,28 @@ uint32_t idle_manager_add (idle_manager_t* idle_manager, idle_func_t* on_idle, v
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| on\_idle | idle\_func\_t* | idle回调函数。 |
| ctx | void* | idle回调函数的上下文。 |
#### idle\_manager\_add\_with\_id 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_add_with_id">添加 idle可以指定 idle_id ,如果发现 idle_id 冲突则添加失败)。
* 函数原型:
```
uint32_t idle_manager_add_with_id (idle_manager_t* idle_manager, uint32_t id, idle_func_t* on_idle, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回idle的IDTK\_INVALID\_ID表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| id | uint32\_t | idle\_id。 |
| on\_idle | idle\_func\_t* | idle回调函数。 |
| ctx | void* | idle回调函数的上下文。 |
#### idle\_manager\_append 函数
-----------------------
@ -154,6 +183,24 @@ ret_t idle_manager_destroy (idle_manager_t* idle_manager);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_dispatch 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_dispatch">检查全部idle的函数如果时间到期调用相应的idle函数。
* 函数原型:
```
ret_t idle_manager_dispatch ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### idle\_manager\_find 函数
-----------------------
@ -174,6 +221,25 @@ idle_info_t* idle_manager_find (idle_manager_t* idle_manager, uint32_t idle_id);
| 返回值 | idle\_info\_t* | 返回idle的信息。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| idle\_id | uint32\_t | idle\_id。 |
#### idle\_manager\_get\_next\_idle\_id 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_get_next_idle_id">获取下一个可用的 idle_id。
* 函数原型:
```
uint32_t idle_manager_get_next_idle_id (idle_manager_t* idle_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回idle的IDTK\_INVALID\_ID表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_init 函数
-----------------------
@ -232,17 +298,17 @@ ret_t idle_manager_remove_all (idle_manager_t* idle_manager);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_remove\_all 函数
#### idle\_manager\_remove\_all\_by\_ctx 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_remove_all">根据上下文删除所有符合条件的idle。
> <p id="idle_manager_t_idle_manager_remove_all_by_ctx">根据上下文删除所有符合条件的idle。
* 函数原型:
```
ret_t idle_manager_remove_all (idle_manager_t* idle_manager, void* ctx);
ret_t idle_manager_remove_all_by_ctx (idle_manager_t* idle_manager, void* ctx);
```
* 参数说明:

View File

@ -41,6 +41,7 @@ demo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/image_animation.
| -------- | ------------ |
| <a href="#image_animation_t_image_animation_cast">image\_animation\_cast</a> | 转换为image_animation对象(供脚本语言使用)。 |
| <a href="#image_animation_t_image_animation_create">image\_animation\_create</a> | 创建image_animation对象 |
| <a href="#image_animation_t_image_animation_get_widget_vtable">image\_animation\_get\_widget\_vtable</a> | 获取 image_animation 虚表。 |
| <a href="#image_animation_t_image_animation_is_playing">image\_animation\_is\_playing</a> | 判断是否在播放。 |
| <a href="#image_animation_t_image_animation_next">image\_animation\_next</a> | 手动切换到下一张图片。 |
| <a href="#image_animation_t_image_animation_pause">image\_animation\_pause</a> | 暂停。 |
@ -123,6 +124,24 @@ widget_t* image_animation_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### image\_animation\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="image_animation_t_image_animation_get_widget_vtable">获取 image_animation 虚表。
* 函数原型:
```
const widget_vtable_t* image_animation_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 image\_animation 虚表。 |
#### image\_animation\_is\_playing 函数
-----------------------

View File

@ -25,6 +25,7 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#image_base_t_image_base_cast">image\_base\_cast</a> | 转换为image_base对象(供脚本语言使用)。 |
| <a href="#image_base_t_image_base_get_widget_vtable">image\_base\_get\_widget\_vtable</a> | 获取 image_base 虚表。 |
| <a href="#image_base_t_image_base_set_anchor">image\_base\_set\_anchor</a> | 设置控件的锚点(仅在WITH_VGCANVAS定义时生效)。 |
| <a href="#image_base_t_image_base_set_clickable">image\_base\_set\_clickable</a> | 设置控件是否可以被点击。 |
| <a href="#image_base_t_image_base_set_image">image\_base\_set\_image</a> | 设置控件的图片名称。 |
@ -71,6 +72,24 @@ widget_t* image_base_cast (widget_t* widget);
| -------- | ----- | --------- |
| 返回值 | widget\_t* | image\_base对象。 |
| widget | widget\_t* | image\_base对象。 |
#### image\_base\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="image_base_t_image_base_get_widget_vtable">获取 image_base 虚表。
* 函数原型:
```
const widget_vtable_t* image_base_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 image\_base 虚表。 |
#### image\_base\_set\_anchor 函数
-----------------------

View File

@ -41,7 +41,7 @@ image_loader_t* image_loader_stb ();
* 函数原型:
```
ret_t stb_load_image (int32_t subtype, const uint8_t* buff, uint32_t buff_size, bitmap_t* image, bool_t require_bgra, bool_t enable_bgr565, bool_t enable_rgb565);
ret_t stb_load_image (int32_t subtype, const uint8_t* buff, uint32_t buff_size, bitmap_t* image, bitmap_format_t transparent_bitmap_format, bitmap_format_t opaque_bitmap_format, lcd_orientation_t o);
```
* 参数说明:
@ -53,6 +53,6 @@ ret_t stb_load_image (int32_t subtype, const uint8_t* buff, uint32_t buff_size,
| buff | const uint8\_t* | 资源数据。 |
| buff\_size | uint32\_t | 资源数据长度。 |
| image | bitmap\_t* | image 对象。 |
| require\_bgra | bool\_t | require\_bgra |
| enable\_bgr565 | bool\_t | enable\_bgr565 |
| enable\_rgb565 | bool\_t | enable\_rgb565 |
| transparent\_bitmap\_format | bitmap\_format\_t | 带透明通道的位图格式(只能 BITMAP\_FMT\_RGBA8888 和 BITMAP\_FMT\_RGBA8888 二选一,其他类型默认都为 BITMAP\_FMT\_RGBA8888 |
| opaque\_bitmap\_format | bitmap\_format\_t | 不透明位图格式(暂时支持 BITMAP\_FMT\_RGBA8888BITMAP\_FMT\_RGBA888816 位色和 24 位色以及 mono 格式) |
| o | lcd\_orientation\_t | 旋转方向 |

View File

@ -12,12 +12,14 @@
| <a href="#image_manager_t_image_manager_deinit">image\_manager\_deinit</a> | 析构图片管理器。 |
| <a href="#image_manager_t_image_manager_destroy">image\_manager\_destroy</a> | 析构并释放图片管理器。 |
| <a href="#image_manager_t_image_manager_get_bitmap">image\_manager\_get\_bitmap</a> | 获取指定的图片。 |
| <a href="#image_manager_t_image_manager_has_bitmap">image\_manager\_has\_bitmap</a> | 图片是否在图片管理中。 |
| <a href="#image_manager_t_image_manager_init">image\_manager\_init</a> | 初始化图片管理器。 |
| <a href="#image_manager_t_image_manager_preload">image\_manager\_preload</a> | 预加载指定的图片。 |
| <a href="#image_manager_t_image_manager_set">image\_manager\_set</a> | 设置缺省的图片管理器。 |
| <a href="#image_manager_t_image_manager_set_assets_manager">image\_manager\_set\_assets\_manager</a> | 设置资源管理器对象。 |
| <a href="#image_manager_t_image_manager_set_fallback_get_bitmap">image\_manager\_set\_fallback\_get\_bitmap</a> | 设置一个函数,该函数在找不到图片时加载后补图片。 |
| <a href="#image_manager_t_image_manager_set_max_mem_size_of_cached_images">image\_manager\_set\_max\_mem\_size\_of\_cached\_images</a> | 设置图片缓存占用的最大内存。 |
| <a href="#image_manager_t_image_manager_unload_all">image\_manager\_unload\_all</a> | 从图片管理器中卸载全部图片。 |
| <a href="#image_manager_t_image_manager_unload_all">image\_manager\_unload\_all</a> | 卸载全部图片。 |
| <a href="#image_manager_t_image_manager_unload_bitmap">image\_manager\_unload\_bitmap</a> | 从图片管理器中卸载指定的图片。 |
| <a href="#image_manager_t_image_manager_unload_unused">image\_manager\_unload\_unused</a> | 从图片管理器中卸载指定时间内没有使用的图片。 |
| <a href="#image_manager_t_image_manager_update_specific">image\_manager\_update\_specific</a> | 更新缓存中图片的specific信息。 |
@ -122,6 +124,26 @@ ret_t image_manager_get_bitmap (image_manager_t* imm, char* name, bitmap_t* imag
| imm | image\_manager\_t* | 图片管理器对象。 |
| name | char* | 图片名称。 |
| image | bitmap\_t* | 用于返回图片。 |
#### image\_manager\_has\_bitmap 函数
-----------------------
* 函数功能:
> <p id="image_manager_t_image_manager_has_bitmap">图片是否在图片管理中。
* 函数原型:
```
bool_t image_manager_has_bitmap (image_manager_t* imm, bitmap_t* image);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示存在否则表示不存在。 |
| imm | image\_manager\_t* | 图片管理器对象。 |
| image | bitmap\_t* | 图片。 |
#### image\_manager\_init 函数
-----------------------
@ -208,6 +230,27 @@ ret_t image_manager_set_assets_manager (image_manager_t* imm, assets_manager_t*
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | image\_manager\_t* | 图片管理器对象。 |
| assets\_manager | assets\_manager\_t* | 资源管理器。 |
#### image\_manager\_set\_fallback\_get\_bitmap 函数
-----------------------
* 函数功能:
> <p id="image_manager_t_image_manager_set_fallback_get_bitmap">设置一个函数,该函数在找不到图片时加载后补图片。
* 函数原型:
```
ret_t image_manager_set_fallback_get_bitmap (image_manager_t* imm, image_manager_get_bitmap_t fallback_get_bitmap, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | image\_manager\_t* | image manager对象。 |
| fallback\_get\_bitmap | image\_manager\_get\_bitmap\_t | 回调函数。 |
| ctx | void* | 回调函数的上下文。 |
#### image\_manager\_set\_max\_mem\_size\_of\_cached\_images 函数
-----------------------
@ -227,13 +270,13 @@ ret_t image_manager_set_max_mem_size_of_cached_images (image_manager_t* imm, uin
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | image\_manager\_t* | 图片管理器对象。 |
| max\_mem\_size | uint32\_t | 最大缓存内存。 |
| max\_mem\_size | uint32\_t | 最大缓存内存(字节数)。 |
#### image\_manager\_unload\_all 函数
-----------------------
* 函数功能:
> <p id="image_manager_t_image_manager_unload_all">从图片管理器中卸载全部图片。
> <p id="image_manager_t_image_manager_unload_all">卸载全部图片。
* 函数原型:

View File

@ -0,0 +1,69 @@
## image\_managers\_t
### 概述
在某些情况下,需要多个资源管理器。比如在手表系统里,每个应用或表盘,可能放在独立的资源包中,
此时优先加载应用自己的资源,如果没有就加载系统的资源。
----------------------------------
### 函数
<p id="image_managers_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#image_managers_t_image_managers_ref">image\_managers\_ref</a> | 获取指定小应用程序(applet)的图片管理器。 |
| <a href="#image_managers_t_image_managers_unload_all">image\_managers\_unload\_all</a> | 卸载全部图片。 |
| <a href="#image_managers_t_image_managers_unref">image\_managers\_unref</a> | 释放指定小应用程序(applet)的图片管理器。 |
#### image\_managers\_ref 函数
-----------------------
* 函数功能:
> <p id="image_managers_t_image_managers_ref">获取指定小应用程序(applet)的图片管理器。
* 函数原型:
```
image_manager_t* image_managers_ref (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | image\_manager\_t* | 返回asset manager对象。 |
| name | const char* | 小应用程序(applet)的名称。 |
#### image\_managers\_unload\_all 函数
-----------------------
* 函数功能:
> <p id="image_managers_t_image_managers_unload_all">卸载全部图片。
* 函数原型:
```
ret_t image_managers_unload_all ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### image\_managers\_unref 函数
-----------------------
* 函数功能:
> <p id="image_managers_t_image_managers_unref">释放指定小应用程序(applet)的图片管理器。
* 函数原型:
```
ret_t image_managers_unref (image_manager_t* imm);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| imm | image\_manager\_t* | 图片管理器对象。 |

View File

@ -65,8 +65,10 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#image_t_icon_create">icon\_create</a> | 创建icon对象 |
| <a href="#image_t_image_cast">image\_cast</a> | 转换为image对象(供脚本语言使用)。 |
| <a href="#image_t_image_create">image\_create</a> | 创建image对象 |
| <a href="#image_t_image_get_widget_vtable">image\_get\_widget\_vtable</a> | 获取 image 虚表。 |
| <a href="#image_t_image_set_draw_type">image\_set\_draw\_type</a> | 设置图片的绘制方式。 |
### 属性
<p id="image_t_properties">
@ -74,6 +76,29 @@ default](https://github.com/zlgopen/awtk/blob/master/design/default/styles/defau
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#image_t_draw_type">draw\_type</a> | image\_draw\_type\_t | 图片的绘制方式(仅在没有旋转和缩放时生效)。 |
#### icon\_create 函数
-----------------------
* 函数功能:
> <p id="image_t_icon_create">创建icon对象
* 函数原型:
```
widget_t* icon_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | widget\_t* | 对象。 |
| parent | widget\_t* | 父控件 |
| x | xy\_t | x坐标 |
| y | xy\_t | y坐标 |
| w | wh\_t | 宽度 |
| h | wh\_t | 高度 |
#### image\_cast 函数
-----------------------
@ -116,6 +141,24 @@ widget_t* 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 | 高度 |
#### image\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="image_t_image_get_widget_vtable">获取 image 虚表。
* 函数原型:
```
const widget_vtable_t* image_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 image 虚表。 |
#### image\_set\_draw\_type 函数
-----------------------

View File

@ -46,6 +46,7 @@ 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_get_widget_vtable">image\_value\_get\_widget\_vtable</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> | 设置图片前缀。 |
@ -112,6 +113,24 @@ 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\_get\_widget\_vtable 函数
-----------------------
* 函数功能:
> <p id="image_value_t_image_value_get_widget_vtable">获取 image_value 虚表。
* 函数原型:
```
const widget_vtable_t* image_value_get_widget_vtable ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const widget\_vtable\_t* | 成功返回 image\_value 虚表。 |
#### image\_value\_set\_click\_add\_delta 函数
-----------------------

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

Some files were not shown because too many files have changed in this diff Show More