# menu_win 3x

    menu_win(3x)                                                      menu_win(3x)

## NAME

           menu_win - make and break menu window and subwindow associations

## SYNOPSIS

           #include <menu.h>
           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);

## DESCRIPTION

           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
           selection.

           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
           both.

           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.

## RETURN VALUE

           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.

           E_SYSTEM_ERROR
                System error occurred (see errno).

           E_BAD_ARGUMENT
                Routine detected an incorrect or out-of-range argument.

           E_POSTED
                The menu has already been posted.

           E_NOT_CONNECTED
                No items are connected to the menu.

## SEE ALSO

           curses(3x), curs_variables(3x), menu(3x).

## NOTES

           The  header  file  <menu.h>  automatically  includes  the  header  file
           <curses.h>.

## PORTABILITY

           These  routines  emulate the System V menu library.  They were not sup-
           ported on Version 7 or BSD versions.

## AUTHORS

           Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric S.
           Raymond.

                                                                      menu_win(3x)