summaryrefslogtreecommitdiff
path: root/libterm/term.h
blob: 0be7391788449fccbb36d979c1d0f8e0e095619c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#ifndef __LIBTERM_TERM_H
#define __LIBTERM_TERM_H

#include <termios.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <unistd.h>

#include "screen_modes.h"
#include "debug.h"


typedef struct term_screen
{
	int ifd, ofd;
	struct termios orig_i, orig_o;
	struct termios raw_i, raw_o;
	screen_mode_e mode;
} term_screen;

int term_init( term_screen *ts );
int term_get_maxcol( term_screen *ts );
int term_get_maxrow( term_screen *ts );
int term_cur_get_c( term_screen *ts );
int term_cur_get_r( term_screen *ts );
int term_cur_set_c( term_screen *ts, unsigned int pc );
int term_cur_set_r( term_screen *ts, unsigned int pr );
int term_cur_set_cr( term_screen *ts, unsigned int pc , unsigned int pr );
int term_set_speed( term_screen *ts );
int term_clr_scr( term_screen *ts );
int term_set_raw_mode( term_screen *ts );
int term_mode_rows( term_screen *ts );
int term_mode_columns( term_screen *ts );
void term_set_orig_mode( term_screen *ts );

#endif