1<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2<!-- 
3  ****************************************************************************
4  * Copyright (c) 1998-2006,2008 Free Software Foundation, Inc.              *
5  *                                                                          *
6  * Permission is hereby granted, free of charge, to any person obtaining a  *
7  * copy of this software and associated documentation files (the            *
8  * "Software"), to deal in the Software without restriction, including      *
9  * without limitation the rights to use, copy, modify, merge, publish,      *
10  * distribute, distribute with modifications, sublicense, and/or sell       *
11  * copies of the Software, and to permit persons to whom the Software is    *
12  * furnished to do so, subject to the following conditions:                 *
13  *                                                                          *
14  * The above copyright notice and this permission notice shall be included  *
15  * in all copies or substantial portions of the Software.                   *
16  *                                                                          *
17  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
18  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
19  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
20  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
21  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
22  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
23  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
24  *                                                                          *
25  * Except as contained in this notice, the name(s) of the above copyright   *
26  * holders shall not be used in advertising or otherwise to promote the     *
27  * sale, use or other dealings in this Software without prior written       *
28  * authorization.                                                           *
29  ****************************************************************************
30  * @Id: menu_pattern.3x,v 1.11 2008/06/21 21:58:20 tom Exp @
31-->
32<HTML>
33<HEAD>
34<TITLE>menu_pattern 3x</TITLE>
35<link rev=made href="mailto:bug-ncurses@gnu.org">
36<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
37</HEAD>
38<BODY>
39<H1>menu_pattern 3x</H1>
40<HR>
41<PRE>
42<!-- Manpage converted by man2html 3.0.1 -->
43<STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>                                       <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
44
45
46
47
48</PRE>
49<H2>NAME</H2><PRE>
50       <STRONG>menu_pattern</STRONG> - get and set a menu's pattern buffer
51
52
53</PRE>
54<H2>SYNOPSIS</H2><PRE>
55       <STRONG>#include</STRONG> <STRONG>&lt;menu.h&gt;</STRONG>
56       int set_menu_pattern(MENU *menu, const char *pattern);
57       char *menu_pattern(const MENU *menu);
58
59
60</PRE>
61<H2>DESCRIPTION</H2><PRE>
62       Every  menu  has  an  associated pattern match buffer.  As
63       input events that are printable characters come  in,  they
64       are  appended to this match buffer and tested for a match,
65       as described in <STRONG><A HREF="menu_driver.3x.html">menu_driver(3x)</A></STRONG>.
66
67       The function <STRONG>set_menu_pattern</STRONG> sets the pattern buffer  for
68       the  given menu and tries to find the first matching item.
69       If it succeeds, that item becomes  current;  if  not,  the
70       current item does not change.
71
72       The  function  <STRONG>menu_pattern</STRONG>  returns the pattern buffer of
73       the given <EM>menu</EM>.
74
75
76</PRE>
77<H2>RETURN VALUE</H2><PRE>
78       The function <STRONG>menu_pattern</STRONG> returns a pointer, which is <STRONG>NULL</STRONG>
79       if the <EM>menu</EM> parameter is <STRONG>NULL</STRONG>.  Otherwise, it is a pointer
80       to a string which is empty if no pattern has been set.  It
81       does not set errno.
82
83       The  function  <STRONG>set_menu_pattern</STRONG>  may  return the following
84       error codes:
85
86       <STRONG>E_OK</STRONG> The routine succeeded.
87
88       <STRONG>E_BAD_ARGUMENT</STRONG>
89            Routine detected an incorrect or  out-of-range  argu-
90            ment.
91
92       <STRONG>E_BAD_STATE</STRONG>
93            Routine was called from an initialization or termina-
94            tion function.
95
96       <STRONG>E_NOT_CONNECTED</STRONG>
97            No items are connected to menu.
98
99       <STRONG>E_NO_MATCH</STRONG>
100            Character failed to match.
101
102       <STRONG>E_SYSTEM_ERROR</STRONG>
103            System error occurred (see <STRONG>errno</STRONG>).
104
105
106</PRE>
107<H2>SEE ALSO</H2><PRE>
108       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>.
109
110
111</PRE>
112<H2>NOTES</H2><PRE>
113       The header file <STRONG>&lt;menu.h&gt;</STRONG> automatically includes the header
114       file <STRONG>&lt;curses.h&gt;</STRONG>.
115
116
117</PRE>
118<H2>PORTABILITY</H2><PRE>
119       These  routines  emulate  the System V menu library.  They
120       were not supported on Version 7 or BSD versions.
121
122
123</PRE>
124<H2>AUTHORS</H2><PRE>
125       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
126       curses by Eric S. Raymond.
127
128
129
130                                                       <STRONG><A HREF="menu_pattern.3x.html">menu_pattern(3x)</A></STRONG>
131</PRE>
132<HR>
133<ADDRESS>
134Man(1) output converted with
135<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
136</ADDRESS>
137</BODY>
138</HTML>
139