lv_label.h
Enums
-
enum lv_label_long_mode_t
Long mode behaviors. Used in 'lv_label_ext_t'
Values:
-
enumerator LV_LABEL_LONG_WRAP
Keep the object width, wrap lines longer than object width and expand the object height
-
enumerator LV_LABEL_LONG_DOT
Keep the size and write dots at the end if the text is too long
-
enumerator LV_LABEL_LONG_SCROLL
Keep the size and roll the text back and forth
-
enumerator LV_LABEL_LONG_SCROLL_CIRCULAR
Keep the size and roll the text circularly
-
enumerator LV_LABEL_LONG_CLIP
Keep the size and clip the text out of it
-
enumerator LV_LABEL_LONG_WRAP
Functions
-
lv_obj_t *lv_label_create(lv_obj_t *parent)
Create a label object
- Parameters:
parent – pointer to an object, it will be the parent of the new label.
- Returns:
pointer to the created button
-
void lv_label_set_text(lv_obj_t *obj, const char *text)
Set a new text for a label. Memory will be allocated to store the text by the label.
- Parameters:
obj – pointer to a label object
text – '\0' terminated character string. NULL to refresh with the current text.
-
void lv_label_set_text_fmt(lv_obj_t *obj, const char *fmt, ...)
Set a new formatted text for a label. Memory will be allocated to store the text by the label.
Example:
lv_label_set_text_fmt(label1, "%d user", user_num);
- Parameters:
obj – pointer to a label object
fmt –
printf
-like format
-
void lv_label_set_text_static(lv_obj_t *obj, const char *text)
Set a static text. It will not be saved by the label so the 'text' variable has to be 'alive' while the label exists.
- Parameters:
obj – pointer to a label object
text – pointer to a text. NULL to refresh with the current text.
-
void lv_label_set_long_mode(lv_obj_t *obj, lv_label_long_mode_t long_mode)
Set the behavior of the label with text longer than the object size
- Parameters:
obj – pointer to a label object
long_mode – the new mode from 'lv_label_long_mode' enum. In LV_LONG_WRAP/DOT/SCROLL/SCROLL_CIRC the size of the label should be set AFTER this function
-
void lv_label_set_text_selection_start(lv_obj_t *obj, uint32_t index)
Set where text selection should start
- Parameters:
obj – pointer to a label object
index – character index from where selection should start.
LV_LABEL_TEXT_SELECTION_OFF
for no selection
-
void lv_label_set_text_selection_end(lv_obj_t *obj, uint32_t index)
Set where text selection should end
- Parameters:
obj – pointer to a label object
index – character index where selection should end.
LV_LABEL_TEXT_SELECTION_OFF
for no selection
-
void lv_label_set_recolor(lv_obj_t *obj, bool en)
Enable the recoloring by in-line commands
- Parameters:
obj – pointer to a label object
en – true: enable recoloring, false: disable Example: "This is a #ff0000 red# word"
-
char *lv_label_get_text(const lv_obj_t *obj)
Get the text of a label
- Parameters:
obj – pointer to a label object
- Returns:
the text of the label
-
lv_label_long_mode_t lv_label_get_long_mode(const lv_obj_t *obj)
Get the long mode of a label
- Parameters:
obj – pointer to a label object
- Returns:
the current long mode
-
void lv_label_get_letter_pos(const lv_obj_t *obj, uint32_t char_id, lv_point_t *pos)
Get the relative x and y coordinates of a letter
- Parameters:
obj – pointer to a label object
char_id – index of the character [0 ... text length - 1]. Expressed in character index, not byte index (different in UTF-8)
pos – store the result here (E.g. index = 0 gives 0;0 coordinates if the text if aligned to the left)
-
uint32_t lv_label_get_letter_on(const lv_obj_t *obj, lv_point_t *pos_in, bool bidi)
Get the index of letter on a relative point of a label.
- Parameters:
obj – pointer to label object
pos_in – pointer to point with coordinates on a the label
bidi – whether to use bidi processed
- Returns:
The index of the letter on the 'pos_p' point (E.g. on 0;0 is the 0. letter if aligned to the left) Expressed in character index and not byte index (different in UTF-8)
-
bool lv_label_is_char_under_pos(const lv_obj_t *obj, lv_point_t *pos)
Check if a character is drawn under a point.
- Parameters:
obj – pointer to a label object
pos – Point to check for character under
- Returns:
whether a character is drawn under the point
-
uint32_t lv_label_get_text_selection_start(const lv_obj_t *obj)
Get the selection start index.
- Parameters:
obj – pointer to a label object.
- Returns:
selection start index.
LV_LABEL_TEXT_SELECTION_OFF
if nothing is selected.
-
uint32_t lv_label_get_text_selection_end(const lv_obj_t *obj)
Get the selection end index.
- Parameters:
obj – pointer to a label object.
- Returns:
selection end index.
LV_LABEL_TXT_SEL_OFF
if nothing is selected.
-
bool lv_label_get_recolor(const lv_obj_t *obj)
Get the recoloring attribute.
- Parameters:
obj – pointer to a label object.
- Returns:
true: recoloring is enabled, false: recoloring is disabled
-
void lv_label_ins_text(lv_obj_t *obj, uint32_t pos, const char *txt)
Insert a text to a label. The label text cannot be static.
- Parameters:
obj – pointer to a label object
pos – character index to insert. Expressed in character index and not byte index. 0: before first char. LV_LABEL_POS_LAST: after last char.
txt – pointer to the text to insert
-
void lv_label_cut_text(lv_obj_t *obj, uint32_t pos, uint32_t cnt)
Delete characters from a label. The label text cannot be static.
- Parameters:
obj – pointer to a label object
pos – character index from where to cut. Expressed in character index and not byte index. 0: start in front of the first character
cnt – number of characters to cut
Variables
-
const lv_obj_class_t lv_label_class