From f362cff71847de0cc2229bace74ba39158f0bb2c Mon Sep 17 00:00:00 2001 From: fvanroie <15969459+fvanroie@users.noreply.github.com> Date: Fri, 8 Oct 2021 21:27:58 +0200 Subject: [PATCH] Add type to spinner objecfr --- src/hasp/hasp_attribute.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/src/hasp/hasp_attribute.cpp b/src/hasp/hasp_attribute.cpp index b40e42f0..ddf946e3 100644 --- a/src/hasp/hasp_attribute.cpp +++ b/src/hasp/hasp_attribute.cpp @@ -829,6 +829,24 @@ static hasp_attribute_type_t hasp_process_arc_attribute(lv_obj_t* obj, uint16_t return HASP_ATTR_TYPE_INT; } +static hasp_attribute_type_t hasp_process_spinner_attribute(lv_obj_t* obj, uint16_t attr_hash, int32_t& val, bool update) +{ + // We already know it's a spnner object + switch(attr_hash) { + case ATTR_TYPE: + if(update) + lv_spinner_set_type(obj, val % 3); + else + val = lv_spinner_get_type(obj); + break; + + default: + return HASP_ATTR_TYPE_NOT_FOUND; + } + + return HASP_ATTR_TYPE_INT; +} + static hasp_attribute_type_t hasp_process_lmeter_attribute(lv_obj_t* obj, uint16_t attr_hash, int32_t& val, bool update) { // We already know it's a linemeter object @@ -2264,6 +2282,11 @@ void hasp_process_obj_attribute(lv_obj_t* obj, const char* attribute, const char ret = hasp_process_arc_attribute(obj, attr_hash, val, update); break; + case LV_HASP_SPINNER: + val = strtol(payload, nullptr, DEC); + ret = hasp_process_spinner_attribute(obj, attr_hash, val, update); + break; + case LV_HASP_GAUGE: val = strtol(payload, nullptr, DEC); ret = hasp_process_gauge_attribute(obj, attr_hash, val, update);