up through example 4.7
This commit is contained in:
parent
b45b438a4f
commit
da3ee678a8
@ -1,31 +1,37 @@
|
||||
#include <ncurses.h>
|
||||
|
||||
void _do_setup(){
|
||||
initscr();
|
||||
raw();
|
||||
keypad(stdscr, TRUE);
|
||||
noecho();
|
||||
}
|
||||
|
||||
|
||||
void _display_and_quit(){
|
||||
refresh();
|
||||
getch();
|
||||
endwin();
|
||||
}
|
||||
|
||||
|
||||
int main()
|
||||
{ int ch;
|
||||
{
|
||||
int ch;
|
||||
_do_setup();
|
||||
|
||||
initscr(); /* Start curses mode */
|
||||
raw(); /* Line buffering disabled */
|
||||
keypad(stdscr, TRUE); /* We get F1, F2 etc.. */
|
||||
noecho(); /* Don't echo() while we do getch */
|
||||
|
||||
printw("Type any character to see it in bold\n");
|
||||
ch = getch(); /* If raw() hadn't been called
|
||||
* we have to press enter before it
|
||||
* gets to the program */
|
||||
if(ch == KEY_F(1)) /* Without keypad enabled this will */
|
||||
printw("F1 Key pressed");/* not get to us either */
|
||||
/* Without noecho() some ugly escape
|
||||
* charachters might have been printed
|
||||
* on screen */
|
||||
else
|
||||
{ printw("The pressed key is ");
|
||||
printw("Type any character to see it in bold\n");
|
||||
ch = getch();
|
||||
if(ch == KEY_F(1)){
|
||||
printw("F1 Key pressed");
|
||||
} else {
|
||||
printw("The pressed key is ");
|
||||
attron(A_BOLD);
|
||||
printw("%c", ch);
|
||||
attroff(A_BOLD);
|
||||
}
|
||||
refresh(); /* Print it on to the real screen */
|
||||
getch(); /* Wait for user input */
|
||||
endwin(); /* End curses mode */
|
||||
|
||||
_display_and_quit();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user