ncurses 5.3
[ncurses.git] / doc / html / man / menu_hook.3x.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2 <!-- 
3   * t
4   ****************************************************************************
5   * Copyright (c) 1998 Free Software Foundation, Inc.                        *
6   *                                                                          *
7   * Permission is hereby granted, free of charge, to any person obtaining a  *
8   * copy of this software and associated documentation files (the            *
9   * "Software"), to deal in the Software without restriction, including      *
10   * without limitation the rights to use, copy, modify, merge, publish,      *
11   * distribute, distribute with modifications, sublicense, and/or sell       *
12   * copies of the Software, and to permit persons to whom the Software is    *
13   * furnished to do so, subject to the following conditions:                 *
14   *                                                                          *
15   * The above copyright notice and this permission notice shall be included  *
16   * in all copies or substantial portions of the Software.                   *
17   *                                                                          *
18   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
19   * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
20   * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
21   * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
22   * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
23   * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
24   * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
25   *                                                                          *
26   * Except as contained in this notice, the name(s) of the above copyright   *
27   * holders shall not be used in advertising or otherwise to promote the     *
28   * sale, use or other dealings in this Software without prior written       *
29   * authorization.                                                           *
30   ****************************************************************************
31   * @Id: menu_hook.3x,v 1.6 1998/11/29 01:09:47 Rick.Ohnemus Exp @
32 -->
33 <HTML>
34 <HEAD>
35 <TITLE>menu_hook 3x</TITLE>
36 <link rev=made href="mailto:bug-ncurses@gnu.org">
37 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
38 </HEAD>
39 <BODY>
40 <H1>menu_hook 3x</H1>
41 <HR>
42 <PRE>
43 <!-- Manpage converted by man2html 3.0.1 -->
44
45 </PRE>
46 <H2>NAME</H2><PRE>
47        <STRONG>menu_hook</STRONG> - set hooks for automatic invocation by applica-
48        tions
49
50
51 </PRE>
52 <H2>SYNOPSIS</H2><PRE>
53        <STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
54        int set_item_init(MENU *menu, void (*func)(MENU *));
55        void (*)(MENU *) item_init(const MENU *menu);
56        int set_item_term(MENU *menu, void (*func)(MENU *));
57        void (*)(MENU *) item_term(const MENU *menu);
58        int set_menu_init(MENU *menu, void (*func)(MENU *));
59        void (*)(MENU *) menu_init(const MENU *menu);
60        int set_menu_term(MENU *menu, void (*func)(MENU *));
61        void (*)(MENU *) menu_term(const MENU *menu);
62
63
64 </PRE>
65 <H2>DESCRIPTION</H2><PRE>
66        These functions make it possible to set hook functions  to
67        be called at various points in the automatic processing of
68        input event codes by <STRONG>menu_driver</STRONG>.
69
70        The function <STRONG>set_item_init</STRONG> sets a hook  to  be  called  at
71        menu-post  time  and  each  time the selected item changes
72        (after the change).  <STRONG>item_init</STRONG> returns  the  current  item
73        init hook, if any (<STRONG>NULL</STRONG> if there is no such hook).
74
75        The  function  <STRONG>set_item_term</STRONG>  sets  a hook to be called at
76        menu-unpost time and each time the selected  item  changes
77        (before  the  change).  <STRONG>item_term</STRONG> returns the current item
78        term hook, if any (<STRONG>NULL</STRONG> if there is no such hook).
79
80        The function <STRONG>set_menu_init</STRONG> sets a hook  to  be  called  at
81        menu-post  time  and  just  after  the top row on the menu
82        changes once it is posted.  <STRONG>menu_init</STRONG> returns the  current
83        menu init hook, if any (<STRONG>NULL</STRONG> if there is no such hook).
84
85        The  function  <STRONG>set_menu_term</STRONG>  sets  a hook to be called at
86        menu-unpost time and just before the top row on  the  menu
87        changes  once it is posted.  <STRONG>menu_term</STRONG> returns the current
88        menu term hook, if any (<STRONG>NULL</STRONG> if there is no such hook).
89
90
91 </PRE>
92 <H2>RETURN VALUE</H2><PRE>
93        Routines that return pointers return <STRONG>NULL</STRONG> on error.  Other
94        routines return one of the following:
95
96        <STRONG>E_OK</STRONG> The routine succeeded.
97
98        <STRONG>E_SYSTEM_ERROR</STRONG>
99             System error occurred (see <STRONG>errno</STRONG>).
100
101
102 </PRE>
103 <H2>SEE ALSO</H2><PRE>
104        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>.
105
106
107 </PRE>
108 <H2>NOTES</H2><PRE>
109        The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header
110        file <STRONG>&lt;curses.h&gt;</STRONG>.
111
112
113 </PRE>
114 <H2>PORTABILITY</H2><PRE>
115        These routines emulate the System V  menu  library.   They
116        were not supported on Version 7 or BSD versions.
117
118
119 </PRE>
120 <H2>AUTHORS</H2><PRE>
121        Juergen  Pfeifer.   Manual  pages  and  adaptation for new
122        curses by Eric S. Raymond.
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168 </PRE>
169 <HR>
170 <ADDRESS>
171 Man(1) output converted with
172 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
173 </ADDRESS>
174 </BODY>
175 </HTML>