X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Fmitem_new.3x;h=ce52044f128052e50e03cf1d08aa3aca1073a18f;hp=e61febfa9c67efaa8bb07491ed770802d729e363;hb=5925150381bb42a4d8c7116d62c348a7b84309f3;hpb=3a9b6a3bf0269231bef7de74757a910dedd04e0c diff --git a/man/mitem_new.3x b/man/mitem_new.3x index e61febfa..ce52044f 100644 --- a/man/mitem_new.3x +++ b/man/mitem_new.3x @@ -1,49 +1,91 @@ '\" t +.\"*************************************************************************** +.\" Copyright 2018-2019,2020 Thomas E. Dickey * +.\" Copyright 1998-2010,2015 Free Software Foundation, Inc. * +.\" * +.\" Permission is hereby granted, free of charge, to any person obtaining a * +.\" copy of this software and associated documentation files (the * +.\" "Software"), to deal in the Software without restriction, including * +.\" without limitation the rights to use, copy, modify, merge, publish, * +.\" distribute, distribute with modifications, sublicense, and/or sell * +.\" copies of the Software, and to permit persons to whom the Software is * +.\" furnished to do so, subject to the following conditions: * +.\" * +.\" The above copyright notice and this permission notice shall be included * +.\" in all copies or substantial portions of the Software. * +.\" * +.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * +.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * +.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * +.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * +.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * +.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * +.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. * +.\" * +.\" Except as contained in this notice, the name(s) of the above copyright * +.\" holders shall not be used in advertising or otherwise to promote the * +.\" sale, use or other dealings in this Software without prior written * +.\" authorization. * +.\"*************************************************************************** +.\" +.\" $Id: mitem_new.3x,v 1.19 2020/10/18 00:37:03 tom Exp $ .TH mitem_new 3X "" .SH NAME -\fBmitem_new\fR - create and destroy menu items +\fBnew_item\fP, +\fBfree_item\fR \- create and destroy menu items .SH SYNOPSIS \fB#include \fR +.sp +\fBITEM *new_item(const char *\fP\fIname\fP\fB, const char *\fP\fIdescription\fP\fB);\fP .br -ITEM *new_item(const char *name, const char *description); -.br -int free_item(ITEM *item); +\fBint free_item(ITEM *\fP\fIitem\fP\fB);\fP .br .SH DESCRIPTION The function \fBnew_item\fR allocates a new item and initializes it from the \fBname\fR and \fBdescription\fR pointers. +Please notice that the item stores +only the pointers to the name and description. +Those pointers must be valid +during the lifetime of the item. +So you should be very careful with names +or descriptions allocated on the stack of some routines. .br The function \fBfree_item\fR de-allocates an item. +Please notice that it +is the responsibility of the application to release the memory for the +name or the description of the item. .SH RETURN VALUE The function \fBnew_item\fR returns \fBNULL\fR on error. - +It sets \fBerrno\fP according to the function's failure: +.TP 5 +.B E_BAD_ARGUMENT +Routine detected an incorrect or out-of-range argument. +.TP 5 +.B E_SYSTEM_ERROR +System error occurred, e.g., malloc failure. +.PP The function \fBfree_item\fR returns one of the following: .TP 5 -\fBE_OK\fR +.B E_OK The routine succeeded. .TP 5 -\fBE_SYSTEM_ERROR\fR -System error occurred (see \fBerrno\fR). -.TP 5 -\fBE_BAD_ARGUMENT\fR +.B E_BAD_ARGUMENT Routine detected an incorrect or out-of-range argument. .TP 5 -\fBE_CONNECTED\fR +.B E_CONNECTED Item is connected to a menu. +.TP 5 +.B E_SYSTEM_ERROR +System error occurred (see \fBerrno\fR(3)). .SH SEE ALSO \fBcurses\fR(3X), \fBmenu\fR(3X). .SH NOTES The header file \fB\fR automatically includes the header file \fB\fR. .SH PORTABILITY -These routines emulate the System V menu library. They were not supported on +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: +Juergen Pfeifer. +Manual pages and adaptation for new curses by Eric S. Raymond.