/* ************************************************************************** */
/*                                                                            */
/*                                                        :::      ::::::::   */
/*   ft_select.h                                        :+:      :+:    :+:   */
/*                                                    +:+ +:+         +:+     */
/*   By: bchanot <bchanot@students.42.fr>           +#+  +:+       +#+        */
/*                                                +#+#+#+#+#+   +#+           */
/*   Created: 2016/11/02 07:00:23 by bchanot           #+#    #+#             */
/*   Updated: 2016/11/08 11:19:56 by bchanot          ###   ########.fr       */
/*                                                                            */
/* ************************************************************************** */

#ifndef FT_SELECT_H
# define FT_SELECT_H
# define ESCAPE 0x1B
# define SPACE 0x20
# define UP 0x415B1B
# define DOWN 0x425B1B
# define RIGHT 0x435B1B
# define LEFT 0x445B1B
# define ENTER 0xA
# define BACKSPACE 0x7E335B1B
# define DELETE 0x7F

# include "../libft/includes/libft.h"
# include <termios.h>

typedef struct		s_inf
{
	struct termios	term;
	char			**args;
	int				*selected;
	int				nb;
	int				cur;
}					t_inf;

int					sl_launch_loop(t_inf *inf);
void				sl_init_inf(int ac, char **av, t_inf *inf);
void				sl_init_term(t_inf *inf);
void				sl_display_screen(t_inf *inf);
t_inf				*sl_set_inf(t_inf *inf);
void				sl_set_signal(void);
void				sl_exit(char *str, t_inf *inf, int bool);

#endif
