From afdd106df8c4140d2eaa19e6079f91da3bbbdd92 Mon Sep 17 00:00:00 2001 From: fvanroie <15969459+fvanroie@users.noreply.github.com> Date: Sat, 8 May 2021 08:09:55 +0200 Subject: [PATCH] Declare more lv_obj_t* as const --- src/hasp/hasp_object.cpp | 13 +++++++------ src/hasp/hasp_object.h | 10 +++++----- src/hasp/hasp_page.cpp | 2 +- src/hasp/hasp_page.h | 3 ++- 4 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/hasp/hasp_object.cpp b/src/hasp/hasp_object.cpp index a20a2afe..20bc41f3 100644 --- a/src/hasp/hasp_object.cpp +++ b/src/hasp/hasp_object.cpp @@ -64,7 +64,7 @@ lv_obj_t* hasp_find_obj_from_page_id(uint8_t pageid, uint8_t objid) } // Return the pageid and objid of an object -bool hasp_find_id_from_obj(lv_obj_t* obj, uint8_t* pageid, uint8_t* objid) +bool hasp_find_id_from_obj(const lv_obj_t* obj, uint8_t* pageid, uint8_t* objid) { if(!obj || !haspPages.get_id(obj, pageid)) return false; if(obj->user_data.id == 0 && obj != haspPages.get_obj(*pageid)) return false; @@ -78,7 +78,7 @@ bool hasp_find_id_from_obj(lv_obj_t* obj, uint8_t* pageid, uint8_t* objid) * @return name of the object type * @note */ -const char* obj_get_type_name(lv_obj_t* obj) +const char* obj_get_type_name(const lv_obj_t* obj) { lv_obj_type_t list; lv_obj_get_type(obj, &list); @@ -93,7 +93,7 @@ const char* obj_get_type_name(lv_obj_t* obj) * @return true or false wether the types match * @note */ -bool obj_check_type(lv_obj_t* obj, lv_hasp_obj_type_t haspobjtype) +bool obj_check_type(const lv_obj_t* obj, lv_hasp_obj_type_t haspobjtype) { #if 1 if(!obj) return false; @@ -112,12 +112,12 @@ bool obj_check_type(lv_obj_t* obj, lv_hasp_obj_type_t haspobjtype) * @return lv_hasp_obj_type_t * @note */ -lv_hasp_obj_type_t obj_get_type(lv_obj_t* obj) +lv_hasp_obj_type_t obj_get_type(const lv_obj_t* obj) { return (lv_hasp_obj_type_t)obj->user_data.objid; } -void hasp_object_tree(lv_obj_t* parent, uint8_t pageid, uint16_t level) +void hasp_object_tree(const lv_obj_t* parent, uint8_t pageid, uint16_t level) { if(parent == nullptr) return; @@ -239,7 +239,8 @@ void hasp_process_attribute(uint8_t pageid, uint8_t objid, const char* attr, con // ##################### Object Creator ######################################################## -int hasp_parse_json_attributes(lv_obj_t* obj, const JsonObject& doc) +// Called from hasp_new_object only to process all attributes +static inline int hasp_parse_json_attributes(lv_obj_t* obj, const JsonObject& doc) { int i = 0; #if defined(WINDOWS) || defined(POSIX) diff --git a/src/hasp/hasp_object.h b/src/hasp/hasp_object.h index e5d00107..35095330 100644 --- a/src/hasp/hasp_object.h +++ b/src/hasp/hasp_object.h @@ -71,11 +71,11 @@ void hasp_new_object(const JsonObject& config, uint8_t& saved_page_id); lv_obj_t* hasp_find_obj_from_parent_id(lv_obj_t* parent, uint8_t objid); lv_obj_t* hasp_find_obj_from_page_id(uint8_t pageid, uint8_t objid); -bool hasp_find_id_from_obj(lv_obj_t* obj, uint8_t* pageid, uint8_t* objid); -const char* obj_get_type_name(lv_obj_t* obj); -bool obj_check_type(lv_obj_t* obj, lv_hasp_obj_type_t haspobjtype); -lv_hasp_obj_type_t obj_get_type(lv_obj_t* obj); -void hasp_object_tree(lv_obj_t* parent, uint8_t pageid, uint16_t level); +bool hasp_find_id_from_obj(const lv_obj_t* obj, uint8_t* pageid, uint8_t* objid); +const char* obj_get_type_name(const lv_obj_t* obj); +bool obj_check_type(const lv_obj_t* obj, lv_hasp_obj_type_t haspobjtype); +lv_hasp_obj_type_t obj_get_type(const lv_obj_t* obj); +void hasp_object_tree(const lv_obj_t* parent, uint8_t pageid, uint16_t level); void object_dispatch_state(uint8_t pageid, uint8_t btnid, const char* payload); diff --git a/src/hasp/hasp_page.cpp b/src/hasp/hasp_page.cpp index c8f304ec..91ea4929 100644 --- a/src/hasp/hasp_page.cpp +++ b/src/hasp/hasp_page.cpp @@ -178,7 +178,7 @@ lv_obj_t* Page::get_obj(uint8_t pageid) return _pages[pageid - PAGE_START_INDEX]; } -bool Page::get_id(lv_obj_t* obj, uint8_t* pageid) +bool Page::get_id(const lv_obj_t* obj, uint8_t* pageid) { lv_obj_t* page = lv_obj_get_screen(obj); diff --git a/src/hasp/hasp_page.h b/src/hasp/hasp_page.h index d649c8fb..1872eb5f 100644 --- a/src/hasp/hasp_page.h +++ b/src/hasp/hasp_page.h @@ -45,6 +45,7 @@ class Page { uint8_t get_next(uint8_t pageid); uint8_t get_prev(uint8_t pageid); uint8_t get_back(uint8_t pageid); + void set_next(uint8_t pageid, uint8_t nextid); void set_prev(uint8_t pageid, uint8_t previd); void set_back(uint8_t pageid, uint8_t backid); @@ -52,7 +53,7 @@ class Page { uint8_t get(); void load_jsonl(const char* pagesfile); lv_obj_t* get_obj(uint8_t pageid); - bool get_id(lv_obj_t* obj, uint8_t* pageid); + bool get_id(const lv_obj_t* obj, uint8_t* pageid); bool is_valid(uint8_t pageid); };