summaryrefslogtreecommitdiff
path: root/src/essais/test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/essais/test.c')
-rw-r--r--src/essais/test.c86
1 files changed, 86 insertions, 0 deletions
diff --git a/src/essais/test.c b/src/essais/test.c
new file mode 100644
index 0000000..3a3e73f
--- /dev/null
+++ b/src/essais/test.c
@@ -0,0 +1,86 @@
+#include <ncurses.h>
+
+WINDOW *create_newwin(int height, int width, int starty, int startx)
+{ WINDOW *local_win;
+
+ local_win = newwin(height, width, starty, startx);
+ wborder(local_win, '|', '|', '-', '-', '+', '+', '+', '+');
+// box(local_win,0,0);
+ wrefresh(local_win);
+ return local_win;
+}
+
+int main() {
+
+/*
+ A_NORMAL Normal display (no highlight)
+ A_STANDOUT Best highlighting mode of the terminal.
+ A_UNDERLINE Underlining
+ A_REVERSE Reverse video
+ A_BLINK Blinking
+ A_DIM Half bright
+ A_BOLD Extra bright or bold
+ A_PROTECT Protected mode
+ A_INVIS Invisible or blank mode
+ A_ALTCHARSET Alternate character set
+ A_CHARTEXT Bit-mask to extract a character
+ COLOR_PAIR(n) Color-pair number n
+*/
+ int end, ch;
+ int row,col;
+ char msg[256];
+ WINDOW *w1;
+ MEVENT event;
+
+ initscr();
+ getmaxyx(stdscr,row,col);
+ raw();
+ keypad(stdscr, TRUE);
+ noecho();
+
+ start_color();
+ init_pair(1, COLOR_WHITE, COLOR_BLUE);
+
+ mousemask(ALL_MOUSE_EVENTS, NULL);
+//http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/windows.html
+ //w1 = create_newwin(row/2, col/2, row/4, col/4);
+ w1 = create_newwin(10, 10, 10, 10);
+ attron(COLOR_PAIR(1) | A_BOLD);
+ mvprintw(row-2,0,"This screen has %d rows and %d columns\n",row,col);
+ attroff(COLOR_PAIR(1) | A_BOLD);
+ move(0,0);
+
+
+ end=0;
+ while (!end) {
+ refresh();
+ ch=getch();
+ switch(ch) {
+ case KEY_MOUSE:
+ if(getmouse(&event) == OK) { /* When the user clicks left mouse button */
+ if(event.bstate & BUTTON1_PRESSED) {
+ attrset(A_NORMAL);
+ printw("mouse button1\n");
+ }
+ }
+ break;
+ case KEY_F(2):
+ attrset(A_NORMAL);
+ printw("F2 key\n");
+ break;
+ case 'q':
+ end=1;
+ break;
+ case 'b':
+ mvwchgat(w1,1,0,-1, A_REVERSE, 0, NULL);
+ break;
+ default:
+ sprintf(msg, "%c key\n", ch);
+ wattrset(w1,A_BOLD | A_UNDERLINE);
+ wprintw(w1, msg);
+ }
+ }
+ endwin();
+
+ return 0;
+}