1997-05-15 12:00:00 +08:00
|
|
|
<HTML>
|
1999-10-24 12:32:42 +08:00
|
|
|
<BODY>
|
1997-05-15 12:00:00 +08:00
|
|
|
<PRE>
|
|
|
|
<STRONG>menu_win</STRONG> - make and break menu window and subwindow asso-
|
|
|
|
ciations
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>SYNOPSIS</H2><PRE>
|
1999-10-24 12:32:42 +08:00
|
|
|
<STRONG>#include</STRONG> <STRONG><menu.h></STRONG>
|
1997-05-15 12:00:00 +08:00
|
|
|
int set_menu_win(MENU *menu, WINDOW *win);
|
|
|
|
WINDOW *menu_win(const MENU *menu);
|
|
|
|
int set_menu_sub(MENU *menu, WINDOW *sub);
|
|
|
|
WINDOW *menu_sub(const MENU *menu);
|
|
|
|
int scale_menu(const MENU *menu, int *rows, int *columns);
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>DESCRIPTION</H2><PRE>
|
|
|
|
Every menu has an associated pair of <STRONG>curses</STRONG> windows. The
|
|
|
|
menu window displays any title and border associated with
|
|
|
|
the window; the menu subwindow displays the items of the
|
|
|
|
menu that are currently available for selection.
|
|
|
|
|
|
|
|
The first four functions get and set those windows. It is
|
|
|
|
not necessary to set either window; by default, the driver
|
|
|
|
code uses <STRONG>stdscr</STRONG> for both.
|
|
|
|
|
|
|
|
In the <STRONG>set_</STRONG> functions, window argument of <STRONG>NULL</STRONG> is treated
|
|
|
|
as though it were <STRONG>stsdcr</STRONG>. A menu argument of <STRONG>NULL</STRONG> is
|
|
|
|
treated as a request to change the system default menu
|
|
|
|
window or subwindow.
|
|
|
|
|
|
|
|
The function <STRONG>scale_menu</STRONG> returns the minimum size required
|
|
|
|
for the subwindow of <EM>menu</EM>.
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>RETURN VALUE</H2><PRE>
|
|
|
|
Routines that return pointers return <STRONG>NULL</STRONG> on error. Rou-
|
|
|
|
tines that return an integer return one of the following
|
|
|
|
error codes:
|
|
|
|
|
|
|
|
<STRONG>E_OK</STRONG> The routine succeeded.
|
|
|
|
|
|
|
|
<STRONG>E_SYSTEM_ERROR</STRONG>
|
|
|
|
System error occurred (see <STRONG>errno</STRONG>).
|
|
|
|
|
|
|
|
<STRONG>E_BAD_ARGUMENT</STRONG>
|
|
|
|
Routine detected an incorrect or out-of-range argu-
|
|
|
|
ment.
|
|
|
|
|
|
|
|
<STRONG>E_POSTED</STRONG>
|
|
|
|
The menu has already been posted.
|
|
|
|
|
|
|
|
<STRONG>E_NOT_CONNECTED</STRONG>
|
|
|
|
No items are connected to the menu.
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>SEE ALSO</H2><PRE>
|
|
|
|
<STRONG><A HREF="ncurses.3x.html">curses(3X)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3X)</A></STRONG>.
|
|
|
|
|
1999-10-24 12:32:42 +08:00
|
|
|
The header file <STRONG><menu.h></STRONG> automatically includes the header
|
|
|
|
file <STRONG><curses.h></STRONG>.
|
1997-05-15 12:00:00 +08:00
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>PORTABILITY</H2><PRE>
|
|
|
|
These routines emulate the System V menu library. They
|
|
|
|
were not supported on Version 7 or BSD versions.
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
<H2>AUTHORS</H2><PRE>
|
|
|
|
Juergen Pfeifer. Manual pages and adaptation for new
|
|
|
|
curses by Eric S. Raymond.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
|
|
</BODY>
|
|
|
|
</HTML>
|