Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ menus(3x) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

curses(3X)



menus(3X)               LIBRARY FUNCTIONS               menus(3X)



NAME
     menus - character based menus package

SYNOPSIS
     #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 -lcurses 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  cus-
     tomize  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 applica-
     tion changes a current default item attribute value,  subse-
     quent items created using newitem 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.
     menus Routine Name     Manual Page Name
     ____________________________________________
















                                                                1





()                MISC. REFERENCE MANUAL PAGES                 ()



     current_item           menu_item_current(3X)
     free_item              menu_item_new(3X)
     free_menu              menu_new(3X)
     item_count             menu_items(3X)
     item_description       menu_item_name(3X)
     item_index             menu_item_current(3X)
     item_init              menu_hook(3X)
     item_name              menu_item_name(3X)
     item_opts              menu_item_opts(3X)
     item_opts_off          menu_item_opts(3X)
     item_opts_on           menu_item_opts(3X)
     item_term              menu_hook(3X)
     item_userptr           menu_item_userptr(3X)
     item_value             menu_item_value(3X)
     item_visible           menu_item_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_sub               menu_win(3X)
     menu_term              menu_hook(3X)
     menu_userptr           menu_userptr(3X)
     menu_win               menu_win(3X)
     new_item               menu_item_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       menu_item_current(3X)
     set_item_init          menu_hook(3X)
     set_item_opts          menu_item_opts(3X)
     set_item_term          menu_hook(3X)
     set_item_userptr       menu_item_userptr(3X)
     set_item_value         menu_item_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          menu_opts(3X)
     set_menu_pad           menu_attributes(3X)



                                                                1





()                MISC. REFERENCE MANUAL PAGES                 ()



     set_menu_pattern       menu_pattern(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            menu_item_current(3X)
     top_row                menu_item_current(3X)
     unpost_menu            menu_post(3X)

RETURN VALUE
     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  initializa-
                         tion 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.

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

SEE ALSO
     curses(3X), and 3X  pages  whose  names  begin  "menu_"  for
     detailed routine descriptions.

















                                                                2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026