static void ui_resize() { struct winsize winsz; ioctl(0, TIOCGWINSZ, &winsz); resizeterm(winsz.ws_row, winsz.ws_col); if ((winsz.ws_col < MIN_COLS) || (winsz.ws_row < MIN_LINES)) { /* * if window is too small notify user until he changes it */ do { ui_too_small_warning(); ioctl(0, TIOCGWINSZ, &winsz); resizeterm(winsz.ws_row, winsz.ws_col); } while ((winsz.ws_col < MIN_COLS) || (winsz.ws_row < MIN_LINES)); } else { should_resize = FALSE; ui_resize_windows(); ui_free_windows(); ui_init_windows(); ui_refresh_windows(); } }
int ui_end() { ui_free_windows(); clear(); refresh(); endwin(); echo(); }