From 97308367bfc9f5d3ec0ce180de74725a8c3b49bb Mon Sep 17 00:00:00 2001 From: fvanroie Date: Tue, 25 Oct 2022 19:37:28 +0200 Subject: [PATCH] Code cleanup --- src/hasp/hasp_page.cpp | 56 ++++++++++++++++++++---------------------- 1 file changed, 27 insertions(+), 29 deletions(-) diff --git a/src/hasp/hasp_page.cpp b/src/hasp/hasp_page.cpp index ffabc569..bb970e57 100644 --- a/src/hasp/hasp_page.cpp +++ b/src/hasp/hasp_page.cpp @@ -90,35 +90,33 @@ void Page::clear(uint8_t pageid) } } -// void Page::set(uint8_t pageid) -// { -// set(pageid, LV_SCR_LOAD_ANIM_NONE); -// } - void Page::set(uint8_t pageid, lv_scr_load_anim_t anim_type, uint32_t time, uint32_t delay) { - lv_obj_t* page = get_obj(pageid); - if(!is_valid(pageid)) { - return; - } else if(!page) { - LOG_WARNING(TAG_HASP, F(D_HASP_INVALID_PAGE), pageid); - } else { - _current_page = pageid; - if(page == lv_scr_act()) { - dispatch_current_page(); - return; - } + if(!is_valid(pageid)) return; // produces a log warning if not between 1 and 12 - if((anim_type != LV_SCR_LOAD_ANIM_NONE && time > 0) || delay > 0) { - my_scr_load_anim(page, anim_type, time, delay, false); - } else { - LOG_TRACE(TAG_HASP, F(D_HASP_CHANGE_PAGE), pageid); - lv_scr_load_anim(page, anim_type, time, delay, false); - dispatch_current_page(); + lv_obj_t* page = get_obj(pageid); + if(!page) { + // Invalid page object + LOG_WARNING(TAG_HASP, F(D_HASP_INVALID_PAGE), pageid); + + } else if(page == lv_scr_act()) { + // No change needed, just send current page again + _current_page = pageid; + dispatch_current_page(); + + } else if((anim_type != LV_SCR_LOAD_ANIM_NONE && time > 0) || delay > 0) { + // Change page after a delay or animation, don't publish it yet + my_scr_load_anim(page, anim_type, time, delay, false); // dispatches when animation ends + + } else { + // No delay or animation set, update now + LOG_TRACE(TAG_HASP, F(D_HASP_CHANGE_PAGE), pageid); + lv_scr_load_anim(page, anim_type, time, delay, false); + _current_page = pageid; + dispatch_current_page(); #if defined(HASP_DEBUG_OBJ_TREE) - hasp_object_tree(page, pageid, 0); + hasp_object_tree(page, pageid, 0); #endif - } } } @@ -164,26 +162,26 @@ void Page::set_name(uint8_t pageid, const char* name) return; } - LOG_VERBOSE(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); + LOG_DEBUG(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); if(_pagenames[pageid]) { hasp_free(_pagenames[pageid]); _pagenames[pageid] = NULL; } - LOG_VERBOSE(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); + LOG_DEBUG(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); if(!name) return; size_t size = strlen(name) + 1; - LOG_VERBOSE(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); + LOG_DEBUG(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); if(size > 1) { _pagenames[pageid] = (char*)hasp_calloc(sizeof(char), size); - LOG_VERBOSE(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); + LOG_DEBUG(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); if(_pagenames[pageid] == NULL) return; strncpy(_pagenames[pageid], name, size); LOG_VERBOSE(TAG_HASP, F("%s"), _pagenames[pageid]); } - LOG_VERBOSE(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); + LOG_DEBUG(TAG_HASP, F("%s - %d"), __FILE__, __LINE__); } void Page::next(lv_scr_load_anim_t anim_type, uint32_t time, uint32_t delay)