From 0dd106625501acdd3aff5bc5d17cfd9e6b915dc7 Mon Sep 17 00:00:00 2001 From: fvanroie Date: Mon, 23 May 2022 10:18:17 +0200 Subject: [PATCH] Clear value_str for different states --- src/hasp/hasp_event.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/hasp/hasp_event.cpp b/src/hasp/hasp_event.cpp index cd53752c..8723c510 100644 --- a/src/hasp/hasp_event.cpp +++ b/src/hasp/hasp_event.cpp @@ -50,6 +50,8 @@ void delete_event_handler(lv_obj_t* obj, lv_event_t event) { if(event != LV_EVENT_DELETE) return; + uint8_t part_cnt = LV_OBJ_PART_MAIN; + switch(obj_get_type(obj)) { case LV_HASP_LINE: my_line_clear_points(obj); @@ -61,7 +63,7 @@ void delete_event_handler(lv_obj_t* obj, lv_event_t event) case LV_HASP_MSGBOX: my_msgbox_map_clear(obj); - break; + break; case LV_HASP_IMAGE: my_image_release_resources(obj); @@ -75,7 +77,14 @@ void delete_event_handler(lv_obj_t* obj, lv_event_t event) } // TODO: delete value_str data for ALL parts - my_obj_set_value_str_text(obj, LV_OBJ_PART_MAIN, LV_STATE_DEFAULT, NULL); + for(uint8_t part = 0; part <= part_cnt; part++) { + my_obj_set_value_str_text(obj, part, LV_STATE_DEFAULT, NULL); + my_obj_set_value_str_text(obj, part, LV_STATE_CHECKED, NULL); + my_obj_set_value_str_text(obj, part, LV_STATE_PRESSED + LV_STATE_DEFAULT, NULL); + my_obj_set_value_str_text(obj, part, LV_STATE_PRESSED + LV_STATE_CHECKED, NULL); + my_obj_set_value_str_text(obj, part, LV_STATE_DISABLED + LV_STATE_DEFAULT, NULL); + my_obj_set_value_str_text(obj, part, LV_STATE_DISABLED + LV_STATE_CHECKED, NULL); + } my_obj_set_tag(obj, (char*)NULL); }