ncurses - doppeltes menu

Post Reply
Message
Author
blubb

ncurses - doppeltes menu

#1 Post by blubb »

folgendes prob:
hatte eine install routine in c gebaut die ich jetzt mit ncurses bissl schoener machen mag, hier der code:

Code: Select all

#include <ncurses.h>
#include <menu.h>

char *choices&#91;&#93; = 
&#123;
   "1 - Keymap",
   "2 - Swap partition",
   "3 - Root partition",
   "4 - Install",
   "5 - Config",
   "6 - Exit",
&#125;;

int main&#40;void&#41;
&#123;
   ITEM **my_items;
   int c;
   MENU *my_menu;
   int n_choices, i;
   ITEM *cur_item;
   
   initscr&#40;&#41;;
   cbreak&#40;&#41;;
   noecho&#40;&#41;;
   keypad&#40;stdscr, TRUE&#41;;
   n_choices = &#40;sizeof&#40;choices&#41; / sizeof&#40;choices&#91;0&#93;&#41;&#41;;     //determine how big is one choices element
   my_items = &#40;ITEM **&#41;calloc&#40;n_choices + 1, sizeof&#40;ITEM *&#41;&#41;; //allocate needed space 
   
   for&#40;i = 0; i < n_choices; i++&#41;
     my_items&#91;i&#93; = new_item&#40;choices&#91;i&#93;, choices&#91;i&#93;&#41;;
   
   my_items&#91;n_choices&#93; = &#40;ITEM *&#41;NULL;
   
   my_menu = new_menu&#40;&#40;ITEM **&#41;my_items&#41;;
   mvprintw&#40;LINES - 2, 0, "Welcome to EDU Linux"&#41;;
   post_menu&#40;my_menu&#41;;
   refresh&#40;&#41;;
   
   while&#40;c = getch&#40;&#41;&#41;
	 &#123;
	    switch&#40;c&#41;
	      &#123;
	       case KEY_DOWN&#58;
		 menu_driver&#40;my_menu, REQ_DOWN_ITEM&#41;;
		 break;
	       case KEY_UP&#58;
		 menu_driver&#40;my_menu, REQ_UP_ITEM&#41;;
		 break;
	      &#125;
	 &#125;
	 
	 free_item&#40;my_items&#91;0&#93;&#41;;
	 free_item&#40;my_items&#91;1&#93;&#41;;
	 free_menu&#40;my_menu&#41;;
	 endwin&#40;&#41;;
&#125;
soweit passt das auch blos zeigt er das panel irgendwie 2x an, check net ganz wieso. und falls noch wer eine funktion kennt wo man ein menu verschieben kann (oder soll ich ein extra fenster dafuer machen?).

thx
blubb

blubb

#2 Post by blubb »

das mit dem menu hab ich jetzt, der descriptor in new_items() musst blos auf NULL gesetzt werden. jetzt braeucht ich noch hilfe wegen dem verschieben...

blubb

Post Reply