lv_obj_private.h

API reference for lv_obj_private.h

Report on GitHub
See Also: Public APIThis is the private implementation. See the public header for the stable interface.lv_obj.h

Functions

lv_obj_allocate_spec_attr

Allocate special data for an object if not allocated yet.

 
lv_obj_spec_attr_t * lv_obj_allocate_spec_attr(lv_obj_t *obj)
Parameters
NameTypeDescription
objlv_obj_t *pointer to an object

Returns: lv_obj_spec_attr_t * — the spec_attr created or NULL if something went wrong

lv_obj_add_child

 
lv_result_t lv_obj_add_child(lv_obj_t *parent, lv_obj_t *child)
Parameters
NameType
parentlv_obj_t *
childlv_obj_t *

lv_obj_remove_child

 
void lv_obj_remove_child(lv_obj_t *parent, lv_obj_t *child)
Parameters
NameType
parentlv_obj_t *
childlv_obj_t *

lv_obj_invalidate_expand_blur

Expand the display's invalidated areas to cover blur objects whose background changed. It's called once per frame and invalidates the full extent of every blur object that overlaps an invalidated area, repeating the walk until a pass adds no new areas to cover transitive blur-over-blur cases. Does nothing while no widget has blur (blur_obj_cnt in lv_global_t is zero).

 
void lv_obj_invalidate_expand_blur(lv_display_t *disp)
Parameters
NameTypeDescription
displv_display_t *pointer to a display

Structs

struct

_lv_obj_spec_attr_t

Special, rarely used attributes. They are allocated automatically if any elements is set.

MemberTypeDescription
childrenlv_obj_t **Store the pointer of the children in an array.
group_plv_group_t *
event_listlv_event_list_t
nameconst char *Pointer to the name
scrolllv_point_tThe current X/Y scroll offset
ext_click_padint32_tExtra click padding in all direction
ext_draw_sizeint32_tEXTend the size in every direction for drawing.
child_cntuint16_tNumber of children
scrollbar_modeuint16_tHow to display scrollbars, see lv_scrollbar_mode_t
scroll_snap_xuint16_tWhere to align the snappable children horizontally, see lv_scroll_snap_t
scroll_snap_yuint16_tWhere to align the snappable children vertically
scroll_diruint16_tThe allowed scroll direction(s), see lv_dir_t
layer_typeuint16_tCache the layer type here. Element of lv_intermediate_layer_type_t
name_staticuint16_t1: name was not dynamically allocated
user_flagsuint16_tStore custom flags
struct

_lv_obj_t

MemberTypeDescription
ext_datalv_ext_data_t
class_pconst lv_obj_class_t *
parentlv_obj_t *
spec_attrlv_obj_spec_attr_t *
styleslv_obj_style_t *
style_main_prop_is_setuint32_t
style_other_prop_is_setuint32_t
user_datavoid *
idvoid *
coordslv_area_t
hiddenuint32_tMake the object hidden. (Like it wasn't there at all)
clickableuint32_tMake the object clickable by the input devices
click_focusableuint32_tAdd focused state to the object when clicked
checkableuint32_tToggle checked state when the object is clicked
scrollableuint32_tMake the object scrollable
scroll_elasticuint32_tAllow scrolling inside but with slower speed
scroll_momentumuint32_tMake the object scroll further when "thrown"
scroll_oneuint32_tAllow scrolling only one snappable child
scroll_chain_horuint32_tAllow propagating the horizontal scroll to a parent
scroll_chain_veruint32_tAllow propagating the vertical scroll to a parent
scroll_on_focusuint32_tAutomatically scroll object to make it visible when focused
scroll_with_arrowuint32_tAllow scrolling the focused object with arrow keys
snappableuint32_tIf scroll snap is enabled on the parent it can snap to this object
press_lockuint32_tKeep the object pressed even if the press slid from the object
event_bubbleuint32_tPropagate the events to the parent too
gesture_bubbleuint32_tPropagate the gestures to the parent
adv_hittestuint32_tAllow performing more accurate hit (click) test
ignore_layoutuint32_tMake the object not positioned by the layouts
floatinguint32_tDo not scroll the object when the parent scrolls and ignore layout
send_draw_task_eventsuint32_tSend LV_EVENT_DRAW_TASK_ADDED events
overflow_visibleuint32_tDo not clip the children to the parent's ext draw size
event_trickleuint32_tPropagate the events to the children too
state_trickleuint32_tPropagate the states to the children too
radio_buttonuint32_tAllow only one RADIO_BUTTON sibling to be checked
stateuint16_t
layout_invuint16_t
readjust_scroll_after_layoutuint16_t
scr_layout_invuint16_t
skip_transuint16_t
style_cntuint16_t
h_layoutuint16_t
w_layoutuint16_t
h_ignore_sizeuint16_t
w_ignore_sizeuint16_t
is_deletinguint16_t
rendereduint16_tThe widget is rendered at least once already. It's used to skip initial animations and transitions.
has_bluruint16_tThe widget has blur or a drop shadow in its current state, so a change behind it must invalidate its full extent. It's updated by lv_obj_update_blur_status() and counted in blur_obj_cnt in lv_global_t.

Typedefs

lv_obj_spec_attr_t

 
typedef struct _lv_obj_spec_attr_t lv_obj_spec_attr_t

Special, rarely used attributes. They are allocated automatically if any elements is set.

Dependencies

Last updated on

On this page