void mew_show_window(uint32_t window_id) { if (window_id == 0) { return; } if (_mew_windows.current_window_id != 0) { lv_obj_del(_mew_windows.current_window); _mew_windows.last_window_id = _mew_windows.current_window_id; } _mew_windows.current_window_id = window_id; switch (window_id) { case MEW_WINDOW_PINPAD: _mew_windows.current_window = mew_ui_get_pinpad(); break; case MEW_WINDOW_ROOT: _mew_windows.current_window = mew_ui_get_main_window(); break; case MEW_WINDOW_PASSWORDS: _mew_windows.current_window = mew_ui_get_passwords_list_window(); break; case MEW_WINDOW_PASSWORD: _mew_windows.current_window = mew_ui_get_password_window(); break; case MEW_WINDOW_DEATH_SCREEN: break; default: _mew_windows.last_window_id = 0; _mew_windows.current_window_id = 0; _mew_windows.current_window = NULL; return; } }
/** * Called when the close or ok button is pressed on the keyboard * @param keyboard pointer to the keyboard * @return */ static lv_res_t keyboard_hide_action(lv_obj_t * keyboard) { #if USE_LV_ANIMATION lv_obj_animate(kb, LV_ANIM_FLOAT_BOTTOM | LV_ANIM_OUT, 300, 0, (void(*)(lv_obj_t*))lv_obj_del); kb = NULL; return LV_RES_OK; #else lv_obj_del(kb); kb = NULL; return LV_RES_INV; #endif }
/** * Create an mpty list on the window. 'win_load_file_list' will fill it. * @param app pointer to a Files application */ static void win_create_list(lv_app_inst_t * app) { my_win_data_t * win_data = app->win_data; /*Delete the previous list*/ if(win_data->file_list != NULL) { lv_obj_del(win_data->file_list); } /*Create a new list*/ win_data->file_list = lv_list_create(app->win, NULL); lv_obj_set_width(win_data->file_list, lv_win_get_width(app->win)); lv_list_set_style_img(win_data->file_list, &style_btn_symbol); lv_obj_set_style(lv_page_get_scrl(win_data->file_list), lv_style_get(LV_STYLE_TRANSP_TIGHT, NULL)); lv_obj_set_drag_parent(win_data->file_list, true); lv_obj_set_drag_parent(lv_page_get_scrl(win_data->file_list), true); lv_cont_set_fit(win_data->file_list, false, true); lv_cont_set_layout(lv_page_get_scrl(win_data->file_list), LV_CONT_LAYOUT_COL_L); }
/** * Called when the window's close button is clicked * @param btn pointer to the close button * @return LV_ACTION_RES_INV because the button is deleted in the function */ static lv_res_t win_close_action(lv_obj_t * btn) { lv_obj_del(win); win = NULL; return LV_RES_INV; }