lv_obj_style.h

API reference for lv_obj_style.h

Report on GitHub
See Also: Private HeaderThis header has a companion private implementation with internal data structures.lv_obj_style_private.h

Functions

lv_obj_style_set_disabled

Temporary disable a style for a selector. It will look like is the style wasn't added

 
void lv_obj_style_set_disabled(lv_obj_t *obj, const lv_style_t *style, lv_style_selector_t selector, bool dis)
Parameters
NameTypeDescription
objlv_obj_t *pointer to an object
styleconst lv_style_t *pointer to a style
selectorlv_style_selector_tthe selector of a style (e.g. LV_STATE_PRESSED | LV_PART_KNOB)
disbooltrue: disable the style, false: enable the style

lv_obj_set_local_style_prop

Set local style property on an object's part and state.

 
void lv_obj_set_local_style_prop(lv_obj_t *obj, lv_style_prop_t prop, lv_style_value_t value, lv_style_selector_t selector)
Parameters
NameTypeDescription
objlv_obj_t *pointer to an object
proplv_style_prop_tthe property
valuelv_style_value_tvalue of the property. The correct element should be set according to the type of the property
selectorlv_style_selector_tOR-ed value of parts and state for which the style should be set

lv_obj_set_style_pad_all

 
static void lv_obj_set_style_pad_all(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_pad_hor

 
static void lv_obj_set_style_pad_hor(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_pad_ver

 
static void lv_obj_set_style_pad_ver(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_margin_all

 
static void lv_obj_set_style_margin_all(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_margin_hor

 
static void lv_obj_set_style_margin_hor(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_margin_ver

 
static void lv_obj_set_style_margin_ver(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_pad_gap

 
static void lv_obj_set_style_pad_gap(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

lv_obj_set_style_size

 
static void lv_obj_set_style_size(lv_obj_t *obj, int32_t width, int32_t height, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
widthint32_t
heightint32_t
selectorlv_style_selector_t

lv_obj_set_style_transform_scale

 
static void lv_obj_set_style_transform_scale(lv_obj_t *obj, int32_t value, lv_style_selector_t selector)
Parameters
NameType
objlv_obj_t *
valueint32_t
selectorlv_style_selector_t

Enums

lv_state_t

Possible states of a widget. OR-ed values are possible

NameValueDescription
LV_STATE_DEFAULT0
LV_STATE_ALT1 << 0
LV_STATE_CHECKED1 << 2
LV_STATE_FOCUSED1 << 3
LV_STATE_FOCUS_KEY1 << 4
LV_STATE_EDITED1 << 5
LV_STATE_HOVERED1 << 6
LV_STATE_PRESSED1 << 7
LV_STATE_SCROLLED1 << 8
LV_STATE_DISABLED1 << 9
LV_STATE_USER_11 << 12
LV_STATE_USER_21 << 13
LV_STATE_USER_31 << 14
LV_STATE_USER_41 << 15
LV_STATE_ANY0xFFFFSpecial value can be used in some functions to target all states
Used by 14 functions
  • lv_obj_add_state — param state
  • lv_obj_remove_state — param state
  • lv_obj_set_state — param state
  • lv_obj_has_state — param state
  • lv_obj_style_create_transition — param prev_state
  • lv_obj_style_create_transition — param new_state
  • lv_obj_style_state_compare — param state1
  • lv_obj_style_state_compare — param state2
  • lv_obj_bind_state_if_eq — param state
  • lv_obj_bind_state_if_not_eq — param state
  • lv_obj_bind_state_if_gt — param state
  • lv_obj_bind_state_if_ge — param state
  • lv_obj_bind_state_if_lt — param state
  • lv_obj_bind_state_if_le — param state

lv_part_t

The possible parts of widgets. The parts can be considered as the internal building block of the widgets. E.g. slider = background + indicator + knob Not all parts are used by every widget

NameValueDescription
LV_PART_MAIN0x000000A background like rectangle
LV_PART_SCROLLBAR0x010000The scrollbar(s)
LV_PART_INDICATOR0x020000Indicator, e.g. for slider, bar, switch, or the tick box of the checkbox
LV_PART_KNOB0x030000Like handle to grab to adjust the value
LV_PART_SELECTED0x040000Indicate the currently selected option or section
LV_PART_ITEMS0x050000Used if the widget has multiple similar elements (e.g. table cells)
LV_PART_CURSOR0x060000Mark a specific place e.g. for text area's cursor or on a chart
LV_PART_CUSTOM_FIRST0x080000Extension point for custom widgets
LV_PART_ANY0x0F0000Special value can be used in some functions to target all parts
Used by 164 functions
  • lv_obj_init_draw_rect_dsc — param part
  • lv_obj_init_draw_label_dsc — param part
  • lv_obj_init_draw_image_dsc — param part
  • lv_obj_init_draw_line_dsc — param part
  • lv_obj_init_draw_arc_dsc — param part
  • lv_obj_init_draw_blur_dsc — param part
  • lv_obj_calculate_ext_draw_size — param part
  • lv_obj_get_style_property — param part
  • lv_obj_refresh_style — param part
  • lv_obj_get_style_prop — param part
  • lv_obj_style_apply_color_filter — param part
  • lv_obj_get_style_space_left — param part
  • lv_obj_get_style_space_right — param part
  • lv_obj_get_style_space_top — param part
  • lv_obj_get_style_space_bottom — param part
  • lv_obj_calculate_style_text_align — param part
  • lv_obj_get_style_transform_scale_x_safe — param part
  • lv_obj_get_style_transform_scale_y_safe — param part
  • lv_obj_get_style_opa_recursive — param part
  • lv_obj_style_apply_recolor — param part
  • lv_obj_get_style_recolor_recursive — param part
  • lv_obj_get_style_width — param part
  • lv_obj_get_style_min_width — param part
  • lv_obj_get_style_max_width — param part
  • lv_obj_get_style_height — param part
  • lv_obj_get_style_min_height — param part
  • lv_obj_get_style_max_height — param part
  • lv_obj_get_style_length — param part
  • lv_obj_get_style_x — param part
  • lv_obj_get_style_y — param part
  • lv_obj_get_style_align — param part
  • lv_obj_get_style_transform_width — param part
  • lv_obj_get_style_transform_height — param part
  • lv_obj_get_style_translate_x — param part
  • lv_obj_get_style_translate_y — param part
  • lv_obj_get_style_translate_radial — param part
  • lv_obj_get_style_transform_scale_x — param part
  • lv_obj_get_style_transform_scale_y — param part
  • lv_obj_get_style_transform_rotation — param part
  • lv_obj_get_style_transform_pivot_x — param part
  • lv_obj_get_style_transform_pivot_y — param part
  • lv_obj_get_style_transform_skew_x — param part
  • lv_obj_get_style_transform_skew_y — param part
  • lv_obj_get_style_pad_top — param part
  • lv_obj_get_style_pad_bottom — param part
  • lv_obj_get_style_pad_left — param part
  • lv_obj_get_style_pad_right — param part
  • lv_obj_get_style_pad_row — param part
  • lv_obj_get_style_pad_column — param part
  • lv_obj_get_style_pad_radial — param part
  • lv_obj_get_style_margin_top — param part
  • lv_obj_get_style_margin_bottom — param part
  • lv_obj_get_style_margin_left — param part
  • lv_obj_get_style_margin_right — param part
  • lv_obj_get_style_bg_color — param part
  • lv_obj_get_style_bg_color_filtered — param part
  • lv_obj_get_style_bg_opa — param part
  • lv_obj_get_style_bg_grad_color — param part
  • lv_obj_get_style_bg_grad_color_filtered — param part
  • lv_obj_get_style_bg_grad_dir — param part
  • lv_obj_get_style_bg_main_stop — param part
  • lv_obj_get_style_bg_grad_stop — param part
  • lv_obj_get_style_bg_main_opa — param part
  • lv_obj_get_style_bg_grad_opa — param part
  • lv_obj_get_style_bg_grad — param part
  • lv_obj_get_style_bg_image_src — param part
  • lv_obj_get_style_bg_image_opa — param part
  • lv_obj_get_style_bg_image_recolor — param part
  • lv_obj_get_style_bg_image_recolor_filtered — param part
  • lv_obj_get_style_bg_image_recolor_opa — param part
  • lv_obj_get_style_bg_image_tiled — param part
  • lv_obj_get_style_border_color — param part
  • lv_obj_get_style_border_color_filtered — param part
  • lv_obj_get_style_border_opa — param part
  • lv_obj_get_style_border_width — param part
  • lv_obj_get_style_border_side — param part
  • lv_obj_get_style_border_post — param part
  • lv_obj_get_style_outline_width — param part
  • lv_obj_get_style_outline_color — param part
  • lv_obj_get_style_outline_color_filtered — param part
  • lv_obj_get_style_outline_opa — param part
  • lv_obj_get_style_outline_pad — param part
  • lv_obj_get_style_shadow_width — param part
  • lv_obj_get_style_shadow_offset_x — param part
  • lv_obj_get_style_shadow_offset_y — param part
  • lv_obj_get_style_shadow_spread — param part
  • lv_obj_get_style_shadow_color — param part
  • lv_obj_get_style_shadow_color_filtered — param part
  • lv_obj_get_style_shadow_opa — param part
  • lv_obj_get_style_image_opa — param part
  • lv_obj_get_style_image_recolor — param part
  • lv_obj_get_style_image_recolor_filtered — param part
  • lv_obj_get_style_image_recolor_opa — param part
  • lv_obj_get_style_image_colorkey — param part
  • lv_obj_get_style_line_width — param part
  • lv_obj_get_style_line_dash_width — param part
  • lv_obj_get_style_line_dash_gap — param part
  • lv_obj_get_style_line_rounded — param part
  • lv_obj_get_style_line_color — param part
  • lv_obj_get_style_line_color_filtered — param part
  • lv_obj_get_style_line_opa — param part
  • lv_obj_get_style_arc_width — param part
  • lv_obj_get_style_arc_rounded — param part
  • lv_obj_get_style_arc_color — param part
  • lv_obj_get_style_arc_color_filtered — param part
  • lv_obj_get_style_arc_opa — param part
  • lv_obj_get_style_arc_image_src — param part
  • lv_obj_get_style_text_color — param part
  • lv_obj_get_style_text_color_filtered — param part
  • lv_obj_get_style_text_opa — param part
  • lv_obj_get_style_text_font — param part
  • lv_obj_get_style_text_letter_space — param part
  • lv_obj_get_style_text_line_space — param part
  • lv_obj_get_style_text_decor — param part
  • lv_obj_get_style_text_align — param part
  • lv_obj_get_style_text_outline_stroke_color — param part
  • lv_obj_get_style_text_outline_stroke_color_filtered — param part
  • lv_obj_get_style_text_outline_stroke_width — param part
  • lv_obj_get_style_text_outline_stroke_opa — param part
  • lv_obj_get_style_text_leading_trim — param part
  • lv_obj_get_style_blur_radius — param part
  • lv_obj_get_style_blur_backdrop — param part
  • lv_obj_get_style_blur_quality — param part
  • lv_obj_get_style_drop_shadow_radius — param part
  • lv_obj_get_style_drop_shadow_offset_x — param part
  • lv_obj_get_style_drop_shadow_offset_y — param part
  • lv_obj_get_style_drop_shadow_color — param part
  • lv_obj_get_style_drop_shadow_color_filtered — param part
  • lv_obj_get_style_drop_shadow_opa — param part
  • lv_obj_get_style_drop_shadow_quality — param part
  • lv_obj_get_style_radius — param part
  • lv_obj_get_style_radial_offset — param part
  • lv_obj_get_style_clip_corner — param part
  • lv_obj_get_style_opa — param part
  • lv_obj_get_style_opa_layered — param part
  • lv_obj_get_style_color_filter_dsc — param part
  • lv_obj_get_style_color_filter_opa — param part
  • lv_obj_get_style_recolor — param part
  • lv_obj_get_style_recolor_opa — param part
  • lv_obj_get_style_anim — param part
  • lv_obj_get_style_anim_duration — param part
  • lv_obj_get_style_transition — param part
  • lv_obj_get_style_blend_mode — param part
  • lv_obj_get_style_layout — param part
  • lv_obj_get_style_base_dir — param part
  • lv_obj_get_style_bitmap_mask_src — param part
  • lv_obj_get_style_rotary_sensitivity — param part
  • lv_obj_get_style_flex_flow — param part
  • lv_obj_get_style_flex_main_place — param part
  • lv_obj_get_style_flex_cross_place — param part
  • lv_obj_get_style_flex_track_place — param part
  • lv_obj_get_style_flex_grow — param part
  • lv_obj_get_style_grid_column_dsc_array — param part
  • lv_obj_get_style_grid_column_align — param part
  • lv_obj_get_style_grid_row_dsc_array — param part
  • lv_obj_get_style_grid_row_align — param part
  • lv_obj_get_style_grid_cell_column_pos — param part
  • lv_obj_get_style_grid_cell_x_align — param part
  • lv_obj_get_style_grid_cell_column_span — param part
  • lv_obj_get_style_grid_cell_row_pos — param part
  • lv_obj_get_style_grid_cell_y_align — param part
  • lv_obj_get_style_grid_cell_row_span — param part
  • lv_obj_style_create_transition — param part
  • lv_scale_section_set_style — param part

lv_style_state_cmp_t

NameDescription
LV_STYLE_STATE_CMP_SAMEThe style properties in the 2 states are identical
LV_STYLE_STATE_CMP_DIFF_REDRAWThe differences can be shown with a simple redraw
LV_STYLE_STATE_CMP_DIFF_DRAW_PADThe differences can be shown with a simple redraw
LV_STYLE_STATE_CMP_DIFF_LAYOUTThe differences can be shown with a simple redraw

Typedefs

lv_style_selector_t

 
typedef uint32_t lv_style_selector_t

A joint type for lv_part_t and lv_state_t. Example values

  • 0: means LV_PART_MAIN | LV_STATE_DEFAULT
  • LV_STATE_PRSSED
  • LV_PART_KNOB
  • LV_PART_KNOB | LV_STATE_PRESSED | LV_STATE_CHECKED
Used by 152 functions
  • lv_obj_add_style — param selector
  • lv_obj_replace_style — param selector
  • lv_obj_remove_style — param selector
  • lv_obj_remove_theme — param selector
  • lv_obj_style_set_disabled — param selector
  • lv_obj_style_get_disabled — param selector
  • lv_obj_has_style_prop — param selector
  • lv_obj_set_local_style_prop — param selector
  • lv_obj_get_local_style_prop — param selector
  • lv_obj_remove_local_style_prop — param selector
  • lv_obj_style_get_selector_state — param selector
  • lv_obj_style_get_selector_part — param selector
  • lv_obj_set_style_pad_all — param selector
  • lv_obj_set_style_pad_hor — param selector
  • lv_obj_set_style_pad_ver — param selector
  • lv_obj_set_style_margin_all — param selector
  • lv_obj_set_style_margin_hor — param selector
  • lv_obj_set_style_margin_ver — param selector
  • lv_obj_set_style_pad_gap — param selector
  • lv_obj_set_style_size — param selector
  • lv_obj_set_style_transform_scale — param selector
  • lv_obj_bind_style — param selector
  • lv_obj_bind_style_prop — param selector
  • lv_obj_set_style_width — param selector
  • lv_obj_set_style_min_width — param selector
  • lv_obj_set_style_max_width — param selector
  • lv_obj_set_style_height — param selector
  • lv_obj_set_style_min_height — param selector
  • lv_obj_set_style_max_height — param selector
  • lv_obj_set_style_length — param selector
  • lv_obj_set_style_x — param selector
  • lv_obj_set_style_y — param selector
  • lv_obj_set_style_align — param selector
  • lv_obj_set_style_transform_width — param selector
  • lv_obj_set_style_transform_height — param selector
  • lv_obj_set_style_translate_x — param selector
  • lv_obj_set_style_translate_y — param selector
  • lv_obj_set_style_translate_radial — param selector
  • lv_obj_set_style_transform_scale_x — param selector
  • lv_obj_set_style_transform_scale_y — param selector
  • lv_obj_set_style_transform_rotation — param selector
  • lv_obj_set_style_transform_pivot_x — param selector
  • lv_obj_set_style_transform_pivot_y — param selector
  • lv_obj_set_style_transform_skew_x — param selector
  • lv_obj_set_style_transform_skew_y — param selector
  • lv_obj_set_style_pad_top — param selector
  • lv_obj_set_style_pad_bottom — param selector
  • lv_obj_set_style_pad_left — param selector
  • lv_obj_set_style_pad_right — param selector
  • lv_obj_set_style_pad_row — param selector
  • lv_obj_set_style_pad_column — param selector
  • lv_obj_set_style_pad_radial — param selector
  • lv_obj_set_style_margin_top — param selector
  • lv_obj_set_style_margin_bottom — param selector
  • lv_obj_set_style_margin_left — param selector
  • lv_obj_set_style_margin_right — param selector
  • lv_obj_set_style_bg_color — param selector
  • lv_obj_set_style_bg_opa — param selector
  • lv_obj_set_style_bg_grad_color — param selector
  • lv_obj_set_style_bg_grad_dir — param selector
  • lv_obj_set_style_bg_main_stop — param selector
  • lv_obj_set_style_bg_grad_stop — param selector
  • lv_obj_set_style_bg_main_opa — param selector
  • lv_obj_set_style_bg_grad_opa — param selector
  • lv_obj_set_style_bg_grad — param selector
  • lv_obj_set_style_bg_image_src — param selector
  • lv_obj_set_style_bg_image_opa — param selector
  • lv_obj_set_style_bg_image_recolor — param selector
  • lv_obj_set_style_bg_image_recolor_opa — param selector
  • lv_obj_set_style_bg_image_tiled — param selector
  • lv_obj_set_style_border_color — param selector
  • lv_obj_set_style_border_opa — param selector
  • lv_obj_set_style_border_width — param selector
  • lv_obj_set_style_border_side — param selector
  • lv_obj_set_style_border_post — param selector
  • lv_obj_set_style_outline_width — param selector
  • lv_obj_set_style_outline_color — param selector
  • lv_obj_set_style_outline_opa — param selector
  • lv_obj_set_style_outline_pad — param selector
  • lv_obj_set_style_shadow_width — param selector
  • lv_obj_set_style_shadow_offset_x — param selector
  • lv_obj_set_style_shadow_offset_y — param selector
  • lv_obj_set_style_shadow_spread — param selector
  • lv_obj_set_style_shadow_color — param selector
  • lv_obj_set_style_shadow_opa — param selector
  • lv_obj_set_style_image_opa — param selector
  • lv_obj_set_style_image_recolor — param selector
  • lv_obj_set_style_image_recolor_opa — param selector
  • lv_obj_set_style_image_colorkey — param selector
  • lv_obj_set_style_line_width — param selector
  • lv_obj_set_style_line_dash_width — param selector
  • lv_obj_set_style_line_dash_gap — param selector
  • lv_obj_set_style_line_rounded — param selector
  • lv_obj_set_style_line_color — param selector
  • lv_obj_set_style_line_opa — param selector
  • lv_obj_set_style_arc_width — param selector
  • lv_obj_set_style_arc_rounded — param selector
  • lv_obj_set_style_arc_color — param selector
  • lv_obj_set_style_arc_opa — param selector
  • lv_obj_set_style_arc_image_src — param selector
  • lv_obj_set_style_text_color — param selector
  • lv_obj_set_style_text_opa — param selector
  • lv_obj_set_style_text_font — param selector
  • lv_obj_set_style_text_letter_space — param selector
  • lv_obj_set_style_text_line_space — param selector
  • lv_obj_set_style_text_decor — param selector
  • lv_obj_set_style_text_align — param selector
  • lv_obj_set_style_text_outline_stroke_color — param selector
  • lv_obj_set_style_text_outline_stroke_width — param selector
  • lv_obj_set_style_text_outline_stroke_opa — param selector
  • lv_obj_set_style_text_leading_trim — param selector
  • lv_obj_set_style_blur_radius — param selector
  • lv_obj_set_style_blur_backdrop — param selector
  • lv_obj_set_style_blur_quality — param selector
  • lv_obj_set_style_drop_shadow_radius — param selector
  • lv_obj_set_style_drop_shadow_offset_x — param selector
  • lv_obj_set_style_drop_shadow_offset_y — param selector
  • lv_obj_set_style_drop_shadow_color — param selector
  • lv_obj_set_style_drop_shadow_opa — param selector
  • lv_obj_set_style_drop_shadow_quality — param selector
  • lv_obj_set_style_radius — param selector
  • lv_obj_set_style_radial_offset — param selector
  • lv_obj_set_style_clip_corner — param selector
  • lv_obj_set_style_opa — param selector
  • lv_obj_set_style_opa_layered — param selector
  • lv_obj_set_style_color_filter_dsc — param selector
  • lv_obj_set_style_color_filter_opa — param selector
  • lv_obj_set_style_recolor — param selector
  • lv_obj_set_style_recolor_opa — param selector
  • lv_obj_set_style_anim — param selector
  • lv_obj_set_style_anim_duration — param selector
  • lv_obj_set_style_transition — param selector
  • lv_obj_set_style_blend_mode — param selector
  • lv_obj_set_style_layout — param selector
  • lv_obj_set_style_base_dir — param selector
  • lv_obj_set_style_bitmap_mask_src — param selector
  • lv_obj_set_style_rotary_sensitivity — param selector
  • lv_obj_set_style_flex_flow — param selector
  • lv_obj_set_style_flex_main_place — param selector
  • lv_obj_set_style_flex_cross_place — param selector
  • lv_obj_set_style_flex_track_place — param selector
  • lv_obj_set_style_flex_grow — param selector
  • lv_obj_set_style_grid_column_dsc_array — param selector
  • lv_obj_set_style_grid_column_align — param selector
  • lv_obj_set_style_grid_row_dsc_array — param selector
  • lv_obj_set_style_grid_row_align — param selector
  • lv_obj_set_style_grid_cell_column_pos — param selector
  • lv_obj_set_style_grid_cell_x_align — param selector
  • lv_obj_set_style_grid_cell_column_span — param selector
  • lv_obj_set_style_grid_cell_row_pos — param selector
  • lv_obj_set_style_grid_cell_y_align — param selector
  • lv_obj_set_style_grid_cell_row_span — param selector

Dependencies

How is this guide?

Last updated on

On this page