update docs

This commit is contained in:
xianjimli 2019-01-02 16:01:38 +08:00
parent 6c9b0970fe
commit 94e90b3b1b
32 changed files with 100 additions and 63 deletions

View File

@ -56,7 +56,7 @@
![assets overview](images/assets_overview.png)
* [asset\_info](manual/asset_info_t.md) 资源信息。
* [assets_manager](manual/assets_manager_t.md) 资源管理器。
* [assets\_manager](manual/assets_manager_t.md) 资源管理器。
#### 1.字体

View File

@ -3,13 +3,17 @@
资源管理器。
这里的资源管理器并非Windows下的文件浏览器而是负责对各种资源比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个
* 让上层不需要了解存储的方式。在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。
*
让上层不需要了解存储的方式。在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。
* 让上层不需要了解资源的具体格式。比如一个名为earth的图片没有文件系统或内存紧缺图片直接用位图数据格式存在ROM中而有文件系统时则用PNG格式存放在文件系统中。资源管理器让上层不需要关心图片的格式访问时指定图片的名称即可(不用指定扩展名)。
*
让上层不需要了解资源的具体格式。比如一个名为earth的图片没有文件系统或内存紧缺图片直接用位图数据格式存在ROM中而有文件系统时则用PNG格式存放在文件系统中。资源管理器让上层不需要关心图片的格式访问时指定图片的名称即可(不用指定扩展名)。
* 让上层不需要了解屏幕的密度。不同的屏幕密度下需要加载不同的图片比如MacPro的Retina屏就需要用双倍解析度的图片否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发所以资源管理器需要为此提供支持让上层不需关心屏幕的密度。
*
让上层不需要了解屏幕的密度。不同的屏幕密度下需要加载不同的图片比如MacPro的Retina屏就需要用双倍解析度的图片否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发所以资源管理器需要为此提供支持让上层不需关心屏幕的密度。
* 对资源进行内存缓存。不同类型的资源使用方式是不一样的比如字体和主题加载之后会一直使用UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。
*
对资源进行内存缓存。不同类型的资源使用方式是不一样的比如字体和主题加载之后会一直使用UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。
当从文件系统加载资源时,目录结构要求如下:

View File

@ -5,6 +5,8 @@
空输入法引擎实现。
缺省输入法可以选择启用软键盘,但不启用具体的输入法引擎,此时可以选择空输入法引擎实现。
### 函数

View File

@ -5,6 +5,8 @@
拼音输入法引擎实现。
基于谷歌拼音输入法实现。
### 函数

View File

@ -3,7 +3,11 @@
![image](images/input_method_default_t_0.png)
缺省输入法实现。
缺省输入法实现。输入法会启用软键盘,但是开发者可以自定义输入法引擎。
目前可以选择不启用输入法引擎或启用拼音输入法引擎。
开发者也可以开发手写输入法或语音输入法,如果实现时遇到问题可以和我们交流。

View File

@ -5,6 +5,8 @@
空输入法实现。
在不需要输入法的嵌入式平台使用空的输入法。
### 函数

View File

@ -5,6 +5,8 @@
SDL输入法实现。
SDL输入法使用平台自身的输入法引擎一般在桌面Linux、MacOS、Windows、Android和iOS上使用。
### 函数

View File

@ -13,6 +13,9 @@
![image](images/input_method_t_0.png)
> 输入类型请参考:[input\_type](input_type_t.md)
### 函数
<p id="input_method_t_methods">

View File

@ -17,7 +17,7 @@
| 名属性称 | 类型 | 说明 |
| -------- | ----- | ------------ |
| <a href="#window_base_t_assets_manager">assets\_manager</a> | assets\_manager\_t* | 获取资源管理器对象。 |
| <a href="#window_base_t_closable">closable</a> | window\_closable\_t | 收到EVT\_REQUEST\_CLOSE\_WINDOW是否自动关闭窗口。 |
| <a href="#window_base_t_closable">closable</a> | window\_closable\_t | 收到EVT_REQUEST_CLOSE_WINDOW是否自动关闭窗口。 |
| <a href="#window_base_t_close_anim_hint">close\_anim\_hint</a> | char* | 关闭窗口动画的名称。 |
| <a href="#window_base_t_font_manager">font\_manager</a> | font\_manager\_t* | 获取字体管理器对象。 |
| <a href="#window_base_t_image_manager">image\_manager</a> | image\_manager\_t* | 获取图片管理器对象。 |
@ -44,7 +44,7 @@
| 支通过widget\_get\_prop读取 | 是 |
#### closable 属性
-----------------------
> <p id="window_base_t_closable"> 收到EVT\_REQUEST\_CLOSE\_WINDOW是否自动关闭窗口。
> <p id="window_base_t_closable"> 收到EVT_REQUEST_CLOSE_WINDOW是否自动关闭窗口。
如果关闭窗口时,需要用户确认:

View File

@ -177,13 +177,17 @@ typedef struct _asset_info_t {
*
* Windows下的文件浏览器
*
* * ()
* *
*()
*
* * earth的图片ROM中PNG格式存放在文件系统中访()
* *
*earth的图片ROM中PNG格式存放在文件系统中访()
*
* * MacPro的Retina屏就需要用双倍解析度的图片AWTK以后会支持PC软件和手机软件的开发
* *
*MacPro的Retina屏就需要用双倍解析度的图片AWTK以后会支持PC软件和手机软件的开发
*
* * 使使UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可
* *
*使使UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可
*
*
*

View File

@ -166,6 +166,9 @@ typedef struct _im_candidates_event_t {
* input_method_null_t -> input_method_t [arrowhead=empty style=dashed]
*
* ```
*
* > [input\_type](input_type_t.md)
*
*/
struct _input_method_t {
/**

View File

@ -70,7 +70,8 @@ struct _ui_loader_t {
* @return {ret_t} RET_OK表示成功
*
*/
ret_t ui_loader_load(ui_loader_t* loader, const uint8_t* data, uint32_t size, ui_builder_t* builder);
ret_t ui_loader_load(ui_loader_t* loader, const uint8_t* data, uint32_t size,
ui_builder_t* builder);
END_C_DECLS

View File

@ -69,7 +69,7 @@ typedef struct _window_base_t {
/**
* @property {window_closable_t} closable
* @annotation ["set_prop","get_prop","readable","persitent","design","scriptable"]
* EVT\_REQUEST\_CLOSE\_WINDOW是否自动关闭窗口
* EVT_REQUEST_CLOSE_WINDOW是否自动关闭窗口
*
* :
*

2
src/input_engines/input_engine_null.h Executable file → Normal file
View File

@ -32,6 +32,8 @@ BEGIN_C_DECLS
*
*
*
*
*
* @annotation["fake"]
*
*/

2
src/input_engines/input_engine_pinyin.h Executable file → Normal file
View File

@ -32,6 +32,8 @@ BEGIN_C_DECLS
*
*
*
*
*
* @annotation["fake"]
*
*/

7
src/input_methods/input_method_default.h Executable file → Normal file
View File

@ -30,7 +30,11 @@ BEGIN_C_DECLS
* @class input_method_default_t
* @parent input_method_t
*
*
*
*
*
*
*
*
* @annotation["fake"]
*
@ -50,4 +54,3 @@ input_method_t* input_method_default_create(void);
END_C_DECLS
#endif /*TK_INPUT_METHOD_DEFAULT_H*/

2
src/input_methods/input_method_null.h Executable file → Normal file
View File

@ -32,6 +32,8 @@ BEGIN_C_DECLS
*
*
*
* 使
*
* @annotation["fake"]
*
*/

3
src/input_methods/input_method_sdl.h Executable file → Normal file
View File

@ -32,6 +32,8 @@ BEGIN_C_DECLS
*
* SDL输入法实现
*
* SDL输入法使用平台自身的输入法引擎LinuxMacOSWindowsAndroid和iOS上使用
*
* @annotation["fake"]
*
*/
@ -50,4 +52,3 @@ input_method_t* input_method_sdl_create(void);
END_C_DECLS
#endif /*TK_INPUT_METHOD_SDL_H*/

0
src/ui_loader/ui_builder_default.h Executable file → Normal file
View File

0
src/ui_loader/ui_loader_default.h Executable file → Normal file
View File

0
src/ui_loader/ui_loader_xml.h Executable file → Normal file
View File

View File

@ -503,7 +503,7 @@
"events": [],
"properties": [],
"header": "base/assets_manager.h",
"desc": " 资源管理器。\n 这里的资源管理器并非Windows下的文件浏览器而是负责对各种资源比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个\n\n * 让上层不需要了解存储的方式。在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。\n\n * 让上层不需要了解资源的具体格式。比如一个名为earth的图片没有文件系统或内存紧缺图片直接用位图数据格式存在ROM中而有文件系统时则用PNG格式存放在文件系统中。资源管理器让上层不需要关心图片的格式访问时指定图片的名称即可(不用指定扩展名)。\n\n * 让上层不需要了解屏幕的密度。不同的屏幕密度下需要加载不同的图片比如MacPro的Retina屏就需要用双倍解析度的图片否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发所以资源管理器需要为此提供支持让上层不需关心屏幕的密度。\n \n * 对资源进行内存缓存。不同类型的资源使用方式是不一样的比如字体和主题加载之后会一直使用UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。\n\n当从文件系统加载资源时目录结构要求如下\n\n ```\n assets/raw/\n fonts 字体\n images 图片\n x1 普通密度屏幕的图片。\n x2 2倍密度屏幕的图片。\n x3 3倍密度屏幕的图片。\n strings 需要翻译的字符串。 \n styles 主题数据。\n ui UI描述数据。\n ```\n\n\n",
"desc": " 资源管理器。\n 这里的资源管理器并非Windows下的文件浏览器而是负责对各种资源比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个\n\n *\n让上层不需要了解存储的方式。在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。\n\n *\n让上层不需要了解资源的具体格式。比如一个名为earth的图片没有文件系统或内存紧缺图片直接用位图数据格式存在ROM中而有文件系统时则用PNG格式存放在文件系统中。资源管理器让上层不需要关心图片的格式访问时指定图片的名称即可(不用指定扩展名)。\n\n *\n让上层不需要了解屏幕的密度。不同的屏幕密度下需要加载不同的图片比如MacPro的Retina屏就需要用双倍解析度的图片否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发所以资源管理器需要为此提供支持让上层不需关心屏幕的密度。\n\n *\n对资源进行内存缓存。不同类型的资源使用方式是不一样的比如字体和主题加载之后会一直使用UI文件在生成界面之后就暂时不需要了PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。\n\n当从文件系统加载资源时目录结构要求如下\n\n ```\n assets/raw/\n fonts 字体\n images 图片\n x1 普通密度屏幕的图片。\n x2 2倍密度屏幕的图片。\n x3 3倍密度屏幕的图片。\n strings 需要翻译的字符串。\n styles 主题数据。\n ui UI描述数据。\n ```\n\n\n",
"name": "assets_manager_t",
"annotation": {
"scriptable": true
@ -3293,7 +3293,7 @@
}
],
"header": "base/input_method.h",
"desc": " 输入法接口。\n\n 常见的实现方式有以下几种:\n\n * 空实现。用于不需要输入法的嵌入式平台。\n\n * 缺省实现。用于需要输入法的嵌入式平台。\n\n * 基于SDL实现的平台原生输入法。用于桌面系统和手机系统。\n\n ```graphviz\n [default_style]\n\n input_method_default_t -> input_method_t [arrowhead=empty style=dashed]\n input_method_sdl_t -> input_method_t [arrowhead=empty style=dashed]\n input_method_null_t -> input_method_t [arrowhead=empty style=dashed]\n\n ```\n\n",
"desc": " 输入法接口。\n\n 常见的实现方式有以下几种:\n\n * 空实现。用于不需要输入法的嵌入式平台。\n\n * 缺省实现。用于需要输入法的嵌入式平台。\n\n * 基于SDL实现的平台原生输入法。用于桌面系统和手机系统。\n\n ```graphviz\n [default_style]\n\n input_method_default_t -> input_method_t [arrowhead=empty style=dashed]\n input_method_sdl_t -> input_method_t [arrowhead=empty style=dashed]\n input_method_null_t -> input_method_t [arrowhead=empty style=dashed]\n\n ```\n\n > 输入类型请参考:[input\\_type](input_type_t.md)\n\n\n",
"name": "input_method_t",
"level": 1
},
@ -18936,7 +18936,7 @@
"events": [],
"properties": [],
"header": "input_engines/input_engine_null.h",
"desc": " \n 空输入法引擎实现。\n\n\n\n",
"desc": "\n 空输入法引擎实现。\n\n 缺省输入法可以选择启用软键盘,但不启用具体的输入法引擎,此时可以选择空输入法引擎实现。\n\n\n\n",
"name": "input_engine_null_t",
"parent": "input_engine_t",
"annotation": {
@ -18963,7 +18963,7 @@
"events": [],
"properties": [],
"header": "input_engines/input_engine_pinyin.h",
"desc": " \n 拼音输入法引擎实现。\n\n\n\n",
"desc": "\n 拼音输入法引擎实现。\n\n 基于谷歌拼音输入法实现。\n\n\n\n",
"name": "input_engine_pinyin_t",
"parent": "input_engine_t",
"annotation": {
@ -18990,7 +18990,7 @@
"events": [],
"properties": [],
"header": "input_methods/input_method_default.h",
"desc": " \n 缺省输入法实现。\n\n\n\n",
"desc": "\n 缺省输入法实现。输入法会启用软键盘,但是开发者可以自定义输入法引擎。\n\n 目前可以选择不启用输入法引擎或启用拼音输入法引擎。\n\n 开发者也可以开发手写输入法或语音输入法,如果实现时遇到问题可以和我们交流。\n\n\n\n",
"name": "input_method_default_t",
"parent": "input_method_t",
"annotation": {
@ -19017,7 +19017,7 @@
"events": [],
"properties": [],
"header": "input_methods/input_method_null.h",
"desc": " \n 空输入法实现。\n\n\n\n",
"desc": "\n 空输入法实现。\n\n 在不需要输入法的嵌入式平台使用空的输入法。\n\n\n\n",
"name": "input_method_null_t",
"parent": "input_method_t",
"annotation": {
@ -19044,7 +19044,7 @@
"events": [],
"properties": [],
"header": "input_methods/input_method_sdl.h",
"desc": " \n SDL输入法实现。\n\n\n\n",
"desc": "\n SDL输入法实现。\n\n SDL输入法使用平台自身的输入法引擎一般在桌面Linux、MacOS、Windows、Android和iOS上使用。\n\n\n\n",
"name": "input_method_sdl_t",
"parent": "input_method_t",
"annotation": {
@ -19937,7 +19937,7 @@
},
{
"name": "closable",
"desc": " 收到EVT\\_REQUEST\\_CLOSE\\_WINDOW是否自动关闭窗口。\r\n\r\n 如果关闭窗口时,需要用户确认:\r\n\r\n * 1.将closable设置为WINDOW\\_CLOSABLE\\_CONFIRM\r\n\r\n * 2.处理窗口的EVT\\_REQUEST\\_CLOSE\\_WINDOW事件\r\n\r\n> closable在XML中取值为yes/no/confirm缺省为yes。\r\n",
"desc": " 收到EVT_REQUEST_CLOSE_WINDOW是否自动关闭窗口。\r\n\r\n 如果关闭窗口时,需要用户确认:\r\n\r\n * 1.将closable设置为WINDOW\\_CLOSABLE\\_CONFIRM\r\n\r\n * 2.处理窗口的EVT\\_REQUEST\\_CLOSE\\_WINDOW事件\r\n\r\n> closable在XML中取值为yes/no/confirm缺省为yes。\r\n",
"type": "window_closable_t",
"annotation": {
"set_prop": true,