mitem_new(3x) — Linux manual page


mitem_new(3X)                                              mitem_new(3X)

NAME         top

       new_item, free_item - create and destroy menu items

SYNOPSIS         top

       #include <menu.h>

       ITEM *new_item(const char *name, const char *description);
       int free_item(ITEM *item);

DESCRIPTION         top

       The function new_item allocates a new item and initializes it
       from the name and description 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.
       The function free_item 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.

RETURN VALUE         top

       The function new_item returns NULL on error.  It sets errno
       according to the function's failure:

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

            System error occurred, e.g., malloc failure.

       The function free_item returns one of the following:

       E_OK The routine succeeded.

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

            Item is connected to a menu.

            System error occurred (see errno(3)).

SEE ALSO         top

       curses(3X), menu(3X).

NOTES         top

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

PORTABILITY         top

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

AUTHORS         top

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

COLOPHON         top

       This page is part of the ncurses (new curses) project.
       Information about the project can be found at 
       ⟨⟩.  If you have
       a bug report for this manual page, send it to  This page was obtained from the
       project's upstream Git mirror of the CVS repository
       ⟨⟩ on 2024-06-14.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2023-03-12.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there
       is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to