diff --git a/README_zh.md b/README_zh.md index 7b3b68e27..351cf0f15 100644 --- a/README_zh.md +++ b/README_zh.md @@ -66,7 +66,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -93,7 +93,7 @@ * 支持控件动画。 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 主题切换实时生效。 * 支持控件布局策略。 * 支持对话框高亮策略。 diff --git a/docs/README.md b/docs/README.md index 024c6a934..a6b24eca4 100644 --- a/docs/README.md +++ b/docs/README.md @@ -13,7 +13,7 @@ * [AWTK 中的矢量图绘图函数](vgcanvas.md) * [AWTK 中的事件处理函数](event_listener.md) * [AWTK 中的国际化之字符串翻译](locale.md) -* [AWTK 中的主题](theme.md) +* [AWTK 中的窗体样式](theme.md) * [AWTK 中的 system\_bar 使用方法](system_bar.md) * [AWTK 中的资源管理器](assets_manager.md) * [AWTK 中的窗口动画](window_animator.md) @@ -65,7 +65,7 @@ * [如何支持单色 LCD](how_to_support_mono_lcd.md) * [如何使用 mutable_image 控件](how_to_use_mutable_image.md) * [如何让文本滚动起来](how_to_scroll_you_text.md) -* [如何在主题文件中写控件布局参数](how_to_write_layout_params_in_style.md) +* [如何在窗体样式文件中写控件布局参数](how_to_write_layout_params_in_style.md) * [如何开启按键音](how_to_enable_key_touch_sound.md) * [如何更新拼音输入法数据](how_to_update_gpinyin_data.md) * [如何用 valgrind 查找内存相关问题](how_to_use_valgrind_detect_memory_bugs.md) diff --git a/docs/assets_manager.md b/docs/assets_manager.md index dd0d4a39f..8be61e3d2 100644 --- a/docs/assets_manager.md +++ b/docs/assets_manager.md @@ -2,7 +2,7 @@ ## 基本架构 -这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: +这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、窗体样式、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: * 让上层不需要了解存储的方式。在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。 @@ -10,7 +10,7 @@ * 让上层不需要了解屏幕的密度。不同的屏幕密度下需要加载不同的图片,比如MacPro的Retina屏就需要用双倍解析度的图片,否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发,所以资源管理器需要为此提供支持,让上层不需关心屏幕的密度。 -* 对资源进行内存缓存。不同类型的资源使用方式是不一样的,比如字体和主题加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 +* 对资源进行内存缓存。不同类型的资源使用方式是不一样的,比如字体和窗体样式加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 负责资源管理器和资源管理相关的组件如下图所示: @@ -24,7 +24,7 @@ AWTK中的资源需要进行格式转换才能使用: * 在没有文件系统时或者内存紧缺时,需要把资源转成常量数组直接编译到代码中。 * XML格式的UI文件需要转换成二进制的格式。 -* XML格式的主题文件需要转换成二进制的格式。 +* XML格式的窗体样式文件需要转换成二进制的格式。 * TTF可以根据需要转换成位图字体。 * PNG可以根据需要转换成位图图片。 @@ -33,7 +33,7 @@ AWTK中的资源需要进行格式转换才能使用: * bin/fontgen 位图字体生成工具 * bin/imagegen 位图图片生成工具 * bin/resgen 二进制文件生成资源常量数组 -* bin/themegen XML主题转换成二进制的主题 +* bin/themegen XML窗体样式转换成二进制的窗体样式 * bin/xml\_to\_ui XML的界面描述格式转换二进制的界面描述格式 * ./scripts/update\_res.py 批量转换整个项目的资源 @@ -101,9 +101,9 @@ widget_t* win = window_open(name); * 使用字体 -一般在主题文件中指定字体即可。 +一般在窗体样式文件中指定字体即可。 -* 使用主题 +* 使用窗体样式 一般在界面描述文件中指定style即可。 diff --git a/docs/awtk_project_description_file.md b/docs/awtk_project_description_file.md index 63b812fee..e81a78df7 100644 --- a/docs/awtk_project_description_file.md +++ b/docs/awtk_project_description_file.md @@ -97,7 +97,7 @@ type 是可选的,表示项目类型,缺省为“PROJECT_WIDGETS_APPLICATION * PROJECT_CUSTOM_WIDGET 表示自定义控件库,可导入 Designer,安装到项目后可以像内置控件一样编辑并实时预览显示效果; -* ROJECT_THEME 表示应用程序主题,可导入 Designer 并应用到不同的项目; +* PROJECT_THEME 表示应用程序主题,可导入 Designer 并应用到不同的项目; * PROJECT_UI_SNIPPET 表示界面片段,可导入 Designer 并应用到不同的项目。 diff --git a/docs/changes.md b/docs/changes.md index 817da77f4..5cc52d1d1 100644 --- a/docs/changes.md +++ b/docs/changes.md @@ -1,9 +1,10 @@ # 最新动态 2021/05/11 - * 增加widget\_back/widget\_back\_to\_home。 - * 完善WINDOW\_CLOSABLE\_CONFIRM的处理。 * 完善dialog\_helper。 + * 完善WINDOW\_CLOSABLE\_CONFIRM的处理。 + * 增加widget\_back/widget\_back\_to\_home。 + * 为了避免歧义,将styles资源名称由“主题”改为“窗体样式”(感谢雨欣提供补丁)。 2021/05/08 * 重构popup和相关测试。 diff --git a/docs/how_to_support_mono_lcd.md b/docs/how_to_support_mono_lcd.md index 5f5bb7e33..052f68c9a 100644 --- a/docs/how_to_support_mono_lcd.md +++ b/docs/how_to_support_mono_lcd.md @@ -30,9 +30,9 @@ imagegen.exe in_filename out_filename (bgra|bgr565|mono) > 由于单色图片只有两种颜色,所以在设计图片上只能使用白色 (#ffffff) 和黑色 (#000000),否则转换出来的效果不是期望的。 -## 主题配置 +## 窗体样式配置 -主题中只能使用白色 (#ffffff) 和黑色 (#000000) 两种颜色。 +窗体样式中只能使用白色 (#ffffff) 和黑色 (#000000) 两种颜色。 ## 资源生成 diff --git a/docs/how_to_write_layout_params_in_style.md b/docs/how_to_write_layout_params_in_style.md index 03dc3265d..cde24fce3 100644 --- a/docs/how_to_write_layout_params_in_style.md +++ b/docs/how_to_write_layout_params_in_style.md @@ -1,4 +1,4 @@ -# 如何在主题文件中写控件布局参数 +# 如何在窗体样式文件中写控件布局参数 一个控件在多个界面出现,而且它的布局参数是一样的,可以把它布局参数放到 style 中,这样可以提高可维护性。 diff --git a/docs/image_draw_type.md b/docs/image_draw_type.md index 697c693a5..9f49dec49 100644 --- a/docs/image_draw_type.md +++ b/docs/image_draw_type.md @@ -33,7 +33,7 @@ image_set_draw_type(img, IMAGE_DRAW_CENTER); ``` -## 四、在主题中使用(适用于所有控件的背景) +## 四、在窗体样式中使用(适用于所有控件的背景) ``` diff --git a/docs/index.md b/docs/index.md index 1cb690258..6efc6db7a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -13,7 +13,7 @@ * [AWTK 中的矢量图绘图函数](vgcanvas.md) * [AWTK 中的事件处理函数](event_listener.md) * [AWTK 中的国际化之字符串翻译](locale.md) -* [AWTK 中的主题](theme.md) +* [AWTK 中的窗体样式](theme.md) * [AWTK 中的 system\_bar 使用方法](system_bar.md) * [AWTK 中的资源管理器](assets_manager.md) * [AWTK 中的窗口动画](window_animator.md) @@ -48,7 +48,7 @@ * [如何支持单色 LCD](how_to_support_mono_lcd.md) * [如何使用 mutable_image 控件](how_to_use_mutable_image.md) * [如何让文本滚动起来](how_to_scroll_you_text.md) -* [如何在主题文件中写控件布局参数](how_to_write_layout_params_in_style.md) +* [如何在窗体样式文件中写控件布局参数](how_to_write_layout_params_in_style.md) * [如何开启按键音](how_to_enable_key_touch_sound.md) * [如何更新拼音输入法数据](how_to_update_gpinyin_data.md) * [如何集成第三方库](https://github.com/zlgopen/awtk-hello/blob/master/docs/how_to_integrate_3rd_libs.md) diff --git a/docs/manual.md b/docs/manual.md index 610d16733..787a01f6d 100644 --- a/docs/manual.md +++ b/docs/manual.md @@ -137,12 +137,12 @@ * [locale\_info](manual/locale_info_t.md) 本地化信息。 -#### 4. 主题 +#### 4. 窗体样式 ![style\_overview](images/style_overview.png) * [style](manual/style_t.md) style 接口。 -* [theme](manual/theme_t.md) 常量主题数据。 +* [theme](manual/theme_t.md) 常量窗体样式数据。 * [style\_factory](manual/style_factory_t.md) style 工厂。 * [style\_const](manual/style_const_t.md) 只读的 style。 * [style\_mutable](manual/style_mutable_t.md) 可修改的 style。 diff --git a/docs/manual/asset_type_t.md b/docs/manual/asset_type_t.md index 2c18957c8..e61110f88 100644 --- a/docs/manual/asset_type_t.md +++ b/docs/manual/asset_type_t.md @@ -9,7 +9,7 @@ | ASSET\_TYPE\_NONE | 无效资源。 | | ASSET\_TYPE\_FONT | 字体资源。 | | ASSET\_TYPE\_IMAGE | 图片资源。 | -| ASSET\_TYPE\_STYLE | 主题资源。 | +| ASSET\_TYPE\_STYLE | 窗体样式资源。 | | ASSET\_TYPE\_UI | UI数据资源。 | | ASSET\_TYPE\_XML | XML数据资源。 | | ASSET\_TYPE\_STRINGS | 字符串数据资源。 | diff --git a/docs/manual/assets_manager_t.md b/docs/manual/assets_manager_t.md index 79939b35c..337b30185 100644 --- a/docs/manual/assets_manager_t.md +++ b/docs/manual/assets_manager_t.md @@ -3,7 +3,7 @@ ![image](images/assets_manager_t_0.png) 资源管理器。 -这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: +这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、窗体样式、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: * 让上层不需要了解存储的方式。 在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。 @@ -15,7 +15,7 @@ 不同的屏幕密度下需要加载不同的图片,比如MacPro的Retina屏就需要用双倍解析度的图片,否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发,所以资源管理器需要为此提供支持,让上层不需关心屏幕的密度。 * 对资源进行内存缓存。 -不同类型的资源使用方式是不一样的,比如字体和主题加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 +不同类型的资源使用方式是不一样的,比如字体和窗体样式加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 当从文件系统加载资源时,目录结构要求如下: @@ -28,7 +28,7 @@ x2 2倍密度屏幕的图片。 x3 3倍密度屏幕的图片。 xx 密度无关的图片。 strings 需要翻译的字符串。 -styles 主题数据。 +styles 窗体样式数据。 ui UI描述数据。 ``` ---------------------------------- diff --git a/docs/manual/color_tile_t.md b/docs/manual/color_tile_t.md index 6bd1cee77..9ff897652 100644 --- a/docs/manual/color_tile_t.md +++ b/docs/manual/color_tile_t.md @@ -4,7 +4,7 @@ 色块控件。 -用来显示一个颜色块,它通过属性而不是主题来设置颜色,方便在运行时动态改变颜色。 +用来显示一个颜色块,它通过属性而不是窗体样式来设置颜色,方便在运行时动态改变颜色。 可以使用value属性访问背景颜色的颜色值。 diff --git a/docs/manual/combo_box_t.md b/docs/manual/combo_box_t.md index 2e0ac3618..b77b02f53 100644 --- a/docs/manual/combo_box_t.md +++ b/docs/manual/combo_box_t.md @@ -88,7 +88,7 @@ demo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/combo_box.c) ``` -* 1.combobox的下拉按钮的style名称为combobox_down,可以在主题文件中设置。 +* 1.combobox的下拉按钮的style名称为combobox_down,可以在窗体样式文件中设置。 ```xml ``` -* 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在主题文件中设置。 +* 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在窗体样式文件中设置。 ```xml diff --git a/docs/manual/dialog_t.md b/docs/manual/dialog_t.md index 1c48f8dfc..42114d5b0 100644 --- a/docs/manual/dialog_t.md +++ b/docs/manual/dialog_t.md @@ -149,7 +149,7 @@ widget_t* dialog_cast (widget_t* widget); >

显示『确认』对话框。 -主题由dialog_confirm.xml文件决定。 +窗体样式由dialog_confirm.xml文件决定。 * 函数原型: @@ -255,7 +255,7 @@ widget_t* dialog_get_title (widget_t* widget); >

显示『提示信息』对话框。 -主题由dialog_info.xml文件决定。 +窗体样式由dialog_info.xml文件决定。 * 函数原型: @@ -399,7 +399,7 @@ ret_t dialog_set_title (widget_t* widget, char* title); >

显示『短暂提示信息』对话框。 -主题由dialog_toast.xml文件决定。 +窗体样式由dialog_toast.xml文件决定。 * 函数原型: @@ -421,7 +421,7 @@ ret_t dialog_toast (const char* text, uint32_t duration); >

显示『警告』对话框。 -主题由dialog_warn.xml文件决定。 +窗体样式由dialog_warn.xml文件决定。 * 函数原型: diff --git a/docs/manual/overlay_t.md b/docs/manual/overlay_t.md index da8c17ef5..8b6552e65 100644 --- a/docs/manual/overlay_t.md +++ b/docs/manual/overlay_t.md @@ -10,7 +10,7 @@ overlay窗口有点类似于非模态的dialog,但是它位置和大小是完 overlay\_t是[window\_base\_t](window_base_t.md)的子类控件,window\_base\_t的函数均适用于overlay\_t控件。 -在xml中使用"overlay"标签创建窗口。需要指定坐标和大小,可以指定主题和动画名称。如: +在xml中使用"overlay"标签创建窗口。需要指定坐标和大小,可以指定窗体样式和动画名称。如: ```xml diff --git a/docs/manual/style_const_t.md b/docs/manual/style_const_t.md index c9c8f0a92..1f040c6d7 100644 --- a/docs/manual/style_const_t.md +++ b/docs/manual/style_const_t.md @@ -4,7 +4,7 @@ 只读的style,从theme\_t中获取数据。 -tools/theme_gen用于把XML的主题数据转换成常量数据。 +tools/theme_gen用于把XML的窗体样式数据转换成常量数据。 ---------------------------------- ### 函数

diff --git a/docs/manual/theme_t.md b/docs/manual/theme_t.md index ea82b7e23..7ca41cdd6 100644 --- a/docs/manual/theme_t.md +++ b/docs/manual/theme_t.md @@ -1,27 +1,27 @@ ## theme\_t ### 概述 -主题。 +窗体样式。 -负责管理缺省的主题数据,方便实现style\_const。 +负责管理缺省的窗体样式数据,方便实现style\_const。 ---------------------------------- ### 函数

| 函数名称 | 说明 | | -------- | ------------ | -| theme | 获取缺省的主题对象。 | -| theme\_default\_create | 创建主题对象。 | -| theme\_destroy | 析构并释放主题对象。 | +| theme | 获取缺省的窗体样式对象。 | +| theme\_default\_create | 创建窗体样式对象。 | +| theme\_destroy | 析构并释放窗体样式对象。 | | theme\_find\_style | 查找满足条件的style。 | -| theme\_get\_style\_type | 获取主题的风格类型。 | -| theme\_set | 设置缺省的主题对象。 | -| theme\_set\_theme\_data | 设置主题的数据。 | +| theme\_get\_style\_type | 获取窗体样式的风格类型。 | +| theme\_set | 设置缺省的窗体样式对象。 | +| theme\_set\_theme\_data | 设置窗体样式的数据。 | #### theme 函数 ----------------------- * 函数功能: ->

获取缺省的主题对象。 +>

获取缺省的窗体样式对象。 * 函数原型: @@ -33,13 +33,13 @@ theme_t* theme (); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | -| 返回值 | theme\_t* | 返回主题对象。 | +| 返回值 | theme\_t* | 返回窗体样式对象。 | #### theme\_default\_create 函数 ----------------------- * 函数功能: ->

创建主题对象。 +>

创建窗体样式对象。 * 函数原型: @@ -51,14 +51,14 @@ theme_t* theme_default_create (const uint8_t* data); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | -| 返回值 | theme\_t* | 返回主题对象。 | -| data | const uint8\_t* | 主题数据。 | +| 返回值 | theme\_t* | 返回窗体样式对象。 | +| data | const uint8\_t* | 窗体样式数据。 | #### theme\_destroy 函数 ----------------------- * 函数功能: ->

析构并释放主题对象。 +>

析构并释放窗体样式对象。 * 函数原型: @@ -71,7 +71,7 @@ ret_t theme_destroy (theme_t* theme); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | ret\_t | 返回RET\_OK表示成功,否则表示失败。 | -| theme | theme\_t* | 主题对象。 | +| theme | theme\_t* | 窗体样式对象。 | #### theme\_find\_style 函数 ----------------------- @@ -90,7 +90,7 @@ const uint8_t* theme_find_style (theme_t* theme, const char* widget_type, const | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | const uint8\_t* | 返回风格对象数据。 | -| theme | theme\_t* | 主题对象。 | +| theme | theme\_t* | 窗体样式对象。 | | widget\_type | const char* | 控件的类型名。 | | name | const char* | style的名称。 | | widget\_state | const char* | 控件的状态。 | @@ -99,7 +99,7 @@ const uint8_t* theme_find_style (theme_t* theme, const char* widget_type, const * 函数功能: ->

获取主题的风格类型。 +>

获取窗体样式的风格类型。 * 函数原型: @@ -112,13 +112,13 @@ const char* theme_get_style_type (theme_t* theme); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | const char* | 返回风格类型。 | -| theme | theme\_t* | 主题对象。 | +| theme | theme\_t* | 窗体样式对象。 | #### theme\_set 函数 ----------------------- * 函数功能: ->

设置缺省的主题对象。 +>

设置缺省的窗体样式对象。 * 函数原型: @@ -131,13 +131,13 @@ ret_t theme_set (theme_t* theme); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | ret\_t | 返回RET\_OK表示成功,否则表示失败。 | -| theme | theme\_t* | 主题对象。 | +| theme | theme\_t* | 窗体样式对象。 | #### theme\_set\_theme\_data 函数 ----------------------- * 函数功能: ->

设置主题的数据。 +>

设置窗体样式的数据。 * 函数原型: @@ -150,5 +150,5 @@ ret_t theme_set_theme_data (theme_t* theme, const uint8_t* data); | 参数 | 类型 | 说明 | | -------- | ----- | --------- | | 返回值 | ret\_t | 返回RET\_OK表示成功,否则表示失败。 | -| theme | theme\_t* | 主题对象。 | -| data | const uint8\_t* | 主题数据。 | +| theme | theme\_t* | 窗体样式对象。 | +| data | const uint8\_t* | 窗体样式数据。 | diff --git a/docs/manual/widget_prop_t.md b/docs/manual/widget_prop_t.md index 55ec80a1f..ecf2fe9ac 100644 --- a/docs/manual/widget_prop_t.md +++ b/docs/manual/widget_prop_t.md @@ -103,14 +103,14 @@ | WIDGET\_PROP\_GRAB\_KEYS | 让窗口管理器直接把按键发给自己。 | | WIDGET\_PROP\_ROW | 行数或每行的高度。 | | WIDGET\_PROP\_STATE\_FOR\_STYLE | 控件状态。 | -| WIDGET\_PROP\_THEME | 窗口主题名称。 | +| WIDGET\_PROP\_THEME | 窗口窗体样式名称。 | | WIDGET\_PROP\_STAGE | window stage | | WIDGET\_PROP\_IMAGE\_MANAGER | 图片管理器。 | | WIDGET\_PROP\_ASSETS\_MANAGER | 资源管理器。 | | WIDGET\_PROP\_LOCALE\_INFO | locale\_info。 | | WIDGET\_PROP\_FONT\_MANAGER | 字体管理器。 | -| WIDGET\_PROP\_THEME\_OBJ | 窗口的主题对象。 | -| WIDGET\_PROP\_DEFAULT\_THEME\_OBJ | 缺省的主题对象。 | +| WIDGET\_PROP\_THEME\_OBJ | 窗口的窗体样式对象。 | +| WIDGET\_PROP\_DEFAULT\_THEME\_OBJ | 缺省的窗体样式对象。 | | WIDGET\_PROP\_ITEM\_WIDTH | 项的宽度。 | | WIDGET\_PROP\_ITEM\_HEIGHT | 项的高度。 | | WIDGET\_PROP\_DEFAULT\_ITEM\_HEIGHT | 项的缺省高度。 | diff --git a/docs/manual/widget_t.md b/docs/manual/widget_t.md index 564b6d839..7a98ba780 100644 --- a/docs/manual/widget_t.md +++ b/docs/manual/widget_t.md @@ -108,7 +108,7 @@ widget_on(button, EVT_CLICK, on_click, NULL); | widget\_get\_value | 获取控件的值。只是对widget\_get\_prop的包装,值的意义由子类控件决定。 | | widget\_get\_window | 获取当前控件所在的窗口。 | | widget\_get\_window\_manager | 获取当前的窗口管理器。 | -| widget\_get\_window\_theme | 获取控件的窗口主题 | +| widget\_get\_window\_theme | 获取控件的窗口窗体样式 | | widget\_grab | 让指定子控件抓住事件。 | | widget\_index\_of | 获取控件在父控件中的索引编号。 | | widget\_init | 初始化控件。仅在子类控件构造函数中使用。 | @@ -1524,7 +1524,7 @@ widget_t* widget_get_window_manager (widget_t* widget); * 函数功能: ->

获取控件的窗口主题 +>

获取控件的窗口窗体样式 * 函数原型: @@ -1538,8 +1538,8 @@ ret_t widget_get_window_theme (widget_t* widget, theme_t** win_theme, theme_t** | -------- | ----- | --------- | | 返回值 | ret\_t | 返回RET\_OK表示成功,否则表示失败。 | | widget | widget\_t* | 控件对象。 | -| win\_theme | theme\_t** | 返回窗口主题。 | -| default\_theme | theme\_t** | 返回全局默认主题。 | +| win\_theme | theme\_t** | 返回窗口窗体样式。 | +| default\_theme | theme\_t** | 返回全局默认窗体样式。 | #### widget\_grab 函数 ----------------------- diff --git a/docs/manual/window_base_t.md b/docs/manual/window_base_t.md index ec3879c6b..5b22af854 100644 --- a/docs/manual/window_base_t.md +++ b/docs/manual/window_base_t.md @@ -52,8 +52,8 @@ | open\_anim\_hint | char* | 打开窗口动画的名称。 | | single\_instance | bool\_t | 单例。如果窗口存在,先关闭再打开。 | | stage | char* | 窗口当前处于的状态。 | -| theme | char* | 主题资源的名称。 | -| theme\_obj | theme\_t* | 窗口的常量主题数据。 | +| theme | char* | 窗体样式资源的名称。 | +| theme\_obj | theme\_t* | 窗口的常量窗体样式数据。 | ### 事件

@@ -617,10 +617,10 @@ ret_t window_base_set_prop (widget_t* widget, const char* name, const value_t* v | 可通过widget\_get\_prop读取 | 是 | #### theme 属性 ----------------------- ->

主题资源的名称。 -每个窗口都可以有独立的主题文件,如果没指定,则使用系统缺省的主题文件。 -主题是一个XML文件,放在assets/raw/styles目录下。 -请参考[主题](https://github.com/zlgopen/awtk/blob/master/docs/theme.md) +>

窗体样式资源的名称。 +每个窗口都可以有独立的窗体样式文件,如果没指定,则使用系统缺省的窗体样式文件。 +窗体样式是一个XML文件,放在assets/raw/styles目录下。 +请参考[窗体样式](https://github.com/zlgopen/awtk/blob/master/docs/theme.md) * 类型:char* @@ -636,10 +636,10 @@ ret_t window_base_set_prop (widget_t* widget, const char* name, const value_t* v | 可通过widget\_set\_prop修改 | 是 | #### theme\_obj 属性 ----------------------- ->

窗口的常量主题数据。 +>

窗口的常量窗体样式数据。 > -把主题管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载主题资源的问题。 +把窗体样式管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载窗体样式资源的问题。 * 类型:theme\_t* diff --git a/docs/manual/window_t.md b/docs/manual/window_t.md index 0c4012ec8..371006b7e 100644 --- a/docs/manual/window_t.md +++ b/docs/manual/window_t.md @@ -8,7 +8,7 @@ window\_t是[window\_base\_t](window_base_t.md)的子类控件,window\_base\_t的函数均适用于window\_t控件。 -在xml中使用"window"标签创建窗口。无需指定坐标和大小,可以指定主题和动画名称。如: +在xml中使用"window"标签创建窗口。无需指定坐标和大小,可以指定窗体样式和动画名称。如: ```xml diff --git a/docs/release_notes/awtk-1.1.md b/docs/release_notes/awtk-1.1.md index a55a1c202..7695e0953 100644 --- a/docs/release_notes/awtk-1.1.md +++ b/docs/release_notes/awtk-1.1.md @@ -52,7 +52,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持3 FrameBuffer让界面以最高帧率运行(可选)。 -* UI描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种GPU加速接口。如OpenGL、DirectX、Vulkan和Metal等。 * 支持嵌入式平台的各种2D加速接口。目前STM32的DMA2D和NXP的PXP接口,厂家可以轻松扩展自己的加速接口。 @@ -79,7 +79,7 @@ * 支持控件动画 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 支持控件布局策略。 * 支持对话框高亮策略。 * 丰富的辅助工具。 diff --git a/docs/release_notes/awtk-1.2.md b/docs/release_notes/awtk-1.2.md index 233cd7f39..eea863866 100644 --- a/docs/release_notes/awtk-1.2.md +++ b/docs/release_notes/awtk-1.2.md @@ -51,7 +51,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行(可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -78,7 +78,7 @@ * 支持控件动画 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 支持控件布局策略。 * 支持对话框高亮策略。 * 丰富的辅助工具。 @@ -151,7 +151,7 @@ * 将 ListView 的布局策略放到 children\_layouter\_list\_view 中,并支持边距和间距等参数。 * children\_layouter\_list\_view 增加 keep\_disable 和 keep\_invisible 参数。 * children\_layouter\_default 增加 keep\_disable 和 keep\_invisible 参数。 - * 缺省启用 style mutable,具体用法请参考主题文档。 + * 缺省启用 style mutable,具体用法请参考窗体样式文档。 * 增加 style border\_width * 支持动态修改屏保时间。 * 增加 app_root 自动检测。 diff --git a/docs/release_notes/awtk-1.3.md b/docs/release_notes/awtk-1.3.md index 5cc03b4bc..9a121954c 100644 --- a/docs/release_notes/awtk-1.3.md +++ b/docs/release_notes/awtk-1.3.md @@ -52,7 +52,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -79,7 +79,7 @@ * 支持控件动画 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 支持控件布局策略。 * 支持对话框高亮策略。 * 丰富的辅助工具。 diff --git a/docs/release_notes/awtk-1.4.md b/docs/release_notes/awtk-1.4.md index c66a3f288..fc87f7d65 100644 --- a/docs/release_notes/awtk-1.4.md +++ b/docs/release_notes/awtk-1.4.md @@ -65,7 +65,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -92,7 +92,7 @@ * 支持控件动画 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 主题切换实时生效。 * 支持控件布局策略。 * 支持对话框高亮策略。 diff --git a/docs/release_notes/awtk-1.5.md b/docs/release_notes/awtk-1.5.md index 4de4d9916..1a88b9aef 100644 --- a/docs/release_notes/awtk-1.5.md +++ b/docs/release_notes/awtk-1.5.md @@ -65,7 +65,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -92,7 +92,7 @@ * 支持控件动画。 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 主题切换实时生效。 * 支持控件布局策略。 * 支持对话框高亮策略。 diff --git a/docs/release_notes/awtk-1.6.md b/docs/release_notes/awtk-1.6.md index eddee916a..51c3536df 100644 --- a/docs/release_notes/awtk-1.6.md +++ b/docs/release_notes/awtk-1.6.md @@ -64,7 +64,7 @@ * 通过脏矩算法只更新变化的部分。 * 支持 3 FrameBuffer 让界面以最高帧率运行 (可选)。 -* UI 描述文件和主题文件使用高效的二进制格式,解析在瞬间完成。 +* UI 描述文件和窗体样式文件使用高效的二进制格式,解析在瞬间完成。 * 支持各种 GPU 加速接口。如 OpenGL、DirectX、Vulkan 和 Metal 等。 * 支持嵌入式平台的各种 2D 加速接口。目前 STM32 的 DMA2D 和 NXP 的 PXP 接口,厂家可以轻松扩展自己的加速接口。 @@ -91,7 +91,7 @@ * 支持控件动画。 * 支持高清屏。 * 支持界面描述文件。 -* 支持主题描述文件。 +* 支持窗体样式描述文件。 * 主题切换实时生效。 * 支持控件布局策略。 * 支持对话框高亮策略。 diff --git a/docs/theme.md b/docs/theme.md index 63cebe568..5632134e0 100644 --- a/docs/theme.md +++ b/docs/theme.md @@ -1,9 +1,9 @@ -## AWTK 中的主题 +## AWTK 中的窗体样式 -设计漂亮的界面并非程序员的强项,AWTK 通过主题提供这样一种机制,让设计漂亮的界面变得非常容易。通过主题,可以改变控件的背景颜色、边框颜色、字体颜色、字体、字体大小、背景图片、背景图片的显示方式和图标等属性。同时 AWTK 也提供了一些主题重用的机制,让主题文件的开发和维护变得容易。 +设计漂亮的界面并非程序员的强项,AWTK 通过窗体样式提供这样一种机制,让设计漂亮的界面变得非常容易。通过窗体样式,可以改变控件的背景颜色、边框颜色、字体颜色、字体、字体大小、背景图片、背景图片的显示方式和图标等属性。同时 AWTK 也提供了一些窗体样式重用的机制,让窗体样式文件的开发和维护变得容易。 -### 一、主题的结构 -AWTK 的主题按控件进行分类,每种控件可以有多种不同的风格,每种风格下又有不同状态下的配置。比如: +### 一、窗体样式的结构 +AWTK 的窗体样式按控件进行分类,每种控件可以有多种不同的风格,每种风格下又有不同状态下的配置。比如: ``` ``` -上面是按钮的主题配置(你可以自由增加自己需要的),其中定义了三种不同的按钮风格: +上面是按钮的样式配置(你可以自由增加自己需要的),其中定义了三种不同的按钮样式: -* default 为缺省的按钮风格。 +* default 为缺省的按钮样式。 * green_btn 是用图片实现的绿色系按钮。 * red_btn 是用图片实现的红色系按钮。 -> 主题的各个属性,如果出现在控件中,则为该控件下各个 style 的缺省值。如果出现在 style 中,则为该 style 的下各种状态的缺省值。这样可以实现类似继承的重用机制。 +> 窗体样式的各个属性,如果出现在控件中,则为该控件下各个 style 的缺省值。如果出现在 style 中,则为该 style 的下各种状态的缺省值。这样可以实现类似继承的重用机制。 > > 同一控件可以出现多次(如上面的 button 出现了两次),有利于实现配置共享,让维护工作更简单。 @@ -43,7 +43,7 @@ AWTK 的主题按控件进行分类,每种控件可以有多种不同的风格 * [控件状态定义](manual/widget_state_t.md) -### 二、主题的属性 +### 二、窗体样式的属性 #### 基本属性 @@ -87,7 +87,7 @@ AWTK 的主题按控件进行分类,每种控件可以有多种不同的风格 参考: * [AWTK 中图片的绘制方式](image_draw_type.md) -* [如何在主题文件中写控件布局参数](how_to_write_layout_params_in_style.md) +* [如何在窗体样式文件中写控件布局参数](how_to_write_layout_params_in_style.md) #### 扩展属性 @@ -98,9 +98,9 @@ AWTK 的主题按控件进行分类,每种控件可以有多种不同的风格 * 名称带有 name/image 视为字符串格式的值。 * 其它视为整数格式的值。 -### 三、编译主题 +### 三、编译窗体样式 -主题用 XML 文件编写,然后用 themegen 生成 C 常量数据,并加入资源管理器,才能在程序中使用。 +窗体样式用 XML 文件编写,然后用 themegen 生成 C 常量数据,并加入资源管理器,才能在程序中使用。 * 生成 C 常量数据 @@ -141,21 +141,21 @@ resource_manager_add(theme_default); ``` -### 五、每个窗口支持独立的主题 +### 五、每个窗口支持独立的窗体样式 -像微信小程序那样,AWTK 中每个窗口(包括对话框和其它窗口)可以有自己的主题文件。 +像微信小程序那样,AWTK 中每个窗口(包括对话框和其它窗口)可以有自己的窗体样式文件。 -* 通过窗口的 theme 属性来指定窗口的主题文件名(方便多个窗口共用一个主题文件)。 +* 通过窗口的 theme 属性来指定窗口的窗体样式文件名(方便多个窗口共用一个窗体样式文件)。 -* 如果没有指定 theme 属性,以窗口的 name 属性作为窗口的主题文件名。 +* 如果没有指定 theme 属性,以窗口的 name 属性作为窗口的窗体样式文件名。 -* 以窗口自己的主题文件优先,其次为缺省的主题文件。 +* 以窗口自己的窗体样式文件优先,其次为缺省的窗体样式文件。 > 参考:dialog1.xml ### 六、inline style -主题数据是只读的,它的好处是速度快,占用内存少。但在一些特殊情况下,我们希望通过函数直接修改控件的 style,或者在 UI 描述的 XML 文件中直接写 style。我们把这类 style 称为 inline style,具体用法如下: +窗体样式数据是只读的,它的好处是速度快,占用内存少。但在一些特殊情况下,我们希望通过函数直接修改控件的 style,或者在 UI 描述的 XML 文件中直接写 style。我们把这类 style 称为 inline style,具体用法如下: * 在 XML UI 描述文件中使用 inline style。 @@ -246,7 +246,7 @@ ret_t widget_set_style_color(widget_t* widget, const char* state_and_name, uint3 widget_set_style_color(label, "normal:bg_color", 0xFF00FF00); ``` -> inline style 会消耗更多内存,而且不方便切换主题,一般应该尽量避免使用。 +> inline style 会消耗更多内存,而且不方便切换窗体样式,一般应该尽量避免使用。 #### 注意: diff --git a/docs/trap_list.md b/docs/trap_list.md index d30bddc00..01997c76a 100644 --- a/docs/trap_list.md +++ b/docs/trap_list.md @@ -20,17 +20,17 @@ -------- -#### 2. 修改了主题描述文件,但是预览时没有任何效果。 +#### 2. 修改了窗体样式描述文件,但是预览时没有任何效果。 **原因** -* 出于性能考虑,AWTK 使用的是二进制格式的主题数据,XML 格式的主题描述文件只是方便开发者编辑的。 -* 修改了 XML 格式的主题描述文件,还需要将它转成二进制格式,预览时才会生效。 +* 出于性能考虑,AWTK 使用的是二进制格式的窗体样式数据,XML 格式的窗体样式描述文件只是方便开发者编辑的。 +* 修改了 XML 格式的窗体样式描述文件,还需要将它转成二进制格式,预览时才会生效。 **绕坑** * 使用脚本 update\_res.py 更新资源。 -* 或者用命令 bin/themegen 将 XML 格式的主题数据转成二进制的主题数据。 +* 或者用命令 bin/themegen 将 XML 格式的窗体样式数据转成二进制的窗体样式数据。 -------- diff --git a/scripts/README.md b/scripts/README.md index 40fe9159c..21868f3ee 100644 --- a/scripts/README.md +++ b/scripts/README.md @@ -18,7 +18,7 @@ python ./scripts/update_res.py all x1 bgra+bgr565 * font 仅生成有变化的字体资源。 * image 仅生成有变化的图像资源。 * ui 仅生成有变化的UI资源。 -* style 仅生成有变化的主题资源。 +* style 仅生成有变化的窗体样式资源。 * string 仅生成有变化的字符串资源。 > 除非你清楚你在做什么,指定第一个参数就可以了。 diff --git a/src/base/assets_manager.h b/src/base/assets_manager.h index 6f4a9a7ea..12f4db339 100644 --- a/src/base/assets_manager.h +++ b/src/base/assets_manager.h @@ -42,7 +42,7 @@ typedef asset_info_t* (*assets_manager_load_asset_t)(assets_manager_t* am, asset * @parent emitter_t * @annotation ["scriptable"] * 资源管理器。 - * 这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、主题、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: + * 这里的资源管理器并非Windows下的文件浏览器,而是负责对各种资源,比如字体、窗体样式、图片、界面数据、字符串和其它数据的进行集中管理的组件。引入资源管理器的目的有以下几个: * * * 让上层不需要了解存储的方式。 * 在没有文件系统时或者内存紧缺时,把资源转成常量数组直接编译到代码中。在有文件系统而且内存充足时,资源放在文件系统中。在有网络时,资源也可以存放在服务器上(暂未实现)。资源管理器为上层提供统一的接口,让上层而不用关心底层的存储方式。 @@ -54,7 +54,7 @@ typedef asset_info_t* (*assets_manager_load_asset_t)(assets_manager_t* am, asset * 不同的屏幕密度下需要加载不同的图片,比如MacPro的Retina屏就需要用双倍解析度的图片,否则就出现界面模糊。AWTK以后会支持PC软件和手机软件的开发,所以资源管理器需要为此提供支持,让上层不需关心屏幕的密度。 * * * 对资源进行内存缓存。 - * 不同类型的资源使用方式是不一样的,比如字体和主题加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 + * 不同类型的资源使用方式是不一样的,比如字体和窗体样式加载之后会一直使用,UI文件在生成界面之后就暂时不需要了,PNG文件解码之后就只需要保留解码的位图数据即可。资源管理器配合图片管理器等其它组件实现资源的自动缓存。 * *当从文件系统加载资源时,目录结构要求如下: * @@ -67,7 +67,7 @@ typedef asset_info_t* (*assets_manager_load_asset_t)(assets_manager_t* am, asset * x3 3倍密度屏幕的图片。 * xx 密度无关的图片。 * strings 需要翻译的字符串。 - * styles 主题数据。 + * styles 窗体样式数据。 * ui UI描述数据。 * ``` * diff --git a/src/base/dialog.h b/src/base/dialog.h index af3f036fc..3d6a4fc3a 100644 --- a/src/base/dialog.h +++ b/src/base/dialog.h @@ -330,7 +330,7 @@ bool_t dialog_is_modal(widget_t* widget); * @method dialog_toast * 显示『短暂提示信息』对话框。 * - * 主题由dialog_toast.xml文件决定。 + * 窗体样式由dialog_toast.xml文件决定。 * * @annotation ["static", "scriptable"] * @param {const char*} text 文本内容。 @@ -344,7 +344,7 @@ ret_t dialog_toast(const char* text, uint32_t duration); * @method dialog_info * 显示『提示信息』对话框。 * - * 主题由dialog_info.xml文件决定。 + * 窗体样式由dialog_info.xml文件决定。 * * @annotation ["static", "scriptable"] * @param {const char*} title 标题。 @@ -358,7 +358,7 @@ ret_t dialog_info(const char* title, const char* text); * @method dialog_warn * 显示『警告』对话框。 * - * 主题由dialog_warn.xml文件决定。 + * 窗体样式由dialog_warn.xml文件决定。 * * @annotation ["static", "scriptable"] * @param {const char*} title 标题。 @@ -372,7 +372,7 @@ ret_t dialog_warn(const char* title, const char* text); * @method dialog_confirm * 显示『确认』对话框。 * - * 主题由dialog_confirm.xml文件决定。 + * 窗体样式由dialog_confirm.xml文件决定。 * * @annotation ["static", "scriptable"] * @param {const char*} title 标题。 diff --git a/src/base/style_const.h b/src/base/style_const.h index 2622d6ee9..e1d320187 100644 --- a/src/base/style_const.h +++ b/src/base/style_const.h @@ -32,7 +32,7 @@ BEGIN_C_DECLS * * 只读的style,从theme\_t中获取数据。 * - * tools/theme_gen用于把XML的主题数据转换成常量数据。 + * tools/theme_gen用于把XML的窗体样式数据转换成常量数据。 * */ typedef struct _style_const_t { diff --git a/src/base/theme.h b/src/base/theme.h index 4ba75f821..c2f0085af 100644 --- a/src/base/theme.h +++ b/src/base/theme.h @@ -42,9 +42,9 @@ typedef const char* (*theme_get_style_type_t)(theme_t* theme); /** * @class theme_t * @annotation ["scriptable"] - * 主题。 + * 窗体样式。 * - * 负责管理缺省的主题数据,方便实现style\_const。 + * 负责管理缺省的窗体样式数据,方便实现style\_const。 * */ struct _theme_t { @@ -59,17 +59,17 @@ struct _theme_t { /** * @method theme - * 获取缺省的主题对象。 + * 获取缺省的窗体样式对象。 * @alias theme_instance * @annotation ["constructor", "scriptable"] - * @return {theme_t*} 返回主题对象。 + * @return {theme_t*} 返回窗体样式对象。 */ theme_t* theme(void); /** * @method theme_set - * 设置缺省的主题对象。 - * @param {theme_t*} theme 主题对象。 + * 设置缺省的窗体样式对象。 + * @param {theme_t*} theme 窗体样式对象。 * * @return {ret_t} 返回RET_OK表示成功,否则表示失败。 */ @@ -77,18 +77,18 @@ ret_t theme_set(theme_t* theme); /** * @method theme_default_create - * 创建主题对象。 + * 创建窗体样式对象。 * @annotation ["constructor"] - * @param {const uint8_t*} data 主题数据。 + * @param {const uint8_t*} data 窗体样式数据。 * - * @return {theme_t*} 返回主题对象。 + * @return {theme_t*} 返回窗体样式对象。 */ theme_t* theme_default_create(const uint8_t* data); /** * @method theme_find_style * 查找满足条件的style。 - * @param {theme_t*} theme 主题对象。 + * @param {theme_t*} theme 窗体样式对象。 * @param {const char*} widget_type 控件的类型名。 * @param {const char*} name style的名称。 * @param {const char*} widget_state 控件的状态。 @@ -100,8 +100,8 @@ const uint8_t* theme_find_style(theme_t* theme, const char* widget_type, const c /** * @method theme_get_style_type - * 获取主题的风格类型。 - * @param {theme_t*} theme 主题对象。 + * 获取窗体样式的风格类型。 + * @param {theme_t*} theme 窗体样式对象。 * * @return {const char*} 返回风格类型。 */ @@ -109,9 +109,9 @@ const char* theme_get_style_type(theme_t* theme); /** * @method theme_set_theme_data - * 设置主题的数据。 - * @param {theme_t*} theme 主题对象。 - * @param {const uint8_t*} data 主题数据。 + * 设置窗体样式的数据。 + * @param {theme_t*} theme 窗体样式对象。 + * @param {const uint8_t*} data 窗体样式数据。 * * @return {ret_t} 返回RET_OK表示成功,否则表示失败。 */ @@ -119,8 +119,8 @@ ret_t theme_set_theme_data(theme_t* theme, const uint8_t* data); /** * @method theme_destroy - * 析构并释放主题对象。 - * @param {theme_t*} theme 主题对象。 + * 析构并释放窗体样式对象。 + * @param {theme_t*} theme 窗体样式对象。 * * @return {ret_t} 返回RET_OK表示成功,否则表示失败。 */ diff --git a/src/base/widget.h b/src/base/widget.h index c0344ef20..3f0d572d4 100644 --- a/src/base/widget.h +++ b/src/base/widget.h @@ -850,10 +850,10 @@ ret_t widget_set_text(widget_t* widget, const wchar_t* text); /** * @method widget_get_window_theme - * 获取控件的窗口主题 + * 获取控件的窗体样式。 * @param {widget_t*} widget 控件对象。 - * @param {theme_t**} win_theme 返回窗口主题。 - * @param {theme_t**} default_theme 返回全局默认主题。 + * @param {theme_t**} win_theme 返回窗体样式。 + * @param {theme_t**} default_theme 返回全局默认窗体样式。 * * @return {ret_t} 返回RET_OK表示成功,否则表示失败。 */ diff --git a/src/base/widget_consts.h b/src/base/widget_consts.h index 7f6ebd94b..ee8cb9e31 100644 --- a/src/base/widget_consts.h +++ b/src/base/widget_consts.h @@ -625,7 +625,7 @@ BEGIN_C_DECLS /** * @const WIDGET_PROP_THEME - * 窗口主题名称。 + * 窗体样式名称。 */ #define WIDGET_PROP_THEME "theme" @@ -661,13 +661,13 @@ BEGIN_C_DECLS /** * @const WIDGET_PROP_THEME_OBJ - * 窗口的主题对象。 + * 窗口的窗体样式对象。 */ #define WIDGET_PROP_THEME_OBJ "theme_obj" /** * @const WIDGET_PROP_DEFAULT_THEME_OBJ - * 缺省的主题对象。 + * 缺省的窗体样式对象。 */ #define WIDGET_PROP_DEFAULT_THEME_OBJ "default_theme_obj" diff --git a/src/base/window.h b/src/base/window.h index 4f5ae64c8..8881f9569 100644 --- a/src/base/window.h +++ b/src/base/window.h @@ -36,7 +36,7 @@ BEGIN_C_DECLS * * window\_t是[window\_base\_t](window_base_t.md)的子类控件,window\_base\_t的函数均适用于window\_t控件。 * - * 在xml中使用"window"标签创建窗口。无需指定坐标和大小,可以指定主题和动画名称。如: + * 在xml中使用"window"标签创建窗口。无需指定坐标和大小,可以指定窗体样式和动画名称。如: * * ```xml * diff --git a/src/base/window_base.h b/src/base/window_base.h index 6dfe64c77..d6da5c0ba 100644 --- a/src/base/window_base.h +++ b/src/base/window_base.h @@ -53,10 +53,10 @@ typedef struct _window_base_t { /** * @property {char*} theme * @annotation ["set_prop","get_prop","readable","persitent","design","scriptable"] - * 主题资源的名称。 - * 每个窗口都可以有独立的主题文件,如果没指定,则使用系统缺省的主题文件。 - * 主题是一个XML文件,放在assets/raw/styles目录下。 - * 请参考[主题](https://github.com/zlgopen/awtk/blob/master/docs/theme.md) + * 窗体样式资源的名称。 + * 每个窗口都可以有独立的窗体样式文件,如果没指定,则使用系统缺省的窗体样式文件。 + * 窗体样式是一个XML文件,放在assets/raw/styles目录下。 + * 请参考[窗体样式](https://github.com/zlgopen/awtk/blob/master/docs/theme.md) */ char* theme; @@ -145,10 +145,10 @@ typedef struct _window_base_t { /** * @property {theme_t*} theme_obj * @annotation ["get_prop"] - * 窗口的常量主题数据。 + * 窗口的常量窗体样式数据。 * *> - *把主题管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载主题资源的问题。 + *把窗体样式管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载窗体样式资源的问题。 */ theme_t* theme_obj; diff --git a/src/tkc/asset_info.h b/src/tkc/asset_info.h index c8ad87aae..8ea6f8b6a 100644 --- a/src/tkc/asset_info.h +++ b/src/tkc/asset_info.h @@ -57,7 +57,7 @@ typedef enum _asset_type_t { /** * @const ASSET_TYPE_STYLE - * 主题资源。 + * 窗体样式资源。 */ ASSET_TYPE_STYLE, diff --git a/src/widgets/color_tile.h b/src/widgets/color_tile.h index 101c71f7d..c1e1af779 100644 --- a/src/widgets/color_tile.h +++ b/src/widgets/color_tile.h @@ -32,7 +32,7 @@ BEGIN_C_DECLS * @annotation ["scriptable","design","widget"] * 色块控件。 * - * 用来显示一个颜色块,它通过属性而不是主题来设置颜色,方便在运行时动态改变颜色。 + * 用来显示一个颜色块,它通过属性而不是窗体样式来设置颜色,方便在运行时动态改变颜色。 * * 可以使用value属性访问背景颜色的颜色值。 * diff --git a/src/widgets/combo_box.h b/src/widgets/combo_box.h index 79352a431..26c32d081 100644 --- a/src/widgets/combo_box.h +++ b/src/widgets/combo_box.h @@ -125,7 +125,7 @@ typedef ret_t (*combo_box_custom_on_layout_combobox_popup_t)(widget_t* combobox) * * ``` * - * * 1.combobox的下拉按钮的style名称为combobox_down,可以在主题文件中设置。 + * * 1.combobox的下拉按钮的style名称为combobox_down,可以在窗体样式文件中设置。 * * ```xml * * ``` * - * * 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在主题文件中设置。 + * * 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在窗体样式文件中设置。 * * ```xml * diff --git a/src/widgets/overlay.h b/src/widgets/overlay.h index 63ccd1992..0fe7845e5 100644 --- a/src/widgets/overlay.h +++ b/src/widgets/overlay.h @@ -38,7 +38,7 @@ BEGIN_C_DECLS * * overlay\_t是[window\_base\_t](window_base_t.md)的子类控件,window\_base\_t的函数均适用于overlay\_t控件。 * - * 在xml中使用"overlay"标签创建窗口。需要指定坐标和大小,可以指定主题和动画名称。如: + * 在xml中使用"overlay"标签创建窗口。需要指定坐标和大小,可以指定窗体样式和动画名称。如: * * ```xml * diff --git a/tools/completion_gen/awtk_ui.json b/tools/completion_gen/awtk_ui.json index eb56f6c5d..868c54a2b 100644 --- a/tools/completion_gen/awtk_ui.json +++ b/tools/completion_gen/awtk_ui.json @@ -1395,7 +1395,7 @@ "props": [ { "name": "theme", - "desc": "主题资源的名称。\n每个窗口都可以有独立的主题文件,如果没指定,则使用系统缺省的主题文件。\n主题是一个XML文件,放在assets/raw/styles目录下。\n请参考[主题](https://github.com/zlgopen/awtk/blob/master/docs/theme.md)", + "desc": "窗体样式资源的名称。\n每个窗口都可以有独立的窗体样式文件,如果没指定,则使用系统缺省的窗体样式文件。\n窗体样式是一个XML文件,放在assets/raw/styles目录下。\n请参考[窗体样式](https://github.com/zlgopen/awtk/blob/master/docs/theme.md)", "type": "char*" }, { diff --git a/tools/idl_gen/README.md b/tools/idl_gen/README.md index 451d35bb4..8c9a1330c 100644 --- a/tools/idl_gen/README.md +++ b/tools/idl_gen/README.md @@ -14081,12 +14081,12 @@ "constructor": true, "scriptable": true }, - "desc": "获取缺省的主题对象。", + "desc": "获取缺省的窗体样式对象。", "name": "theme", "alias": "theme_instance", "return": { "type": "theme_t*", - "desc": "返回主题对象。" + "desc": "返回窗体样式对象。" } }, { @@ -14094,11 +14094,11 @@ { "type": "theme_t*", "name": "theme", - "desc": "主题对象。" + "desc": "窗体样式对象。" } ], "annotation": {}, - "desc": "设置缺省的主题对象。", + "desc": "设置缺省的窗体样式对象。", "name": "theme_set", "return": { "type": "ret_t", @@ -14110,17 +14110,17 @@ { "type": "const uint8_t*", "name": "data", - "desc": "主题数据。" + "desc": "窗体样式数据。" } ], "annotation": { "constructor": true }, - "desc": "创建主题对象。", + "desc": "创建窗体样式对象。", "name": "theme_create", "return": { "type": "theme_t*", - "desc": "返回主题对象。" + "desc": "返回窗体样式对象。" } }, { @@ -14128,22 +14128,22 @@ { "type": "theme_t*", "name": "theme", - "desc": "主题对象。" + "desc": "窗体样式对象。" }, { "type": "const uint8_t*", "name": "data", - "desc": "主题数据。" + "desc": "窗体样式数据。" } ], "annotation": { "constructor": true }, - "desc": "初始化主题对象。", + "desc": "初始化窗体样式对象。", "name": "theme_init", "return": { "type": "theme_t*", - "desc": "返回主题对象。" + "desc": "返回窗体样式对象。" } }, { @@ -14151,7 +14151,7 @@ { "type": "theme_t*", "name": "data", - "desc": "主题对象。" + "desc": "窗体样式对象。" }, { "type": "const char*", @@ -14174,7 +14174,7 @@ "name": "theme_find_style", "return": { "type": "theme_t*", - "desc": "返回主题对象。" + "desc": "返回窗体样式对象。" } }, { @@ -14182,11 +14182,11 @@ { "type": "theme_t*", "name": "theme", - "desc": "主题对象。" + "desc": "窗体样式对象。" } ], "annotation": {}, - "desc": "析构主题对象。", + "desc": "析构窗体样式对象。", "name": "theme_deinit", "return": { "type": "ret_t", @@ -14198,11 +14198,11 @@ { "type": "theme_t*", "name": "theme", - "desc": "主题对象。" + "desc": "窗体样式对象。" } ], "annotation": {}, - "desc": "析构并释放主题对象。", + "desc": "析构并释放窗体样式对象。", "name": "theme_destroy", "return": { "type": "ret_t", @@ -14213,7 +14213,7 @@ "events": [], "properties": [], "header": "base/theme.h", - "desc": "主题。\n\n负责管理缺省的主题数据,方便实现style\\_const。", + "desc": "窗体样式。\n\n负责管理缺省的窗体样式数据,方便实现style\\_const。", "name": "theme_t", "annotation": { "scriptable": true @@ -18216,7 +18216,7 @@ "name": "WIDGET_PROP_STATE_FOR_STYLE" }, { - "desc": "窗口主题名称。", + "desc": "窗口窗体样式名称。", "name": "WIDGET_PROP_THEME" }, { @@ -18240,11 +18240,11 @@ "name": "WIDGET_PROP_FONT_MANAGER" }, { - "desc": "窗口的主题对象。", + "desc": "窗口的窗体样式对象。", "name": "WIDGET_PROP_THEME_OBJ" }, { - "desc": "缺省的主题对象。", + "desc": "缺省的窗体样式对象。", "name": "WIDGET_PROP_DEFAULT_THEME_OBJ" }, { @@ -26914,7 +26914,7 @@ "name": "ASSET_TYPE_IMAGE" }, { - "desc": "主题资源。", + "desc": "窗体样式资源。", "name": "ASSET_TYPE_STYLE" }, { @@ -41344,7 +41344,7 @@ "events": [], "properties": [], "header": "base/assets_manager.h", - "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```\nassets/{theme}/raw/\nfonts 字体\nimages 图片\nx1 普通密度屏幕的图片。\nx2 2倍密度屏幕的图片。\nx3 3倍密度屏幕的图片。\nxx 密度无关的图片。\nstrings 需要翻译的字符串。\nstyles 主题数据。\nui UI描述数据。\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```\nassets/{theme}/raw/\nfonts 字体\nimages 图片\nx1 普通密度屏幕的图片。\nx2 2倍密度屏幕的图片。\nx3 3倍密度屏幕的图片。\nxx 密度无关的图片。\nstrings 需要翻译的字符串。\nstyles 窗体样式数据。\nui UI描述数据。\n```", "name": "assets_manager_t", "parent": "emitter_t", "annotation": { @@ -42791,7 +42791,7 @@ "events": [], "properties": [], "header": "base/style_const.h", - "desc": "只读的style,从theme\\_t中获取数据。\n\ntools/theme_gen用于把XML的主题数据转换成常量数据。", + "desc": "只读的style,从theme\\_t中获取数据。\n\ntools/theme_gen用于把XML的窗体样式数据转换成常量数据。", "name": "style_const_t", "parent": "style_t", "level": 2 @@ -43546,7 +43546,7 @@ "properties": [ { "name": "theme", - "desc": "主题资源的名称。\n每个窗口都可以有独立的主题文件,如果没指定,则使用系统缺省的主题文件。\n主题是一个XML文件,放在assets/raw/styles目录下。\n请参考[主题](https://github.com/zlgopen/awtk/blob/master/docs/theme.md)", + "desc": "窗体样式资源的名称。\n每个窗口都可以有独立的窗体样式文件,如果没指定,则使用系统缺省的窗体样式文件。\n窗体样式是一个XML文件,放在assets/raw/styles目录下。\n请参考[窗体样式](https://github.com/zlgopen/awtk/blob/master/docs/theme.md)", "type": "char*", "annotation": { "set_prop": true, @@ -43620,7 +43620,7 @@ }, { "name": "theme_obj", - "desc": "窗口的常量主题数据。\n\n>\n把主题管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载主题资源的问题。", + "desc": "窗口的常量窗体样式数据。\n\n>\n把窗体样式管理器对象与窗口关联起来,是为了解决UI设计器与被设计的窗口需要从不同的位置加载窗体样式资源的问题。", "type": "theme_t*", "annotation": { "get_prop": true @@ -55721,7 +55721,7 @@ } ], "header": "widgets/color_tile.h", - "desc": "色块控件。\n\n用来显示一个颜色块,它通过属性而不是主题来设置颜色,方便在运行时动态改变颜色。\n\n可以使用value属性访问背景颜色的颜色值。\n\ncolor\\_tile\\_t是[widget\\_t](widget_t.md)的子类控件,widget\\_t的函数均适用于color\\_tile\\_t控件。\n\n在xml中使用\"color_tile\"标签创建色块控件。如:\n\n```xml\n\n```\n\n> 更多用法请参考:\n[color_tile](https://github.com/zlgopen/awtk/blob/master/design/default/ui/color_picker_rgb.xml)\n\n在c代码中使用函数color_tile\\_create创建色块控件。如:\n\n```c\nwidget_t* color_tile = color_tile_create(win, 10, 10, 128, 30);\ncolor_tile_set_bg_color(color_tile, \"red\");\n```\n> 创建之后,用color\\_tile\\_set\\_bg\\_color设置背景颜色。", + "desc": "色块控件。\n\n用来显示一个颜色块,它通过属性而不是窗体样式来设置颜色,方便在运行时动态改变颜色。\n\n可以使用value属性访问背景颜色的颜色值。\n\ncolor\\_tile\\_t是[widget\\_t](widget_t.md)的子类控件,widget\\_t的函数均适用于color\\_tile\\_t控件。\n\n在xml中使用\"color_tile\"标签创建色块控件。如:\n\n```xml\n\n```\n\n> 更多用法请参考:\n[color_tile](https://github.com/zlgopen/awtk/blob/master/design/default/ui/color_picker_rgb.xml)\n\n在c代码中使用函数color_tile\\_create创建色块控件。如:\n\n```c\nwidget_t* color_tile = color_tile_create(win, 10, 10, 128, 30);\ncolor_tile_set_bg_color(color_tile, \"red\");\n```\n> 创建之后,用color\\_tile\\_set\\_bg\\_color设置背景颜色。", "name": "color_tile_t", "parent": "widget_t", "annotation": { @@ -59520,7 +59520,7 @@ "static": true, "scriptable": true }, - "desc": "显示『短暂提示信息』对话框。\n\n主题由dialog_toast.xml文件决定。", + "desc": "显示『短暂提示信息』对话框。\n\n窗体样式由dialog_toast.xml文件决定。", "name": "dialog_toast", "return": { "type": "ret_t", @@ -59544,7 +59544,7 @@ "static": true, "scriptable": true }, - "desc": "显示『提示信息』对话框。\n\n主题由dialog_info.xml文件决定。", + "desc": "显示『提示信息』对话框。\n\n窗体样式由dialog_info.xml文件决定。", "name": "dialog_info", "return": { "type": "ret_t", @@ -59568,7 +59568,7 @@ "static": true, "scriptable": true }, - "desc": "显示『警告』对话框。\n\n主题由dialog_warn.xml文件决定。", + "desc": "显示『警告』对话框。\n\n窗体样式由dialog_warn.xml文件决定。", "name": "dialog_warn", "return": { "type": "ret_t", @@ -59592,7 +59592,7 @@ "static": true, "scriptable": true }, - "desc": "显示『确认』对话框。\n\n主题由dialog_confirm.xml文件决定。", + "desc": "显示『确认』对话框。\n\n窗体样式由dialog_confirm.xml文件决定。", "name": "dialog_confirm", "return": { "type": "ret_t", @@ -60645,7 +60645,7 @@ } ], "header": "base/window.h", - "desc": "窗口。\n\n缺省的应用程序窗口,占用除system\\_bar\\_t之外的整个区域,请不要修改它的位置和大小(除非你清楚后果)。\n\nwindow\\_t是[window\\_base\\_t](window_base_t.md)的子类控件,window\\_base\\_t的函数均适用于window\\_t控件。\n\n在xml中使用\"window\"标签创建窗口。无需指定坐标和大小,可以指定主题和动画名称。如:\n\n```xml\n\n...\n\n```\n\n>\n更多用法请参考:[window.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/)\n\n在c代码中使用函数window\\_create创建窗口。如:\n\n```c\nwidget_t* window = window_create(NULL, 0, 0, 0, 0);\n```\n\n> 无需指定父控件、坐标和大小,使用0即可。\n\n> 完整示例请参考:[window\ndemo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/)\n\n可用通过style来设置窗口的风格,如背景颜色或图片等。如:\n\n```xml\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L0)", + "desc": "窗口。\n\n缺省的应用程序窗口,占用除system\\_bar\\_t之外的整个区域,请不要修改它的位置和大小(除非你清楚后果)。\n\nwindow\\_t是[window\\_base\\_t](window_base_t.md)的子类控件,window\\_base\\_t的函数均适用于window\\_t控件。\n\n在xml中使用\"window\"标签创建窗口。无需指定坐标和大小,可以指定窗体样式和动画名称。如:\n\n```xml\n\n...\n\n```\n\n>\n更多用法请参考:[window.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/)\n\n在c代码中使用函数window\\_create创建窗口。如:\n\n```c\nwidget_t* window = window_create(NULL, 0, 0, 0, 0);\n```\n\n> 无需指定父控件、坐标和大小,使用0即可。\n\n> 完整示例请参考:[window\ndemo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/)\n\n可用通过style来设置窗口的风格,如背景颜色或图片等。如:\n\n```xml\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L0)", "name": "window_t", "parent": "window_base_t", "annotation": { @@ -63182,7 +63182,7 @@ } ], "header": "widgets/combo_box.h", - "desc": "下拉列表控件。\n\n点击右边的按钮,可弹出一个下拉列表,从中选择一项作为当前的值。\n\ncombo\\_box\\_t是[edit\\_t](edit_t.md)的子类控件,edit\\_t的函数均适用于combo\\_box\\_t控件。\n\n在xml中使用\"combo_box\"标签创建下拉列表控件。\n\n列表选项可以直接写在\"options\"属性中。如:\n\n```xml\n\n```\n\n列表选项也可以放在独立的窗口中,用属性\"open_window\"指定窗口的名称。如:\n\n```xml\n\n```\n\nlanguage.xml:\n\n```xml\n\n\n\n\n\n\n\n\n\n```\n\n> 更多用法请参考:[combo_box.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/combo_box.xml)\n\n\n\n如果在文本比较长时,希望在获得焦点时文本自动滚动,可以放入一个hscroll_label为子控件,并命名为\"value\"。如:\n\n```xml\n\n\n\n```\n\n* 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在主题文件中设置。\n\n```xml\n\n\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L422)", + "desc": "下拉列表控件。\n\n点击右边的按钮,可弹出一个下拉列表,从中选择一项作为当前的值。\n\ncombo\\_box\\_t是[edit\\_t](edit_t.md)的子类控件,edit\\_t的函数均适用于combo\\_box\\_t控件。\n\n在xml中使用\"combo_box\"标签创建下拉列表控件。\n\n列表选项可以直接写在\"options\"属性中。如:\n\n```xml\n\n```\n\n列表选项也可以放在独立的窗口中,用属性\"open_window\"指定窗口的名称。如:\n\n```xml\n\n```\n\nlanguage.xml:\n\n```xml\n\n\n\n\n\n\n\n\n\n```\n\n> 更多用法请参考:[combo_box.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/combo_box.xml)\n\n\n\n如果在文本比较长时,希望在获得焦点时文本自动滚动,可以放入一个hscroll_label为子控件,并命名为\"value\"。如:\n\n```xml\n\n\n\n```\n\n* 2.combobox的弹出popup窗口的style名称为combobox_popup,可以在窗体样式文件中设置。\n\n```xml\n\n\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L422)", "name": "combo_box_t", "parent": "edit_t", "annotation": { @@ -63442,7 +63442,7 @@ } ], "header": "widgets/overlay.h", - "desc": "overlay窗口。\n\noverlay窗口有点类似于非模态的dialog,但是它位置和大小是完全自由的,窗口管理器不会对它做任何限制。\n\n如果overlay窗口有透明或半透效果,则不支持窗口动画,但可以通过移动窗口位置来实现类似动画的效果。\n\noverlay\\_t是[window\\_base\\_t](window_base_t.md)的子类控件,window\\_base\\_t的函数均适用于overlay\\_t控件。\n\n在xml中使用\"overlay\"标签创建窗口。需要指定坐标和大小,可以指定主题和动画名称。如:\n\n```xml\n\n...\n\n```\n\n>\n更多用法请参考:[overlay.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/)\n\n在c代码中使用函数overlay\\_create创建窗口。如:\n\n```c\nwidget_t* overlay = overlay_create(NULL, 100, 100, 200, 300);\n```\n\n> 完整示例请参考:[overlay\ndemo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/)\n\n可用通过style来设置窗口的风格,如背景颜色或图片等。如:\n\n```xml\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L0)", + "desc": "overlay窗口。\n\noverlay窗口有点类似于非模态的dialog,但是它位置和大小是完全自由的,窗口管理器不会对它做任何限制。\n\n如果overlay窗口有透明或半透效果,则不支持窗口动画,但可以通过移动窗口位置来实现类似动画的效果。\n\noverlay\\_t是[window\\_base\\_t](window_base_t.md)的子类控件,window\\_base\\_t的函数均适用于overlay\\_t控件。\n\n在xml中使用\"overlay\"标签创建窗口。需要指定坐标和大小,可以指定窗体样式和动画名称。如:\n\n```xml\n\n...\n\n```\n\n>\n更多用法请参考:[overlay.xml](https://github.com/zlgopen/awtk/blob/master/design/default/ui/)\n\n在c代码中使用函数overlay\\_create创建窗口。如:\n\n```c\nwidget_t* overlay = overlay_create(NULL, 100, 100, 200, 300);\n```\n\n> 完整示例请参考:[overlay\ndemo](https://github.com/zlgopen/awtk-c-demos/blob/master/demos/)\n\n可用通过style来设置窗口的风格,如背景颜色或图片等。如:\n\n```xml\n\n```\n\n> 更多用法请参考:[theme\ndefault](https://github.com/zlgopen/awtk/blob/master/design/default/styles/default.xml#L0)", "name": "overlay_t", "parent": "window_base_t", "annotation": { diff --git a/tools/theme_gen/README.md b/tools/theme_gen/README.md index c7dfb4c97..4a2fc6e43 100644 --- a/tools/theme_gen/README.md +++ b/tools/theme_gen/README.md @@ -1,6 +1,6 @@ -## 主题生成工具 +## 窗体样式生成工具 -负责把XML格式的主题数据转换成二进制的主题数据。 +负责把XML格式的窗体样式数据转换成二进制的窗体样式数据。 ### 用法说明: @@ -8,7 +8,7 @@ ./bin/themegen input output [bin] ``` -* input XML格式的主题数据文件名。 +* input XML格式的窗体样式数据文件名。 * output 输出文件名。 * bin 是否生成二进制格式(目标平台有文件系统时使用),缺省生成C语言常量数组。