diff options
Diffstat (limited to 'languages/cpp/app_templates/cppcurseshello/main.cpp')
-rw-r--r-- | languages/cpp/app_templates/cppcurseshello/main.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/languages/cpp/app_templates/cppcurseshello/main.cpp b/languages/cpp/app_templates/cppcurseshello/main.cpp new file mode 100644 index 00000000..3e23a5df --- /dev/null +++ b/languages/cpp/app_templates/cppcurseshello/main.cpp @@ -0,0 +1,49 @@ +%{CPP_TEMPLATE} + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include <ncurses.h> + +void create_box(int y, int x, int w, int h) +{ + mvaddch(y, x, '+'); + mvaddch(y, x + w, '+'); + mvaddch(y + h, x, '+'); + mvaddch(y + h, x + w, '+'); + mvhline(y, x + 1, '-', w - 1); + mvhline(y + h, x + 1, '-', w - 1); + mvvline(y + 1, x, '|', h - 1); + mvvline(y + 1, x + w, '|', h - 1); +} + +int main() +{ + int startx, starty, height, width; + + initscr(); + start_color(); + cbreak(); + keypad(stdscr, TRUE); + noecho(); + + init_pair(1, COLOR_BLACK, COLOR_CYAN); + + height = 2; + width = 30; + starty = (LINES - height)/2; + startx = (COLS - width)/2; + + attron(COLOR_PAIR(1)); + + create_box(starty, startx, width, height); + mvprintw(starty, startx + 3, " Hello World! " ); + mvprintw(starty+1,startx+1," Type any char to exit "); + mvprintw(0,0,""); + refresh(); + getch(); + + endwin(); + return 0; +} |