update docs

This commit is contained in:
xianjimli 2020-06-26 16:55:16 +08:00
parent 00e828a574
commit 6c8337e08e
9 changed files with 1464 additions and 1125 deletions

File diff suppressed because it is too large Load Diff

View File

@ -69,16 +69,21 @@ default](https://github.com/zlgopen/awtk/blob/master/demos/assets/default/raw/st
| <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_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_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> | 设置为焦点。 |
| <a href="#edit_t_edit_set_inc_value">edit\_set\_inc\_value</a> | 设置增加值的回调函数。 |
| <a href="#edit_t_edit_set_input_type">edit\_set\_input\_type</a> | 设置编辑器的输入类型。 |
| <a href="#edit_t_edit_set_int">edit\_set\_int</a> | 设置int类型的值。 |
| <a href="#edit_t_edit_set_int_limit">edit\_set\_int\_limit</a> | 设置为整数输入及取值范围。 |
| <a href="#edit_t_edit_set_is_valid_char">edit\_set\_is\_valid\_char</a> | 设置输入字符检查函数。 |
| <a href="#edit_t_edit_set_is_valid_value">edit\_set\_is\_valid\_value</a> | 设置输入内容检查函数。 |
| <a href="#edit_t_edit_set_keyboard">edit\_set\_keyboard</a> | 设置自定义软键盘名称。 |
| <a href="#edit_t_edit_set_open_im_when_focused">edit\_set\_open\_im\_when\_focused</a> | 设置编辑器是否在获得焦点时打开输入法。 |
| <a href="#edit_t_edit_set_password_visible">edit\_set\_password\_visible</a> | 当编辑器输入类型为密码时,设置密码是否可见。 |
| <a href="#edit_t_edit_set_pre_input">edit\_set\_pre\_input</a> | 设置预输入处的回调函数。 |
| <a href="#edit_t_edit_set_readonly">edit\_set\_readonly</a> | 设置编辑器是否为只读。 |
| <a href="#edit_t_edit_set_select_none_when_focused">edit\_set\_select\_none\_when\_focused</a> | 设置编辑器是否在获得焦点时不选中文本。 |
| <a href="#edit_t_edit_set_text_limit">edit\_set\_text\_limit</a> | 设置为文本输入及其长度限制不允许输入超过max个字符少于min个字符时进入error状态。 |
@ -253,6 +258,27 @@ ret_t edit_set_cursor (widget_t* widget, uint32_t cursor);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| cursor | uint32\_t | 是否为焦点。 |
#### edit\_set\_dec\_value 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_dec_value">设置减少值的回调函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
```
ret_t edit_set_dec_value (widget_t* widget, edit_dec_value_t dec_value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| dec\_value | edit\_dec\_value\_t | 减少值的回调函数。 |
#### edit\_set\_double 函数
-----------------------
@ -273,6 +299,27 @@ ret_t edit_set_double (widget_t* widget, double value);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| value | double | 值。 |
#### edit\_set\_fix\_value 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_fix_value">设置修正输入内容的回调函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
```
ret_t edit_set_fix_value (widget_t* widget, edit_fix_value_t fix_value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| fix\_value | edit\_fix\_value\_t | 修正输入内容的回调函数。 |
#### edit\_set\_float\_limit 函数
-----------------------
@ -315,6 +362,27 @@ ret_t edit_set_focus (widget_t* widget, bool_t focus);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| focus | bool\_t | 是否为焦点。 |
#### edit\_set\_inc\_value 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_inc_value">设置增加值的回调函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
```
ret_t edit_set_inc_value (widget_t* widget, edit_inc_value_t inc_value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| inc\_value | edit\_inc\_value\_t | 增加值的回调函数。 |
#### edit\_set\_input\_type 函数
-----------------------
@ -383,7 +451,7 @@ ret_t edit_set_int_limit (widget_t* widget, int32_t min, int32_t max, uint32_t s
* 函数功能:
> <p id="edit_t_edit_set_is_valid_char">设置输入字符检查函数。
> 如果内置检查函数不能满足需求时,可以设置自定义的检查函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
@ -398,6 +466,27 @@ ret_t edit_set_is_valid_char (widget_t* widget, edit_is_valid_char_t is_valid_ch
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| is\_valid\_char | edit\_is\_valid\_char\_t | 检查输入字符是否有效的回调函数。 |
#### edit\_set\_is\_valid\_value 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_is_valid_value">设置输入内容检查函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
```
ret_t edit_set_is_valid_value (widget_t* widget, edit_is_valid_value_t is_valid_value);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| is\_valid\_value | edit\_is\_valid\_value\_t | 检查输入内容是否有效的回调函数。 |
#### edit\_set\_keyboard 函数
-----------------------
@ -458,6 +547,27 @@ ret_t edit_set_password_visible (widget_t* widget, bool_t password_visible);
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| password\_visible | bool\_t | 密码是否可见。 |
#### edit\_set\_pre\_input 函数
-----------------------
* 函数功能:
> <p id="edit_t_edit_set_pre_input">设置预输入处的回调函数。
> 如果内置函数不能满足需求时,可以设置自定义的检查函数。
* 函数原型:
```
ret_t edit_set_pre_input (widget_t* widget, edit_pre_input_t pre_input);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| widget | widget\_t* | widget对象。 |
| pre\_input | edit\_pre\_input\_t | 预输入处理的回调函数(处理一些特殊的键)。 |
#### edit\_set\_readonly 函数
-----------------------

View File

@ -14,5 +14,9 @@
| INPUT\_EMAIL | 邮件地址。 |
| INPUT\_PASSWORD | 密码。 |
| INPUT\_PHONE | 电话号码。 |
| INPUT\_IPV4 | IP Addr V4。如192.168.1.1 |
| INPUT\_DATE | 日期。如2020/02/20。 |
| INPUT\_TIME | 时间(时分)。如12:00。 |
| INPUT\_TIME\_FULL | 时间(时分秒)。如12:00:00。 |
| INPUT\_CUSTOM | 使用自定义的软键盘(如计算器等应用不希望弹出系统软键盘)。 |
| INPUT\_CUSTOM\_PASSWORD | 使用自定义的密码软键盘。 |

View File

@ -33,6 +33,8 @@
| <a href="#utils_t_tk_watob">tk\_watob</a> | 将宽字符串转换为布尔类型。 |
| <a href="#utils_t_tk_watof">tk\_watof</a> | 将宽字符串转换为浮点类型。 |
| <a href="#utils_t_tk_watoi">tk\_watoi</a> | 将宽字符串转换为整形。 |
| <a href="#utils_t_tk_watoi_n">tk\_watoi\_n</a> | 将宽字符串转换为整形。 |
| <a href="#utils_t_tk_wstr_count_c">tk\_wstr\_count\_c</a> | 统计UCS字符串中某个字符出现的次数。 |
| <a href="#utils_t_tk_wstr_dup_utf8">tk\_wstr\_dup\_utf8</a> | 将utf8字符串拷贝为UCS字符串。 |
| <a href="#utils_t_tk_wstrdup">tk\_wstrdup</a> | 宽字符串拷贝函数。 |
| <a href="#utils_t_xml_file_expand_read">xml\_file\_expand\_read</a> | expand include process instruction to file content: <?include filename="view_me.inc" ?> |
@ -555,6 +557,46 @@ int tk_watoi (const wchar_t* str);
| -------- | ----- | --------- |
| 返回值 | int | 返回转换后的整形。 |
| str | const wchar\_t* | 要转换为整形的宽字符串。 |
#### tk\_watoi\_n 函数
-----------------------
* 函数功能:
> <p id="utils_t_tk_watoi_n">将宽字符串转换为整形。
* 函数原型:
```
int tk_watoi_n (const wchar_t* str, uint32_t len);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | int | 返回转换后的整形。 |
| str | const wchar\_t* | 要转换为整形的宽字符串。 |
| len | uint32\_t | 字符串长度。 |
#### tk\_wstr\_count\_c 函数
-----------------------
* 函数功能:
> <p id="utils_t_tk_wstr_count_c">统计UCS字符串中某个字符出现的次数。
* 函数原型:
```
uint32_t tk_wstr_count_c (const wchar_t* str, wchar_t c);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | uint32\_t | 返回字符出现的次数。 |
| str | const wchar\_t* | 字符串。 |
| c | wchar\_t | 字符。 |
#### tk\_wstr\_dup\_utf8 函数
-----------------------

View File

@ -85,22 +85,22 @@ typedef enum _input_type_t {
INPUT_PHONE,
/**
* @const INPUT_IPV4
* IP Addr V4
* IP Addr V4192.168.1.1
*/
INPUT_IPV4,
/**
* @const INPUT_DATE
* 2020/02/20
* 2020/02/20
*/
INPUT_DATE,
/**
* @const INPUT_TIME
* 12:00
* ()12:00
*/
INPUT_TIME,
/**
* @const INPUT_TIME_FULL
* 12:00:00
* ()12:00:00
*/
INPUT_TIME_FULL,
/**

View File

@ -818,8 +818,8 @@ wchar_t* tk_wstr_dup_utf8(const char* str) {
return wstr;
}
int tk_wstr_count_c(const wchar_t* str, wchar_t c) {
int nr = 0;
uint32_t tk_wstr_count_c(const wchar_t* str, wchar_t c) {
uint32_t nr = 0;
const wchar_t* p = str;
return_value_if_fail(p != NULL, nr);

View File

@ -410,8 +410,19 @@ char* tk_str_tolower(char* str);
*/
wchar_t* tk_wstr_dup_utf8(const char* str);
/**
* @method tk_wstr_count_c
*
* UCS字符串中某个字符出现的次数
*
* @param {const wchar_t*} str
* @param {wchar_t} c
*
* @return {uint32_t}
*/
uint32_t tk_wstr_count_c(const wchar_t* str, wchar_t c);
const char* tk_normalize_key_name(const char* name, char fixed_name[TK_NAME_LEN + 1]);
int tk_wstr_count_c(const wchar_t* str, wchar_t c);
END_C_DECLS

View File

@ -4,6 +4,7 @@
TEST(DataReaderAsset, basic) {
char data[256];
uint32_t size = 0;
data_reader_t* reader = NULL;
data_reader_factory_t* f = data_reader_factory_create();
@ -13,8 +14,9 @@ TEST(DataReaderAsset, basic) {
ASSERT_EQ(reader != NULL, true);
memset(data, 0x00, sizeof(data));
ASSERT_EQ(data_reader_get_size(reader), 27);
ASSERT_EQ(data_reader_read(reader, 0, data, sizeof(data)), 27);
size = data_reader_get_size(reader);
ASSERT_EQ(size >= 24, true);
ASSERT_EQ(data_reader_read(reader, 0, data, sizeof(data)), size);
data_reader_destroy(reader);
data_reader_factory_destroy(f);

View File

@ -7360,6 +7360,22 @@
"desc": "电话号码。",
"name": "INPUT_PHONE"
},
{
"desc": "IP Addr V4。如192.168.1.1",
"name": "INPUT_IPV4"
},
{
"desc": "日期。如2020/02/20。",
"name": "INPUT_DATE"
},
{
"desc": "时间(时分)。如12:00。",
"name": "INPUT_TIME"
},
{
"desc": "时间(时分秒)。如12:00:00。",
"name": "INPUT_TIME_FULL"
},
{
"desc": "使用自定义的软键盘(如计算器等应用不希望弹出系统软键盘)。",
"name": "INPUT_CUSTOM"
@ -23491,6 +23507,27 @@
"desc": "返回转换后的整形。"
}
},
{
"params": [
{
"type": "const wchar_t*",
"name": "str",
"desc": "要转换为整形的宽字符串。"
},
{
"type": "uint32_t",
"name": "len",
"desc": "字符串长度。"
}
],
"annotation": {},
"desc": "将宽字符串转换为整形。",
"name": "tk_watoi_n",
"return": {
"type": "int",
"desc": "返回转换后的整形。"
}
},
{
"params": [
{
@ -23973,6 +24010,27 @@
"type": "wchar_t*",
"desc": "返回UCS字符串(需要调用TKMEM_FREE释放)。"
}
},
{
"params": [
{
"type": "const wchar_t*",
"name": "str",
"desc": "字符串。"
},
{
"type": "wchar_t",
"name": "c",
"desc": "字符。"
}
],
"annotation": {},
"desc": "统计UCS字符串中某个字符出现的次数。",
"name": "tk_wstr_count_c",
"return": {
"type": "uint32_t",
"desc": "返回字符出现的次数。"
}
}
],
"events": [],
@ -48665,12 +48723,117 @@
}
],
"annotation": {},
"desc": "设置输入字符检查函数。\n> 如果内置检查函数不能满足需求时,可以设置自定义的检查函数。",
"desc": "设置输入字符检查函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_is_valid_char",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
},
{
"params": [
{
"type": "widget_t*",
"name": "widget",
"desc": "widget对象。"
},
{
"type": "edit_is_valid_value_t",
"name": "is_valid_value",
"desc": "检查输入内容是否有效的回调函数。"
}
],
"annotation": {},
"desc": "设置输入内容检查函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_is_valid_value",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
},
{
"params": [
{
"type": "widget_t*",
"name": "widget",
"desc": "widget对象。"
},
{
"type": "edit_fix_value_t",
"name": "fix_value",
"desc": "修正输入内容的回调函数。"
}
],
"annotation": {},
"desc": "设置修正输入内容的回调函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_fix_value",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
},
{
"params": [
{
"type": "widget_t*",
"name": "widget",
"desc": "widget对象。"
},
{
"type": "edit_inc_value_t",
"name": "inc_value",
"desc": "增加值的回调函数。"
}
],
"annotation": {},
"desc": "设置增加值的回调函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_inc_value",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
},
{
"params": [
{
"type": "widget_t*",
"name": "widget",
"desc": "widget对象。"
},
{
"type": "edit_dec_value_t",
"name": "dec_value",
"desc": "减少值的回调函数。"
}
],
"annotation": {},
"desc": "设置减少值的回调函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_dec_value",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
},
{
"params": [
{
"type": "widget_t*",
"name": "widget",
"desc": "widget对象。"
},
{
"type": "edit_pre_input_t",
"name": "pre_input",
"desc": "预输入处理的回调函数(处理一些特殊的键)。"
}
],
"annotation": {},
"desc": "设置预输入处的回调函数。\n> 如果内置函数不能满足需求时,可以设置自定义的检查函数。",
"name": "edit_set_pre_input",
"return": {
"type": "ret_t",
"desc": "返回RET_OK表示成功否则表示失败。"
}
}
],
"events": [