3 ****************************************************************************
4 * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc. *
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: *
14 * The above copyright notice and this permission notice shall be included *
15 * in all copies or substantial portions of the Software. *
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. *
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 *
29 ****************************************************************************
30 * @Id: curs_attr.3x,v 1.53 2017/03/28 23:31:39 tom Exp @
37 * ---------------------------------------------------------------------------
38 * ---------------------------------------------------------------------------
39 * ---------------------------------------------------------------------------
40 * ---------------------------------------------------------------------------
41 * ---------------------------------------------------------------------------
42 * ---------------------------------------------------------------------------
44 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
47 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
48 <meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts">
49 <TITLE>curs_attr 3x</TITLE>
50 <link rev=made href="mailto:bug-ncurses@gnu.org">
51 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
54 <H1 class="no-header">curs_attr 3x</H1>
56 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
61 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
62 <STRONG>attr_get</STRONG>, <STRONG>wattr_get</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_set</STRONG>, <STRONG>attr_off</STRONG>, <STRONG>wattr_off</STRONG>, <STRONG>attr_on</STRONG>,
63 <STRONG>wattr_on</STRONG>, <STRONG>attroff</STRONG>, <STRONG>wattroff</STRONG>, <STRONG>attron</STRONG>, <STRONG>wattron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>wattrset</STRONG>, <STRONG>chgat</STRONG>,
64 <STRONG>wchgat</STRONG>, <STRONG>mvchgat</STRONG>, <STRONG>mvwchgat</STRONG>, <STRONG>color_set</STRONG>, <STRONG>wcolor_set</STRONG>, <STRONG>standend</STRONG>, <STRONG>wstandend</STRONG>,
65 <STRONG>standout</STRONG>, <STRONG>wstandout</STRONG> - <STRONG>curses</STRONG> character and window attribute control
69 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
70 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
72 <STRONG>int</STRONG> <STRONG>attr_get(attr_t</STRONG> <STRONG>*</STRONG><EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
73 <STRONG>int</STRONG> <STRONG>wattr_get(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <STRONG>*</STRONG><EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG><EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
74 <STRONG>int</STRONG> <STRONG>attr_set(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
75 <STRONG>int</STRONG> <STRONG>wattr_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
77 <STRONG>int</STRONG> <STRONG>attr_off(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
78 <STRONG>int</STRONG> <STRONG>wattr_off(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
79 <STRONG>int</STRONG> <STRONG>attr_on(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
80 <STRONG>int</STRONG> <STRONG>wattr_on(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
82 <STRONG>int</STRONG> <STRONG>attroff(int</STRONG> <EM>attrs);</EM>
83 <STRONG>int</STRONG> <STRONG>wattroff(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
84 <STRONG>int</STRONG> <STRONG>attron(int</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
85 <STRONG>int</STRONG> <STRONG>wattron(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
86 <STRONG>int</STRONG> <STRONG>attrset(int</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
87 <STRONG>int</STRONG> <STRONG>wattrset(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
89 <STRONG>int</STRONG> <STRONG>chgat(int</STRONG> <EM>n</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attr</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
90 <STRONG>int</STRONG> <STRONG>wchgat(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG>
91 <STRONG>int</STRONG> <EM>n</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attr</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
92 <STRONG>int</STRONG> <STRONG>mvchgat(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG>
93 <STRONG>int</STRONG> <EM>n</EM><STRONG>,</STRONG> <STRONG>attr_t</STRONG> <EM>attr</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
94 <STRONG>int</STRONG> <STRONG>mvwchgat(WINDOW</STRONG> <STRONG>*</STRONG><EM>win,</EM> <EM>int</EM> <EM>y,</EM> <EM>int</EM> <EM>x</EM><STRONG>,</STRONG>
95 <STRONG>int</STRONG> <EM>n,</EM> <STRONG>attr_t</STRONG> <EM>attr</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
97 <STRONG>int</STRONG> <STRONG>color_set(short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG> <EM>opts</EM><STRONG>);</STRONG>
98 <STRONG>int</STRONG> <STRONG>wcolor_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG> <EM>opts);</EM>
100 <STRONG>int</STRONG> <STRONG>standend(void);</STRONG>
101 <STRONG>int</STRONG> <STRONG>wstandend(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
102 <STRONG>int</STRONG> <STRONG>standout(void);</STRONG>
103 <STRONG>int</STRONG> <STRONG>wstandout(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
106 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
107 These routines manipulate the current attributes of the named window,
108 which then apply to all characters that are written into the window
109 with <STRONG>waddch</STRONG>, <STRONG>waddstr</STRONG> and <STRONG>wprintw</STRONG>. Attributes are a property of the
110 character, and move with the character through any scrolling and in-
111 sert/delete line/character operations. To the extent possible, they
112 are displayed as appropriate modifications to the graphic rendition of
113 characters put on the screen.
115 These routines do not affect the attributes used when erasing portions
116 of the window. See <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> for functions which modify the at-
117 tributes used for erasing and clearing.
119 Routines which do not have a <STRONG>WINDOW*</STRONG> parameter apply to <STRONG>stdscr</STRONG>. For
120 example, <STRONG>attr_set</STRONG> is the <STRONG>stdscr</STRONG> variant of <STRONG>wattr_set</STRONG>.
123 </PRE><H3><a name="h3-Window-attributes">Window attributes</a></H3><PRE>
124 There are two sets of functions:
126 <STRONG>o</STRONG> functions for manipulating the window attributes and color: <STRONG>wat-</STRONG>
127 <STRONG>tr_set</STRONG> and <STRONG>wattr_get</STRONG>.
129 <STRONG>o</STRONG> functions for manipulating only the window attributes (not color):
130 <STRONG>wattr_on</STRONG> and <STRONG>wattr_off</STRONG>.
132 The <STRONG>wattr_set</STRONG> function sets the current attributes of the given window
133 to <EM>attrs</EM>, with color specified by <EM>pair</EM>.
135 Use <STRONG>wattr_get</STRONG> to retrieve attributes for the given window.
137 Use <STRONG>attr_on</STRONG> and <STRONG>wattr_on</STRONG> to turn on window attributes, i.e., values
138 OR'd together in <EM>attr</EM>, without affecting other attributes. Use <STRONG>at-</STRONG>
139 <STRONG>tr_off</STRONG> and <STRONG>wattr_off</STRONG> to turn off window attributes, again values OR'd
140 together in <EM>attr</EM>, without affecting other attributes.
143 </PRE><H3><a name="h3-Legacy-window-attributes">Legacy window attributes</a></H3><PRE>
144 Most of the window attribute routines are extensions of older routines
145 which assume that color pairs are OR'd into the attribute parameter.
146 These older routines use the same name, omitting an underscore (<STRONG>_</STRONG>).
148 The <STRONG>attrset</STRONG> routine is a legacy feature predating SVr4 curses but kept
149 in X/Open Curses for the same reason that SVr4 curses kept it: compati-
152 The remaining <STRONG>attr</STRONG>* functions operate exactly like the corresponding
153 <STRONG>attr_</STRONG>* functions, except that they take arguments of type <STRONG>int</STRONG> rather
154 than <STRONG>attr_t</STRONG>.
156 There is no corresponding <STRONG>attrget</STRONG> function as such in X/Open Curses,
157 although ncurses provides <STRONG>getattrs</STRONG> (see <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>).
160 </PRE><H3><a name="h3-Change-character-rendition">Change character rendition</a></H3><PRE>
161 The routine <STRONG>chgat</STRONG> changes the attributes of a given number of charac-
162 ters starting at the current cursor location of <STRONG>stdscr</STRONG>. It does not
163 update the cursor and does not perform wrapping. A character count of
164 -1 or greater than the remaining window width means to change at-
165 tributes all the way to the end of the current line. The <STRONG>wchgat</STRONG> func-
166 tion generalizes this to any window; the <STRONG>mvwchgat</STRONG> function does a cur-
167 sor move before acting.
169 In these functions, the color <EM>pair</EM> argument is a color-pair index (as
170 in the first argument of <STRONG>init_pair</STRONG>, see <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>).
173 </PRE><H3><a name="h3-Change-window-color">Change window color</a></H3><PRE>
174 The routine <STRONG>color_set</STRONG> sets the current color of the given window to the
175 foreground/background combination described by the color <EM>pair</EM> parame-
179 </PRE><H3><a name="h3-Standout">Standout</a></H3><PRE>
180 The routine <STRONG>standout</STRONG> is the same as <STRONG>attron(A_STANDOUT)</STRONG>. The routine
181 <STRONG>standend</STRONG> is the same as <STRONG>attrset(A_NORMAL)</STRONG> or <STRONG>attrset(0)</STRONG>, that is, it
182 turns off all attributes.
184 X/Open does not mark these "restricted", because
186 <STRONG>o</STRONG> they have well established legacy use, and
188 <STRONG>o</STRONG> there is no ambiguity about the way the attributes might be com-
189 bined with a color pair.
192 </PRE><H2><a name="h2-VIDEO-ATTRIBUTES">VIDEO ATTRIBUTES</a></H2><PRE>
193 The following video attributes, defined in <STRONG><curses.h></STRONG>, can be passed to
194 the routines <STRONG>attron</STRONG>, <STRONG>attroff</STRONG>, and <STRONG>attrset</STRONG>, or OR'd with the characters
195 passed to <STRONG>addch</STRONG> (see <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>).
197 <EM>Name</EM> <EM>Description</EM>
198 -----------------------------------------------------------
199 <STRONG>A_NORMAL</STRONG> Normal display (no highlight)
200 <STRONG>A_STANDOUT</STRONG> Best highlighting mode of the terminal.
201 <STRONG>A_UNDERLINE</STRONG> Underlining
202 <STRONG>A_REVERSE</STRONG> Reverse video
203 <STRONG>A_BLINK</STRONG> Blinking
204 <STRONG>A_DIM</STRONG> Half bright
205 <STRONG>A_BOLD</STRONG> Extra bright or bold
206 <STRONG>A_PROTECT</STRONG> Protected mode
207 <STRONG>A_INVIS</STRONG> Invisible or blank mode
208 <STRONG>A_ALTCHARSET</STRONG> Alternate character set
209 <STRONG>A_ITALIC</STRONG> Italics (non-X/Open extension)
210 <STRONG>A_CHARTEXT</STRONG> Bit-mask to extract a character
212 These video attributes are supported by <STRONG>attr_on</STRONG> and related functions
213 (which also support the attributes recognized by <STRONG>attron</STRONG>, etc.):
215 <EM>Name</EM> <EM>Description</EM>
216 -----------------------------------------
217 <STRONG>WA_HORIZONTAL</STRONG> Horizontal highlight
218 <STRONG>WA_LEFT</STRONG> Left highlight
219 <STRONG>WA_LOW</STRONG> Low highlight
220 <STRONG>WA_RIGHT</STRONG> Right highlight
221 <STRONG>WA_TOP</STRONG> Top highlight
222 <STRONG>WA_VERTICAL</STRONG> Vertical highlight
224 The return values of many of these routines are not meaningful (they
225 are implemented as macro-expanded assignments and simply return their
226 argument). The SVr4 manual page claims (falsely) that these routines
227 always return <STRONG>1</STRONG>.
230 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
231 These functions may be macros:
233 <STRONG>attroff</STRONG>, <STRONG>wattroff</STRONG>, <STRONG>attron</STRONG>, <STRONG>wattron</STRONG>, <STRONG>attrset</STRONG>, <STRONG>wattrset</STRONG>, <STRONG>standend</STRONG>
234 and <STRONG>standout</STRONG>.
236 Color pair values can only be OR'd with attributes if the pair number
237 is less than 256. The alternate functions such as <STRONG>color_set</STRONG> can pass a
238 color pair value directly. However, ncurses ABI 4 and 5 simply OR this
239 value within the alternate functions. You must use ncurses ABI 6 to
240 support more than 256 color pairs.
243 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
244 This implementation provides the <STRONG>A_ITALIC</STRONG> attribute for terminals which
245 have the <STRONG>enter_italics_mode</STRONG> (<STRONG>sitm</STRONG>) and <STRONG>exit_italics_mode</STRONG> (<STRONG>ritm</STRONG>) capa-
246 bilities. Italics are not mentioned in X/Open Curses. Unlike the oth-
247 er video attributes, <STRONG>A_ITALIC</STRONG> is unrelated to the <STRONG>set_attributes</STRONG> capa-
248 bilities. This implementation makes the assumption that <STRONG>exit_at-</STRONG>
249 <STRONG>tribute_mode</STRONG> may also reset italics.
251 Each of the functions added by XSI Curses has a parameter <EM>opts</EM>, which
252 X/Open Curses still (after more than twenty years) documents as re-
253 served for future use, saying that it should be <STRONG>NULL</STRONG>. This implementa-
254 tion uses that parameter in ABI 6 for the functions which have a color-
255 pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
257 <STRONG>o</STRONG> For functions which modify the color, e.g., <STRONG>wattr_set</STRONG>, if <EM>opts</EM> is
258 set it is treated as a pointer to <STRONG>int</STRONG>, and used to set the color
259 pair instead of the <STRONG>short</STRONG> <EM>pair</EM> parameter.
261 <STRONG>o</STRONG> For functions which retrieve the color, e.g., <STRONG>wattr_get</STRONG>, if <EM>opts</EM> is
262 set it is treated as a pointer to <STRONG>int</STRONG>, and used to retrieve the
263 color pair as an <STRONG>int</STRONG> value, in addition retrieving it via the stan-
264 dard pointer to <STRONG>short</STRONG> parameter.
266 The remaining functions which have <EM>opts</EM>, but do not manipulate color,
267 e.g., <STRONG>wattr_on</STRONG> and <STRONG>wattr_off</STRONG> are not used by this implementation except
268 to check that they are <STRONG>NULL</STRONG>.
271 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
272 These functions are supported in the XSI Curses standard, Issue 4. The
273 standard defined the dedicated type for highlights, <STRONG>attr_t</STRONG>, which was
274 not defined in SVr4 curses. The functions taking <STRONG>attr_t</STRONG> arguments were
275 not supported under SVr4.
277 Very old versions of this library did not force an update of the screen
278 when changing the attributes. Use <STRONG>touchwin</STRONG> to force the screen to
279 match the updated attributes.
281 The XSI Curses standard states that whether the traditional functions
282 <STRONG>attron</STRONG>/<STRONG>attroff</STRONG>/<STRONG>attrset</STRONG> can manipulate attributes other than <STRONG>A_BLINK</STRONG>,
283 <STRONG>A_BOLD</STRONG>, <STRONG>A_DIM</STRONG>, <STRONG>A_REVERSE</STRONG>, <STRONG>A_STANDOUT</STRONG>, or <STRONG>A_UNDERLINE</STRONG> is "unspecified".
284 Under this implementation as well as SVr4 curses, these functions cor-
285 rectly manipulate all other highlights (specifically, <STRONG>A_ALTCHARSET</STRONG>,
286 <STRONG>A_PROTECT</STRONG>, and <STRONG>A_INVIS</STRONG>).
288 XSI Curses added these entry points:
290 <STRONG>attr_get</STRONG>, <STRONG>attr_on</STRONG>, <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, <STRONG>wat-</STRONG>
291 <STRONG>tr_get</STRONG>, <STRONG>wattr_set</STRONG>
293 The new functions are intended to work with a new series of highlight
294 macros prefixed with <STRONG>WA_</STRONG>. The older macros have direct counterparts in
295 the newer set of names:
297 <EM>Name</EM> <EM>Description</EM>
298 ------------------------------------------------------------
299 <STRONG>WA_NORMAL</STRONG> Normal display (no highlight)
300 <STRONG>WA_STANDOUT</STRONG> Best highlighting mode of the terminal.
301 <STRONG>WA_UNDERLINE</STRONG> Underlining
302 <STRONG>WA_REVERSE</STRONG> Reverse video
303 <STRONG>WA_BLINK</STRONG> Blinking
304 <STRONG>WA_DIM</STRONG> Half bright
305 <STRONG>WA_BOLD</STRONG> Extra bright or bold
306 <STRONG>WA_ALTCHARSET</STRONG> Alternate character set
308 The XSI curses standard specifies that each pair of corresponding <STRONG>A_</STRONG>
309 and <STRONG>WA_</STRONG>-using functions operates on the same current-highlight informa-
312 The XSI standard extended conformance level adds new highlights <STRONG>A_HORI-</STRONG>
313 <STRONG>ZONTAL</STRONG>, <STRONG>A_LEFT</STRONG>, <STRONG>A_LOW</STRONG>, <STRONG>A_RIGHT</STRONG>, <STRONG>A_TOP</STRONG>, <STRONG>A_VERTICAL</STRONG> (and corresponding
314 <STRONG>WA_</STRONG> macros for each). As of August 2013, no known terminal provides
315 these highlights (i.e., via the <STRONG>sgr1</STRONG> capability).
318 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
319 All routines return the integer <STRONG>OK</STRONG> on success, or <STRONG>ERR</STRONG> on failure.
321 X/Open does not define any error conditions.
325 <STRONG>o</STRONG> returns an error if the window pointer is null.
327 <STRONG>o</STRONG> returns an error if the color pair parameter for <STRONG>wcolor_set</STRONG> is out-
328 side the range 0..COLOR_PAIRS-1.
330 <STRONG>o</STRONG> does not return an error if either of the parameters of <STRONG>wattr_get</STRONG>
331 used for retrieving attribute or color-pair values is <STRONG>NULL</STRONG>.
333 Functions with a "mv" prefix first perform a cursor movement using
334 <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
335 the window pointer is null.
338 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
339 <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>, <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>,
340 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
344 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
348 <li><a href="#h2-NAME">NAME</a></li>
349 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
350 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
352 <li><a href="#h3-Window-attributes">Window attributes</a></li>
353 <li><a href="#h3-Legacy-window-attributes">Legacy window attributes</a></li>
354 <li><a href="#h3-Change-character-rendition">Change character rendition</a></li>
355 <li><a href="#h3-Change-window-color">Change window color</a></li>
356 <li><a href="#h3-Standout">Standout</a></li>
359 <li><a href="#h2-VIDEO-ATTRIBUTES">VIDEO ATTRIBUTES</a></li>
360 <li><a href="#h2-NOTES">NOTES</a></li>
361 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
362 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
363 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
364 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>