regenerate docs

This commit is contained in:
lixianjing 2019-11-14 15:54:03 +08:00
parent 83bbd8328d
commit 4c8db727ce
40 changed files with 14939 additions and 9103 deletions

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

@ -0,0 +1,111 @@
## MIME\_TYPE
### 概述
MIME_TYPE。
### 常量
<p id="MIME_TYPE_consts">
| 名称 | 说明 |
| -------- | ------- |
| MIME\_TYPE\_APPLICATION\_ENVOY | "application/envoy"。 |
| MIME\_TYPE\_APPLICATION\_FRACTALS | "application/fractals"。 |
| MIME\_TYPE\_APPLICATION\_FUTURESPLASH | "application/futuresplash"。 |
| MIME\_TYPE\_APPLICATION\_HTA | "application/hta"。 |
| MIME\_TYPE\_APPLICATION\_JSON | "application/json"。 |
| MIME\_TYPE\_APPLICATION\_UBJSON | "application/ubjson"。 |
| MIME\_TYPE\_APPLICATION\_MAC\_BINHEX40 | "application/mac-binhex40"。 |
| MIME\_TYPE\_APPLICATION\_MSWORD | "application/msword"。 |
| MIME\_TYPE\_APPLICATION\_OCTET\_STREAM | "application/octet-stream"。 |
| MIME\_TYPE\_APPLICATION\_ODA | "application/oda"。 |
| MIME\_TYPE\_APPLICATION\_OLESCRIPT | "application/olescript"。 |
| MIME\_TYPE\_APPLICATION\_PDF | "application/pdf"。 |
| MIME\_TYPE\_APPLICATION\_PICS\_RULES | "application/pics-rules"。 |
| MIME\_TYPE\_APPLICATION\_PKCS10 | "application/pkcs10"。 |
| MIME\_TYPE\_APPLICATION\_PKIX\_CRL | "application/pkix-crl"。 |
| MIME\_TYPE\_APPLICATION\_POSTSCRIPT | "application/postscript"。 |
| MIME\_TYPE\_APPLICATION\_RTF | "application/rtf"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_EXCEL | "application/vnd.ms-excel"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_OUTLOOK | "application/vnd.ms-outlook"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_PKICERTSTORE | "application/vnd.ms-pkicertstore"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_PKISECCAT | "application/vnd.ms-pkiseccat"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_PKISTL | "application/vnd.ms-pkistl"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_POWERPOINT | "application/vnd.ms-powerpoint"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_PROJECT | "application/vnd.ms-project"。 |
| MIME\_TYPE\_APPLICATION\_VND\_MS\_WORKS | "application/vnd.ms-works"。 |
| MIME\_TYPE\_APPLICATION\_WINHLP | "application/winhlp"。 |
| MIME\_TYPE\_APPLICATION\_X\_BCPIO | "application/x-bcpio"。 |
| MIME\_TYPE\_APPLICATION\_X\_CDF | "application/x-cdf"。 |
| MIME\_TYPE\_APPLICATION\_X\_COMPRESS | "application/x-compress"。 |
| MIME\_TYPE\_APPLICATION\_X\_COMPRESSED | "application/x-compressed"。 |
| MIME\_TYPE\_APPLICATION\_X\_CPIO | "application/x-cpio"。 |
| MIME\_TYPE\_APPLICATION\_X\_CSH | "application/x-csh"。 |
| MIME\_TYPE\_APPLICATION\_X\_DIRECTOR | "application/x-director"。 |
| MIME\_TYPE\_APPLICATION\_X\_DVI | "application/x-dvi"。 |
| MIME\_TYPE\_APPLICATION\_X\_GTAR | "application/x-gtar"。 |
| MIME\_TYPE\_APPLICATION\_X\_GZIP | "application/x-gzip"。 |
| MIME\_TYPE\_APPLICATION\_X\_HDF | "application/x-hdf"。 |
| MIME\_TYPE\_APPLICATION\_X\_IPHONE | "application/x-iphone"。 |
| MIME\_TYPE\_APPLICATION\_X\_JAVASCRIPT | "application/x-javascript"。 |
| MIME\_TYPE\_APPLICATION\_X\_LATEX | "application/x-latex"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSACCESS | "application/x-msaccess"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSCARDFILE | "application/x-mscardfile"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSCLIP | "application/x-msclip"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSDOWNLOAD | "application/x-msdownload"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSMEDIAVIEW | "application/x-msmediaview"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSMETAFILE | "application/x-msmetafile"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSMONEY | "application/x-msmoney"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSPUBLISHER | "application/x-mspublisher"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSSCHEDULE | "application/x-msschedule"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSTERMINAL | "application/x-msterminal"。 |
| MIME\_TYPE\_APPLICATION\_X\_MSWRITE | "application/x-mswrite"。 |
| MIME\_TYPE\_APPLICATION\_X\_NETCDF | "application/x-netcdf"。 |
| MIME\_TYPE\_APPLICATION\_X\_PERFMON | "application/x-perfmon"。 |
| MIME\_TYPE\_APPLICATION\_X\_PKCS12 | "application/x-pkcs12"。 |
| MIME\_TYPE\_APPLICATION\_X\_SH | "application/x-sh"。 |
| MIME\_TYPE\_APPLICATION\_X\_SHAR | "application/x-shar"。 |
| MIME\_TYPE\_APPLICATION\_X\_SHOCKWAVE\_FLASH | "application/x-shockwave-flash"。 |
| MIME\_TYPE\_APPLICATION\_X\_STUFFIT | "application/x-stuffit"。 |
| MIME\_TYPE\_APPLICATION\_X\_SV4CPIO | "application/x-sv4cpio"。 |
| MIME\_TYPE\_APPLICATION\_X\_SV4CRC | "application/x-sv4crc"。 |
| MIME\_TYPE\_APPLICATION\_X\_TAR | "application/x-tar"。 |
| MIME\_TYPE\_APPLICATION\_X\_TCL | "application/x-tcl"。 |
| MIME\_TYPE\_APPLICATION\_X\_TEX | "application/x-tex"。 |
| MIME\_TYPE\_APPLICATION\_X\_TEXINFO | "application/x-texinfo"。 |
| MIME\_TYPE\_APPLICATION\_X\_TROFF | "application/x-troff"。 |
| MIME\_TYPE\_APPLICATION\_X\_USTAR | "application/x-ustar"。 |
| MIME\_TYPE\_APPLICATION\_ZIP | "application/zip"。 |
| MIME\_TYPE\_AUDIO\_BASIC | "audio/basic"。 |
| MIME\_TYPE\_AUDIO\_MID | "audio/mid"。 |
| MIME\_TYPE\_AUDIO\_MPEG | "audio/mpeg"。 |
| MIME\_TYPE\_AUDIO\_X\_AIFF | "audio/x-aiff"。 |
| MIME\_TYPE\_AUDIO\_X\_MPEGURL | "audio/x-mpegurl"。 |
| MIME\_TYPE\_AUDIO\_X\_WAV | "audio/x-wav"。 |
| MIME\_TYPE\_IMAGE\_BMP | "image/bmp"。 |
| MIME\_TYPE\_IMAGE\_CIS\_COD | "image/cis-cod"。 |
| MIME\_TYPE\_IMAGE\_GIF | "image/gif"。 |
| MIME\_TYPE\_IMAGE\_IEF | "image/ief"。 |
| MIME\_TYPE\_IMAGE\_JPEG | "image/jpeg"。 |
| MIME\_TYPE\_IMAGE\_PIPEG | "image/pipeg"。 |
| MIME\_TYPE\_IMAGE\_SVG\_XML | "image/svg+xml"。 |
| MIME\_TYPE\_IMAGE\_TIFF | "image/tiff"。 |
| MIME\_TYPE\_IMAGE\_X\_CMX | "image/x-cmx"。 |
| MIME\_TYPE\_IMAGE\_X\_ICON | "image/x-icon"。 |
| MIME\_TYPE\_IMAGE\_X\_RGB | "image/x-rgb"。 |
| MIME\_TYPE\_IMAGE\_X\_XBITMAP | "image/x-xbitmap"。 |
| MIME\_TYPE\_IMAGE\_X\_XPIXMAP | "image/x-xpixmap"。 |
| MIME\_TYPE\_IMAGE\_X\_XWINDOWDUMP | "image/x-xwindowdump"。 |
| MIME\_TYPE\_MESSAGE\_RFC822 | "message/rfc822"。 |
| MIME\_TYPE\_TEXT\_CSS | "text/css"。 |
| MIME\_TYPE\_TEXT\_H323 | "text/h323"。 |
| MIME\_TYPE\_TEXT\_HTML | "text/html"。 |
| MIME\_TYPE\_TEXT\_IULS | "text/iuls"。 |
| MIME\_TYPE\_TEXT\_PLAIN | "text/plain"。 |
| MIME\_TYPE\_TEXT\_RICHTEXT | "text/richtext"。 |
| MIME\_TYPE\_TEXT\_SCRIPTLET | "text/scriptlet"。 |
| MIME\_TYPE\_TEXT\_WEBVIEWHTML | "text/webviewhtml"。 |
| MIME\_TYPE\_TEXT\_X\_COMPONENT | "text/x-component"。 |
| MIME\_TYPE\_TEXT\_X\_SETEXT | "text/x-setext"。 |
| MIME\_TYPE\_TEXT\_X\_VCARD | "text/x-vcard"。 |
| MIME\_TYPE\_VIDEO\_MPEG | "video/mpeg"。 |
| MIME\_TYPE\_VIDEO\_QUICKTIME | "video/quicktime"。 |
| MIME\_TYPE\_VIDEO\_X\_MSVIDEO | "video/x-msvideo"。 |

View File

@ -16,13 +16,16 @@
| <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_from_rgba">bitmap\_init\_from\_rgba</a> | 初始化图片。 |
| <a href="#bitmap_t_bitmap_lock_buffer_for_read">bitmap\_lock\_buffer\_for\_read</a> | 为读取数据而锁定bitmap的图片缓冲区。 |
| <a href="#bitmap_t_bitmap_lock_buffer_for_write">bitmap\_lock\_buffer\_for\_write</a> | 为修改数据而锁定bitmap的图片缓冲区。 |
| <a href="#bitmap_t_bitmap_set_line_length">bitmap\_set\_line\_length</a> | 设置line_length。 |
| <a href="#bitmap_t_bitmap_unlock_buffer">bitmap\_unlock\_buffer</a> | 解锁图像缓冲区。 |
### 属性
<p id="bitmap_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#bitmap_t_data">data</a> | uint8\_t* | 图片数据。 |
| <a href="#bitmap_t_buffer">buffer</a> | graphic\_buffer\_t* | 图片数据。 |
| <a href="#bitmap_t_flags">flags</a> | uint16\_t | 标志。请参考{bitmap_flag_t}。 |
| <a href="#bitmap_t_format">format</a> | uint16\_t | 格式。请参考{bitmap_format_t}。 |
| <a href="#bitmap_t_h">h</a> | wh\_t | 高度。 |
@ -210,6 +213,50 @@ 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))。 |
#### bitmap\_lock\_buffer\_for\_read 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_lock_buffer_for_read"> 为读取数据而锁定bitmap的图片缓冲区。
* 函数原型:
```
uint8_t* bitmap_lock_buffer_for_read (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint8\_t* | 返回缓存区的首地址。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_lock\_buffer\_for\_write 函数
-----------------------
* 函数功能:
> <p id="bitmap_t_bitmap_lock_buffer_for_write"> 为修改数据而锁定bitmap的图片缓冲区。
* 函数原型:
```
uint8_t* bitmap_lock_buffer_for_write (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint8\_t* | 返回缓存区的首地址。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### bitmap\_set\_line\_length 函数
-----------------------
@ -232,12 +279,34 @@ ret_t bitmap_set_line_length (bitmap_t* bitmap, uint32_t line_length);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| bitmap | bitmap\_t* | bitmap对象。 |
| line\_length | uint32\_t | line\_length。 |
#### data 属性
#### bitmap\_unlock\_buffer 函数
-----------------------
> <p id="bitmap_t_data"> 图片数据。
* 函数功能:
> <p id="bitmap_t_bitmap_unlock_buffer"> 解锁图像缓冲区。
* 类型uint8\_t*
* 函数原型:
```
ret_t bitmap_unlock_buffer (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| bitmap | bitmap\_t* | bitmap对象。 |
#### buffer 属性
-----------------------
> <p id="bitmap_t_buffer"> 图片数据。
* 类型graphic\_buffer\_t*
| 特性 | 是否支持 |
| -------- | ----- |

View File

@ -32,6 +32,7 @@
| <a href="#darray_t_darray_deinit">darray\_deinit</a> | 清除全部元素并释放elms。 |
| <a href="#darray_t_darray_destroy">darray\_destroy</a> | 销毁darray对象。 |
| <a href="#darray_t_darray_find">darray\_find</a> | 查找第一个满足条件的元素。 |
| <a href="#darray_t_darray_find_all">darray\_find\_all</a> | 查找全部满足条件的元素。 |
| <a href="#darray_t_darray_find_index">darray\_find\_index</a> | 查找第一个满足条件的元素,并返回位置。 |
| <a href="#darray_t_darray_foreach">darray\_foreach</a> | 遍历元素。 |
| <a href="#darray_t_darray_head">darray\_head</a> | 返回第一个元素。 |
@ -41,6 +42,7 @@
| <a href="#darray_t_darray_remove">darray\_remove</a> | 删除第一个满足条件的元素。 |
| <a href="#darray_t_darray_remove_all">darray\_remove\_all</a> | 删除全部满足条件的元素。 |
| <a href="#darray_t_darray_remove_index">darray\_remove\_index</a> | 删除指定位置的元素。 |
| <a href="#darray_t_darray_sort">darray\_sort</a> | 排序。 |
| <a href="#darray_t_darray_tail">darray\_tail</a> | 返回最后一个元素。 |
### 属性
<p id="darray_t_properties">
@ -183,6 +185,39 @@ void* darray_find (darray_t* darray, void* ctx);
| 返回值 | void* | 如果找到返回满足条件的对象否则返回NULL。 |
| darray | darray\_t* | 数组对象。 |
| ctx | void* | 比较函数的上下文。 |
#### darray\_find\_all 函数
-----------------------
* 函数功能:
> <p id="darray_t_darray_find_all"> 查找全部满足条件的元素。
```
darray_t matched;
darray_init(&matched, 0, NULL, NULL);
darray_find_all(darray, mycmp, myctx, &matched);
...
darray_deinit(&matched);
```
* 函数原型:
```
ret_t darray_find_all (darray_t* darray, tk_compare_t cmp, void* ctx, darray_t* matched);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| cmp | tk\_compare\_t | 比较函数为NULL则使用内置的比较函数。 |
| ctx | void* | 比较函数的上下文。 |
| matched | darray\_t* | 返回满足条件的元素。 |
#### darray\_find\_index 函数
-----------------------
@ -351,7 +386,7 @@ ret_t darray_remove (darray_t* darray, void* ctx);
* 函数原型:
```
ret_t darray_remove_all (darray_t* darray, void* ctx);
ret_t darray_remove_all (darray_t* darray, tk_compare_t cmp, void* ctx);
```
* 参数说明:
@ -360,6 +395,7 @@ ret_t darray_remove_all (darray_t* darray, void* ctx);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| cmp | tk\_compare\_t | 比较函数为NULL则使用内置的比较函数。 |
| ctx | void* | 比较函数的上下文。 |
#### darray\_remove\_index 函数
-----------------------
@ -383,6 +419,28 @@ ret_t darray_remove_index (darray_t* darray, uint32_t index);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| index | uint32\_t | 位置序数。 |
#### darray\_sort 函数
-----------------------
* 函数功能:
> <p id="darray_t_darray_sort"> 排序。
* 函数原型:
```
ret_t darray_sort (darray_t* darray, tk_compare_t cmp);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| darray | darray\_t* | 数组对象。 |
| cmp | tk\_compare\_t | 比较函数为NULL则使用内置的比较函数。 |
#### darray\_tail 函数
-----------------------

View File

@ -0,0 +1,11 @@
## data\_discard\_policy\_t
### 概述
缓存不够时丢弃数据的策略。
### 常量
<p id="data_discard_policy_t_consts">
| 名称 | 说明 |
| -------- | ------- |
| DATA\_DISCARD\_OLD | 丢弃旧的数据。 |
| DATA\_DISCARD\_NEW | 丢弃新的数据。 |

View File

@ -13,8 +13,9 @@
| -------- | ------------ |
| <a href="#date_time_t_date_time_create">date\_time\_create</a> | 创建date_time对象并初始为当前日期和时间(一般供脚本语言中使用)。 |
| <a href="#date_time_t_date_time_destroy">date\_time\_destroy</a> | 销毁date_time对象(一般供脚本语言中使用)。 |
| <a href="#date_time_t_date_time_global_init">date\_time\_global\_init</a> | 时间日期全局初始化。 |
| <a href="#date_time_t_date_time_init">date\_time\_init</a> | 初始为当前日期和时间。 |
| <a href="#date_time_t_date_time_set_impl">date\_time\_set\_impl</a> | 设置获取当前日期和时间的函数。 |
| <a href="#date_time_t_date_time_set">date\_time\_set</a> | 设置当前时间。 |
### 属性
<p id="date_time_t_properties">
@ -69,6 +70,31 @@ ret_t date_time_destroy (date_time_t* dt);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| dt | date\_time\_t* | date\_time对象。 |
#### date\_time\_global\_init 函数
-----------------------
* 函数功能:
> <p id="date_time_t_date_time_global_init"> 时间日期全局初始化。
> 嵌入式平台需要提供并设置获取当前日期和时间的函数,否则相关的功能(如时钟控件)将无法正常工作。
* 函数原型:
```
ret_t date_time_global_init (date_time_get_now_t get, date_time_set_now_t set);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| get | date\_time\_get\_now\_t | 获取当前日期和时间的函数。 |
| set | date\_time\_set\_now\_t | 设置当前日期和时间的函数。 |
#### date\_time\_init 函数
-----------------------
@ -90,14 +116,12 @@ date_time_t* date_time_init (date_time_t* dt);
| -------- | ----- | --------- |
| 返回值 | date\_time\_t* | 返回date\_time对象。 |
| dt | date\_time\_t* | date\_time对象。 |
#### date\_time\_set\_impl 函数
#### date\_time\_set 函数
-----------------------
* 函数功能:
> <p id="date_time_t_date_time_set_impl"> 设置获取当前日期和时间的函数。
> 嵌入式平台需要提供并设置获取当前日期和时间的函数,否则相关的功能(如时钟控件)将无法正常工作。
> <p id="date_time_t_date_time_set"> 设置当前时间。
@ -105,7 +129,7 @@ date_time_t* date_time_init (date_time_t* dt);
* 函数原型:
```
ret_t date_time_set_impl (date_time_get_now_t date_time_get_now);
ret_t date_time_set (date_time_t* dt);
```
* 参数说明:
@ -113,7 +137,7 @@ ret_t date_time_set_impl (date_time_get_now_t date_time_get_now);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| date\_time\_get\_now | date\_time\_get\_now\_t | 获取当前日期和时间的函数。 |
| dt | date\_time\_t* | date\_time对象。 |
#### day 属性
-----------------------
> <p id="date_time_t_day"> 日(1-31)。

View File

@ -2,9 +2,9 @@
### 概述
![image](images/draggable_t_0.png)
将draggable放入目标控件即可让目标控件或当前窗口可以被拖动。
draggable\_t是[widget\_t](widget_t.md)的子类控件widget\_t的函数均适用于draggable\_t控件。
在xml中使用"draggable"标签创建draggable控件。如
@ -120,7 +120,7 @@ widget_t* draggable_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t h);
* 函数原型:
```
ret_t draggable_set_bottom (widget_t* widget, uint32_t bottom);
ret_t draggable_set_bottom (widget_t* widget, int32_t bottom);
```
* 参数说明:
@ -129,7 +129,7 @@ ret_t draggable_set_bottom (widget_t* widget, uint32_t bottom);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| bottom | uint32\_t | 拖动范围的底部限制。缺省为父控件的底部。 |
| bottom | int32\_t | 拖动范围的底部限制。缺省为父控件的底部。 |
#### draggable\_set\_drag\_window 函数
-----------------------
@ -143,7 +143,7 @@ ret_t draggable_set_bottom (widget_t* widget, uint32_t bottom);
* 函数原型:
```
ret_t draggable_set_drag_window (widget_t* widget, uint32_t );
ret_t draggable_set_drag_window (widget_t* widget, bool_t drag_window);
```
* 参数说明:
@ -152,7 +152,7 @@ ret_t draggable_set_drag_window (widget_t* widget, uint32_t );
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| | uint32\_t | w |
| drag\_window | bool\_t | drag\_window |
#### draggable\_set\_horizontal\_only 函数
-----------------------
@ -165,7 +165,7 @@ ret_t draggable_set_drag_window (widget_t* widget, uint32_t );
* 函数原型:
```
ret_t draggable_set_horizontal_only (widget_t* widget, uint32_t horizontal_only);
ret_t draggable_set_horizontal_only (widget_t* widget, bool_t horizontal_only);
```
* 参数说明:
@ -174,7 +174,7 @@ ret_t draggable_set_horizontal_only (widget_t* widget, uint32_t horizontal_only)
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| horizontal\_only | uint32\_t | 只允许水平拖动。 |
| horizontal\_only | bool\_t | 只允许水平拖动。 |
#### draggable\_set\_left 函数
-----------------------
@ -187,7 +187,7 @@ ret_t draggable_set_horizontal_only (widget_t* widget, uint32_t horizontal_only)
* 函数原型:
```
ret_t draggable_set_left (widget_t* widget, uint32_t left);
ret_t draggable_set_left (widget_t* widget, int32_t left);
```
* 参数说明:
@ -196,7 +196,7 @@ ret_t draggable_set_left (widget_t* widget, uint32_t left);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| left | uint32\_t | 拖动范围的左边限制。缺省为父控件的左边。 |
| left | int32\_t | 拖动范围的左边限制。缺省为父控件的左边。 |
#### draggable\_set\_right 函数
-----------------------
@ -209,7 +209,7 @@ ret_t draggable_set_left (widget_t* widget, uint32_t left);
* 函数原型:
```
ret_t draggable_set_right (widget_t* widget, uint32_t right);
ret_t draggable_set_right (widget_t* widget, int32_t right);
```
* 参数说明:
@ -218,7 +218,7 @@ ret_t draggable_set_right (widget_t* widget, uint32_t right);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| right | uint32\_t | 拖动范围的右边限制。缺省为父控件的右边边。 |
| right | int32\_t | 拖动范围的右边限制。缺省为父控件的右边边。 |
#### draggable\_set\_top 函数
-----------------------
@ -231,7 +231,7 @@ ret_t draggable_set_right (widget_t* widget, uint32_t right);
* 函数原型:
```
ret_t draggable_set_top (widget_t* widget, uint32_t top);
ret_t draggable_set_top (widget_t* widget, int32_t top);
```
* 参数说明:
@ -240,7 +240,7 @@ ret_t draggable_set_top (widget_t* widget, uint32_t top);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| top | uint32\_t | 拖动范围的顶部限制。缺省为父控件的顶部。 |
| top | int32\_t | 拖动范围的顶部限制。缺省为父控件的顶部。 |
#### draggable\_set\_vertical\_only 函数
-----------------------
@ -253,7 +253,7 @@ ret_t draggable_set_top (widget_t* widget, uint32_t top);
* 函数原型:
```
ret_t draggable_set_vertical_only (widget_t* widget, uint32_t vertical_only);
ret_t draggable_set_vertical_only (widget_t* widget, bool_t vertical_only);
```
* 参数说明:
@ -262,7 +262,7 @@ ret_t draggable_set_vertical_only (widget_t* widget, uint32_t vertical_only);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| vertical\_only | uint32\_t | 只允许垂直拖动。 |
| vertical\_only | bool\_t | 只允许垂直拖动。 |
#### bottom 属性
-----------------------
> <p id="draggable_t_bottom"> 拖动范围的底部限制。缺省为父控件的底部。

View File

@ -69,6 +69,7 @@ default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/st
| <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_set_auto_fix">edit\_set\_auto\_fix</a> | 设置编辑器是否为自动改正。 |
| <a href="#edit_t_edit_set_cursor">edit\_set\_cursor</a> | 设置输入框的光标坐标。 |
| <a href="#edit_t_edit_set_double">edit\_set\_double</a> | 设置double类型的值。 |
| <a href="#edit_t_edit_set_float_limit">edit\_set\_float\_limit</a> | 设置为浮点数输入及取值范围。 |
| <a href="#edit_t_edit_set_focus">edit\_set\_focus</a> | 设置为焦点。 |
@ -214,6 +215,28 @@ ret_t edit_set_auto_fix (widget_t* widget, bool_t auto_fix);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| auto\_fix | bool\_t | 自动改正。 |
#### edit\_set\_cursor 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_cursor"> 设置输入框的光标坐标。
* 函数原型:
```
ret_t edit_set_cursor (widget_t* widget, uint32_t cursor);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| cursor | uint32\_t | 是否为焦点。 |
#### edit\_set\_double 函数
-----------------------

View File

@ -17,6 +17,7 @@
| <a href="#event_source_manager_t_event_source_manager_get_wakeup_time">event\_source\_manager\_get\_wakeup\_time</a> | |
| <a href="#event_source_manager_t_event_source_manager_init">event\_source\_manager\_init</a> | |
| <a href="#event_source_manager_t_event_source_manager_remove">event\_source\_manager\_remove</a> | |
| <a href="#event_source_manager_t_event_source_manager_remove_by_tag">event\_source\_manager\_remove\_by\_tag</a> | |
#### event\_source\_manager\_add 函数
-----------------------
@ -187,3 +188,28 @@ ret_t event_source_manager_remove (event_source_manager_t* manager, event_source
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| manager | event\_source\_manager\_t* | event\_source\_manager对象。 |
| source | event\_source\_t* | event\_source对象。 |
#### event\_source\_manager\_remove\_by\_tag 函数
-----------------------
* 函数功能:
> <p id="event_source_manager_t_event_source_manager_remove_by_tag">
移除所有tag相同的事件源对象。
* 函数原型:
```
ret_t event_source_manager_remove_by_tag (event_source_manager_t* manager, void* tag);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| manager | event\_source\_manager\_t* | event\_source\_manager对象。 |
| tag | void* | tag。 |

View File

@ -21,6 +21,7 @@
| <a href="#event_source_t_event_source_dispatch">event\_source\_dispatch</a> | |
| <a href="#event_source_t_event_source_get_fd">event\_source\_get\_fd</a> | |
| <a href="#event_source_t_event_source_get_wakeup_time">event\_source\_get\_wakeup\_time</a> | |
| <a href="#event_source_t_event_source_set_tag">event\_source\_set\_tag</a> | |
#### event\_source\_check 函数
-----------------------
@ -117,3 +118,28 @@ uint32_t event_source_get_wakeup_time (event_source_t* source);
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回唤醒时间(ms)。 |
| source | event\_source\_t* | event\_source对象。 |
#### event\_source\_set\_tag 函数
-----------------------
* 函数功能:
> <p id="event_source_t_event_source_set_tag">
设置tag方便通过tag一次移除多个事件源。
* 函数原型:
```
ret_t event_source_set_tag (event_source_t* source, void* tag);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| source | event\_source\_t* | event\_source对象。 |
| tag | void* | tag。 |

View File

@ -10,8 +10,8 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#font_t_font_destroy">font\_destroy</a> | 销毁font对象。 |
| <a href="#font_t_font_get_baseline">font\_get\_baseline</a> | 获取字体的基线。 |
| <a href="#font_t_font_get_glyph">font\_get\_glyph</a> | 获取指定字符和大小的字模。 |
| <a href="#font_t_font_get_vmetrics">font\_get\_vmetrics</a> | 获取字体的高度信息。 |
| <a href="#font_t_font_match">font\_match</a> | 检查当前字体是否与指定名称和大小相匹配。 |
#### font\_destroy 函数
-----------------------
@ -34,28 +34,6 @@ ret_t font_destroy (font_t* font);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| font | font\_t* | font对象。 |
#### font\_get\_baseline 函数
-----------------------
* 函数功能:
> <p id="font_t_font_get_baseline"> 获取字体的基线。
* 函数原型:
```
int32_t font_get_baseline (font_t* font, font_size_t font_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回字体的基线。 |
| font | font\_t* | font对象。 |
| font\_size | font\_size\_t | 字体大小。 |
#### font\_get\_glyph 函数
-----------------------
@ -81,6 +59,28 @@ ret_t font_get_glyph (font_t* font, wchar_t chr, font_size_t font_size, glyph_t*
| chr | wchar\_t | 字符。 |
| font\_size | font\_size\_t | 字体大小。 |
| glyph | glyph\_t* | 返回字模数据。 |
#### font\_get\_vmetrics 函数
-----------------------
* 函数功能:
> <p id="font_t_font_get_vmetrics"> 获取字体的高度信息。
* 函数原型:
```
font_vmetrics_t font_get_vmetrics (font_t* font, font_size_t font_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | font\_vmetrics\_t | 返回字体的高度信息。 |
| font | font\_t* | font对象。 |
| font\_size | font\_size\_t | 字体大小。 |
#### font\_match 函数
-----------------------

View File

@ -4,6 +4,7 @@
文件夹接口。
----------------------------------
### 函数
<p id="fs_dir_t_methods">

View File

@ -1,7 +1,7 @@
## fs\_file\_t
### 概述
工具类。
文件接口。
----------------------------------
@ -10,19 +10,36 @@
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#fs_file_t_fs_file_close">fs\_file\_close</a> | |
| <a href="#fs_file_t_fs_file_eof">fs\_file\_eof</a> | |
| <a href="#fs_file_t_fs_file_read">fs\_file\_read</a> | |
| <a href="#fs_file_t_fs_file_seek">fs\_file\_seek</a> | |
| <a href="#fs_file_t_fs_file_truncate">fs\_file\_truncate</a> | |
| <a href="#fs_file_t_fs_file_write">fs\_file\_write</a> | |
#### fs\_file\_close 函数
| <a href="#fs_file_t_tk_atob">tk\_atob</a> | |
| <a href="#fs_file_t_tk_atof">tk\_atof</a> | |
| <a href="#fs_file_t_tk_atoi">tk\_atoi</a> | |
| <a href="#fs_file_t_tk_ftoa">tk\_ftoa</a> | |
| <a href="#fs_file_t_tk_itoa">tk\_itoa</a> | |
| <a href="#fs_file_t_tk_skip_to_num">tk\_skip\_to\_num</a> | |
| <a href="#fs_file_t_tk_snprintf">tk\_snprintf</a> | |
| <a href="#fs_file_t_tk_sscanf">tk\_sscanf</a> | |
| <a href="#fs_file_t_tk_str_append">tk\_str\_append</a> | |
| <a href="#fs_file_t_tk_str_cmp">tk\_str\_cmp</a> | |
| <a href="#fs_file_t_tk_str_icmp">tk\_str\_icmp</a> | |
| <a href="#fs_file_t_tk_str_start_with">tk\_str\_start\_with</a> | |
| <a href="#fs_file_t_tk_str_tolower">tk\_str\_tolower</a> | |
| <a href="#fs_file_t_tk_str_toupper">tk\_str\_toupper</a> | |
| <a href="#fs_file_t_tk_strcpy">tk\_strcpy</a> | |
| <a href="#fs_file_t_tk_strdup">tk\_strdup</a> | |
| <a href="#fs_file_t_tk_strncpy">tk\_strncpy</a> | |
| <a href="#fs_file_t_tk_strndup">tk\_strndup</a> | |
| <a href="#fs_file_t_tk_strtol">tk\_strtol</a> | |
| <a href="#fs_file_t_tk_watob">tk\_watob</a> | |
| <a href="#fs_file_t_tk_watof">tk\_watof</a> | |
| <a href="#fs_file_t_tk_watoi">tk\_watoi</a> | |
| <a href="#fs_file_t_tk_wstrdup">tk\_wstrdup</a> | |
#### tk\_atob 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_close">
关闭文件。
> <p id="fs_file_t_tk_atob">
将字符串转换为布尔类型
@ -31,7 +48,206 @@
* 函数原型:
```
ret_t fs_file_close (fs_file_t* file);
bool_t tk_atob (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回转换后的布尔类型。 |
| str | const char* | 要转换为布尔类型的字符串。 |
#### tk\_atof 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_atof">
将字符串转换为浮点类型。
* 函数原型:
```
double tk_atof (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | double | 返回转换后的浮点类型。 |
| str | const char* | 要转换为浮点类型的字符串。 |
#### tk\_atoi 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_atoi">
将字符串转换为整形。
* 函数原型:
```
int tk_atoi (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回转换后的整形。 |
| str | const char* | 要转换为整形的字符串。 |
#### tk\_ftoa 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_ftoa">
将浮点型转换为字符串。
* 函数原型:
```
const char* tk_ftoa (char* str, int len, double f);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回字符串。 |
| str | char* | 保存字符串缓冲区。 |
| len | int | 缓冲区大小。 |
| f | double | 要转换的浮点型。 |
#### tk\_itoa 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_itoa">
将整形转换为字符串。
* 函数原型:
```
const char* tk_itoa (char* str, int len, int n);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回字符串。 |
| str | char* | 保存字符串缓冲区。 |
| len | int | 缓冲区大小。 |
| n | int | 要转换的整形。 |
#### tk\_skip\_to\_num 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_skip_to_num">
跳过字符串函数,如:字符串"hello123world",返回的结果是"123world"。
* 函数原型:
```
const char* tk_skip_to_num (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回转换后的字符串。 |
| str | const char* | 要输入的原始字符串。 |
#### tk\_snprintf 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_snprintf">
将可变参数(...)按照format格式化字符串并将字符串复制到str中。
* 函数原型:
```
int tk_snprintf (char* str, size_t size, const char* format);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回格式化后的字符串长度+1。 |
| str | char* | 目标字符串。 |
| size | size\_t | 拷贝字节数。 |
| format | const char* | 格式化字符串。 |
#### tk\_sscanf 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_sscanf">
从字符串读取格式化输入。
* 函数原型:
```
int tk_sscanf (char* str, const char* format);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回成功匹配和赋值的个数。 |
| str | char* | 要输入的字符串。 |
| format | const char* | 格式化字符串。 |
#### tk\_str\_append 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_str_append">
字符串追加函数。
* 函数原型:
```
ret_t tk_str_append (char* str, uint32_t max_len, const char* s);
```
* 参数说明:
@ -39,14 +255,16 @@ ret_t fs_file_close (fs_file_t* file);
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| file | fs\_file\_t* | 文件对象。 |
#### fs\_file\_eof 函数
| str | char* | 被追加字符串。 |
| max\_len | uint32\_t | 字符串的最大长度。 |
| s | const char* | 要追加的字符串。 |
#### tk\_str\_cmp 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_eof">
判断文件是否结束
> <p id="fs_file_t_tk_str_cmp">
字符串比较函数
@ -55,22 +273,23 @@ ret_t fs_file_close (fs_file_t* file);
* 函数原型:
```
bool_t fs_file_eof (fs_file_t* file);
int32_t tk_str_cmp (const char* a, const char* b);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回TRUE表示结束否则表示没结束。 |
| file | fs\_file\_t* | 文件对象。 |
#### fs\_file\_read 函数
| 返回值 | int32\_t | 如果返回值=-1则表示a为NULL如果返回值=1则表示b为NULL如果返回值<0则表示a小于b如果返回值>0则表示a大于b如果返回值=0则表示a等于b。 |
| a | const char* | 要进行比较的第一个字符串。 |
| b | const char* | 要进行比较的第二个字符串。 |
#### tk\_str\_icmp 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_read">
读取文件
> <p id="fs_file_t_tk_str_icmp">
字符串比较函数(不区分大小写)
@ -79,24 +298,23 @@ bool_t fs_file_eof (fs_file_t* file);
* 函数原型:
```
int32_t fs_file_read (fs_file_t* file, void* buffer, uint32_t size);
int32_t tk_str_icmp (const char* a, const char* b);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回实际读取的字节数。 |
| file | fs\_file\_t* | 文件对象。 |
| buffer | void* | 用于返回数据的缓冲区。 |
| size | uint32\_t | 缓冲区大小。 |
#### fs\_file\_seek 函数
| 返回值 | int32\_t | 如果返回值=-1则表示a为NULL如果返回值=1则表示b为NULL如果返回值<0则表示a小于b如果返回值>0则表示a大于b如果返回值=0则表示a等于b。 |
| a | const char* | 要进行比较的第一个字符串。 |
| b | const char* | 要进行比较的第二个字符串。 |
#### tk\_str\_start\_with 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_seek">
定位读写指针到指定的位置
> <p id="fs_file_t_tk_str_start_with">
检查字符串是否以指定的字符串prefix开头
@ -105,23 +323,23 @@ int32_t fs_file_read (fs_file_t* file, void* buffer, uint32_t size);
* 函数原型:
```
ret_t fs_file_seek (fs_file_t* file, uint32_t offset);
bool_t tk_str_start_with (const char* str, const char* prefix);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| file | fs\_file\_t* | 文件对象。 |
| offset | uint32\_t | 数据长度。 |
#### fs\_file\_truncate 函数
| 返回值 | bool\_t | 返回TRUE表示是否则表示不是。 |
| str | const char* | 要检查字符串。 |
| prefix | const char* | 被检查的字符串。 |
#### tk\_str\_tolower 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_truncate">
清除文件内容
> <p id="fs_file_t_tk_str_tolower">
将大写字母转换为小写字母
@ -130,22 +348,22 @@ ret_t fs_file_seek (fs_file_t* file, uint32_t offset);
* 函数原型:
```
ret_t fs_file_truncate (fs_file_t* file);
char* tk_str_tolower (char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| file | fs\_file\_t* | 文件对象。 |
#### fs\_file\_write 函数
| 返回值 | char* | 返回转换后的小写字母字符串。 |
| str | char* | 要被转换成小写字母的字符串。 |
#### tk\_str\_toupper 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_fs_file_write">
写入文件
> <p id="fs_file_t_tk_str_toupper">
将小写字母转换为大写字母
@ -154,14 +372,234 @@ ret_t fs_file_truncate (fs_file_t* file);
* 函数原型:
```
int32_t fs_file_write (fs_file_t* file, const void* buffer, uint32_t size);
char* tk_str_toupper (char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回实际写入的字节数。 |
| file | fs\_file\_t* | 文件对象。 |
| buffer | const void* | 数据缓冲区。 |
| size | uint32\_t | 数据长度。 |
| 返回值 | char* | 返回转换后的大写字母字符串。 |
| str | char* | 要被转换成大写字母的字符串。 |
#### tk\_strcpy 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_strcpy">
将src所指向的字符串复制到dst。
* 函数原型:
```
char* tk_strcpy (char* dst, const char* src);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回目标字符串。 |
| dst | char* | 目标字符串。 |
| src | const char* | 原字符串。 |
#### tk\_strdup 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_strdup">
字符串拷贝函数。
* 函数原型:
```
char* tk_strdup (const char* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回指向的复制字符串指针如果失败则返回NULL。 |
| str | const char* | 原字符串。 |
#### tk\_strncpy 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_strncpy">
将src所指向的字符串复制到dst最多复制len个字符串。
* 函数原型:
```
char* tk_strncpy (char* dst, const char* src, size_t len);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回目标字符串。 |
| dst | char* | 目标字符串。 |
| src | const char* | 原字符串。 |
| len | size\_t | 要复制的字符串个数。 |
#### tk\_strndup 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_strndup">
字符串拷贝函数最多复制len个字符串。
* 函数原型:
```
char* tk_strndup (const char* str, uint32_t len);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 返回指向的复制字符串指针如果失败则返回NULL。 |
| str | const char* | 原字符串。 |
| len | uint32\_t | 要复制的字符串个数。 |
#### tk\_strtol 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_strtol">
将字符串转换为长整形。
* 函数原型:
```
long tk_strtol (const char* str, const char** end, int base);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | long | 返回转换后的长整形。 |
| str | const char* | 要转换为长整形的字符串。 |
| end | const char** | 对类型char*的对象的引用。 |
| base | int | 基数。 |
#### tk\_watob 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_watob">
将宽字符串转换为布尔类型。
* 函数原型:
```
bool_t tk_watob (const wchar_t* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | bool\_t | 返回转换后的布尔类型。 |
| str | const wchar\_t* | 要转换为布尔类型的宽字符串。 |
#### tk\_watof 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_watof">
将宽字符串转换为浮点类型。
* 函数原型:
```
double tk_watof (const wchar_t* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | double | 返回转换后的浮点类型。 |
| str | const wchar\_t* | 要转换为浮点类型的宽字符串。 |
#### tk\_watoi 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_watoi">
将宽字符串转换为整形。
* 函数原型:
```
int tk_watoi (const wchar_t* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回转换后的整形。 |
| str | const wchar\_t* | 要转换为整形的宽字符串。 |
#### tk\_wstrdup 函数
-----------------------
* 函数功能:
> <p id="fs_file_t_tk_wstrdup">
宽字符串拷贝函数。
* 函数原型:
```
wchar_t* tk_wstrdup (const wchar_t* str);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | wchar\_t* | 返回指向的复制宽字符串指针如果失败则返回NULL。 |
| str | const wchar\_t* | 原宽字符串。 |

View File

@ -4,4 +4,476 @@
文件系统接口。
----------------------------------
### 函数
<p id="fs_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#fs_t_file_exist">file\_exist</a> | |
| <a href="#fs_t_file_get_size">file\_get\_size</a> | |
| <a href="#fs_t_file_read">file\_read</a> | |
| <a href="#fs_t_file_read_part">file\_read\_part</a> | |
| <a href="#fs_t_file_remove">file\_remove</a> | |
| <a href="#fs_t_file_write">file\_write</a> | |
| <a href="#fs_t_fs_dir_exist">fs\_dir\_exist</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> | |
| <a href="#fs_t_fs_get_cwd">fs\_get\_cwd</a> | |
| <a href="#fs_t_fs_get_exe">fs\_get\_exe</a> | |
| <a href="#fs_t_fs_get_file_size">fs\_get\_file\_size</a> | |
| <a href="#fs_t_fs_open_dir">fs\_open\_dir</a> | |
| <a href="#fs_t_fs_open_file">fs\_open\_file</a> | |
| <a href="#fs_t_fs_remove_dir">fs\_remove\_dir</a> | |
| <a href="#fs_t_fs_remove_file">fs\_remove\_file</a> | |
| <a href="#fs_t_os_fs">os\_fs</a> | 获取缺省的文件系统对象。 |
#### file\_exist 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_exist">
判断文件是否存在。
* 函数原型:
```
ret_t file_exist (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| name | const char* | 文件名。 |
#### file\_get\_size 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_get_size">
获取文件大小。
* 函数原型:
```
ret_t file_get_size (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回不是-1表示成功否则表示失败。 |
| name | const char* | 文件名。 |
#### file\_read 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_read">
读取文件。
* 函数原型:
```
int32_t* file_read (const char* name, uint32_t* size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t* | 返回实际读取的字节数。 |
| name | const char* | 文件名。 |
| size | uint32\_t* | 缓冲区大小。 |
#### file\_read\_part 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_read_part">
从某个位置读取文件。
* 函数原型:
```
int32_t* file_read_part (const char* name, const void* buffer, uint32_t size, uint32_t offset);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t* | 返回实际读取的字节数。 |
| name | const char* | 文件名。 |
| buffer | const void* | 数据缓冲区。 |
| size | uint32\_t | 数据长度。 |
| offset | uint32\_t | 偏移量。 |
#### file\_remove 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_remove">
刪除文件。
* 函数原型:
```
ret_t file_remove (const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| name | const char* | 文件名。 |
#### file\_write 函数
-----------------------
* 函数功能:
> <p id="fs_t_file_write">
写入文件。
* 函数原型:
```
int32_t file_write (const char* name, const void* buffer, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回实际写入的字节数。 |
| name | const char* | 文件名。 |
| buffer | const void* | 数据缓冲区。 |
| size | uint32\_t | 数据长度。 |
#### fs\_dir\_exist 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_dir_exist">
判断目录是否存在。
* 函数原型:
```
ret_t fs_dir_exist (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 目录名称。 |
#### fs\_dir\_rename 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_dir_rename">
目录重命名。
* 函数原型:
```
ret_t fs_dir_rename (fs_t* fs, const char* name, const char* new_name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 旧目录名称。 |
| new\_name | const char* | 新目录名称。 |
#### fs\_file\_exist 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_file_exist">
判断文件是否存在。
* 函数原型:
```
ret_t fs_file_exist (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 文件名。 |
#### fs\_file\_rename 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_file_rename">
文件重命名。
* 函数原型:
```
ret_t fs_file_rename (fs_t* fs, const char* name, const char* new_name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 旧文件名。 |
| new\_name | const char* | 新文件名。 |
#### fs\_get\_cwd 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_get_cwd">
获取当前所在目录。
* 函数原型:
```
ret_t fs_get_cwd (fs_t* fs, char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| path | char* | 保存当前所在目录的路径。 |
#### fs\_get\_exe 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_get_exe">
获取可执行文件所在目录。
* 函数原型:
```
ret_t fs_get_exe (fs_t* fs, char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| path | char* | 保存可执行文件的路径。 |
#### fs\_get\_file\_size 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_get_file_size">
获取文件大小。
* 函数原型:
```
ret_t fs_get_file_size (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回不是-1表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 文件名。 |
#### fs\_open\_dir 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_open_dir">
打开目录。
* 函数原型:
```
ret_t fs_open_dir (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回不是NULL表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 目录名称。 |
#### fs\_open\_file 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_open_file">
打开文件。
* 函数原型:
```
ret_t fs_open_file (fs_t* fs, const char* name, const char* mode);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回不是NULL表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 文件名。 |
| mode | const char* | 打开方式。 |
#### fs\_remove\_dir 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_remove_dir">
刪除目录。
* 函数原型:
```
ret_t fs_remove_dir (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 目录名称。 |
#### fs\_remove\_file 函数
-----------------------
* 函数功能:
> <p id="fs_t_fs_remove_file">
刪除文件。
* 函数原型:
```
ret_t fs_remove_file (fs_t* fs, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| fs | fs\_t* | 文件系统对象一般赋值为os\_fs()。 |
| name | const char* | 文件名。 |
#### os\_fs 函数
-----------------------
* 函数功能:
> <p id="fs_t_os_fs"> 获取缺省的文件系统对象。
* 函数原型:
```
fs_t* os_fs ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | fs\_t* | 返回文件系统对象。 |

View File

@ -16,7 +16,8 @@
```
>更多用法请参考:
[gif image](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/ui/gif_image.xml)
[gif
image](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/ui/gif_image.xml)
在c代码中使用函数gif\_image\_create创建GIF图片控件。如

View File

@ -0,0 +1,170 @@
## graphic\_buffer\_t
### 概述
graphic_buffer。
----------------------------------
### 函数
<p id="graphic_buffer_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#graphic_buffer_t_graphic_buffer_attach">graphic\_buffer\_attach</a> | 附件到指定的内存。 |
| <a href="#graphic_buffer_t_graphic_buffer_create_for_bitmap">graphic\_buffer\_create\_for\_bitmap</a> | 为位图创建缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_default_create_with_data">graphic\_buffer\_default\_create\_with\_data</a> | 创建缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_destroy">graphic\_buffer\_destroy</a> | 销毁缓冲区。 |
| <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> | 为修改数据而锁定缓冲区。 |
| <a href="#graphic_buffer_t_graphic_buffer_unlock">graphic\_buffer\_unlock</a> | 解锁缓冲区。 |
#### graphic\_buffer\_attach 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_attach"> 附件到指定的内存。
* 函数原型:
```
ret_t graphic_buffer_attach (graphic_buffer_t* buffer, void* data);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
| data | void* | 内存数据。 |
#### graphic\_buffer\_create\_for\_bitmap 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_create_for_bitmap"> 为位图创建缓冲区。
* 函数原型:
```
ret_t graphic_buffer_create_for_bitmap (bitmap_t* bitmap);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| bitmap | bitmap\_t* | 位图对象。 |
#### graphic\_buffer\_default\_create\_with\_data 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_default_create_with_data"> 创建缓冲区。
> 为了兼容raw图像。
* 函数原型:
```
graphic_buffer_t* graphic_buffer_default_create_with_data (const uint8_t* data, uint32_t w, uint32_t h, bitmap_format_t format);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | graphic\_buffer\_t* | 返回缓存区。 |
| data | const uint8\_t* | 数据。 |
| w | uint32\_t | 宽度。 |
| h | uint32\_t | 宽度。 |
| format | bitmap\_format\_t | 格式。 |
#### graphic\_buffer\_destroy 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_destroy"> 销毁缓冲区。
* 函数原型:
```
ret_t graphic_buffer_destroy (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_lock\_for\_read 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_lock_for_read"> 为读取数据而锁定缓冲区。
* 函数原型:
```
uint8_t* graphic_buffer_lock_for_read (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint8\_t* | 返回缓存区的首地址。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_lock\_for\_write 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_lock_for_write"> 为修改数据而锁定缓冲区。
* 函数原型:
```
uint8_t* graphic_buffer_lock_for_write (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint8\_t* | 返回缓存区的首地址。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |
#### graphic\_buffer\_unlock 函数
-----------------------
* 函数功能:
> <p id="graphic_buffer_t_graphic_buffer_unlock"> 解锁缓冲区。
* 函数原型:
```
ret_t graphic_buffer_unlock (graphic_buffer_t* buffer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| buffer | graphic\_buffer\_t* | 图像缓冲区对象。 |

View File

@ -35,7 +35,8 @@
```
> 更多用法请参考:
[theme default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/styles/default.xml)
[theme
default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/styles/default.xml)
----------------------------------

View File

@ -0,0 +1,289 @@
## idle\_manager\_t
### 概述
idle_manager_t管理器。
----------------------------------
### 函数
<p id="idle_manager_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <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_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_find">idle\_manager\_find</a> | 查找指定ID的idle。 |
| <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_set">idle\_manager\_set</a> | 设置缺省的idle_manager_t管理器。 |
#### idle\_manager 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager"> 获取缺省的idle_manager_t管理器。
* 函数原型:
```
idle_manager_t* idle_manager ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | idle\_manager\_t* | 返回idle\_manager\_t管理器对象。 |
#### idle\_manager\_add 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_add"> 添加idle。
* 函数原型:
```
uint32_t idle_manager_add (idle_manager_t* idle_manager, idle_func_t* on_idle, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回idle的IDTK\_INVALID\_ID表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| on\_idle | idle\_func\_t* | idle回调函数。 |
| ctx | void* | idle回调函数的上下文。 |
#### idle\_manager\_append 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_append"> 追加idle。
* 函数原型:
```
ret_t idle_manager_append (idle_manager_t* idle_manager, idle_info_t* idle);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| idle | idle\_info\_t* | idle对象。 |
#### idle\_manager\_count 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_count"> 返回idle的个数。
* 函数原型:
```
uint32_t idle_manager_count (idle_manager_t* idle_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回timer的个数。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_create 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_create"> 创建idle_manager_t管理器。
* 函数原型:
```
idle_manager_t* idle_manager_create ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | idle\_manager\_t* | 返回idle\_manager\_t管理器对象。 |
#### idle\_manager\_deinit 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_deinit"> 析构idle_manager_t管理器。
* 函数原型:
```
ret_t idle_manager_deinit (idle_manager_t* idle_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_destroy 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_destroy"> 析构并释放idle_manager_t管理器。
* 函数原型:
```
ret_t idle_manager_destroy (idle_manager_t* idle_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_find 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_find"> 查找指定ID的idle。
* 函数原型:
```
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\_init 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_init"> 初始化idle_manager_t管理器。
* 函数原型:
```
idle_manager_t* idle_manager_init (idle_manager_t* idle_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | idle\_manager\_t* | 返回idle\_manager\_t管理器对象。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
#### idle\_manager\_remove 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_remove"> 根据idle_id删除idle。
* 函数原型:
```
ret_t idle_manager_remove (idle_manager_t* idle_manager, uint32_t idle_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager | idle\_manager\_t* | idle\_manager\_t管理器对象。 |
| idle\_id | uint32\_t | idle\_id。 |
#### idle\_manager\_remove\_all 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_remove_all"> 删除全部idle。
* 函数原型:
```
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\_set 函数
-----------------------
* 函数功能:
> <p id="idle_manager_t_idle_manager_set"> 设置缺省的idle_manager_t管理器。
* 函数原型:
```
ret_t idle_manager_set (idle_manager_t* idle_manager_t);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| idle\_manager\_t | idle\_manager\_t* | idle\_manager\_t管理器对象。 |

View File

@ -43,6 +43,7 @@
| -------- | ------------ |
| <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_next">image\_animation\_next</a> | 手动切换到下一张图片。 |
| <a href="#image_animation_t_image_animation_pause">image\_animation\_pause</a> | 暂停。 |
| <a href="#image_animation_t_image_animation_play">image\_animation\_play</a> | 播放。 |
| <a href="#image_animation_t_image_animation_set_auto_play">image\_animation\_set\_auto\_play</a> | 设置是否自动播放。 |
@ -116,6 +117,27 @@ 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\_next 函数
-----------------------
* 函数功能:
> <p id="image_animation_t_image_animation_next"> 手动切换到下一张图片。
* 函数原型:
```
ret_t image_animation_next (widget_t* widget);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image\_animation对象。 |
#### image\_animation\_pause 函数
-----------------------

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,6 +1,7 @@
## indicator\_default\_paint\_t
### 概述
指示器默认绘制的类型。
### 常量
<p id="indicator_default_paint_t_consts">

74
docs/manual/int_str_t.md Normal file
View File

@ -0,0 +1,74 @@
## int\_str\_t
### 概述
数字 字符串类型。
示例:
```c
static const int_str_t color_values[] = {{1, "red"}, {2, "black"}, {3, "blue"}, {4, "white"}};
const char* value = int_str_value(color_values, 3);
int32_t name = int_str_name(color_values, "blue", 0);
printf("value = %s \n", value);
printf("name = %d \n", name);
```
----------------------------------
### 函数
<p id="int_str_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#int_str_t_int_str_name">int\_str\_name</a> | |
| <a href="#int_str_t_int_str_value">int\_str\_value</a> | |
#### int\_str\_name 函数
-----------------------
* 函数功能:
> <p id="int_str_t_int_str_name">
根据value获取对应的name。
* 函数原型:
```
int32_t int_str_name (const int_str_t* items, const char* value, int32_t defval);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int32\_t | 返回name。 |
| items | const int\_str\_t* | int\_str\_t数组。 |
| value | const char* | value。 |
| defval | int32\_t | 如果没有找到对应的name则返回的defval默认值。 |
#### int\_str\_value 函数
-----------------------
* 函数功能:
> <p id="int_str_t_int_str_value">
根据name获取对应的value。
* 函数原型:
```
const char* int_str_value (const int_str_t* items, int32_t name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回value。 |
| items | const int\_str\_t* | int\_str\_t数组。 |
| name | int32\_t | name。 |

View File

@ -135,3 +135,4 @@
| TK\_KEY\_F12 | TK\_KEY\_F12 |
| TK\_KEY\_MENU | TK\_KEY\_MENU |
| TK\_KEY\_COMMAND | TK\_KEY\_COMMAND |
| TK\_KEY\_BACK | TK\_KEY\_BACK |

View File

@ -35,10 +35,12 @@
| -------- | ------------ |
| <a href="#mledit_t_mledit_cast">mledit\_cast</a> | 转换为mledit对象(供脚本语言使用)。 |
| <a href="#mledit_t_mledit_create">mledit\_create</a> | 创建mledit对象 |
| <a href="#mledit_t_mledit_set_cursor">mledit\_set\_cursor</a> | 设置编辑器光标位置。 |
| <a href="#mledit_t_mledit_set_focus">mledit\_set\_focus</a> | 设置为焦点。 |
| <a href="#mledit_t_mledit_set_input_tips">mledit\_set\_input\_tips</a> | 设置编辑器的输入提示。 |
| <a href="#mledit_t_mledit_set_max_lines">mledit\_set\_max\_lines</a> | 设置编辑器的最大行数。 |
| <a href="#mledit_t_mledit_set_readonly">mledit\_set\_readonly</a> | 设置编辑器是否为只读。 |
| <a href="#mledit_t_mledit_set_scroll_line">mledit\_set\_scroll\_line</a> | 设置编辑器滚动速度。 |
| <a href="#mledit_t_mledit_set_wrap_word">mledit\_set\_wrap\_word</a> | 设置编辑器是否自动折行。 |
### 属性
<p id="mledit_t_properties">
@ -50,6 +52,7 @@
| <a href="#mledit_t_max_lines">max\_lines</a> | uint32\_t | 最大行数。 |
| <a href="#mledit_t_readonly">readonly</a> | bool\_t | 编辑器是否为只读。 |
| <a href="#mledit_t_right_margin">right\_margin</a> | uint8\_t | 右边距。 |
| <a href="#mledit_t_scroll_line">scroll\_line</a> | float\_t | 鼠标一次滚动行数。 |
| <a href="#mledit_t_tips">tips</a> | char* | 输入提示。 |
| <a href="#mledit_t_top_margin">top\_margin</a> | uint8\_t | 上边距。 |
| <a href="#mledit_t_wrap_word">wrap\_word</a> | bool\_t | 是否自动折行。 |
@ -106,6 +109,28 @@ widget_t* mledit_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 | 高度 |
#### mledit\_set\_cursor 函数
-----------------------
* 函数功能:
> <p id="mledit_t_mledit_set_cursor"> 设置编辑器光标位置。
* 函数原型:
```
ret_t mledit_set_cursor (widget_t* widget, uint32_t cursor);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| cursor | uint32\_t | 光标位置。 |
#### mledit\_set\_focus 函数
-----------------------
@ -194,6 +219,28 @@ ret_t mledit_set_readonly (widget_t* widget, bool_t readonly);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| readonly | bool\_t | 只读。 |
#### mledit\_set\_scroll\_line 函数
-----------------------
* 函数功能:
> <p id="mledit_t_mledit_set_scroll_line"> 设置编辑器滚动速度。
* 函数原型:
```
ret_t mledit_set_scroll_line (widget_t* widget, uint32_t scroll_line);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| scroll\_line | uint32\_t | 滚动行数。 |
#### mledit\_set\_wrap\_word 函数
-----------------------
@ -292,6 +339,23 @@ ret_t mledit_set_wrap_word (widget_t* widget, bool_t wrap_word);
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### scroll\_line 属性
-----------------------
> <p id="mledit_t_scroll_line"> 鼠标一次滚动行数。
* 类型float\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
| 可持久化 | 是 |
| 可脚本化 | 是 |
| 可在IDE中设置 | 是 |
| 可在XML中设置 | 是 |
| 可通过widget\_get\_prop读取 | 是 |
| 可通过widget\_set\_prop修改 | 是 |
#### tips 属性
-----------------------
> <p id="mledit_t_tips"> 输入提示。

300
docs/manual/path.md Normal file
View File

@ -0,0 +1,300 @@
## path
### 概述
路径接口。
----------------------------------
### 函数
<p id="path_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#path_path_abs">path\_abs</a> | |
| <a href="#path_path_app_root">path\_app\_root</a> | |
| <a href="#path_path_basename">path\_basename</a> | |
| <a href="#path_path_build">path\_build</a> | |
| <a href="#path_path_cwd">path\_cwd</a> | |
| <a href="#path_path_dirname">path\_dirname</a> | |
| <a href="#path_path_exe">path\_exe</a> | |
| <a href="#path_path_exist">path\_exist</a> | |
| <a href="#path_path_extname">path\_extname</a> | |
| <a href="#path_path_normalize">path\_normalize</a> | |
| <a href="#path_path_replace_basename">path\_replace\_basename</a> | |
#### path\_abs 函数
-----------------------
* 函数功能:
> <p id="path_path_abs">
返回绝对路径。
* 函数原型:
```
ret_t path_abs (const char* path* path, char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | const char* path* | 路径。 |
| result | char* | 用于返回绝对路径。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_app\_root 函数
-----------------------
* 函数功能:
> <p id="path_path_app_root">
获取app所在目录。
* 函数原型:
```
ret_t path_app_root (char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | char* | 保存app所在目录。 |
#### path\_basename 函数
-----------------------
* 函数功能:
> <p id="path_path_basename">
返回文件名。
* 函数原型:
```
ret_t path_basename (const char* path* path, char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | const char* path* | 路径。 |
| result | char* | 用于返回文件名。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_build 函数
-----------------------
* 函数功能:
> <p id="path_path_build">
构造路径。
* 函数原型:
```
ret_t path_build (char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| result | char* | 用于返回路径。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_cwd 函数
-----------------------
* 函数功能:
> <p id="path_path_cwd">
获取当前所在目录。
* 函数原型:
```
ret_t path_cwd (char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | char* | 保存当前所在目录的路径。 |
#### path\_dirname 函数
-----------------------
* 函数功能:
> <p id="path_path_dirname">
返回目录。
* 函数原型:
```
ret_t path_dirname (const char* path* path, char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | const char* path* | 路径。 |
| result | char* | 用于返回目录。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_exe 函数
-----------------------
* 函数功能:
> <p id="path_path_exe">
获取可执行文件所在目录。
* 函数原型:
```
ret_t path_exe (char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | char* | 保存可执行文件所在目录。 |
#### path\_exist 函数
-----------------------
* 函数功能:
> <p id="path_path_exist">
判断目录是否存在。
* 函数原型:
```
ret_t path_exist (const char* path);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回TRUE表示成功否则表示失败。 |
| path | const char* | 目录。 |
#### path\_extname 函数
-----------------------
* 函数功能:
> <p id="path_path_extname">
返回文件扩展名。
* 函数原型:
```
ret_t path_extname (const char* path* path, char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | const char* path* | 路径。 |
| result | char* | 用于返回文件扩展名。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_normalize 函数
-----------------------
* 函数功能:
> <p id="path_path_normalize">
规范路径字符形式。
* 函数原型:
```
ret_t path_normalize (const char* path* path, char* result, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| path | const char* path* | 路径。 |
| result | char* | 用于返回规范后的路径。 |
| size | uint32\_t | 缓冲区大小。 |
#### path\_replace\_basename 函数
-----------------------
* 函数功能:
> <p id="path_path_replace_basename">
替换文件名。
* 函数原型:
```
ret_t path_replace_basename (char* result, uint32_t size, char* filename, char* basename);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| result | char* | 用于返回结果。 |
| size | uint32\_t | 缓冲区大小。 |
| filename | char* | 原始文件路径。 |
| basename | char* | 替换后的文件名。 |

77
docs/manual/platform.md Normal file
View File

@ -0,0 +1,77 @@
## platform
### 概述
平台接口,包括:获取时间、休眠等函数。
----------------------------------
### 函数
<p id="platform_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#platform_get_time_ms64">get\_time\_ms64</a> | 获取当前时间。 |
| <a href="#platform_platform_prepare">platform\_prepare</a> | |
| <a href="#platform_sleep_ms">sleep\_ms</a> | |
#### get\_time\_ms64 函数
-----------------------
* 函数功能:
> <p id="platform_get_time_ms64"> 获取当前时间。
* 函数原型:
```
uint64_t get_time_ms64 ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint64\_t | 成功返回当前时间。 |
#### platform\_prepare 函数
-----------------------
* 函数功能:
> <p id="platform_platform_prepare">
平台准备函数。
* 函数原型:
```
ret_t platform_prepare ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
#### sleep\_ms 函数
-----------------------
* 函数功能:
> <p id="platform_sleep_ms">
睡眠毫秒。
* 函数原型:
```
void sleep_ms (uint32_t ms);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | void | 无。 |
| ms | uint32\_t | 毫秒。 |

View File

@ -11,6 +11,7 @@
| <a href="#ring_buffer_t_ring_buffer_capacity">ring\_buffer\_capacity</a> | 获取容量。 |
| <a href="#ring_buffer_t_ring_buffer_create">ring\_buffer\_create</a> | 创建ring_buffer对象。 |
| <a href="#ring_buffer_t_ring_buffer_destroy">ring\_buffer\_destroy</a> | 销毁ring_buffer。 |
| <a href="#ring_buffer_t_ring_buffer_ensure_write_space">ring\_buffer\_ensure\_write\_space</a> | 扩展buffer。 |
| <a href="#ring_buffer_t_ring_buffer_free_size">ring\_buffer\_free\_size</a> | 获取空闲空间的长度。 |
| <a href="#ring_buffer_t_ring_buffer_is_empty">ring\_buffer\_is\_empty</a> | 检查ring_buffer是否空。 |
| <a href="#ring_buffer_t_ring_buffer_is_full">ring\_buffer\_is\_full</a> | 检查ring_buffer是否满。 |
@ -23,6 +24,7 @@
| <a href="#ring_buffer_t_ring_buffer_set_write_cursor">ring\_buffer\_set\_write\_cursor</a> | 设置写入光标的位置。 |
| <a href="#ring_buffer_t_ring_buffer_set_write_cursor_delta">ring\_buffer\_set\_write\_cursor\_delta</a> | 设置写入光标的位置(delta)。 |
| <a href="#ring_buffer_t_ring_buffer_size">ring\_buffer\_size</a> | 获取数据长度。 |
| <a href="#ring_buffer_t_ring_buffer_skip">ring\_buffer\_skip</a> | 跳过指定长度数据,要么成功要么失败。 |
| <a href="#ring_buffer_t_ring_buffer_write">ring\_buffer\_write</a> | |
| <a href="#ring_buffer_t_ring_buffer_write_len">ring\_buffer\_write\_len</a> | 写入指定长度数据,要么成功要么失败。 |
### 属性
@ -103,6 +105,29 @@ ret_t ring_buffer_destroy (ring_buffer_t* ring_buffer);
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ring\_buffer | ring\_buffer\_t* | ring\_buffer对象。 |
#### ring\_buffer\_ensure\_write\_space 函数
-----------------------
* 函数功能:
> <p id="ring_buffer_t_ring_buffer_ensure_write_space"> 扩展buffer。
* 函数原型:
```
ret_t ring_buffer_ensure_write_space (ring_buffer_t* ring_buffer, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ring\_buffer | ring\_buffer\_t* | ring\_buffer对象。 |
| size | uint32\_t | 需要的大小。 |
#### ring\_buffer\_free\_size 函数
-----------------------
@ -377,6 +402,29 @@ uint32_t ring_buffer_size (ring_buffer_t* ring_buffer);
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 数据长度。 |
| ring\_buffer | ring\_buffer\_t* | ring\_buffer对象。 |
#### ring\_buffer\_skip 函数
-----------------------
* 函数功能:
> <p id="ring_buffer_t_ring_buffer_skip"> 跳过指定长度数据,要么成功要么失败。
* 函数原型:
```
ret_t ring_buffer_skip (ring_buffer_t* ring_buffer, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ring\_buffer | ring\_buffer\_t* | ring\_buffer对象。 |
| size | uint32\_t | 长度。 |
#### ring\_buffer\_write 函数
-----------------------

View File

@ -44,6 +44,7 @@ https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/ui/list_vie
| -------- | ------------ |
| <a href="#scroll_view_t_scroll_view_cast">scroll\_view\_cast</a> | 转换为scroll_view对象(供脚本语言使用)。 |
| <a href="#scroll_view_t_scroll_view_create">scroll\_view\_create</a> | 创建scroll_view对象 |
| <a href="#scroll_view_t_scroll_view_scroll_delta_to">scroll\_view\_scroll\_delta\_to</a> | 滚动到指定的偏移量。 |
| <a href="#scroll_view_t_scroll_view_scroll_to">scroll\_view\_scroll\_to</a> | 滚动到指定的偏移量。 |
| <a href="#scroll_view_t_scroll_view_set_offset">scroll\_view\_set\_offset</a> | 设置偏移量。 |
| <a href="#scroll_view_t_scroll_view_set_virtual_h">scroll\_view\_set\_virtual\_h</a> | 设置虚拟高度。 |
@ -107,6 +108,30 @@ widget_t* scroll_view_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 | 高度 |
#### scroll\_view\_scroll\_delta\_to 函数
-----------------------
* 函数功能:
> <p id="scroll_view_t_scroll_view_scroll_delta_to"> 滚动到指定的偏移量。
* 函数原型:
```
ret_t scroll_view_scroll_delta_to (widget_t* widget, int32_t xoffset_delta, int32_t yoffset_delta, int32_t duration);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | 控件对象。 |
| xoffset\_delta | int32\_t | x偏移量。 |
| yoffset\_delta | int32\_t | y偏移量。 |
| duration | int32\_t | 时间。 |
#### scroll\_view\_scroll\_to 函数
-----------------------

View File

@ -36,6 +36,7 @@ https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/ui/slide_vi
https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/styles/default.xml#L350)
----------------------------------
### 函数
<p id="slide_indicator_t_methods">
@ -79,6 +80,7 @@ https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/styles/defa
* 函数原型:
```
@ -100,6 +102,7 @@ widget_t* slide_indicator_cast (widget_t* widget);
* 函数原型:
```
@ -125,6 +128,7 @@ widget_t* slide_indicator_create (widget_t* parent, xy_t x, xy_t y, wh_t w, wh_t
* 函数原型:
```
@ -150,6 +154,7 @@ widget_t* slide_indicator_create_arc (widget_t* parent, xy_t x, xy_t y, wh_t w,
* 函数原型:
```
@ -175,6 +180,7 @@ widget_t* slide_indicator_create_linear (widget_t* parent, xy_t x, xy_t y, wh_t
* 函数原型:
```
@ -198,6 +204,7 @@ ret_t slide_indicator_set_anchor (widget_t* widget, const char* anchor_x, const
* 函数原型:
```
@ -220,6 +227,7 @@ ret_t slide_indicator_set_auto_hide (widget_t* widget, uint16_t auto_hide);
* 函数原型:
```
@ -242,6 +250,7 @@ ret_t slide_indicator_set_default_paint (widget_t* widget, indicator_default_pai
* 函数原型:
```
@ -264,6 +273,7 @@ ret_t slide_indicator_set_indicated_target (widget_t* widget, const char* indica
* 函数原型:
```
@ -286,6 +296,7 @@ ret_t slide_indicator_set_margin (widget_t* widget, int32_t margin);
* 函数原型:
```
@ -308,6 +319,7 @@ ret_t slide_indicator_set_max (widget_t* widget, uint32_t max);
* 函数原型:
```
@ -330,6 +342,7 @@ ret_t slide_indicator_set_size (widget_t* widget, uint32_t size);
* 函数原型:
```
@ -352,6 +365,7 @@ ret_t slide_indicator_set_spacing (widget_t* widget, float_t spacing);
* 函数原型:
```
@ -370,6 +384,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_anchor_x"> 锚点x坐标。
* 类型float\_t
| 特性 | 是否支持 |
@ -387,6 +402,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_anchor_y"> 锚点y坐标。
* 类型float\_t
| 特性 | 是否支持 |
@ -404,6 +420,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_auto_hide"> 自动隐藏。0表示禁止非0表示无操作后延迟多久隐藏。
* 类型uint16\_t
| 特性 | 是否支持 |
@ -421,6 +438,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_default_paint"> 指示器的类型。
* 类型indicator\_default\_paint\_t
| 特性 | 是否支持 |
@ -438,6 +456,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_indicated_target"> 指示器指示的目标。
* 类型char*
| 特性 | 是否支持 |
@ -455,6 +474,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_margin"> 指示器与边缘的边距。
* 类型int32\_t
| 特性 | 是否支持 |
@ -472,6 +492,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_max"> 最大值(缺省为100)。
* 类型uint32\_t
| 特性 | 是否支持 |
@ -489,6 +510,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_size"> 指示器的大小。
* 类型uint32\_t
| 特性 | 是否支持 |
@ -506,6 +528,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_spacing"> 指示器的中心之间的间距(圆弧显示时,间距的单位为弧度,否则为像素)。
* 类型float\_t
| 特性 | 是否支持 |
@ -523,6 +546,7 @@ ret_t slide_indicator_set_value (widget_t* widget, uint32_t value);
> <p id="slide_indicator_t_value"> 值(缺省为0)。
* 类型uint32\_t
| 特性 | 是否支持 |

73
docs/manual/str_str_t.md Normal file
View File

@ -0,0 +1,73 @@
## str\_str\_t
### 概述
字符串 字符串类型。
示例:
```c
static const str_str_t color_values[] = {{"1", "red"}, {"2", "black"}, {"3", "blue"}, {"4", "white"}};
const char* value = str_str_value(color_values, "3");
const char* name = str_str_name(color_values, "blue", "0");
printf("value = %s \n", value);
printf("name = %s \n", name);
```
----------------------------------
### 函数
<p id="str_str_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#str_str_t_str_str_name">str\_str\_name</a> | |
| <a href="#str_str_t_str_str_value">str\_str\_value</a> | |
#### str\_str\_name 函数
-----------------------
* 函数功能:
> <p id="str_str_t_str_str_name">
根据value获取对应的name。
* 函数原型:
```
const char* str_str_name (const str_str_t* items, const char* value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回name。 |
| items | const str\_str\_t* | str\_str\_t数组。 |
| value | const char* | value |
#### str\_str\_value 函数
-----------------------
* 函数功能:
> <p id="str_str_t_str_str_value">
根据name获取对应的value。
* 函数原型:
```
const char* str_str_value (const str_str_t* items, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | const char* | 返回value。 |
| items | const str\_str\_t* | str\_str\_t数组。 |
| name | const char* | name。 |

View File

@ -49,6 +49,7 @@
| -------- | ------------ |
| <a href="#svg_image_t_svg_image_cast">svg\_image\_cast</a> | 转换为svg_image对象(供脚本语言使用)。 |
| <a href="#svg_image_t_svg_image_create">svg\_image\_create</a> | 创建svg_image对象 |
| <a href="#svg_image_t_svg_image_set_image">svg\_image\_set\_image</a> | 设置控件的图片名称。 |
#### svg\_image\_cast 函数
-----------------------
@ -95,3 +96,28 @@ widget_t* svg_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 | 高度 |
#### svg\_image\_set\_image 函数
-----------------------
* 函数功能:
> <p id="svg_image_t_svg_image_set_image"> 设置控件的图片名称。
> 如果需要显示文件系统中的图片,只需将图片名称换成实际的文件名,并加上"file://"前缀即可。
* 函数原型:
```
ret_t svg_image_set_image (widget_t* widget, char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | image对象。 |
| name | char* | 图片名称,该图片必须存在于资源管理器。 |

View File

@ -0,0 +1,342 @@
## timer\_manager\_t
### 概述
timer_manager_t管理器。
----------------------------------
### 函数
<p id="timer_manager_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#timer_manager_t_timer_manager">timer\_manager</a> | 获取缺省的timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_add">timer\_manager\_add</a> | 添加timer。 |
| <a href="#timer_manager_t_timer_manager_append">timer\_manager\_append</a> | 追加timer。 |
| <a href="#timer_manager_t_timer_manager_count">timer\_manager\_count</a> | 返回最近的timer到期时间。 |
| <a href="#timer_manager_t_timer_manager_count">timer\_manager\_count</a> | 返回timer的个数。 |
| <a href="#timer_manager_t_timer_manager_create">timer\_manager\_create</a> | 创建timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_deinit">timer\_manager\_deinit</a> | 析构timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_destroy">timer\_manager\_destroy</a> | 析构并释放timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_find">timer\_manager\_find</a> | 查找指定ID的timer。 |
| <a href="#timer_manager_t_timer_manager_init">timer\_manager\_init</a> | 初始化timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_remove">timer\_manager\_remove</a> | 根据timer_id删除timer。 |
| <a href="#timer_manager_t_timer_manager_reset">timer\_manager\_reset</a> | 重置timer。 |
| <a href="#timer_manager_t_timer_manager_set">timer\_manager\_set</a> | 设置缺省的timer_manager_t管理器。 |
| <a href="#timer_manager_t_timer_manager_set_on_destroy">timer\_manager\_set\_on\_destroy</a> | 设置一个回调函数在timer被销毁时调用(方便脚本语言去释放回调函数)。 |
#### timer\_manager 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager"> 获取缺省的timer_manager_t管理器。
* 函数原型:
```
timer_manager_t* timer_manager ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | timer\_manager\_t* | 返回timer\_manager\_t管理器对象。 |
#### timer\_manager\_add 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_add"> 添加timer。
* 函数原型:
```
uint32_t timer_manager_add (timer_manager_t* timer_manager, timer_func_t* on_timer, void* ctx, uint32_t duration);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回timer的IDTK\_INVALID\_ID表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| on\_timer | timer\_func\_t* | timer回调函数。 |
| ctx | void* | timer回调函数的上下文。 |
| duration | uint32\_t | 时间。 |
#### timer\_manager\_append 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_append"> 追加timer。
* 函数原型:
```
ret_t timer_manager_append (timer_manager_t* timer_manager, timer_info_t* timer);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。。 |
| timer | timer\_info\_t* | timer对象。 |
#### timer\_manager\_count 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_count"> 返回最近的timer到期时间。
* 函数原型:
```
uint64_t timer_manager_count (timer_manager_t* timer_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint64\_t | 返回最近的timer到期时间。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
#### timer\_manager\_count 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_count"> 返回timer的个数。
* 函数原型:
```
uint32_t timer_manager_count (timer_manager_t* timer_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回timer的个数。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
#### timer\_manager\_create 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_create"> 创建timer_manager_t管理器。
* 函数原型:
```
timer_manager_t* timer_manager_create (timer_get_time_t get_time);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | timer\_manager\_t* | 返回timer\_manager\_t管理器对象。 |
| get\_time | timer\_get\_time\_t | 获取当前时间的函数。 |
#### timer\_manager\_deinit 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_deinit"> 析构timer_manager_t管理器。
* 函数原型:
```
ret_t timer_manager_deinit (timer_manager_t* timer_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
#### timer\_manager\_destroy 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_destroy"> 析构并释放timer_manager_t管理器。
* 函数原型:
```
ret_t timer_manager_destroy (timer_manager_t* timer_manager);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
#### timer\_manager\_find 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_find"> 查找指定ID的timer。
* 函数原型:
```
timer_info_t* timer_manager_find (timer_manager_t* timer_manager, uint32_t timer_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | timer\_info\_t* | 返回timer的信息。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| timer\_id | uint32\_t | timer\_id |
#### timer\_manager\_init 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_init"> 初始化timer_manager_t管理器。
* 函数原型:
```
timer_manager_t* timer_manager_init (timer_manager_t* timer_manager, timer_get_time_t get_time);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | timer\_manager\_t* | 返回timer\_manager\_t管理器对象。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| get\_time | timer\_get\_time\_t | 获取当前时间的函数。 |
#### timer\_manager\_remove 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_remove"> 根据timer_id删除timer。
* 函数原型:
```
ret_t timer_manager_remove (timer_manager_t* timer_manager, uint32_t timer_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| timer\_id | uint32\_t | timer\_id。 |
#### timer\_manager\_reset 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_reset"> 重置timer。
* 函数原型:
```
ret_t timer_manager_reset (timer_manager_t* timer_manager, uint32_t* timer_id);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| timer\_id | uint32\_t* | timer\_id。 |
#### timer\_manager\_set 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_set"> 设置缺省的timer_manager_t管理器。
* 函数原型:
```
ret_t timer_manager_set (timer_manager_t* timer_manager_t);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager\_t | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
#### timer\_manager\_set\_on\_destroy 函数
-----------------------
* 函数功能:
> <p id="timer_manager_t_timer_manager_set_on_destroy"> 设置一个回调函数在timer被销毁时调用(方便脚本语言去释放回调函数)。
* 函数原型:
```
ret_t timer_manager_set_on_destroy (timer_manager_t* timer_manager, uint32_t timer_id, tk_destroy_t on_destroy, void* on_destroy_ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| timer\_manager | timer\_manager\_t* | timer\_manager\_t管理器对象。 |
| timer\_id | uint32\_t | timer\_id。 |
| on\_destroy | tk\_destroy\_t | 回调函数。 |
| on\_destroy\_ctx | void* | 回调函数上下文。 |

View File

@ -0,0 +1,235 @@
## tk\_ostream\_retry\_t
### 概述
![image](images/tk_ostream_retry_t_0.png)
如果写数据失败将数据放入ring_buffer后面再重试(flush)。
如果重试次数超出最大值,则丢掉数据。
----------------------------------
### 函数
<p id="tk_ostream_retry_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#tk_ostream_retry_t_tk_ostream_retry_clear_buffer">tk\_ostream\_retry\_clear\_buffer</a> | |
| <a href="#tk_ostream_retry_t_tk_ostream_retry_create">tk\_ostream\_retry\_create</a> | |
| <a href="#tk_ostream_retry_t_tk_ostream_retry_set_discard_policy">tk\_ostream\_retry\_set\_discard\_policy</a> | |
| <a href="#tk_ostream_retry_t_tk_ostream_retry_set_max_buffer_size">tk\_ostream\_retry\_set\_max\_buffer\_size</a> | |
| <a href="#tk_ostream_retry_t_tk_ostream_retry_set_max_retry_times">tk\_ostream\_retry\_set\_max\_retry\_times</a> | |
### 属性
<p id="tk_ostream_retry_t_properties">
| 属性名称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#tk_ostream_retry_t_discard_bytes">discard\_bytes</a> | uint32\_t | 总共丢弃数据的字节数。 |
| <a href="#tk_ostream_retry_t_discard_packets">discard\_packets</a> | uint32\_t | 总共丢弃数据包的个数。 |
| <a href="#tk_ostream_retry_t_discard_policy">discard\_policy</a> | data\_discard\_policy\_t | 缓存不够时,丢弃数据包的策略。 |
| <a href="#tk_ostream_retry_t_max_retry_times">max\_retry\_times</a> | uint32\_t | 尝试次数超过指定的值时丢弃该数据包。 |
| <a href="#tk_ostream_retry_t_pending_bytes">pending\_bytes</a> | uint32\_t | 待重写的数据大小。 |
| <a href="#tk_ostream_retry_t_pending_packets">pending\_packets</a> | uint32\_t | 待重写的数据包的个数。 |
| <a href="#tk_ostream_retry_t_timeout">timeout</a> | uint32\_t | 写超时时间(ms)。 |
#### tk\_ostream\_retry\_clear\_buffer 函数
-----------------------
* 函数功能:
> <p id="tk_ostream_retry_t_tk_ostream_retry_clear_buffer">
清除缓存的数据。
* 函数原型:
```
ret_t tk_ostream_retry_clear_buffer (tk_ostream_t* ostream);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ostream | tk\_ostream\_t* | ostream对象。 |
#### tk\_ostream\_retry\_create 函数
-----------------------
* 函数功能:
> <p id="tk_ostream_retry_t_tk_ostream_retry_create">
创建ostream对象。
本函数自动增加real_ostream的引用计数。
* 函数原型:
```
tk_ostream_t* tk_ostream_retry_create (tk_ostream_t* real_ostream);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_ostream\_t* | 返回ostream对象。 |
| real\_ostream | tk\_ostream\_t* | 实际的ostream对象。 |
#### tk\_ostream\_retry\_set\_discard\_policy 函数
-----------------------
* 函数功能:
> <p id="tk_ostream_retry_t_tk_ostream_retry_set_discard_policy">
设置数据丢弃策略。
* 函数原型:
```
ret_t tk_ostream_retry_set_discard_policy (tk_ostream_t* ostream, data_discard_policy_t discard_policy);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ostream | tk\_ostream\_t* | ostream对象。 |
| discard\_policy | data\_discard\_policy\_t | 丢弃策略。 |
#### tk\_ostream\_retry\_set\_max\_buffer\_size 函数
-----------------------
* 函数功能:
> <p id="tk_ostream_retry_t_tk_ostream_retry_set_max_buffer_size">
设置最大缓存大小。
* 函数原型:
```
ret_t tk_ostream_retry_set_max_buffer_size (tk_ostream_t* ostream, uint32_t max_buffer_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ostream | tk\_ostream\_t* | ostream对象。 |
| max\_buffer\_size | uint32\_t | 缓存大小。 |
#### tk\_ostream\_retry\_set\_max\_retry\_times 函数
-----------------------
* 函数功能:
> <p id="tk_ostream_retry_t_tk_ostream_retry_set_max_retry_times">
设置最大尝试次数。
* 函数原型:
```
ret_t tk_ostream_retry_set_max_retry_times (tk_ostream_t* ostream, uint32_t max_retry_times);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| ostream | tk\_ostream\_t* | ostream对象。 |
| max\_retry\_times | uint32\_t | 最大尝试次数。 |
#### discard\_bytes 属性
-----------------------
> <p id="tk_ostream_retry_t_discard_bytes"> 总共丢弃数据的字节数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### discard\_packets 属性
-----------------------
> <p id="tk_ostream_retry_t_discard_packets"> 总共丢弃数据包的个数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### discard\_policy 属性
-----------------------
> <p id="tk_ostream_retry_t_discard_policy"> 缓存不够时,丢弃数据包的策略。
* 类型data\_discard\_policy\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### max\_retry\_times 属性
-----------------------
> <p id="tk_ostream_retry_t_max_retry_times"> 尝试次数超过指定的值时丢弃该数据包。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### pending\_bytes 属性
-----------------------
> <p id="tk_ostream_retry_t_pending_bytes"> 待重写的数据大小。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### pending\_packets 属性
-----------------------
> <p id="tk_ostream_retry_t_pending_packets"> 待重写的数据包的个数。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |
#### timeout 属性
-----------------------
> <p id="tk_ostream_retry_t_timeout"> 写超时时间(ms)。
* 类型uint32\_t
| 特性 | 是否支持 |
| -------- | ----- |
| 可直接读取 | 是 |
| 可直接修改 | 否 |

View File

@ -0,0 +1,100 @@
## tk\_semaphore\_t
### 概述
信号量。
----------------------------------
### 函数
<p id="tk_semaphore_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#tk_semaphore_t_tk_semaphore_create">tk\_semaphore\_create</a> | 创建信号量对象。 |
| <a href="#tk_semaphore_t_tk_semaphore_destroy">tk\_semaphore\_destroy</a> | 销毁信号量对象。 |
| <a href="#tk_semaphore_t_tk_semaphore_post">tk\_semaphore\_post</a> | 释放资源。 |
| <a href="#tk_semaphore_t_tk_semaphore_wait">tk\_semaphore\_wait</a> | 获取资源。 |
#### tk\_semaphore\_create 函数
-----------------------
* 函数功能:
> <p id="tk_semaphore_t_tk_semaphore_create"> 创建信号量对象。
* 函数原型:
```
tk_semaphore_t* tk_semaphore_create (uint32_t value, const char* name);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | tk\_semaphore\_t* | semaphore对象。 |
| value | uint32\_t | 初始值。 |
| name | const char* | 名称。 |
#### tk\_semaphore\_destroy 函数
-----------------------
* 函数功能:
> <p id="tk_semaphore_t_tk_semaphore_destroy"> 销毁信号量对象。
* 函数原型:
```
ret_t tk_semaphore_destroy (tk_semaphore_t* semaphore);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| semaphore | tk\_semaphore\_t* | 信号量对象。 |
#### tk\_semaphore\_post 函数
-----------------------
* 函数功能:
> <p id="tk_semaphore_t_tk_semaphore_post"> 释放资源。
* 函数原型:
```
ret_t tk_semaphore_post (tk_semaphore_t* semaphore);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| semaphore | tk\_semaphore\_t* | 信号量对象。 |
#### tk\_semaphore\_wait 函数
-----------------------
* 函数功能:
> <p id="tk_semaphore_t_tk_semaphore_wait"> 获取资源。
* 函数原型:
```
ret_t tk_semaphore_wait (tk_semaphore_t* semaphore, uint32_t timeout_ms);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| semaphore | tk\_semaphore\_t* | 信号量对象。 |
| timeout\_ms | uint32\_t | 超时时间。 |

77
docs/manual/utf8.md Normal file
View File

@ -0,0 +1,77 @@
## utf8
### 概述
wchar_t和char类型转换接口。
示例:
```c
const char* str = "hello";
const wchar_t* wstr = L"hello";
char res_str[128];
wchar_t res_wstr[128];
utf8_to_utf16(str, res_wstr, ARRAY_SIZE(res_wstr));
utf8_from_utf16(wstr, res_str, ARRAY_SIZE(res_str));
```
----------------------------------
### 函数
<p id="utf8_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#utf8_utf8_from_utf16">utf8\_from\_utf16</a> | |
| <a href="#utf8_utf8_from_utf16">utf8\_from\_utf16</a> | |
#### utf8\_from\_utf16 函数
-----------------------
* 函数功能:
> <p id="utf8_utf8_from_utf16">
将wchar_t类型转换为char类型。
* 函数原型:
```
char* utf8_from_utf16 (const wchar_t* str, const char* out, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | char* | 值。 |
| str | const wchar\_t* | str。 |
| out | const char* | 返回结果缓冲区。 |
| size | uint32\_t | 缓冲区大小。 |
#### utf8\_from\_utf16 函数
-----------------------
* 函数功能:
> <p id="utf8_utf8_from_utf16">
将char类型转换为wchar_t类型。
* 函数原型:
```
wchar_t* utf8_from_utf16 (const char* str, const wchar_t* out, uint32_t size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | wchar\_t* | 值。 |
| str | const char* | str。 |
| out | const wchar\_t* | 返回结果缓冲区。 |
| size | uint32\_t | 缓冲区大小。 |

View File

@ -6,6 +6,7 @@
| 名称 | 说明 |
| -------- | ------- |
| WIDGET\_PROP\_EXEC | 用于执行某些特殊的命令比如控制动画的启停主要是方便MVVM通过属性来控制动画。 |
| WIDGET\_PROP\_X | X坐标。 |
| WIDGET\_PROP\_Y | Y坐标。 |
| WIDGET\_PROP\_W | 宽度。 |

View File

@ -14,6 +14,7 @@
| WIDGET\_TYPE\_DIALOG | 对话框。 |
| WIDGET\_TYPE\_POPUP | 弹出窗口。 |
| WIDGET\_TYPE\_SYSTEM\_BAR | system bar window |
| WIDGET\_TYPE\_SYSTEM\_BAR\_BOTTOM | system bar window ato bottom |
| WIDGET\_TYPE\_SPRITE | 精灵窗口。 |
| WIDGET\_TYPE\_KEYBOARD | 键盘窗口。 |
| WIDGET\_TYPE\_DND | 拖放状态窗口。 |

View File

@ -1,4 +1,4 @@
/*
/*
Copyright 2016-2019 (C) Alexey Dynda
This file is part of Tiny Protocol Library.

View File

@ -1,4 +1,4 @@

/**
* File: types_def.h
* Author: AWTK Develop Team

View File

@ -46,6 +46,8 @@ uint64_t get_time_ms64(void);
*
*
* @param {uint32_t} ms
*
* @return {void}
*/
void sleep_ms(uint32_t ms);

File diff suppressed because it is too large Load Diff