Provided by: ncurses-doc_6.4+20240113-1ubuntu2_all bug

NAME

       menu_hook - set hooks for automatic invocation by applications

SYNOPSIS

       #include <menu.h>

       int set_item_init(MENU *menu, Menu_Hook func);
       Menu_Hook item_init(const MENU *menu);

       int set_item_term(MENU *menu, Menu_Hook func);
       Menu_Hook item_term(const MENU *menu);

       int set_menu_init(MENU *menu, Menu_Hook func);
       Menu_Hook menu_init(const MENU *menu);

       int set_menu_term(MENU *menu, Menu_Hook func);
       Menu_Hook menu_term(const MENU *menu);

DESCRIPTION

       These  functions  make it possible to set hook functions to be called at various points in
       the automatic processing of input event codes by menu_driver.

       The function set_item_init sets a hook to be called at menu-post time and  each  time  the
       selected  item  changes (after the change).  item_init returns the current item init hook,
       if any (NULL if there is no such hook).

       The function set_item_term sets a hook to be called at menu-unpost time and each time  the
       selected  item changes (before the change).  item_term returns the current item term hook,
       if any (NULL if there is no such hook).

       The function set_menu_init sets a hook to be called at menu-post time and just  after  the
       top  row  on  the menu changes once it is posted.  menu_init returns the current menu init
       hook, if any (NULL if there is no such hook).

       The function set_menu_term sets a hook to be called at menu-unpost time  and  just  before
       the  top  row  on  the menu changes once it is posted.  menu_term returns the current menu
       term hook, if any (NULL if there is no such hook).

RETURN VALUE

       Routines that return pointers return NULL on error.  Other  routines  return  one  of  the
       following:

       E_OK The routine succeeded.

       E_SYSTEM_ERROR
            System error occurred (see errno(3)).

PORTABILITY

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

AUTHORS

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

SEE ALSO

       ncurses(3NCURSES), menu(3MENU)