use namespaces

This commit is contained in:
2023-08-15 15:07:23 +02:00
parent e29c5ad853
commit ef3e71dd40
5 changed files with 123 additions and 104 deletions

View File

@@ -24,20 +24,26 @@
#include "lv_i18n/lv_i18n.h" #include "lv_i18n/lv_i18n.h"
#include "ui/screens/launch_screen.h" #include "ui/screens/launch_screen.h"
void displayRAM()
{
ESP_LOGI("ram", "Total heap: %d", ESP.getHeapSize());
ESP_LOGI("ram", "Free heap: %d", ESP.getFreeHeap());
ESP_LOGI("ram", "Total PSRAM: %d", ESP.getPsramSize());
ESP_LOGI("ram", "Free PSRAM: %d", ESP.getFreePsram());
}
void setup() void setup()
{ {
esp_log_level_set("*", ESP_LOG_VERBOSE);
lv_i18n_init(lv_i18n_language_pack); lv_i18n_init(lv_i18n_language_pack);
lv_i18n_set_locale("de-DE"); lv_i18n_set_locale("de-DE");
lv_begin(); lv_begin();
lv_disp_t *dispp = lv_disp_get_default(); lv_disp_t *display = lv_disp_get_default();
lv_theme_t *theme = lv_theme_default_init(dispp, lv_palette_main(LV_PALETTE_AMBER), lv_palette_main(LV_PALETTE_RED), false, LV_FONT_DEFAULT); lv_theme_t *theme = lv_theme_default_init(display, lv_palette_main(LV_PALETTE_AMBER), lv_palette_main(LV_PALETTE_RED), LV_THEME_DEFAULT_DARK, LV_FONT_DEFAULT);
lv_disp_set_theme(dispp, theme); lv_disp_set_theme(display, theme);
launch_screen_show(); LaunchScreen::show();
} }
void loop() void loop()

View File

@@ -22,26 +22,29 @@
#include "lv_i18n/lv_i18n.h" #include "lv_i18n/lv_i18n.h"
#include "search_screen.h" #include "search_screen.h"
lv_obj_t *screen; LV_IMG_DECLARE(os_railway_icon_lvgl);
void timer_xcb(lv_timer_t *timer) namespace LaunchScreen
{ {
lv_obj_t *screen;
void timer_xcb(lv_timer_t *timer)
{
lv_timer_del(timer); lv_timer_del(timer);
search_screen_init(); SearchScreen::show();
} }
void start_timer() void start_timer()
{ {
lv_timer_t *timer = lv_timer_create(timer_xcb, 2000, NULL); lv_timer_t *timer = lv_timer_create(timer_xcb, 2000, NULL);
} }
void launch_screen_show() void show()
{ {
screen = lv_obj_create(NULL); screen = lv_obj_create(NULL);
lv_obj_clear_flag(screen, LV_OBJ_FLAG_SCROLLABLE); lv_obj_clear_flag(screen, LV_OBJ_FLAG_SCROLLABLE);
lv_obj_set_style_bg_color(screen, backgroundColor, 0); lv_obj_set_style_bg_color(screen, backgroundColor, 0);
LV_IMG_DECLARE(os_railway_icon_lvgl);
auto *logo = lv_img_create(screen); auto *logo = lv_img_create(screen);
lv_img_set_src(logo, &os_railway_icon_lvgl); lv_img_set_src(logo, &os_railway_icon_lvgl);
lv_obj_align(logo, LV_ALIGN_CENTER, 0, 0); lv_obj_align(logo, LV_ALIGN_CENTER, 0, 0);
@@ -52,4 +55,5 @@ void launch_screen_show()
lv_disp_load_scr(screen); lv_disp_load_scr(screen);
start_timer(); start_timer();
}
} }

View File

@@ -20,4 +20,7 @@
#include <lvgl.h> #include <lvgl.h>
void launch_screen_show(); namespace LaunchScreen
{
void show();
}

View File

@@ -21,13 +21,15 @@
#include "theme.h" #include "theme.h"
#include "../widgets/status_bar_widget.h" #include "../widgets/status_bar_widget.h"
namespace SearchScreen
{
#define ITEM_CNT 200 #define ITEM_CNT 200
lv_obj_t *search_screen; lv_obj_t *search_screen;
lv_obj_t *search_data_table; lv_obj_t *search_data_table;
static void draw_event_cb(lv_event_t *e) static void draw_event_cb(lv_event_t *e)
{ {
auto *obj = lv_event_get_target(e); auto *obj = lv_event_get_target(e);
auto *dsc = lv_event_get_draw_part_dsc(e); auto *dsc = lv_event_get_draw_part_dsc(e);
@@ -62,10 +64,10 @@ static void draw_event_cb(lv_event_t *e)
sw_area.y2 -= 2; sw_area.y2 -= 2;
lv_draw_rect(dsc->draw_ctx, &rect_dsc, &sw_area); lv_draw_rect(dsc->draw_ctx, &rect_dsc, &sw_area);
} }
} }
static void change_event_cb(lv_event_t *e) static void change_event_cb(lv_event_t *e)
{ {
lv_obj_t *obj = lv_event_get_target(e); lv_obj_t *obj = lv_event_get_target(e);
uint16_t col; uint16_t col;
uint16_t row; uint16_t row;
@@ -75,10 +77,10 @@ static void change_event_cb(lv_event_t *e)
lv_table_clear_cell_ctrl(obj, row, 0, LV_TABLE_CELL_CTRL_CUSTOM_1); lv_table_clear_cell_ctrl(obj, row, 0, LV_TABLE_CELL_CTRL_CUSTOM_1);
else else
lv_table_add_cell_ctrl(obj, row, 0, LV_TABLE_CELL_CTRL_CUSTOM_1); lv_table_add_cell_ctrl(obj, row, 0, LV_TABLE_CELL_CTRL_CUSTOM_1);
} }
void search_screen_init() void show()
{ {
search_screen = lv_obj_create(NULL); search_screen = lv_obj_create(NULL);
lv_obj_clear_flag(search_screen, LV_OBJ_FLAG_SCROLLABLE); lv_obj_clear_flag(search_screen, LV_OBJ_FLAG_SCROLLABLE);
@@ -102,4 +104,5 @@ void search_screen_init()
lv_obj_add_event_cb(search_data_table, change_event_cb, LV_EVENT_VALUE_CHANGED, NULL); lv_obj_add_event_cb(search_data_table, change_event_cb, LV_EVENT_VALUE_CHANGED, NULL);
lv_disp_load_scr(search_screen); lv_disp_load_scr(search_screen);
}
} }

View File

@@ -20,4 +20,7 @@
#include <lvgl.h> #include <lvgl.h>
void search_screen_init(); namespace SearchScreen
{
void show();
}