SYNOPSIS
#include <menu.h>int set_current_item(MENU *menu, const ITEM *item);
ITEM *current_item(const MENU *menu);
int set_top_row(MENU *menu, int row);
int top_row(const MENU *menu);
int item_index(const ITEM *item);
DESCRIPTION
The function set_current_item sets the current item (the item on which the menu cursor is positioned). current_item returns a pointer to the current item in the given menu.The function set_top_row sets the top row of the menu to show the given row (the top row is initially 0, and is reset to this value whenever the O_ROWMAJOR option is toggled). The item leftmost on the given row becomes current. The function top_row returns the number of the top menu row being displayed.
The function item_index returns the (zero-origin) index of item in the menu's item pointer list.
RETURN VALUE
current_item returns a pointer (which may be NULL). It does not set errno.top_row and item_index return ERR (the general curses error value) if their menu parameter is NULL.
set_current_item and set_top_row return one of the following:
- 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 the menu.
- E_SYSTEM_ERROR
- System error occurred (see errno).
NOTES
The header file <menu.h> automatically includes the header file <curses.h>.PORTABILITY
These routines emulate the System V menu library. They were not supported on Version 7 or BSD versions.The SVr4 menu library documentation specifies the top_row and index_item error value as -1 (which is the value of ERR).
AUTHORS
Juergen Pfeifer. Manual pages and adaptation for new curses by Eric S. Raymond.