menu_win - make and break menu window and subwindow associations
int set_menu_win(MENU *menu, WINDOW *win);
WINDOW *menu_win(const MENU *menu);
int set_menu_sub(MENU *menu, WINDOW *sub);
WINDOW *menu_sub(const MENU *menu);
int scale_menu(const MENU *menu, int *rows, int *columns);
Every menu has an associated pair of curses windows. The menu window
displays any title and border associated with the window; the menu sub-
window displays the items of the menu that are currently available for
The first four functions get and set those windows. It is not neces-
sary to set either window; by default, the driver code uses stdscr for
In the set_ functions, window argument of NULL is treated as though it
were stsdcr. A menu argument of NULL is treated as a request to change
the system default menu window or subwindow.
The function scale_menu returns the minimum size required for the sub-
window of menu.
Routines that return pointers return NULL on error. Routines that
return an integer return one of the following error codes:
E_OK The routine succeeded.
System error occurred (see errno).
Routine detected an incorrect or out-of-range argument.
The menu has already been posted.
No items are connected to the menu.
The header file <menu.h> automatically includes the header file
These routines emulate the System V menu library. They were not sup-
ported on Version 7 or BSD versions.
Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S.