DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

menus(S-osr5)


menus -- character based menus package

Syntax

cc ... -lmenu -lcurses

#include <menu.h>

Description

The menu(S-osr5) library is built using the curses(S-osr5) library, and any program using menus routines must call one of the curses routines must initialization routines, such as initscr(S-osr5).

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 a 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(S-osr5) 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.

Routine Name Manual Page Name
current_item menu_item_current(S-osr5)
free_item menu_item_new(S-osr5)
free_menu menu_new(S-osr5)
item_count menu_items(S-osr5)
item_description menu_item_name(S-osr5)
item_index menu_item_current(S-osr5)
item_init menu_hook(S-osr5)
item_name menu_item_name(S-osr5)
item_opts menu_item_opts(S-osr5)
item_opts_off menu_item_opts(S-osr5)
item_opts_on menu_item_opts(S-osr5)
item_term menu_hook(S-osr5)
item_userptr menu_item_userptr(S-osr5)
item_value menu_item_value(S-osr5)
item_visible menu_item_visible(S-osr5)
menu_back menu_attributes(S-osr5)
menu_driver menu_driver(S-osr5)
menu_fore menu_attributes(S-osr5)
menu_format menu_format(S-osr5)
menu_grey menu_attributes(S-osr5)
menu_init menu_hook(S-osr5)
menu_items menu_items(S-osr5)
menu_mark menu_mark(S-osr5)
menu_opts menu_opts(S-osr5)
menu_opts_off menu_opts(S-osr5)
menu_opts_on menu_opts(S-osr5)
menu_pad menu_attributes(S-osr5)
menu_pattern menu_pattern(S-osr5)
menu_sub menu_win(S-osr5)
menu_term menu_hook(S-osr5)
menu_userptr menu_userptr(S-osr5)
menu_win menu_win(S-osr5)
new_item menu_item_new(S-osr5)
new_menu menu_new(S-osr5)
pos_menu_cursor menu_cursor(S-osr5)
post_menu menu_post(S-osr5)
scale_menu menu_win(S-osr5)
set_current_item menu_item_current(S-osr5)
set_item_init menu_hook(S-osr5)
set_item_opts menu_item_opts(S-osr5)
set_item_term menu_hook(S-osr5)
set_item_userptr menu_item_userptr(S-osr5)
set_item_value menu_item_value(S-osr5)
set_menu_back menu_attributes(S-osr5)
set_menu_fore menu_attributes(S-osr5)
set_menu_format menu_format(S-osr5)
set_menu_grey menu_attributes(S-osr5)
set_menu_init menu_hook(S-osr5)
set_menu_items menu_items(S-osr5)
set_menu_mark menu_mark(S-osr5)
set_menu_opts menu_opts(S-osr5)
set_menu_pad menu_attributes(S-osr5)
set_menu_pattern menu_pattern(S-osr5)
set_menu_sub menu_win(S-osr5)
set_menu_term menu_hook(S-osr5)
set_menu_userptr menu_userptr(S-osr5)
set_menu_win menu_win(S-osr5)
set_top_row menu_item_current(S-osr5)
top_row menu_item_current(S-osr5)
unpost_menu menu_post(S-osr5)

 Routine Name           Manual Page Name
 current_item           menu_item_current(S-osr5)
 free_item              menu_item_new(S-osr5)
 free_menu              menu_new(S-osr5)
 item_count             menu_items(S-osr5)
 item_description       menu_item_name(S-osr5)
 item_index             menu_item_current(S-osr5)
 item_init              menu_hook(S-osr5)
 item_name              menu_item_name(S-osr5)
 item_opts              menu_item_opts(S-osr5)
 item_opts_off          menu_item_opts(S-osr5)
 item_opts_on           menu_item_opts(S-osr5)
 item_term              menu_hook(S-osr5)
 item_userptr           menu_item_userptr(S-osr5)
 item_value             menu_item_value(S-osr5)
 item_visible           menu_item_visible(S-osr5)
 menu_back              menu_attributes(S-osr5)
 menu_driver            menu_driver(S-osr5)
 menu_fore              menu_attributes(S-osr5)
 menu_format            menu_format(S-osr5)
 menu_grey              menu_attributes(S-osr5)
 menu_init              menu_hook(S-osr5)
 menu_items             menu_items(S-osr5)
 menu_mark              menu_mark(S-osr5)
 menu_opts              menu_opts(S-osr5)
 menu_opts_off          menu_opts(S-osr5)
 menu_opts_on           menu_opts(S-osr5)
 menu_pad               menu_attributes(S-osr5)
 menu_pattern           menu_pattern(S-osr5)
 menu_sub               menu_win(S-osr5)
 menu_term              menu_hook(S-osr5)
 menu_userptr           menu_userptr(S-osr5)
 menu_win               menu_win(S-osr5)
 new_item               menu_item_new(S-osr5)
 new_menu               menu_new(S-osr5)
 pos_menu_cursor        menu_cursor(S-osr5)
 post_menu              menu_post(S-osr5)
 scale_menu             menu_win(S-osr5)
 set_current_item       menu_item_current(S-osr5)
 set_item_init          menu_hook(S-osr5)
 set_item_opts          menu_item_opts(S-osr5)
 set_item_term          menu_hook(S-osr5)
 set_item_userptr       menu_item_userptr(S-osr5)
 set_item_value         menu_item_value(S-osr5)
 set_menu_back          menu_attributes(S-osr5)
 set_menu_fore          menu_attributes(S-osr5)
 set_menu_format        menu_format(S-osr5)
 set_menu_grey          menu_attributes(S-osr5)
 set_menu_init          menu_hook(S-osr5)
 set_menu_items         menu_items(S-osr5)
 set_menu_mark          menu_mark(S-osr5)
 set_menu_opts          menu_opts(S-osr5)
 set_menu_pad           menu_attributes(S-osr5)
 set_menu_pattern       menu_pattern(S-osr5)
 set_menu_sub           menu_win(S-osr5)
 set_menu_term          menu_hook(S-osr5)
 set_menu_userptr       menu_userptr(S-osr5)
 set_menu_win           menu_win(S-osr5)
 set_top_row            menu_item_current(S-osr5)
 top_row                menu_item_current(S-osr5)
 unpost_menu            menu_post(S-osr5)

Return values

Routines that return pointers always return NULL on error. Routines that return an integer return one of the following:

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

Warning

The header file menu.h automatically includes the header files eti.h and curses.h.

Files


/usr/lib/libmenu.a
the library

See also

curses(S-osr5) and S man pages whose names begin with ``menu_'' for detailed routine descriptions

Standards conformance

menus(S-osr5) is not part of any currently supported standard; it was developed by UNIX System Laboratories, Inc. and is maintained by The SCO Group.
© 2005 The SCO Group, Inc. All rights reserved.
SCO OpenServer Release 6.0.0 -- 02 June 2005