- <B>o</B> U/Win is rarely used now.
-
-
-</PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
- This implementation provides the <B>A_ITALIC</B> attribute for terminals which
- have the <B>enter_italics_mode</B> (<B>sitm</B>) and <B>exit_italics_mode</B> (<B>ritm</B>) capa-
- bilities. Italics are not mentioned in X/Open Curses. Unlike the oth-
- er video attributes, <B>A_ITALIC</B> is unrelated to the <B>set_attributes</B> capa-
- bilities. This implementation makes the assumption that <B>exit_attri-</B>
- <B>bute_mode</B> may also reset italics.
-
- Each of the functions added by XSI Curses has a parameter <I>opts</I>, which
- X/Open Curses still (after more than twenty years) documents as re-
- served for future use, saying that it should be <B>NULL</B>. This implementa-
- tion uses that parameter in ABI 6 for the functions which have a color-
- pair parameter to support <I>extended</I> <I>color</I> <I>pairs</I>:
-
- <B>o</B> For functions which modify the color, e.g., <B>wattr_set</B>, if <I>opts</I> is
- set it is treated as a pointer to <B>int</B>, and used to set the color
- pair instead of the <B>short</B> <I>pair</I> parameter.
-
- <B>o</B> For functions which retrieve the color, e.g., <B>wattr_get</B>, if <I>opts</I> is
- set it is treated as a pointer to <B>int</B>, and used to retrieve the
- color pair as an <B>int</B> value, in addition retrieving it via the stan-
- dard pointer to <B>short</B> parameter.
-
- The remaining functions which have <I>opts</I>, but do not manipulate color,
- e.g., <B>wattr_on</B> and <B>wattr_off</B> are not used by this implementation except
- to check that they are <B>NULL</B>.
-
-
-</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
- These functions are supported in the XSI Curses standard, Issue 4. The
- standard defined the dedicated type for highlights, <B>attr_t</B>, which was
- not defined in SVr4 curses. The functions taking <B>attr_t</B> arguments were
- not supported under SVr4.
-
- Very old versions of this library did not force an update of the screen
- when changing the attributes. Use <B>touchwin</B> to force the screen to
- match the updated attributes.
-
- The XSI Curses standard states that whether the traditional functions
- <B>attron</B>/<B>attroff</B>/<B>attrset</B> can manipulate attributes other than <B>A_BLINK</B>,
- <B>A_BOLD</B>, <B>A_DIM</B>, <B>A_REVERSE</B>, <B>A_STANDOUT</B>, or <B>A_UNDERLINE</B> is "unspecified".
- Under this implementation as well as SVr4 curses, these functions cor-
- rectly manipulate all other highlights (specifically, <B>A_ALTCHARSET</B>,
- <B>A_PROTECT</B>, and <B>A_INVIS</B>).
-
- XSI Curses added these entry points:
-
- <B>attr_get</B>, <B>attr_on</B>, <B>attr_off</B>, <B>attr_set</B>, <B>wattr_on</B>, <B>wattr_off</B>, <B>wat-</B>
- <B>tr_get</B>, <B>wattr_set</B>
-
- The new functions are intended to work with a new series of highlight
- macros prefixed with <B>WA_</B>. The older macros have direct counterparts in
- the newer set of names:
-
- <I>Name</I> <I>Description</I>
- ------------------------------------------------------------
- <B>WA_NORMAL</B> Normal display (no highlight)
- <B>WA_STANDOUT</B> Best highlighting mode of the terminal.
- <B>WA_UNDERLINE</B> Underlining
- <B>WA_REVERSE</B> Reverse video
- <B>WA_BLINK</B> Blinking
- <B>WA_DIM</B> Half bright
- <B>WA_BOLD</B> Extra bright or bold
- <B>WA_ALTCHARSET</B> Alternate character set
-
- XSI curses does not assign values to these symbols, nor does it state
- whether or not they are related to the similarly-named A_NORMAL, etc.:
-
- <B>o</B> The XSI curses standard specifies that each pair of corresponding
- <B>A_</B> and <B>WA_</B>-using functions operates on the same current-highlight
- information.
-
- <B>o</B> However, in some implementations, those symbols have unrelated val-
- ues.
-
- For example, the Solaris <I>xpg4</I> (X/Open) curses declares <B>attr_t</B> to be
- an unsigned short integer (16-bits), while <B>chtype</B> is a unsigned in-
- teger (32-bits). The <B>WA_</B> symbols in this case are different from
- the <B>A_</B> symbols because they are used for a smaller datatype which
- does not represent <B>A_CHARTEXT</B> or <B>A_COLOR</B>.
-
- In this implementation (as in many others), the values happen to be
- the same because it simplifies copying information between <B>chtype</B>
- and <B>cchar_t</B> variables.
-
- The XSI standard extended conformance level adds new highlights <B>A_HORI-</B>
- <B>ZONTAL</B>, <B>A_LEFT</B>, <B>A_LOW</B>, <B>A_RIGHT</B>, <B>A_TOP</B>, <B>A_VERTICAL</B> (and corresponding
- <B>WA_</B> macros for each). As of August 2013, no known terminal provides
- these highlights (i.e., via the <B>sgr1</B> capability).
-
-
-</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
- All routines return the integer <B>OK</B> on success, or <B>ERR</B> on failure.
-
- X/Open does not define any error conditions.
-
- This implementation
-
- <B>o</B> returns an error if the window pointer is null.
-
- <B>o</B> returns an error if the color pair parameter for <B>wcolor_set</B> is out-
- side the range 0..COLOR_PAIRS-1.
-
- <B>o</B> does not return an error if either of the parameters of <B>wattr_get</B>
- used for retrieving attribute or color-pair values is <B>NULL</B>.
-
- Functions with a "mv" prefix first perform a cursor movement using
- <B>wmove</B>, and return an error if the position is outside the window, or if
- the window pointer is null.