int ft_menu_main(void) { int choice; t_point winsize; t_menu *main_menu; main_menu = sf_init_main_menu(); choice = 0; while (choice != -1 && choice != 4) { choice = ft_menu(main_menu); ft_init_term(2, 0, TRUE, 0); nodelay(stdscr, FALSE); getmaxyx(stdscr, winsize.y, winsize.x); erase(); if (choice == -1 || choice == 4) mvprintw(winsize.y / 2, winsize.x / 2 - 30, "You're SURE you're leaving us already? :'( (PRESS ANY KEY)"); if (choice == 3) sf_auteur(stdscr); getch(); erase(); refresh(); endwin(); } ft_free_menu(main_menu); return (0); }
void print_grid(int **grid) { int i; int j; int t; t_point win; (void)grid; ft_init_term(2, 0, TRUE, 0); nodelay(stdscr, FALSE); win = ft_size_window(stdscr); erase(); i = -1; while (++i < win.x && (j = -1)) while (++j < win.y) { t = (!i | (i == (win.x / GS)) | (i == (win.x / GS) * 2) | (i == (win.x / GS) * 3) | i == win.x -1) * 2 + (!j | (j == (win.y / GS)) | (j == (win.y / GS) * 2) | (j == (win.y / GS) * 3) | j == win.y - 1); if (t == 1) mvprintw(j, i, "-"); if (t == 2) mvprintw(j, i, "|"); if (t == 3) mvprintw(j, i, "+"); } refresh(); getch(); endwin(); }
void continu(int sig) { static struct termios term; t_coor cor; (void)sig; ft_init_term(&cor, &term); knowresize(0); }
static void ft_termios_handle(t_config *config, int mode) { static char state = 0; if (!state && ft_init_term(config)) state = 1; if (mode && state && (tcsetattr(STDIN_FILENO, TCSADRAIN, &(config->termios)) == -1)) ft_error(SHNAME, NULL, TERM_ERR, CR_ERROR); else if (!mode && state && (-1 == tcsetattr(STDIN_FILENO, TCSANOW, &(config->termios_backup)))) ft_error(SHNAME, NULL, RESET_TERM_ERR, CR_ERROR); return ; }