From e00cd049632d349ea2bf922c27e0a9d0bfffb6b2 Mon Sep 17 00:00:00 2001 From: Gabor Date: Mon, 10 Jul 2017 17:29:19 +0200 Subject: [PATCH] lv_app: lv_scr_app(), lv_app_add_dsc() added --- lv_app/lv_app.c | 25 ++++++++++++++++++++++++- lv_app/lv_app.h | 13 +++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/lv_app/lv_app.c b/lv_app/lv_app.c index 8ccde9d13..66df257ef 100644 --- a/lv_app/lv_app.c +++ b/lv_app/lv_app.c @@ -149,8 +149,31 @@ void lv_app_init(void) *dsc = lv_app_gsm_init(); #endif +#if USE_LV_APP_ETHERNET != 0 + dsc = ll_ins_head(&app_dsc_ll); + *dsc = lv_app_ethernet_init(); +#endif } +/** + * Get screen of the applications + */ +lv_obj_t * lv_scr_app(void) +{ + return app_scr; +} + +/** + * Allocate a new application descriptor + * @return pointer to an lv_app_dsc_t pointer. Save here a pointer to an app. dsc. + * E.g. *dsc = &my_app_dsc; + */ +lv_app_dsc_t ** lv_app_add_dsc(void) +{ + return ll_ins_head(&app_dsc_ll); +} + + /** * Run an application according to 'app_dsc' * @param app_dsc pointer to an application descriptor @@ -173,7 +196,7 @@ lv_app_inst_t * lv_app_run(const lv_app_dsc_t * app_dsc, void * conf) lv_app_rename(app, app_dsc->name); /*Set a default name*/ /*Call the application specific run function*/ - app_dsc->app_run(app, conf); + if(app_dsc->app_run != NULL) app_dsc->app_run(app, conf); return app; } diff --git a/lv_app/lv_app.h b/lv_app/lv_app.h index dd3fc6939..430c20060 100644 --- a/lv_app/lv_app.h +++ b/lv_app/lv_app.h @@ -113,6 +113,18 @@ typedef struct { */ void lv_app_init(void); +/** + * Get screen of the applications + */ +lv_obj_t * lv_scr_app(void); + +/** + * Allocate a new application descriptor + * @return pointer to an lv_app_dsc_t pointer. Save here a pointer to an app. dsc. + * E.g. *dsc = &my_app_dsc; + */ +lv_app_dsc_t ** lv_app_add_dsc(void); + /** * Run an application according to 'app_dsc' * @param app_dsc pointer to an application descriptor @@ -246,6 +258,7 @@ lv_app_style_t * lv_app_style_get(void); #include "lvgl/lv_appx/lv_app_files.h" #include "lvgl/lv_appx/lv_app_wifi.h" #include "lvgl/lv_appx/lv_app_gsm.h" +#include "lvgl/lv_appx/lv_app_ethernet.h" #include "lvgl/lv_appx/lv_app_benchmark.h" #endif /*LV_APP_ENABLE*/