幕布容器


幕布容器控件(curtainvew),可容纳多个幕布控件,在创建的幕布控件上可以放置应用程序相关的信息,例如应用程序菜单或应用程序等信息。幕布容器控件(curtainvew)可以根据需要进行扩展,并可以根据需要进行自定义。如下图所示,幕布容器控件(curtainvew)由五个幕布组成,分别在上/下/右/左/中五个方向进行排列。



用法

创建幕布容器控件

使用 gui_curtainview_create(parent, filename, x, y, w, h) 函数创建幕布容器控件,这是一个容器控件,可以容纳幕布控件。

回调函数

当幕布容器控件中的幕布全部关闭时,可以使用 gui_curtainview_set_done_cb (this, cb) 此函数来实现某些回调事件。

示例

请参考以下示例代码:

curtain

API

Enums

enum T_GUI_CURTAIN_ENUM

Values:

enumerator CURTAIN_UNDEFINED
enumerator CURTAIN_UP
enumerator CURTAIN_DOWN
enumerator CURTAIN_LEFT
enumerator CURTAIN_RIGHT
enumerator CURTAIN_MIDDLE

Functions

gui_curtainview_t *gui_curtainview_create(void *parent, const char *name, int16_t x, int16_t y, int16_t w, int16_t h)

Create a curtainview widget, which can nest curtains.

参数:
  • parent – the father widget it nested in.

  • filename – this curtainview widget’s name.

  • x – the X-axis coordinate relative to parent widget.

  • y – the Y-axis coordinate relative to parent widget.

  • w – width.

  • h – height.

返回:

return the widget object pointer.

void gui_curtainview_set_done_cb(gui_curtainview_t *_this, void (*cb)(gui_curtainview_t *_this))

Curtain expanding completed event.

参数:
  • this – widget pointer

  • cb – event callback

struct gui_curtain_ext_id_t
#include <gui_curtainview.h>

Public Members

int32_t x
int32_t y
struct gui_curtain_bool_t
#include <gui_curtainview.h>

Public Members

bool up
bool down
bool left
bool right
struct gui_curtain_float_t
#include <gui_curtainview.h>

Public Members

float up
float down
float left
float right
struct gui_curtainview_t
#include <gui_curtainview.h>

curtainview structure

Public Members

gui_obj_t base
uint16_t curtain_cnt
uint16_t style
T_GUI_CURTAIN_ENUM cur_curtain
gui_curtain_float_t scopes
gui_curtain_bool_t orientations
float scope_up
float scope_down
float scope_left
float scope_right
bool down_flag
bool left_flag
bool init_flag
bool release_flag
int spring_value
void (*done_cb)(struct gui_curtainview *_this)
uint16_t has_center_curtain
uint16_t has_left_curtain
uint16_t has_right_curtain
uint16_t has_up_curtain
uint16_t has_down_curtain
uint16_t cur_curtain_flag
uint16_t middle_flag
uint16_t middle_flag_left
uint16_t middle_flag_up
uint16_t up_flag
uint8_t checksum
int release_y
int release_x