LVGL improvements for TactilityC (#233)

- Expose various `lv_event`-related functions
- Expose `tt::lvgl::toolbar`-related functions
- Update sample app and improved docs
This commit is contained in:
Ken Van Hoeylandt
2025-02-22 23:12:03 +01:00
committed by GitHub
parent 70d36131f6
commit 6d1d08944b
5 changed files with 109 additions and 12 deletions
+10 -1
View File
@@ -50,7 +50,7 @@ const struct esp_elfsym elf_symbols[] {
ESP_ELFSYM_EXPORT(tt_hal_i2c_lock),
ESP_ELFSYM_EXPORT(tt_hal_i2c_unlock),
ESP_ELFSYM_EXPORT(tt_lvgl_toolbar_create),
ESP_ELFSYM_EXPORT(tt_lvgl_toolbar_create_simple),
ESP_ELFSYM_EXPORT(tt_lvgl_toolbar_create_for_app),
ESP_ELFSYM_EXPORT(tt_message_queue_alloc),
ESP_ELFSYM_EXPORT(tt_message_queue_free),
ESP_ELFSYM_EXPORT(tt_message_queue_put),
@@ -92,6 +92,15 @@ const struct esp_elfsym elf_symbols[] {
ESP_ELFSYM_EXPORT(tt_timer_set_thread_priority),
// tt::lvgl
ESP_ELFSYM_EXPORT(tt_lvgl_spinner_create),
// lv_event
ESP_ELFSYM_EXPORT(lv_event_get_code),
ESP_ELFSYM_EXPORT(lv_event_get_indev),
ESP_ELFSYM_EXPORT(lv_event_get_key),
ESP_ELFSYM_EXPORT(lv_event_get_param),
ESP_ELFSYM_EXPORT(lv_event_get_scroll_anim),
ESP_ELFSYM_EXPORT(lv_event_get_user_data),
ESP_ELFSYM_EXPORT(lv_event_get_target_obj),
ESP_ELFSYM_EXPORT(lv_event_get_target),
// lv_obj
ESP_ELFSYM_EXPORT(lv_obj_add_event_cb),
ESP_ELFSYM_EXPORT(lv_obj_align),
+25 -5
View File
@@ -3,12 +3,32 @@
extern "C" {
lv_obj_t* tt_lvgl_toolbar_create(lv_obj_t* parent, AppHandle context) {
return tt::lvgl::toolbar_create(parent, *(tt::app::AppContext*)context);
}
lv_obj_t* tt_lvgl_toolbar_create_simple(lv_obj_t* parent, const char* title) {
lv_obj_t* tt_lvgl_toolbar_create(lv_obj_t* parent, const char* title) {
return tt::lvgl::toolbar_create(parent, title);
}
lv_obj_t* tt_lvgl_toolbar_create_for_app(lv_obj_t* parent, AppHandle context) {
return tt::lvgl::toolbar_create(parent, *(tt::app::AppContext*)context);
}
void toolbar_set_title(lv_obj_t* obj, const char* title) {
tt::lvgl::toolbar_set_title(obj, title);
}
void toolbar_set_nav_action(lv_obj_t* obj, const char* icon, lv_event_cb_t callback, void* callbackEventUserData) {
tt::lvgl::toolbar_set_nav_action(obj, icon, callback, callbackEventUserData);
}
lv_obj_t* toolbar_add_button_action(lv_obj_t* obj, const char* icon, lv_event_cb_t callback, void* callbackEventUserData) {
return tt::lvgl::toolbar_add_button_action(obj, icon, callback, callbackEventUserData);
}
lv_obj_t* toolbar_add_switch_action(lv_obj_t* obj) {
return tt::lvgl::toolbar_add_switch_action(obj);
}
lv_obj_t* toolbar_add_spinner_action(lv_obj_t* obj) {
return tt::lvgl::toolbar_add_spinner_action(obj);
}
}