From 89c33cd7f7486f7356053b4f809733555265161e Mon Sep 17 00:00:00 2001 From: anschrammh Date: Tue, 11 Apr 2023 01:04:58 +0200 Subject: [PATCH] Updated settings screen in the simulator --- .../lv_port_win_codeblocks/LittlevGL.layout | 742 +++++++++--------- .../lv_port_win_codeblocks/settings_screen.c | 44 +- 2 files changed, 394 insertions(+), 392 deletions(-) diff --git a/src/lvgl_win_sim/lv_port_win_codeblocks/LittlevGL.layout b/src/lvgl_win_sim/lv_port_win_codeblocks/LittlevGL.layout index 35519f4..d4b66c5 100644 --- a/src/lvgl_win_sim/lv_port_win_codeblocks/LittlevGL.layout +++ b/src/lvgl_win_sim/lv_port_win_codeblocks/LittlevGL.layout @@ -2,29 +2,9 @@ - + - - - - - - - - - - - - - - - - - - - - - + @@ -36,156 +16,44 @@ - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -193,19 +61,19 @@ - + - + - + - + - + - + @@ -213,79 +81,29 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - + - - - - - - - - - - - + @@ -295,12 +113,97 @@ - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -328,179 +231,24 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -508,4 +256,244 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/lvgl_win_sim/lv_port_win_codeblocks/settings_screen.c b/src/lvgl_win_sim/lv_port_win_codeblocks/settings_screen.c index a0d5751..a244ebc 100644 --- a/src/lvgl_win_sim/lv_port_win_codeblocks/settings_screen.c +++ b/src/lvgl_win_sim/lv_port_win_codeblocks/settings_screen.c @@ -25,6 +25,8 @@ static void _reset_switch_pointers(SettingsScreen_t * const settingsScreen) settingsScreen->ble_switch = NULL; settingsScreen->auto_set_time_switch = NULL; } +static lv_obj_t *add_menu_list_item(lv_obj_t *list, const char *text, lv_event_cb_t event_cb, void *user_data); +static void update_menu_list_item_text(lv_obj_t *menu_list_item, const char *text); static void gesture_event_cb(lv_event_t * e) { @@ -62,7 +64,6 @@ static void cleanup_event_cb(lv_event_t *e) settings_screen_destroy(settingsScreen); LV_LOG_USER("cleanup"); } - static void time_roller_cb(lv_event_t *e) { SettingsScreen_t *settingsScreen = e->user_data; @@ -131,9 +132,11 @@ static void language_dropdown_cb(lv_event_t *e) { case 0: common_screen_header_update_title("Parametres"); + update_menu_list_item_text(settingsScreen->time_and_date_item, "Date & Heure"); break; case 1: common_screen_header_update_title("Settings"); + update_menu_list_item_text(settingsScreen->time_and_date_item, "Time & Date"); break; } } @@ -151,20 +154,6 @@ static void about_refresh_timer_cb(lv_timer_t *timer) lv_label_set_text_static(settingsScreen->currentTime.current_time_label, settingsScreen->currentTime.current_time_text); } -static lv_obj_t *add_menu_list_item(lv_obj_t *list, const char *text, lv_event_cb_t event_cb, void *user_data) -{ - lv_obj_t *btn = lv_list_add_btn(list, NULL, text); - lv_obj_t *label = lv_obj_get_child(btn, 0); - if(label) - { - lv_label_set_long_mode(label, LV_LABEL_LONG_WRAP); - lv_obj_set_style_pad_right(btn, 0, LV_PART_MAIN); - } - - lv_obj_add_event_cb(btn, event_cb, LV_EVENT_CLICKED, user_data); - return btn; -} - static void load_time_and_date_side_screen(SettingsScreen_t *settingsScreen) { lv_obj_clean(settingsScreen->side_screen); @@ -217,6 +206,8 @@ static void load_time_and_date_side_screen(SettingsScreen_t *settingsScreen) settingsScreen->checkbox_time_24H = lv_checkbox_create(settingsScreen->side_screen); lv_checkbox_set_text(settingsScreen->checkbox_time_24H, "24H"); lv_obj_add_state(settingsScreen->checkbox_time_24H, LV_STATE_CHECKED); + lv_obj_clear_flag(settingsScreen->checkbox_time_24H, LV_OBJ_FLAG_CHECKABLE); + lv_obj_set_style_radius(settingsScreen->checkbox_time_24H, LV_RADIUS_CIRCLE, LV_PART_INDICATOR); lv_obj_align_to(settingsScreen->checkbox_time_24H, settingsScreen->checkbox_time_12H, LV_ALIGN_OUT_RIGHT_TOP, 10, 0); lv_obj_add_event_cb(settingsScreen->checkbox_time_24H, &(time_format_cb), LV_EVENT_CLICKED, settingsScreen); @@ -647,3 +638,26 @@ static void _enable_time_and_date_rollers(bool enabled, SettingsScreen_t * const lv_obj_set_style_bg_color(settingsScreen->year_roller, lv_palette_lighten(LV_PALETTE_GREY, 1), LV_PART_SELECTED); } } + +static lv_obj_t *add_menu_list_item(lv_obj_t *list, const char *text, lv_event_cb_t event_cb, void *user_data) +{ + lv_obj_t *btn = lv_list_add_btn(list, NULL, text); + lv_obj_t *label = lv_obj_get_child(btn, 0); + if(label) + { + lv_label_set_long_mode(label, LV_LABEL_LONG_WRAP); + lv_obj_set_style_pad_right(btn, 0, LV_PART_MAIN); + } + + lv_obj_add_event_cb(btn, event_cb, LV_EVENT_CLICKED, user_data); + return btn; +} + +static void update_menu_list_item_text(lv_obj_t *menu_list_item, const char *text) +{ + lv_obj_t *label = lv_obj_get_child(menu_list_item, 0); + if(label) + { + lv_label_set_text(label, text); + } +}