## NAME

           menu_new - create and destroy menus

## SYNOPSIS

           #include <menu.h>
           MENU *new_menu(ITEM **items);
           int free_menu(MENU *menu);

## DESCRIPTION

           The  function  new_menu  creates a new menu connected to a
           specified item pointer array (which  must  be  NULL-termi-
           nated).

           The  function  free_menu  disconnects  menu  from its item
           array and frees the storage allocated for the menu.

## RETURN VALUE

           The function new_menu returns NULL on error.

           The function free_menu returns one of the following:

           E_OK The routine succeeded.

           E_SYSTEM_ERROR
                System error occurred (see errno).

           E_BAD_ARGUMENT
                Routine detected an incorrect or  out-of-range  argu-
                ment.

           E_POSTED
                The menu has already been posted.

## SEE ALSO

           curses(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 supported on Version 7 or BSD versions.

## AUTHORS

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