menu_pattern(3x) menu_pattern(3x)
set_menu_pattern, menu_pattern - set and get a menu's pattern buffer
#include <menu.h> int set_menu_pattern(MENU *menu, const char *pattern); char *menu_pattern(const MENU *menu);
Every menu has an associated pattern match buffer. As input events that are printable characters come in, they are appended to this match buffer and tested for a match, as described in menu_driver(3x). The function set_menu_pattern sets the pattern buffer for the given menu and tries to find the first matching item. If it succeeds, that item becomes current; if not, the current item does not change. The function menu_pattern returns the pattern buffer of the given menu.
The function menu_pattern returns a pointer, which is NULL if the menu parameter is NULL. Otherwise, it is a pointer to a string which is empty if no pattern has been set. It does not set errno. The function set_menu_pattern may return the following error codes: E_OK The routine succeeded. E_BAD_ARGUMENT Routine detected an incorrect or out-of-range argument. E_BAD_STATE Routine was called from an initialization or termination function. E_NOT_CONNECTED No items are connected to menu. E_NO_MATCH Character failed to match. E_SYSTEM_ERROR System error occurred (see errno(3)).
curses(3x), menu(3x).
The header file <menu.h> automatically includes the header file <curses.h>.
These routines emulate the System V menu library. They were not supported on Version 7 or BSD versions.
Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond. menu_pattern(3x)