예제 #1
0
파일: ui.c 프로젝트: konachan700/Mew
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;
    }
}
예제 #2
0
파일: demo.c 프로젝트: wosayttn/aos
/**
 * 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
}
예제 #3
0
/**
 * 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);
}
예제 #4
0
파일: terminal.c 프로젝트: wosayttn/aos
/**
 * 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;
}