MENU_WIN(3)

NAME
menu_sub, menu_win, scale_menu, set_menu_sub, set_menu_win - sub-menu handling

LIBRARY
libmenu

SYNOPSIS
#include <menu.h>
WINDOW *
menu_sub(MENU *menu);
WINDOW *
menu_win(MENU *menu);
int
scale_menu(MENU *menu, int *rows, int *cols);
int
set_menu_sub(MENU *menu, WINDOW *sub);
int
set_menu_win(MENU *menu, WINDOW *win);

DESCRIPTION
The menu_sub() function returns a pointer to the window that will be used to post a menu into, this pointer is set by the set_menu_sub() function. The menu_win() function returns a pointer to the window in which the menu subwindow will be created when the menu is posted, this pointer is set by the set_menu_win() function. The scale_menu() function calculates the minimum size a window needs to be to hold the items for a given menu, the parameters rows and cols are set to the required number of rows and columns respectively.

RETURN VALUES
The functions return one of the following error values:

E_OK
    The function was successful.
E_SYSTEM_ERROR
    There was a system error during the call.
E_BAD_ARGUMENT
    One or more of the arguments passed to the function was incorrect.
E_POSTED
    The menu is already posted.
E_CONNECTED
    An item was already connected to a menu.
E_BAD_STATE
    The function was called from within an initialization or termination routine.
E_NO_ROOM
    The menu does not fit within the subwindow.
E_NOT_POSTED
    The menu is not posted
E_UNKNOWN_COMMAND
    The menu driver does not recognize the request passed to it.
E_NO_MATCH
    The character search failed to find a match.
E_NOT_SELECTABLE
    The item could not be selected.
E_NOT_CONNECTED
    The item is not connected to a menu.
E_REQUEST_DENIED
    The menu driver could not process the request.

SEE ALSO
curses(3), menus(3)

NOTES
The header <menu.h> automatically includes both <curses.h> and <eti.h>.