menus(3ocurses) 
 
menus --
character based menus package
 
Synopsis 
cc [flag . . .  ] file   -lmenu -locurses [library . . .  ]
#include <menu.h>
 
Description 
The menu  library is built using the curses 
library, and any program using menus  routines must
call one of the curses  initialization routines, such as initscr .
A program using these routines must be compiled with
-lmenu  and -locurses  on the cc  command line.
The menus  package gives the applications programmer a terminal-independent
method of creating and customizing menus for user interaction.
The menus  package includes:
item routines, which are used to create and customize
menu items; and
menu routines, which are used to create and customize
menus, assign pre- and post-processing routines, and display and interact
with menus.
Current default values for item attributes 
The menus  package establishes initial current default values for item
attributes.
During item initialization, each item attribute is assigned the
current default value for that attribute.
An application can change or retrieve a current default attribute value
by calling the appropriate set or retrieve routine with a NULL 
item pointer.
If an application changes a current default item attribute value,
subsequent items created using new_item  will have the new
default attribute value.
(The attributes of previously created items are not changed if a
current default attribute value is changed.)
Routine name index 
The following table lists each menus  routine and the name of the
manual page on which it is described.
 [If this table is unreadable, a preformatted table follows] 
 +---------------------+-----------------------------+
 |menus Routine Name   | Manual Page Name            |
 +---------------------+-----------------------------+
 |current_item         | menu_item_current(3ocurses) |
 +---------------------+-----------------------------+
 |free_item            | menu_item_new(3ocurses)     |
 +---------------------+-----------------------------+
 |free_menu            | menu_new(3ocurses)          |
 +---------------------+-----------------------------+
 |item_count           | menu_items(3ocurses)        |
 +---------------------+-----------------------------+
 |item_description     | menu_item_name(3ocurses)    |
 +---------------------+-----------------------------+
 |item_index           | menu_item_current(3ocurses) |
 +---------------------+-----------------------------+
 |item_init            | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |item_name            | menu_item_name(3ocurses)    |
 +---------------------+-----------------------------+
 |item_opts            | menu_item_opts(3ocurses)    |
 +---------------------+-----------------------------+
 |item_opts_off        | menu_item_opts(3ocurses)    |
 +---------------------+-----------------------------+
 |item_opts_on         | menu_item_opts(3ocurses)    |
 +---------------------+-----------------------------+
 |item_term            | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |item_userptr         | menu_item_userptr(3ocurses) |
 +---------------------+-----------------------------+
 |item_value           | menu_item_value(3ocurses)   |
 +---------------------+-----------------------------+
 |item_visible         | menu_item_visible(3ocurses) |
 +---------------------+-----------------------------+
 |menu_back            | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |menu_driver          | menu_driver(3ocurses)       |
 +---------------------+-----------------------------+
 |menu_fore            | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |menu_format          | menu_format(3ocurses)       |
 +---------------------+-----------------------------+
 |menu_grey            | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |menu_init            | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_items           | menu_items(3ocurses)        |
 +---------------------+-----------------------------+
 |menu_mark            | menu_mark(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_opts            | menu_opts(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_opts_off        | menu_opts(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_opts_on         | menu_opts(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_pad             | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |menu_pattern         | menu_pattern(3ocurses)      |
 +---------------------+-----------------------------+
 
 
 [If this table is unreadable, a preformatted table follows] 
 +---------------------+-----------------------------+
 |menus Routine Name   | Manual Page Name            |
 +---------------------+-----------------------------+
 |menu_sub             | menu_win(3ocurses)          |
 +---------------------+-----------------------------+
 |menu_term            | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |menu_userptr         | menu_userptr(3ocurses)      |
 +---------------------+-----------------------------+
 |menu_win             | menu_win(3ocurses)          |
 +---------------------+-----------------------------+
 |new_item             | menu_item_new(3ocurses)     |
 +---------------------+-----------------------------+
 |new_menu             | menu_new(3ocurses)          |
 +---------------------+-----------------------------+
 |pos_menu_cursor      | menu_cursor(3ocurses)       |
 +---------------------+-----------------------------+
 |post_menu            | menu_post(3ocurses)         |
 +---------------------+-----------------------------+
 |scale_menu           | menu_win(3ocurses)          |
 +---------------------+-----------------------------+
 |set_current_item     | menu_item_current(3ocurses) |
 +---------------------+-----------------------------+
 |set_item_init        | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |set_item_opts        | menu_item_opts(3ocurses)    |
 +---------------------+-----------------------------+
 |set_item_term        | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |set_item_userptr     | menu_item_userptr(3ocurses) |
 +---------------------+-----------------------------+
 |set_item_value       | menu_item_value(3ocurses)   |
 +---------------------+-----------------------------+
 |set_menu_back        | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |set_menu_fore        | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |set_menu_format      | menu_format(3ocurses)       |
 +---------------------+-----------------------------+
 |set_menu_grey        | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |set_menu_init        | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |set_menu_items       | menu_items(3ocurses)        |
 +---------------------+-----------------------------+
 |set_menu_mark        | menu_mark(3ocurses)         |
 +---------------------+-----------------------------+
 |set_menu_opts        | menu_opts(3ocurses)         |
 +---------------------+-----------------------------+
 |set_menu_pad         | menu_attributes(3ocurses)   |
 +---------------------+-----------------------------+
 |set_menu_pattern     | menu_pattern(3ocurses)      |
 +---------------------+-----------------------------+
 |set_menu_sub         | menu_win(3ocurses)          |
 +---------------------+-----------------------------+
 
 
 [If this table is unreadable, a preformatted table follows] 
 +---------------------+-----------------------------+
 |menus Routine Name   | Manual Page Name            |
 +---------------------+-----------------------------+
 |set_menu_term        | menu_hook(3ocurses)         |
 +---------------------+-----------------------------+
 |set_menu_userptr     | menu_userptr(3ocurses)      |
 +---------------------+-----------------------------+
 |set_menu_win         | menu_win(3ocurses)          |
 +---------------------+-----------------------------+
 |set_top_row          | menu_item_current(3ocurses) |
 +---------------------+-----------------------------+
 |top_row              | menu_item_current(3ocurses) |
 +---------------------+-----------------------------+
 |unpost_menu          | menu_post(3ocurses)         |
 +---------------------+-----------------------------+
 
 
<Return> value 
Routines that return pointers always return NULL  on error.
Routines that return an integer return one of the following:
 [If this table is unreadable, a preformatted table follows] 
E_OK
 
-
 
The routine returned successfully.
  
E_SYSTEM_ERROR
 
-
 
System error.
  
E_BAD_ARGUMENT
 
-
 
An incorrect argument was passed to the routine.
  
E_POSTED
 
-
 
The menu is already posted.
  
E_CONNECTED
 
-
 
One or more items are already connected
  
 
 
 
 
to another menu.
  
E_BAD_STATE
 
-
 
The routine was called from an initialization or termination function.
  
E_NO_ROOM
 
-
 
The menu does not fit within its subwindow.
  
E_NOT_POSTED
 
-
 
The menu has not been posted.
  
E_UNKNOWN_COMMAND
 
-
 
An unknown request was passed to the menu driver.
  
E_NO_MATCH
 
-
 
The character failed to match.
  
E_NOT_SELECTABLE
 
-
 
The item cannot be selected.
  
E_NOT_CONNECTED
 
-
 
No items are connected to the menu.
  
E_REQUEST_DENIED
 
-
 
The menu driver could not process the request.
  
 E_OK                -   The routine returned successfully.
 E_SYSTEM_ERROR      -   System error.
 E_BAD_ARGUMENT      -   An incorrect argument was passed to the
                         routine.
 E_POSTED            -   The menu is already posted.
 E_CONNECTED         -   One or more items are already connected
                         to another menu.
 E_BAD_STATE         -   The routine was called from an
                         initialization or termination function.
 E_NO_ROOM           -   The menu does not fit within its subwindow.
 E_NOT_POSTED        -   The menu has not been posted.
 E_UNKNOWN_COMMAND   -   An unknown request was passed to the menu
                         driver.
 E_NO_MATCH          -   The character failed to match.
 E_NOT_SELECTABLE    -   The item cannot be selected.
 E_NOT_CONNECTED     -   No items are connected to the menu.
 E_REQUEST_DENIED    -   The menu driver could not process the
                         request.
 
 
Notices 
The header file menu.h  automatically includes the header files
eti.h  and ocurses.h .
References 
curses (3ocurses) ,
menus (3ocurses) 
 
© 2004 The SCO Group, Inc.  All rights reserved. 
 
UnixWare 7 Release 7.1.4 - 25 April 2004