experiments

All kinds of coding experiments
Log | Files | Refs | Submodules

ncmenu.c (892B)


      1 #include <ncurses.h>
      2 
      3 int main(){
      4     initscr();
      5     noecho();
      6     cbreak();                      
      7 
      8     int yMax, xMax;
      9     getmaxyx(stdscr, yMax, xMax);
     10 
     11     WINDOW * menuwin = newwin(6, xMax - 12, yMax-8, 5);
     12     box(menuwin,0, 0);
     13     refresh();
     14     wrefresh(menuwin);
     15 
     16     char num;
     17     int posX=xMax - 30, posY=yMax - 5;
     18     while(num != '0'){
     19         num = getch();
     20         mvaddch(posY, posX, ' ');
     21         switch(num){
     22             case 'n':
     23                 posY++;
     24                 break;
     25             case 'e':
     26                 posY--;
     27                 break;
     28             case 'h':
     29                 posX--;
     30                 break;
     31             case 'i':
     32                 posX++;
     33                 break;
     34             default:
     35                 break;
     36         }
     37         mvaddch(posY, posX, 'o');
     38         refresh();
     39         wrefresh(menuwin);
     40     }
     41     endwin();                  
     42 
     43     return 0;
     44 }