'\" t
.TH menu_new 3X ""
.SH NAME
\fBmenu_new\fR - create and destroy menus
.SH SYNOPSIS
\fB#include <menu.h>\fR
.br
MENU *new_menu(ITEM **items);
.br
char *free_menu(MENU *menu);
.br
.SH DESCRIPTION
The function \fBnew_menu\fR creates a new menu connected to a specified item
pointer array (which must be \fBNULL\fR-terminated).

The function \fBfree_menu\fR discomnnects \fImenu\fR from its item array
and frees the storage allocated for the menu.
.SH RETURN VALUE
The function \fBnew_menu\fR returns \fBNULL\fR on error.

The function \fBfree_menu\fR returns one of the following:
.TP 5
\fBE_OK\fR
The routine succeeded.
.TP 5
\fBE_SYSTEM_ERROR\fR
System error occurred (see \fBerrno\fR).
.TP 5
\fBE_BAD_ARGUMENT\fR
Routine detected an incorrect or out-of-range argument.
.TP 5
\fBE_POSTED\fR
The menu has already been posted.
.SH SEE ALSO
\fBcurses\fR(3X), \fBmenu\fR(3X).
.SH NOTES
The header file \fB<menu.h>\fR automatically includes the header file
\fB<curses.h>\fR.
.SH PORTABILITY
These routines emulate the System V menu library.  They were not supported on
Version 7 or BSD versions.
.SH AUTHORS
Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric
S. Raymond.
.\"#
.\"# The following sets edit modes for GNU EMACS
.\"# Local Variables:
.\"# mode:nroff
.\"# fill-column:79
.\"# End: