ncurses 6.2 - patch 20210619
[ncurses.git] / doc / html / man / curs_sp_funcs.3x.html
1 <!--
2   ****************************************************************************
3   * Copyright 2018-2020,2021 Thomas E. Dickey                                *
4   * Copyright 2010-2015,2017 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: curs_sp_funcs.3x,v 1.25 2021/05/22 22:12:46 tom Exp @
31   * ***************************************************************************
32   * ***************************************************************************
33   * ***************************************************************************
34 -->
35 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
36 <HTML>
37 <HEAD>
38 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
39 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
40 <TITLE>curs_sp_funcs 3X</TITLE>
41 <link rel="author" href="mailto:bug-ncurses@gnu.org">
42 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
43 </HEAD>
44 <BODY>
45 <H1 class="no-header">curs_sp_funcs 3X</H1>
46 <PRE>
47 <B><A HREF="curs_sp_funcs.3X.html">curs_sp_funcs(3X)</A></B>                                            <B><A HREF="curs_sp_funcs.3X.html">curs_sp_funcs(3X)</A></B>
48
49
50
51
52 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
53        curs_sp_funcs - <B>curses</B> screen-pointer extension
54
55
56 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
57        <B>#include</B> <B>&lt;curses.h&gt;</B>
58
59        <B>int</B> <B>alloc_pair_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>fg</I><B>,</B> <B>int</B> <I>bg</I><B>);</B>
60        <B>int</B> <B>assume_default_colors_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>fg</I><B>,</B> <B>int</B> <I>bg</I><B>);</B>
61        <B>int</B> <B>baudrate_sp(SCREEN*</B> <I>sp</I><B>);</B>
62        <B>int</B> <B>beep_sp(SCREEN*</B> <I>sp</I><B>);</B>
63        <B>bool</B> <B>can_change_color_sp(SCREEN*</B> <I>sp</I><B>);</B>
64        <B>int</B> <B>cbreak_sp(SCREEN*</B> <I>sp</I><B>);</B>
65        <B>int</B> <B>color_content_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>short</B> <I>color</I><B>,</B> <B>short*</B> <I>r</I><B>,</B> <B>short*</B> <I>g</I><B>,</B> <B>short*</B> <I>b</I><B>);</B>
66        <B>int</B> <B>curs_set_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>visibility</I>);
67        <B>int</B> <B>def_prog_mode_sp(SCREEN*</B> <I>sp</I><B>);</B>
68        <B>int</B> <B>def_shell_mode_sp(SCREEN*</B> <I>sp</I><B>);</B>
69
70        <B>int</B> <B>define_key_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B> <I>definition</I><B>,</B> <B>int</B> <I>keycode</I><B>);</B>
71        <B>int</B> <B>delay_output_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>ms</I><B>);</B>
72        <B>int</B> <B>doupdate_sp(SCREEN*</B> <I>sp</I><B>);</B>
73        <B>int</B> <B>echo_sp(SCREEN*</B> <I>sp</I><B>);</B>
74        <B>int</B> <B>endwin_sp(SCREEN*</B> <I>sp</I><B>);</B>
75        <B>char</B> <B>erasechar_sp(SCREEN*</B> <I>sp</I><B>);</B>
76        <B>int</B> <B>erasewchar_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>wchar_t</B> <B>*</B><I>ch</I><B>);</B>
77        <B>int</B> <B>extended_color_content_sp(SCREEN</B> <B>*</B> <I>sp</I><B>,</B> <B>int</B> <I>color</I><B>,</B> <B>int</B> <B>*</B> <I>r</I><B>,</B> <B>int</B> <B>*</B> <I>g</I><B>,</B> <B>int</B> <B>*</B> <I>b</I><B>);</B>
78        <B>int</B> <B>extended_pair_content_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>pair</I><B>,</B> <B>int</B> <B>*</B> <I>fg</I><B>,</B> <B>int</B> <B>*</B> <I>bg</I><B>);</B>
79        <B>int</B> <B>extended_slk_color_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>pair</I><B>);</B>
80
81        <B>void</B> <B>filter_sp(SCREEN*</B> <I>sp</I><B>);</B>
82        <B>int</B> <B>find_pair_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>fg</I><B>,</B> <B>int</B> <I>bg</I><B>);</B>
83        <B>int</B> <B>flash_sp(SCREEN*</B> <I>sp</I><B>);</B>
84        <B>int</B> <B>flushinp_sp(SCREEN*</B> <I>sp</I><B>);</B>
85        <B>int</B> <B>free_pair_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>pair</I><B>);</B>
86        <B>int</B> <B>get_escdelay_sp(SCREEN*</B> <I>sp</I><B>);</B>
87        <B>int</B> <B>getmouse_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>MEVENT*</B> <B>event);</B>
88        <B>WINDOW*</B> <B>getwin_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>FILE*</B> <I>filep</I><B>);</B>
89        <B>int</B> <B>halfdelay_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>tenths</I><B>);</B>
90        <B>bool</B> <B>has_colors_sp(SCREEN*</B> <I>sp</I><B>);</B>
91
92        <B>bool</B> <B>has_ic_sp(SCREEN*</B> <I>sp</I><B>);</B>
93        <B>bool</B> <B>has_il_sp(SCREEN*</B> <I>sp</I><B>);</B>
94        <B>int</B> <B>has_key_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>ch</I><B>);</B>
95        <B>bool</B> <B>has_mouse_sp(SCREEN*</B> <I>sp</I><B>);</B>
96        <B>int</B> <B>init_color_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>short</B> <I>color</I><B>,</B> <B>short</B> <I>r</I><B>,</B> <B>short</B> <I>g</I><B>,</B> <B>short</B> <I>b</I><B>);</B>
97        <B>int</B> <B>init_extended_color_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>color</I><B>,</B> <B>int</B> <I>r</I><B>,</B> <B>int</B> <I>g</I><B>,</B> <B>int</B> <I>b</I><B>);</B>
98        <B>int</B> <B>init_extended_pair_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>pair</I><B>,</B> <B>int</B> <I>fg</I><B>,</B> <B>int</B> <I>bg</I><B>);</B>
99        <B>int</B> <B>init_pair_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>short</B> <I>pair</I><B>,</B> <B>short</B> <I>fg</I><B>,</B> <B>short</B> <I>bg</I><B>);</B>
100        <B>int</B> <B>intrflush_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>WINDOW*</B> <I>win</I><B>,</B> <B>bool</B> <I>bf</I><B>);</B>
101        <B>bool</B> <B>is_term_resized_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>lines</I><B>,</B> <B>int</B> <I>columns</I><B>);</B>
102
103        <B>bool</B> <B>isendwin_sp(SCREEN*</B> <I>sp</I><B>);</B>
104        <B>int</B> <B>key_defined_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>definition</I><B>);</B>
105        <B>char*</B> <B>keybound_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>keycode</I><B>,</B> <B>int</B> <I>count</I><B>);</B>
106        <B>NCURSES_CONST</B> <B>char</B> <B>*</B> <B>keyname_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>c</I><B>);</B>
107        <B>int</B> <B>keyok_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>keycode</I><B>,</B> <B>bool</B> <I>enable</I><B>);</B>
108        <B>char</B> <B>killchar_sp(SCREEN*</B> <I>sp</I><B>);</B>
109        <B>int</B> <B>killwchar_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>wchar_t</B> <B>*</B><I>ch</I><B>);</B>
110        <B>char*</B> <B>longname_sp(SCREEN*</B> <I>sp</I><B>);</B>
111        <B>int</B> <B>mcprint_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>char</B> <B>*</B><I>data</I><B>,</B> <B>int</B> <I>len</I><B>);</B>
112        <B>int</B> <B>mouseinterval_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>erval</I><B>);</B>
113
114        <B>mmask_t</B> <B>mousemask_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>mmask_t</B> <I>newmask</I><B>,</B> <B>mmask_t</B> <B>*</B><I>oldmask</I><B>);</B>
115        <B>int</B> <B>mvcur_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>oldrow</I><B>,</B> <B>int</B> <I>oldcol</I><B>,</B> <B>int</B> <I>newrow</I><B>,</B> <B>int</B> <I>newcol</I><B>);</B>
116        <B>int</B> <B>napms_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>ms</I><B>);</B>
117        <B>WINDOW*</B> <B>newpad_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>nrows</I><B>,</B> <B>int</B> <I>ncols</I><B>);</B>
118        <B>SCREEN*</B> <B>new_prescr(void);</B>
119        <B>SCREEN*</B> <B>newterm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>type</I><B>,</B> <B>FILE</B> <B>*</B><I>outfd</I><B>,</B> <B>FILE</B> <B>*</B><I>infd</I><B>);</B>
120        <B>WINDOW*</B> <B>newwin_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>nlines</I><B>,</B> <B>int</B> <I>ncols</I><B>,</B> <B>int</B> <I>begin</I><B>_</B><I>y</I><B>,</B> <B>int</B> <I>begin</I><B>_</B><I>x</I><B>);</B>
121        <B>int</B> <B>nl_sp(SCREEN*</B> <I>sp</I><B>);</B>
122        <B>int</B> <B>nocbreak_sp(SCREEN*</B> <I>sp</I><B>);</B>
123        <B>int</B> <B>noecho_sp(SCREEN*</B> <I>sp</I><B>);</B>
124
125        <B>void</B> <B>nofilter_sp(SCREEN*</B> <I>sp</I><B>);</B>
126        <B>int</B> <B>nonl_sp(SCREEN*</B> <I>sp</I><B>);</B>
127        <B>void</B> <B>noqiflush_sp(SCREEN*</B> <I>sp</I><B>);</B>
128        <B>int</B> <B>noraw_sp(SCREEN*</B> <I>sp</I><B>);</B>
129        <B>int</B> <B>pair_content_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>short</B> <I>pair</I><B>,</B> <B>short*</B> <I>fg</I><B>,</B> <B>short*</B> <I>bg</I><B>);</B>
130        <B>void</B> <B>qiflush_sp(SCREEN*</B> <I>sp</I><B>);</B>
131        <B>int</B> <B>raw_sp(SCREEN*</B> <I>sp</I><B>);</B>
132        <B>int</B> <B>reset_prog_mode_sp(SCREEN*</B> <I>sp</I><B>);</B>
133        <B>void</B> <B>reset_color_pairs_sp(SCREEN*</B> <I>sp</I><B>);</B>
134        <B>int</B> <B>reset_shell_mode_sp(SCREEN*</B> <I>sp</I><B>);</B>
135
136        <B>int</B> <B>resetty_sp(SCREEN*</B> <I>sp</I><B>);</B>
137        <B>int</B> <B>resize_term_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>lines</I><B>,</B> <B>int</B> <I>columns</I><B>);</B>
138        <B>int</B> <B>resizeterm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>lines</I><B>,</B> <B>int</B> <I>columns</I><B>);</B>
139        <B>int</B> <B>ripoffline_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>line</I><B>,</B> <B>int</B> <B>(*</B><I>init</I><B>)(WINDOW*</B> <I>win</I><B>,</B> <B>int</B> <I>fmt</I><B>));</B>
140        <B>int</B> <B>savetty_sp(SCREEN*</B> <I>sp</I><B>);</B>
141        <B>int</B> <B>scr_init_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>filename</I><B>);</B>
142        <B>int</B> <B>scr_restore_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>filename</I><B>);</B>
143        <B>int</B> <B>scr_set_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>filename</I><B>);</B>
144        <B>int</B> <B>set_escdelay_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>ms</I><B>);</B>
145        <B>int</B> <B>set_tabsize_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>cols</I><B>);</B>
146
147        <B>int</B> <B>slk_attr_set_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>attr_t</B> <I>attrs</I><B>,</B> <B>short</B> <I>pair</I><B>,</B> <B>void*</B><I>opts</I><B>);</B>
148        <B>int</B> <B>slk_attrset_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>chtype</B> <I>a</I><B>);</B>
149        <B>int</B> <B>slk_attroff_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>chtype</B> <I>a</I><B>);</B>
150        <B>int</B> <B>slk_attron_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>chtype</B> <I>a</I><B>);</B>
151        <B>attr_t</B> <B>slk_attr_sp(SCREEN*</B> <I>sp</I><B>);</B>
152        <B>int</B> <B>slk_clear_sp(SCREEN*</B> <I>sp</I><B>);</B>
153        <B>int</B> <B>slk_color_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>short</B> <I>pair</I><B>);</B>
154        <B>int</B> <B>slk_init_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>fmt</I><B>);</B>
155        <B>char*</B> <B>slk_label_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>labnum</I><B>);</B>
156        <B>int</B> <B>slk_noutrefresh_sp(SCREEN*</B> <I>sp</I><B>);</B>
157
158        <B>int</B> <B>slk_refresh_sp(SCREEN*</B> <I>sp</I><B>);</B>
159        <B>int</B> <B>slk_restore_sp(SCREEN*</B> <I>sp</I><B>);</B>
160        <B>int</B> <B>slk_set_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>labnum</I><B>,</B> <B>const</B> <B>char</B> <B>*</B> <I>label</I><B>,</B> <B>int</B> <I>fmt</I><B>);</B>
161        <B>int</B> <B>slk_touch_sp(SCREEN*</B> <I>sp</I><B>);</B>
162        <B>int</B> <B>start_color_sp(SCREEN*</B> <I>sp</I><B>);</B>
163        <B>attr_t</B> <B>term_attrs_sp(SCREEN*</B> <I>sp</I><B>);</B>
164        <B>chtype</B> <B>termattrs_sp(SCREEN*</B> <I>sp</I><B>);</B>
165        <B>char*</B> <B>termname_sp(SCREEN*</B> <I>sp</I><B>);</B>
166        <B>int</B> <B>typeahead_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>fd</I><B>);</B>
167        <B>int</B> <B>unget_wch_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>wchar_t</B> <I>wch</I><B>);</B>
168
169        <B>int</B> <B>ungetch_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>ch</I><B>);</B>
170        <B>int</B> <B>ungetmouse_sp(SCREEN*</B> <I>sp</I><B>,MEVENT</B> <B>*</B> <B>event);</B>
171        <B>int</B> <B>use_default_colors_sp(SCREEN*</B> <I>sp</I><B>);</B>
172        <B>void</B> <B>use_env_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>bool</B> <I>bf</I><B>);</B>
173        <B>int</B> <B>use_legacy_coding_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>int</B> <I>level</I><B>);</B>
174        <B>void</B> <B>use_tioctl_sp(SCREEN</B> <B>*</B><I>sp</I><B>,</B> <B>bool</B> <I>bf</I><B>);</B>
175        <B>int</B> <B>vid_attr_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>attr_t</B> <I>attrs</I><B>,</B> <B>short</B> <I>pair</I><B>,</B> <B>void</B> <B>*</B> <I>opts</I><B>);</B>
176        <B>int</B> <B>vid_puts_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>attr_t</B> <I>attrs</I><B>,</B> <B>short</B> <I>pair</I><B>,</B> <B>void</B> <B>*</B> <I>opts</I><B>,</B> <B>NCURSES_SP_OUTC</B> <I>putc</I><B>);</B>
177        <B>int</B> <B>vidattr_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>chtype</B> <I>attrs</I><B>);</B>
178        <B>int</B> <B>vidputs_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>chtype</B> <I>attrs</I><B>,</B> <B>NCURSES_SP_OUTC</B> <I>putc</I><B>);</B>
179        <B>wchar_t*</B> <B>wunctrl_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>cchar_t</B> <B>*</B><I>ch</I><B>);</B>
180
181        <B>#include</B> <B>&lt;form.h&gt;</B>
182
183        <B>FORM*</B> <B>new_form_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>FIELD</B> <B>**</B><I>fields</I><B>);</B>
184
185        <B>#include</B> <B>&lt;menu.h&gt;</B>
186
187        <B>MENU*</B> <B>new_menu_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>ITEM</B> <B>**</B><I>items</I><B>);</B>
188
189        <B>#include</B> <B>&lt;panel.h&gt;</B>
190
191        <B>PANEL*</B> <B>ceiling_panel(SCREEN*</B> <I>sp</I><B>);</B>
192        <B>PANEL*</B> <B>ground_panel(SCREEN*</B> <I>sp</I><B>);</B>
193        <B>void</B> <B>update_panels_sp(SCREEN*</B> <I>sp</I><B>);</B>
194
195        <B>#include</B> <B>&lt;term.h&gt;</B>
196
197        <B>int</B> <B>del_curterm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>TERMINAL</B> <B>*</B><I>oterm</I><B>);</B>
198        <B>int</B> <B>putp_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>);</B>
199        <B>int</B> <B>restartterm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>NCURSES_CONST</B> <B>char*</B><I>term</I><B>,</B> <B>int</B> <I>filedes</I><B>,</B> <B>int</B> <B>*</B><I>errret</I><B>);</B>
200        <B>TERMINAL*</B> <B>set_curterm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>TERMINAL*</B><I>nterm</I><B>);</B>
201        <B>int</B> <B>tgetent_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>char</B> <B>*</B><I>bp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>name</I><B>);</B>
202        <B>int</B> <B>tgetflag_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>);</B>
203        <B>int</B> <B>tgetnum_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>);</B>
204        <B>char*</B> <B>tgetstr_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>,</B> <B>char</B> <B>**</B><I>area</I><B>);</B>
205        <B>char*</B> <B>tgoto_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>,</B> <B>int</B> <I>col</I><B>,</B> <B>int</B> <I>row</I><B>);</B>
206        <B>int</B> <B>tigetflag_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>);</B>
207        <B>int</B> <B>tigetnum_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>);</B>
208        <B>char*</B> <B>tigetstr_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>capname</I><B>);</B>
209        /* may instead use 9 long parameters */
210        <B>char*</B> <B>tparm_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>...);</B>
211        <B>int</B> <B>tputs_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>const</B> <B>char</B> <B>*</B><I>str</I><B>,</B> <B>int</B> <I>affcnt</I><B>,</B> <B>NCURSES_SP_OUTC</B> <I>putc</I><B>);</B>
212
213        <B>#include</B> <B>&lt;unctrl.h&gt;</B>
214
215        <B>NCURSES_CONST</B> <B>char*</B> <B>unctrl_sp(SCREEN*</B> <I>sp</I><B>,</B> <B>chtype</B> <I>c</I><B>);</B>
216
217
218 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
219        This  implementation  can  be  configured to provide a set of functions
220        which improve the ability to manage multiple screens.  This feature can
221        be added to any of the configurations supported by ncurses; it adds new
222        entrypoints without changing the meaning of any of the existing ones.
223
224
225 </PRE><H3><a name="h3-IMPROVED-FUNCTIONS">IMPROVED FUNCTIONS</a></H3><PRE>
226        Most of the functions are new versions of existing functions.  A param-
227        eter  is  added  at  the  front  of the parameter list.  It is a SCREEN
228        pointer.
229
230        The existing functions all use the current screen, which  is  a  static
231        variable.  The extended functions use the specified screen, thereby re-
232        ducing the number of variables which must be modified to update  multi-
233        ple screens.
234
235
236 </PRE><H3><a name="h3-NEW-FUNCTIONS">NEW FUNCTIONS</a></H3><PRE>
237        Here are the new functions:
238
239        ceiling_panel
240             this returns a pointer to the topmost panel in the given screen.
241
242        ground_panel
243             this returns a pointer to the lowest panel in the given screen.
244
245        new_prescr
246             when  creating  a  new  screen,  the library uses static variables
247             which have been preset, e.g.,  by  <B><A HREF="curs_util.3X.html">use_env(3X)</A></B>,  <B><A HREF="curs_util.3X.html">filter(3X)</A></B>,  etc.
248             With  the  screen-pointer extension, there are situations where it
249             must create a current screen before the unextended  library  does.
250             The  <B>new_prescr</B> function is used internally to handle these cases.
251             It is also provided as an entrypoint to allow applications to cus-
252             tomize the library initialization.
253
254
255 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
256        This extension introduces some new names:
257
258        NCURSES_SP_FUNCS
259             This  is set to the library patch-level number.  In the unextended
260             library, this is zero (0), to make it useful for checking  if  the
261             extension is provided.
262
263        NCURSES_SP_NAME
264             The new functions are named using the macro <I>NCURSES</I><B>_</B><I>SP</I><B>_</B><I>NAME</I>, which
265             hides the actual implementation.  Currently this adds a "_sp" suf-
266             fix  to the name of the unextended function.  This manual page in-
267             dexes the extensions showing the full name.   However  the  proper
268             usage of these functions uses the macro, to provide for the possi-
269             bility of changing the naming convention for specific library con-
270             figurations.
271
272        NCURSES_SP_OUTC
273             This  is  a new function-pointer type to use in the screen-pointer
274             functions where an <I>NCURSES</I><B>_</B><I>OUTC</I> is used in the unextended library.
275
276        NCURSES_OUTC
277             This is a function-pointer type used for the cases where  a  func-
278             tion passes characters to the output stream, e.g., <B><A HREF="curs_terminfo.3X.html">vidputs(3X)</A></B>.
279
280
281 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
282        These  routines  are  specific  to ncurses.  They were not supported on
283        Version 7, BSD or System V implementations.  It is recommended that any
284        code  depending  on  ncurses  extensions  be  conditioned  using <I>NCURS-</I>
285        <I>ES</I><B>_</B><I>SP</I><B>_</B><I>FUNCS</I>.
286
287
288 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
289        <B><A HREF="curses.3X.html">curses(3X)</A></B>, <B><A HREF="curs_opaque.3X.html">curs_opaque(3X)</A></B>, <B><A HREF="curs_threads.3X.html">curs_threads(3X)</A></B>.
290
291
292
293                                                              <B><A HREF="curs_sp_funcs.3X.html">curs_sp_funcs(3X)</A></B>
294 </PRE>
295 <div class="nav">
296 <ul>
297 <li><a href="#h2-NAME">NAME</a></li>
298 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
299 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
300 <ul>
301 <li><a href="#h3-IMPROVED-FUNCTIONS">IMPROVED FUNCTIONS</a></li>
302 <li><a href="#h3-NEW-FUNCTIONS">NEW FUNCTIONS</a></li>
303 </ul>
304 </li>
305 <li><a href="#h2-NOTES">NOTES</a></li>
306 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
307 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
308 </ul>
309 </div>
310 </BODY>
311 </HTML>