mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-28 05:36:37 +00:00
Add static_text for labels
This commit is contained in:
parent
798cf8bd5e
commit
62540e8443
@ -451,4 +451,10 @@ _HASP_ATTRIBUTE(SCALE_END_LINE_WIDTH, scale_end_line_width, lv_style_int_t)
|
|||||||
#define ATTR_OBJID 41010
|
#define ATTR_OBJID 41010
|
||||||
#define ATTR_OBJ 53623
|
#define ATTR_OBJ 53623
|
||||||
|
|
||||||
|
#define ATTR_TEXT_MAC 38107
|
||||||
|
#define ATTR_TEXT_IP 41785
|
||||||
|
#define ATTR_TEXT_HOSTNAME 10125
|
||||||
|
#define ATTR_TEXT_MODEL 54561
|
||||||
|
#define ATTR_TEXT_VERSION 60178
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -138,24 +138,36 @@ static const char* my_label_get_text(const lv_obj_t* label)
|
|||||||
static void my_label_set_text(lv_obj_t* label, const char* text)
|
static void my_label_set_text(lv_obj_t* label, const char* text)
|
||||||
{
|
{
|
||||||
if(text[0] == '%') {
|
if(text[0] == '%') {
|
||||||
uint16_t hash = Parser::get_sdbm(text);
|
uint16_t hash = Parser::get_sdbm(text);
|
||||||
size_t len = strlen(text);
|
size_t len = strlen(text);
|
||||||
const char* static_text;
|
const char* static_text = NULL;
|
||||||
|
|
||||||
switch(hash) {
|
switch(hash) {
|
||||||
|
case ATTR_TEXT_MAC:
|
||||||
case 10125:
|
case ATTR_TEXT_IP:
|
||||||
static_text = haspDevice.get_hostname();
|
if(len == 4) break;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ATTR_TEXT_HOSTNAME:
|
||||||
|
if(len == 10) static_text = haspDevice.get_hostname();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ATTR_TEXT_MODEL:
|
||||||
|
if(len == 7) static_text = haspDevice.get_model();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ATTR_TEXT_VERSION:
|
||||||
|
if(len == 9) static_text = haspDevice.get_version();
|
||||||
break;
|
break;
|
||||||
default:
|
|
||||||
lv_label_set_text(label, text);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
lv_label_set_text_static(label, static_text);
|
if(static_text) {
|
||||||
} else {
|
lv_label_set_text_static(label, static_text);
|
||||||
lv_label_set_text(label, text);
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lv_label_set_text(label, text);
|
||||||
}
|
}
|
||||||
|
|
||||||
// OK
|
// OK
|
||||||
|
Loading…
x
Reference in New Issue
Block a user