blob: 1a133745a9b72df5e0c9087c1b872f5666731fb5 [file] [log] [blame]
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05301.\"***************************************************************************
micky3879b9f5e72025-07-08 18:04:53 -04002.\" Copyright 2018-2023,2024 Thomas E. Dickey *
3.\" Copyright 1998-2010,2015 Free Software Foundation, Inc. *
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05304.\" *
5.\" Permission is hereby granted, free of charge, to any person obtaining a *
6.\" copy of this software and associated documentation files (the *
7.\" "Software"), to deal in the Software without restriction, including *
8.\" without limitation the rights to use, copy, modify, merge, publish, *
9.\" distribute, distribute with modifications, sublicense, and/or sell *
10.\" copies of the Software, and to permit persons to whom the Software is *
11.\" furnished to do so, subject to the following conditions: *
12.\" *
13.\" The above copyright notice and this permission notice shall be included *
14.\" in all copies or substantial portions of the Software. *
15.\" *
16.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
17.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
18.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
19.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
20.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
21.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
22.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
23.\" *
24.\" Except as contained in this notice, the name(s) of the above copyright *
25.\" holders shall not be used in advertising or otherwise to promote the *
26.\" sale, use or other dealings in this Software without prior written *
27.\" authorization. *
28.\"***************************************************************************
29.\"
micky3879b9f5e72025-07-08 18:04:53 -040030.\" $Id: menu_new.3x,v 1.35 2024/03/16 15:35:01 tom Exp $
31.TH menu_new 3X 2024-03-16 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053032.SH NAME
micky3879b9f5e72025-07-08 18:04:53 -040033\fBnew_menu\fP,
34\fBfree_menu\fP \-
35create and destroy menus
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053036.SH SYNOPSIS
micky3879b9f5e72025-07-08 18:04:53 -040037.nf
38\fB#include <menu.h>
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053039.PP
micky3879b9f5e72025-07-08 18:04:53 -040040\fBMENU *new_menu(ITEM **\fIitems\fP);
41\fBint free_menu(MENU *\fImenu\fP);
42.fi
43.SH DESCRIPTION
44The function \fBnew_menu\fP creates a new menu connected to a specified item
45pointer array (which must be \fBNULL\fP-terminated).
46.PP
47The function \fBfree_menu\fP disconnects \fImenu\fP from its item array
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053048and frees the storage allocated for the menu.
49.SH RETURN VALUE
micky3879b9f5e72025-07-08 18:04:53 -040050The function \fBnew_menu\fP returns \fBNULL\fP on error.
51It sets \fBerrno\fP according to the function's failure:
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053052.TP 5
53.B E_NOT_CONNECTED
54No items are connected to the menu.
55.TP 5
56.B E_SYSTEM_ERROR
57System error occurred, e.g., malloc failure.
58.PP
micky3879b9f5e72025-07-08 18:04:53 -040059The function \fBfree_menu\fP returns one of the following:
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053060.TP 5
61.B E_OK
62The routine succeeded.
63.TP 5
64.B E_SYSTEM_ERROR
micky3879b9f5e72025-07-08 18:04:53 -040065System error occurred (see \fBerrno\fP(3)).
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053066.TP 5
67.B E_BAD_ARGUMENT
68Routine detected an incorrect or out-of-range argument.
69.TP 5
70.B E_POSTED
71The menu has already been posted.
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053072.SH PORTABILITY
micky3879b9f5e72025-07-08 18:04:53 -040073These routines emulate the System V menu library.
74They were not supported on
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053075Version 7 or BSD versions.
76.SH AUTHORS
micky3879b9f5e72025-07-08 18:04:53 -040077Juergen Pfeifer.
78Manual pages and adaptation for new curses by Eric S. Raymond.
79.SH SEE ALSO
80\fB\%curses\fP(3X),
81\fB\%menu\fP(3X)