]> ncurses.scripts.mit.edu Git - ncurses.git/blob - doc/html/man/curs_opaque.3x.html
ncurses 6.4 - patch 20231202
[ncurses.git] / doc / html / man / curs_opaque.3x.html
1 <!--
2   ****************************************************************************
3   * Copyright 2020-2022,2023 Thomas E. Dickey                                *
4   * Copyright 2007-2014,2015 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_opaque.3x,v 1.40 2023/12/02 20:52:50 tom Exp @
31 -->
32 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
33 <HTML>
34 <HEAD>
35 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
36 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
37 <TITLE>curs_opaque 3x 2023-12-02 ncurses 6.4 Library calls</TITLE>
38 <link rel="author" href="mailto:bug-ncurses@gnu.org">
39
40 </HEAD>
41 <BODY>
42 <H1 class="no-header">curs_opaque 3x 2023-12-02 ncurses 6.4 Library calls</H1>
43 <PRE>
44 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>
45
46
47
48
49 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
50        <STRONG>is_cleared</STRONG>,  <STRONG>is_idlok</STRONG>,  <STRONG>is_idcok</STRONG>,  <STRONG>is_immedok</STRONG>,  <STRONG>is_keypad</STRONG>,  <STRONG>is_leaveok</STRONG>,
51        <STRONG>is_nodelay</STRONG>, <STRONG>is_notimeout</STRONG>, <STRONG>is_pad</STRONG>,  <STRONG>is_scrollok</STRONG>,  <STRONG>is_subwin</STRONG>,  <STRONG>is_syncok</STRONG>,
52        <STRONG>wgetdelay</STRONG>, <STRONG>wgetparent</STRONG>, <STRONG>wgetscrreg</STRONG> - obtain <EM>curses</EM> window properties
53
54
55 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
56        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
57
58        <STRONG>bool</STRONG> <STRONG>is_cleared(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
59        <STRONG>bool</STRONG> <STRONG>is_idcok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
60        <STRONG>bool</STRONG> <STRONG>is_idlok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
61        <STRONG>bool</STRONG> <STRONG>is_immedok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
62        <STRONG>bool</STRONG> <STRONG>is_keypad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
63        <STRONG>bool</STRONG> <STRONG>is_leaveok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
64        <STRONG>bool</STRONG> <STRONG>is_nodelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
65        <STRONG>bool</STRONG> <STRONG>is_notimeout(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
66        <STRONG>bool</STRONG> <STRONG>is_pad(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
67        <STRONG>bool</STRONG> <STRONG>is_scrollok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
68        <STRONG>bool</STRONG> <STRONG>is_subwin(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
69        <STRONG>bool</STRONG> <STRONG>is_syncok(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
70
71        <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>wgetparent(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
72        <STRONG>int</STRONG> <STRONG>wgetdelay(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
73        <STRONG>int</STRONG> <STRONG>wgetscrreg(const</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>top</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>bottom</EM><STRONG>);</STRONG>
74
75
76 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
77        <EM>ncurses</EM>  provides functions returning properties of a <EM>WINDOW</EM> structure,
78        allowing  it  to  be  "opaque"   if   the   application   defines   the
79        <STRONG>NCURSES_OPAQUE</STRONG>  preprocessor  symbol.  <EM>Opacity</EM> in this sense means that
80        the members of <EM>struct</EM> data  types  are  not  directly  accessible  (for
81        instance,  through  "." or "-&gt;" operators), but instead must be queried
82        and/or set  via  library  functions.   Advantages  of  opacity  include
83        greater  abstraction  and improved management of concurrent accesses to
84        data structures, keeping object states coherent.
85
86        <STRONG>is_cleared</STRONG>
87               returns the value set by <STRONG><A HREF="curs_outopts.3x.html">clearok(3x)</A></STRONG>.
88
89        <STRONG>is_idcok</STRONG>
90               returns the value set by <STRONG><A HREF="idcok.3x.html">idcok(3x)</A></STRONG>.
91
92        <STRONG>is_idlok</STRONG>
93               returns the value set by <STRONG><A HREF="idlok.3x.html">idlok(3x)</A></STRONG>.
94
95        <STRONG>is_immedok</STRONG>
96               returns the value set by <STRONG><A HREF="curs_outopts.3x.html">immedok(3x)</A></STRONG>.
97
98        <STRONG>is_keypad</STRONG>
99               returns the value set by <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG>.
100
101        <STRONG>is_leaveok</STRONG>
102               returns the value set by <STRONG><A HREF="leaveok.3x.html">leaveok(3x)</A></STRONG>.
103
104        <STRONG>is_nodelay</STRONG>
105               returns the value set by <STRONG><A HREF="nodelay.3x.html">nodelay(3x)</A></STRONG>.
106
107        <STRONG>is_notimeout</STRONG>
108               returns the value set by <STRONG><A HREF="notimeout.3x.html">notimeout(3x)</A></STRONG>.
109
110        <STRONG>is_pad</STRONG> returns <STRONG>TRUE</STRONG> if the window is a pad; that is, it was created  by
111               <STRONG><A HREF="newpad.3x.html">newpad(3x)</A></STRONG>.
112
113        <STRONG>is_scrollok</STRONG>
114               returns the value set by <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>.
115
116        <STRONG>is_subwin</STRONG>
117               returns  <STRONG>TRUE</STRONG>  if  the  window  is  a subwindow, that is, it was
118               created by <STRONG><A HREF="subwin.3x.html">subwin(3x)</A></STRONG> or <STRONG><A HREF="derwin.3x.html">derwin(3x)</A></STRONG>.
119
120        <STRONG>is_syncok</STRONG>
121               returns the value set by <STRONG><A HREF="syncok.3x.html">syncok(3x)</A></STRONG>.
122
123        <STRONG>wgetdelay</STRONG>
124               returns the delay timeout set by <STRONG><A HREF="wtimeout.3x.html">wtimeout(3x)</A></STRONG>.
125
126        <STRONG>wgetparent</STRONG>
127               returns the parent <EM>WINDOW</EM> pointer for subwindows,  or  <STRONG>NULL</STRONG>  for
128               windows having no parent.
129
130        <STRONG>wgetscrreg</STRONG>
131               stores  the the top and bottom rows for the scrolling margin set
132               by <STRONG><A HREF="curs_outopts.3x.html">wsetscrreg(3x)</A></STRONG> in the corresponding arguments, returning  <STRONG>ERR</STRONG>
133               upon failure and <STRONG>OK</STRONG> upon successful completion.
134
135
136 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
137        These functions return <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG> except as noted.
138
139
140 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
141        <EM>ncurses</EM>  provides  both  a C function and a preprocessor macro for each
142        function documented in this page.
143
144
145 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
146        These routines are specific to <EM>ncurses</EM>.  They  were  not  supported  on
147        Version 7, BSD or System V implementations.  It is recommended that any
148        code   depending   on   <EM>ncurses</EM>   extensions   be   conditioned   using
149        <STRONG>NCURSES_VERSION</STRONG>.
150
151
152 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
153        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>,   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>,   <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>,
154        <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
155
156
157
158 ncurses 6.4                       2023-12-02                   <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>
159 </PRE>
160 <div class="nav">
161 <ul>
162 <li><a href="#h2-NAME">NAME</a></li>
163 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
164 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
165 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
166 <li><a href="#h2-NOTES">NOTES</a></li>
167 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
168 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
169 </ul>
170 </div>
171 </BODY>
172 </HTML>