lv_group.h
Typedefs
- 
typedef void (*lv_group_focus_cb_t)(lv_group_t*)
- 
typedef void (*lv_group_edge_cb_t)(lv_group_t*, bool)
Enums
- 
enum lv_key_t
- Predefined keys to control which Widget has focus via lv_group_send(group, c) - Values: - 
enumerator LV_KEY_UP
 - 
enumerator LV_KEY_DOWN
 - 
enumerator LV_KEY_RIGHT
 - 
enumerator LV_KEY_LEFT
 - 
enumerator LV_KEY_ESC
 - 
enumerator LV_KEY_DEL
 - 
enumerator LV_KEY_BACKSPACE
 - 
enumerator LV_KEY_ENTER
 - 
enumerator LV_KEY_NEXT
 - 
enumerator LV_KEY_PREV
 - 
enumerator LV_KEY_HOME
 - 
enumerator LV_KEY_END
 
- 
enumerator LV_KEY_UP
Functions
- 
lv_group_t *lv_group_create(void)
- Create new Widget group. - 返回:
- pointer to the new Widget group 
 
- 
void lv_group_delete(lv_group_t *group)
- Delete group object. - 参数:
- group -- pointer to a group 
 
- 
void lv_group_set_default(lv_group_t *group)
- Set default group. New Widgets will be added to this group if it's enabled in their class with - add_to_def_group = true.- 参数:
- group -- pointer to a group (can be - NULL)
 
- 
lv_group_t *lv_group_get_default(void)
- Get default group. - 返回:
- pointer to the default group 
 
- 
void lv_group_add_obj(lv_group_t *group, lv_obj_t *obj)
- Add an Widget to group. - 参数:
- group -- pointer to a group 
- obj -- pointer to a Widget to add 
 
 
- 
void lv_group_swap_obj(lv_obj_t *obj1, lv_obj_t *obj2)
- Swap 2 Widgets in group. Widgets must be in the same group. - 参数:
- obj1 -- pointer to a Widget 
- obj2 -- pointer to another Widget 
 
 
- 
void lv_group_remove_obj(lv_obj_t *obj)
- Remove a Widget from its group. - 参数:
- obj -- pointer to Widget to remove 
 
- 
void lv_group_remove_all_objs(lv_group_t *group)
- Remove all Widgets from a group. - 参数:
- group -- pointer to a group 
 
- 
void lv_group_focus_obj(lv_obj_t *obj)
- Focus on a Widget (defocus the current). - 参数:
- obj -- pointer to Widget to focus on 
 
- 
void lv_group_focus_next(lv_group_t *group)
- Focus on next Widget in a group (defocus the current). - 参数:
- group -- pointer to a group 
 
- 
void lv_group_focus_prev(lv_group_t *group)
- Focus on previous Widget in a group (defocus the current). - 参数:
- group -- pointer to a group 
 
- 
void lv_group_focus_freeze(lv_group_t *group, bool en)
- Do not allow changing focus from current Widget. - 参数:
- group -- pointer to a group 
- en -- true: freeze, false: release freezing (normal mode) 
 
 
- 
lv_result_t lv_group_send_data(lv_group_t *group, uint32_t c)
- Send a control character to Widget that has focus in a group. - 参数:
- group -- pointer to a group 
- c -- a character (use LV_KEY_.. to navigate) 
 
- 返回:
- result of Widget with focus in group. 
 
- 
void lv_group_set_focus_cb(lv_group_t *group, lv_group_focus_cb_t focus_cb)
- Set a function for a group which will be called when a new Widget has focus. - 参数:
- group -- pointer to a group 
- focus_cb -- the call back function or NULL if unused 
 
 
- 
void lv_group_set_edge_cb(lv_group_t *group, lv_group_edge_cb_t edge_cb)
- Set a function for a group which will be called when a focus edge is reached - 参数:
- group -- pointer to a group 
- edge_cb -- the call back function or NULL if unused 
 
 
- 
void lv_group_set_refocus_policy(lv_group_t *group, lv_group_refocus_policy_t policy)
- Set whether the next or previous Widget in a group gets focus when Widget that has focus is deleted. - 参数:
- group -- pointer to a group 
- policy -- new refocus policy enum 
 
 
- 
void lv_group_set_editing(lv_group_t *group, bool edit)
- Manually set the current mode (edit or navigate). - 参数:
- group -- pointer to group 
- edit -- true: edit mode; false: navigate mode 
 
 
- 
void lv_group_set_wrap(lv_group_t *group, bool en)
- Set whether moving focus to next/previous Widget will allow wrapping from first->last or last->first Widget. - 参数:
- group -- pointer to group 
- en -- true: wrapping enabled; false: wrapping disabled 
 
 
- 
lv_obj_t *lv_group_get_focused(const lv_group_t *group)
- Get Widget that has focus, or NULL if there isn't one. - 参数:
- group -- pointer to a group 
- 返回:
- pointer to Widget with focus 
 
- 
lv_group_focus_cb_t lv_group_get_focus_cb(const lv_group_t *group)
- Get focus callback function of a group. - 参数:
- group -- pointer to a group 
- 返回:
- the call back function or NULL if not set 
 
- 
lv_group_edge_cb_t lv_group_get_edge_cb(const lv_group_t *group)
- Get edge callback function of a group. - 参数:
- group -- pointer to a group 
- 返回:
- the call back function or NULL if not set 
 
- 
bool lv_group_get_editing(const lv_group_t *group)
- Get current mode (edit or navigate). - 参数:
- group -- pointer to group 
- 返回:
- true: edit mode; false: navigate mode 
 
- 
bool lv_group_get_wrap(lv_group_t *group)
- Get whether moving focus to next/previous Widget will allow wrapping from first->last or last->first Widget. - 参数:
- group -- pointer to group 
 
- 
uint32_t lv_group_get_obj_count(lv_group_t *group)
- Get number of Widgets in group. - 参数:
- group -- pointer to a group 
- 返回:
- number of Widgets in the group 
 
- 
lv_obj_t *lv_group_get_obj_by_index(lv_group_t *group, uint32_t index)
- Get nth Widget within group. - 参数:
- group -- pointer to a group 
- index -- index of Widget within the group 
 
- 返回:
- pointer to Widget 
 
- 
uint32_t lv_group_get_count(void)
- Get the number of groups. - 返回:
- number of groups 
 
- 
lv_group_t *lv_group_by_index(uint32_t index)
- Get a group by its index. - 参数:
- index -- index of the group 
- 返回:
- pointer to the group