separate initscr(3x) wrapper to new function
This commit is contained in:
parent
79272e8421
commit
a55c25d319
2 changed files with 14 additions and 7 deletions
20
cli/curse.c
20
cli/curse.c
|
|
@ -31,25 +31,31 @@ inline void init_ncurses(void) {
|
||||||
setlocale(LC_ALL, CRS_LOCALE);
|
setlocale(LC_ALL, CRS_LOCALE);
|
||||||
|
|
||||||
/* NCurses Init */
|
/* NCurses Init */
|
||||||
*stdscr = initscr();
|
|
||||||
start_color();
|
start_color();
|
||||||
|
|
||||||
/* Screen Configuration */
|
/* Screen Configuration */
|
||||||
termmode(WMODE_CBREAK);
|
termmode(WMODE_CBREAK);
|
||||||
noecho(); // manually echo <- getch(3x)
|
noecho(); // manually echo <- getch(3x)
|
||||||
nodelay(*stdscr, TRUE); // getch(3x) nonblocking IO
|
|
||||||
keypad(*stdscr, TRUE); // allow function keys
|
|
||||||
// intrflush(3x) - flush terminal input buffer on interrupt key
|
|
||||||
intrflush(*stdscr, FALSE);
|
|
||||||
|
|
||||||
curs_set(0); // hide cursor
|
curs_set(0); // hide cursor
|
||||||
|
|
||||||
// init_pair(1, COLOR_BLACK, COLOR_CYAN);
|
// init_pair(1, COLOR_BLACK, COLOR_CYAN);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
WINDOW *init_window(int x, int y, int width, int height) {
|
||||||
|
WINDOW *win = newwin(height, width, y, x);
|
||||||
|
|
||||||
|
nodelay(win, TRUE); // getch(3x) nonblocking IO
|
||||||
|
keypad(win, TRUE); // allow function keys
|
||||||
|
// intrflush(3x) - flush terminal input buffer on interrupt key
|
||||||
|
intrflush(win, FALSE);
|
||||||
|
|
||||||
|
return win;
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
WINDOW *stdscr;
|
init_ncurses();
|
||||||
crs_init(&stdscr);
|
WINDOW *stdscr = init_window(0, 0, 0, 0);
|
||||||
|
|
||||||
// Set background
|
// Set background
|
||||||
wbkgd(stdscr, COLOR_PAIR(1));
|
wbkgd(stdscr, COLOR_PAIR(1));
|
||||||
|
|
|
||||||
|
|
@ -17,5 +17,6 @@ enum crs_mode {
|
||||||
|
|
||||||
int termmode(enum crs_mode mode);
|
int termmode(enum crs_mode mode);
|
||||||
void init_ncurses(void);
|
void init_ncurses(void);
|
||||||
|
WINDOW *init_window(int x, int y, int width, int height);
|
||||||
|
|
||||||
#endif /* DORNE_CURSE_H */
|
#endif /* DORNE_CURSE_H */
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue