# dialog_highlighter_t
# 概述
对话框高亮策略。
高亮策略的基本思路是对背景进行处理,比如将背景变暗或变模糊。
# 函数
函数名称 | 说明 |
---|---|
dialog_highlighter_create | 创建对话框高亮策略对象。 |
dialog_highlighter_destroy | 销毁对话框高亮策略对象。 |
dialog_highlighter_draw | 绘制背景。 |
dialog_highlighter_draw_mask | 绘制背景高亮部分。 |
dialog_highlighter_get_alpha | 获取高亮的透明度。 |
dialog_highlighter_is_dynamic | 是否是动态绘制(方便外层优化)。 |
dialog_highlighter_prepare | 初始化。在绘制完背景,在截图前调用。 |
dialog_highlighter_prepare_ex | 初始化。在绘制完背景,在截图前调用。 |
dialog_highlighter_set_bg | 设置背景图片。 |
dialog_highlighter_set_bg_clip_rect | 设置背景图片的显示裁剪区。 |
dialog_highlighter_set_system_bar_alpha | 设置 sytem_bar 的高亮透明值。 |
dialog_highlighter_set_win | 设置底层窗口。 |
dialog_highlighter_system_bar_bottom_append_clip_rect | 增加底部 system_bar 的显示裁剪区 |
dialog_highlighter_system_bar_top_append_clip_rect | 增加顶部 system_bar 的显示裁剪区 |
# 属性
属性名称 | 类型 | 说明 |
---|---|---|
canvas | canvas_t* | 画布。 |
clip_rect | rect_t | 截图的显示裁减区 |
dialog | widget_t* | 对应的对话框。 |
img | bitmap_t | 底层窗口的截图。 |
used_by_others | bool_t | 是否给了别的窗口使用。 |
win | widget_t* | 底层窗口。 |
# dialog_highlighter_create 函数
- 函数功能:
创建对话框高亮策略对象。
供子类构造函数用。
- 函数原型:
dialog_highlighter_t* dialog_highlighter_create (const dialog_highlighter_vtable_t* vt);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | dialog_highlighter_t* | 返回对话框高亮策略对象 |
vt | const dialog_highlighter_vtable_t* | 虚表对象。 |
# dialog_highlighter_destroy 函数
- 函数功能:
销毁对话框高亮策略对象。
- 函数原型:
ret_t dialog_highlighter_destroy (dialog_highlighter_t* h);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
# dialog_highlighter_draw 函数
- 函数功能:
绘制背景。
- 函数原型:
ret_t dialog_highlighter_draw (dialog_highlighter_t* h, float_t percent);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
percent | float_t | 动画进度(0-1),1表示打开已经完成。 |
# dialog_highlighter_draw_mask 函数
- 函数功能:
绘制背景高亮部分。
- 函数原型:
ret_t dialog_highlighter_draw_mask (dialog_highlighter_t* h, canvas_t* c, float_t percent);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
c | canvas_t* | 画布。 |
percent | float_t | 高亮的百分比。 |
# dialog_highlighter_get_alpha 函数
- 函数功能:
获取高亮的透明度。
- 函数原型:
uint8_t dialog_highlighter_get_alpha (dialog_highlighter_t* h, float_t percent);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | uint8_t | 返回透明度。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
percent | float_t | 高亮的百分比。 |
# dialog_highlighter_is_dynamic 函数
- 函数功能:
是否是动态绘制(方便外层优化)。
- 函数原型:
bool_t dialog_highlighter_is_dynamic (dialog_highlighter_t* h);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | bool_t | 返回TRUE表示动态绘制,否则表示不是动态绘制。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
# dialog_highlighter_prepare 函数
- 函数功能:
初始化。在绘制完背景,在截图前调用。
- 函数原型:
ret_t dialog_highlighter_prepare (dialog_highlighter_t* h, canvas_t* c);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
c | canvas_t* | 画布。 |
# dialog_highlighter_prepare_ex 函数
- 函数功能:
初始化。在绘制完背景,在截图前调用。
- 函数原型:
ret_t dialog_highlighter_prepare_ex (dialog_highlighter_t* h, canvas_t* c, canvas_t* canvas_offline);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
c | canvas_t* | 画布。 |
canvas_offline | canvas_t* | 离线画布。 |
# dialog_highlighter_set_bg 函数
- 函数功能:
设置背景图片。
- 函数原型:
ret_t dialog_highlighter_set_bg (dialog_highlighter_t* h, bitmap_t* img);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
img | bitmap_t* | 背景截图。 |
# dialog_highlighter_set_bg_clip_rect 函数
- 函数功能:
设置背景图片的显示裁剪区。
- 函数原型:
ret_t dialog_highlighter_set_bg_clip_rect (dialog_highlighter_t* h, rect_t* clip_rect);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
clip_rect | rect_t* | 背景显示裁剪区。 |
# dialog_highlighter_set_system_bar_alpha 函数
- 函数功能:
设置 sytem_bar 的高亮透明值。
- 函数原型:
ret_t dialog_highlighter_set_system_bar_alpha (dialog_highlighter_t* h, uint8_t alpha);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
alpha | uint8_t | 设置 sytem_bar 的高亮透明值。 |
# dialog_highlighter_set_win 函数
- 函数功能:
设置底层窗口。
- 函数原型:
ret_t dialog_highlighter_set_win (dialog_highlighter_t* h, widget_t* win);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
win | widget_t* | 底层窗口。 |
# dialog_highlighter_system_bar_bottom_append_clip_rect 函数
- 函数功能:
增加底部 system_bar 的显示裁剪区
- 函数原型:
ret_t dialog_highlighter_system_bar_bottom_append_clip_rect (dialog_highlighter_t* h, rect_t* rect);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
rect | rect_t* | 裁剪区域 |
# dialog_highlighter_system_bar_top_append_clip_rect 函数
- 函数功能:
增加顶部 system_bar 的显示裁剪区
- 函数原型:
ret_t dialog_highlighter_system_bar_top_append_clip_rect (dialog_highlighter_t* h, rect_t* rect);
- 参数说明:
参数 | 类型 | 说明 |
---|---|---|
返回值 | ret_t | 返回RET_OK表示成功,否则表示失败。 |
h | dialog_highlighter_t* | 对话框高亮策略对象。 |
rect | rect_t* | 裁剪区域 |
# canvas 属性
画布。
- 类型:canvas_t*
# clip_rect 属性
截图的显示裁减区
- 类型:rect_t
# dialog 属性
对应的对话框。
- 类型:widget_t*
# img 属性
底层窗口的截图。
- 类型:bitmap_t
# used_by_others 属性
是否给了别的窗口使用。
- 类型:bool_t
# win 属性
底层窗口。
- 类型:widget_t*