Seth Woolley's Man Viewer

Manual for menu - man 3x menu

([section] manual, -k keyword, -K [section] search, -f whatis)
man plain no title

menu(3x,n,n tk_menuSetFocus)(3X)                                                              menu(3x,n,n tk_menuSetFocus)(3X)



NAME
       menu(3x,n,n tk_menuSetFocus) - curses extension for programming menus

SYNOPSIS
       #include <menu.h>

DESCRIPTION
       The menu(3x,n,n tk_menuSetFocus) library provides terminal-independent facilities for composing
       menu(3x,n,n tk_menuSetFocus) systems on character-cell terminals.  The library  includes:  item
       routines,  which create and modify menu(3x,n,n tk_menuSetFocus) items; and menu(3x,n,n tk_menuSetFocus) routines, which
       group items into menus, display menus on the screen, and handle  inter-
       action with the user.

       The menu(3x,n,n tk_menuSetFocus) library uses the curses libraries, and a curses initialization
       routine such as initscr must be called before using any of these  func-
       tions.  To use the menu(3x,n,n tk_menuSetFocus) library, link(1,2) with the options -lmenu -lcurses.


   Current Default Values for Item Attributes
       The menu(3x,n,n tk_menuSetFocus) library maintains a default value for  item  attributes.   You
       can  get  or  set(7,n,1 builtins)  this default by calling the appropriate get_ or set_
       routine with a NULL item pointer.  Changing this default  with  a  set_
       function affects future item creations, but does not change the render-
       ing of items already created.


   Routine Name Index
       The following table lists each menu(3x,n,n tk_menuSetFocus) routine and the name of the  manual
       page on which it is described.


       curses Routine Name    Manual Page Name
       --------------------------------------------
       current_item           mitem_current(3X)
       free_item              mitem_new(3X)
       free_menu              menu_new(3X)
       item_count             menu_items(3X)
       item_description       mitem_name(3X)
       item_index             mitem_current(3X)
       item_init              menu_hook(3X)
       item_name              mitem_name(3X)
       item_opts              mitem_opts(3X)
       item_opts_off          mitem_opts(3X)
       item_opts_on           mitem_opts(3X)
       item_term              menu_hook(3X)
       item_userptr           mitem_userptr(3X)
       item_value             mitem_value(3X)
       item_visible           mitem_visible(3X)
       menu_back              menu_attributes(3X)
       menu_driver            menu_driver(3X)
       menu_fore              menu_attributes(3X)
       menu_format            menu_format(3X)
       menu_grey              menu_attributes(3X)
       menu_init              menu_hook(3X)
       menu_items             menu_items(3X)
       menu_mark              menu_mark(3X)
       menu_opts              menu_opts(3X)
       menu_opts_off          menu_opts(3X)
       menu_opts_on           menu_opts(3X)
       menu_pad               menu_attributes(3X)
       menu_pattern           menu_pattern(3X)

       menu_request_by_name   menu_requestname(3X)
       menu_request_name      menu_requestname(3X)
       menu_spacing           menu_spacing(3X)
       menu_sub               menu_win(3X)
       menu_term              menu_hook(3X)
       menu_userptr           menu_userptr(3X)
       menu_win               menu_win(3X)
       new_item               mitem_new(3X)
       new_menu               menu_new(3X)
       pos_menu_cursor        menu_cursor(3X)
       post_menu              menu_post(3X)
       scale_menu             menu_win(3X)
       set_current_item       mitem_current(3X)
       set_item_init          menu_hook(3X)
       set_item_opts          mitem_opts(3X)
       set_item_term          menu_hook(3X)
       set_item_userptr       mitem_userptr(3X)
       set_item_value         mitem_value(3X)
       set_menu_back          menu_attributes(3X)
       set_menu_fore          menu_attributes(3X)
       set_menu_format        menu_format(3X)
       set_menu_grey          menu_attributes(3X)
       set_menu_init          menu_hook(3X)
       set_menu_items         menu_items(3X)
       set_menu_mark          menu_mark(3X)
       set_menu_opts          mitem_opts(3X)
       set_menu_pad           menu_attributes(3X)
       set_menu_pattern       menu_pattern(3X)
       set_menu_spacing       menu_spacing(3X)
       set_menu_sub           menu_win(3X)
       set_menu_term          menu_hook(3X)
       set_menu_userptr       menu_userptr(3X)
       set_menu_win           menu_win(3X)
       set_top_row            mitem_current(3X)
       top_row                mitem_current(3X)
       unpost_menu            menu_post(3X)

RETURN VALUE
       Routines  that  return  pointers  return  NULL on error.  Routines that
       return an integer return one of the following error(8,n) codes:

       E_OK The routine succeeded.

       E_SYSTEM_ERROR
            System error(8,n) occurred (see errno).

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

       E_POSTED
            The menu(3x,n,n tk_menuSetFocus) is already posted.

       E_BAD_STATE
            Routine was called from an initialization or termination function.

       E_NO_ROOM
            Menu is too large for its window.

       E_NOT_POSTED
            The menu(3x,n,n tk_menuSetFocus) has not been posted.

       E_UNKNOWN_COMMAND
            The menu(3x,n,n tk_menuSetFocus) driver code saw an unknown request code.

       E_NO_MATCH
            Character failed to match.

       E_NOT_SELECTABLE
            The designated item cannot be selected.

       E_NOT_CONNECTED
            No items are connected to the menu.

       E_REQUEST_DENIED
            The menu(3x,n,n tk_menuSetFocus) driver could not process the request.

SEE ALSO
       curses(3X)  and  related  pages  whose names begin "menu_" for detailed
       descriptions of the entry points.

NOTES
       The header  file(1,n)  <menu.h>  automatically  includes  the  header  files
       <curses.h> and <eti.h>.

       In your library list, libmenu.a should be before libncurses.a; that is,
       you want to say `-lmenu -lncurses', not the  other  way  around  (which
       would give you a link(1,2) error(8,n) using GNU ld(1,8)(1) and many other linkers).

PORTABILITY
       These  routines  emulate the System V menu(3x,n,n tk_menuSetFocus) library.  They were not sup-
       ported on Version 7 or BSD versions.

AUTHORS
       Juergen Pfeifer.  Manual pages and adaptation for ncurses  by  Eric  S.
       Raymond.



                                                                      menu(3x,n,n tk_menuSetFocus)(3X)

References for this manual (incoming links)