예제 #1
0
파일: ft_menu_main.c 프로젝트: hmartzol/42
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);
}
예제 #2
0
파일: print_grid.c 프로젝트: hmartzol/42
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();
}
예제 #3
0
파일: ft_act.c 프로젝트: jalcim/42sh
void	continu(int sig)
{
	static struct termios	term;
	t_coor					cor;

	(void)sig;
	ft_init_term(&cor, &term);
	knowresize(0);
}
예제 #4
0
파일: streamscan.c 프로젝트: nyhu/minishell
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 ;
}