]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/curs_attr.3x.html
ncurses 6.4 - patch 20230917
[ncurses.git] / doc / html / man / curs_attr.3x.html
index fbb1e131d4fffe172934143fc04c46bfac888682..3d6c5941febd837c8bd550cd92c3720399ed6c74 100644 (file)
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_attr.3x,v 1.80 2023/09/09 21:13:26 tom Exp @
+  * @Id: curs_attr.3x,v 1.84 2023/09/16 23:34:43 tom Exp @
   * ---------------------------------------------------------------------------
-  * attr_get
-  * .br
-  * .br
-  * .br
-  * .br
-  * .br
   * ---------------------------------------------------------------------------
   * ---------------------------------------------------------------------------
   * ---------------------------------------------------------------------------
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_attr 3x 2023-09-09 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_attr 3x 2023-09-16 ncurses 6.4 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_attr 3x 2023-09-09 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_attr 3x 2023-09-16 ncurses 6.4 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
@@ -71,9 +65,9 @@
 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
        <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>,
        <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>,
-       <STRONG>wchgat</STRONG>, <STRONG>mvchgat</STRONG>, <STRONG>mvwchgat</STRONG>, <STRONG>color_set</STRONG>, <STRONG>wcolor_set</STRONG>, <STRONG>standend</STRONG>, <STRONG>wstandend</STRONG>,
-       <STRONG>standout</STRONG>, <STRONG>wstandout</STRONG> - <STRONG>curses</STRONG> character and window attribute control
-       routines
+       <STRONG>wchgat</STRONG>,  <STRONG>mvchgat</STRONG>, <STRONG>mvwchgat</STRONG>, <STRONG>color_set</STRONG>, <STRONG>wcolor_set</STRONG>, <STRONG>standend</STRONG>, <STRONG>wstandend</STRONG>,
+       <STRONG>standout</STRONG>, <STRONG>wstandout</STRONG> -  manipulate  attributes  of  character  cells  in
+       <EM>curses</EM> windows
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        These  routines  manipulate the current attributes of the named window,
        which then apply to all characters that are  written  into  the  window
        with  <STRONG>waddch</STRONG>,  <STRONG>waddstr</STRONG>  and  <STRONG>wprintw</STRONG>.  Attributes are a property of the
-       character, and move with the character through any  scrolling  and  in-
-       sert/delete  line/character  operations.   To the extent possible, they
+       character, and move  with  the  character  through  any  scrolling  and
+       insert/delete  line/character operations.  To the extent possible, they
        are displayed as appropriate modifications to the graphic rendition  of
        characters put on the screen.
 
        These  routines do not affect the attributes used when erasing portions
-       of the window.  See <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> for functions which  modify  the  at-
-       tributes used for erasing and clearing.
+       of the window.   See  <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>  for  functions  which  modify  the
+       attributes used for erasing and clearing.
 
        Routines  which  do  not have a <STRONG>WINDOW*</STRONG> parameter apply to <STRONG>stdscr</STRONG>.  For
        example, <STRONG>attr_set</STRONG> is the <STRONG>stdscr</STRONG> variant of <STRONG>wattr_set</STRONG>.
 </PRE><H3><a name="h3-Window-attributes">Window attributes</a></H3><PRE>
        There are two sets of functions:
 
-       <STRONG>o</STRONG>   functions for manipulating the window attributes  and  color:  <STRONG>wat-</STRONG>
-           <STRONG>tr_set</STRONG> and <STRONG>wattr_get</STRONG>.
+       <STRONG>o</STRONG>   functions  for  manipulating  the  window  attributes  and   color:
+           <STRONG>wattr_set</STRONG> and <STRONG>wattr_get</STRONG>.
 
        <STRONG>o</STRONG>   functions  for manipulating only the window attributes (not color):
            <STRONG>wattr_on</STRONG> and <STRONG>wattr_off</STRONG>.
        Use <STRONG>wattr_get</STRONG> to retrieve attributes for the given window.
 
        Use  <STRONG>attr_on</STRONG>  and  <STRONG>wattr_on</STRONG>  to turn on window attributes, i.e., values
-       OR'd together in <EM>attr</EM>, without affecting  other  attributes.   Use  <STRONG>at-</STRONG>
-       <STRONG>tr_off</STRONG>  and  <STRONG>wattr_off</STRONG> to turn off window attributes, again values OR'd
+       OR'd  together  in  <EM>attr</EM>,  without  affecting  other  attributes.   Use
+       <STRONG>attr_off</STRONG> and <STRONG>wattr_off</STRONG> to turn off window attributes, again values OR'd
        together in <EM>attr</EM>, without affecting other attributes.
 
 
        because X/Open simply added an underscore (<STRONG>_</STRONG>) for the newer names.
 
        The <STRONG>int</STRONG> datatype used in the legacy routines is treated as if it is the
-       same size as <STRONG>chtype</STRONG> (used by <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>).  It holds the common video at-
-       tributes  (such  as  bold,  reverse),  as well as a few bits for color.
-       Those bits correspond to the <STRONG>A_COLOR</STRONG> symbol.  The <STRONG>COLOR_PAIR</STRONG> macro pro-
-       vides  a value which can be OR'd into the attribute parameter.  For ex-
-       ample, as long as that value fits into the  <STRONG>A_COLOR</STRONG>  mask,  then  these
+       same size as <STRONG>chtype</STRONG> (used by <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>).  It  holds  the  common  video
+       attributes  (such  as  bold, reverse), as well as a few bits for color.
+       Those bits correspond to the  <STRONG>A_COLOR</STRONG>  symbol.   The  <STRONG>COLOR_PAIR</STRONG>  macro
+       provides  a  value which can be OR'd into the attribute parameter.  For
+       example, as long as that value fits into the <STRONG>A_COLOR</STRONG> mask,  then  these
        calls produce similar results:
 
            attrset(A_BOLD | COLOR_PAIR(<EM>pair</EM>));
            int <EM>output</EM> = PAIR_NUMBER(value);
 
        The <STRONG>attrset</STRONG> routine is a legacy feature predating SVr4 curses but  kept
-       in X/Open Curses for the same reason that SVr4 curses kept it: compati-
-       bility.
+       in  X/Open  Curses  for  the  same  reason  that  SVr4  curses kept it:
+       compatibility.
 
        The remaining <STRONG>attr</STRONG>* functions operate exactly  like  the  corresponding
        <STRONG>attr_</STRONG>*  functions,  except  that they take arguments of type <STRONG>int</STRONG> rather
 
 
 </PRE><H3><a name="h3-Change-character-rendition">Change character rendition</a></H3><PRE>
-       The  routine  <STRONG>chgat</STRONG> changes the attributes of a given number of charac-
-       ters starting at the current cursor location of <STRONG>stdscr</STRONG>.   It  does  not
-       update  the cursor and does not perform wrapping.  A character count of
-       -1 or greater than the remaining  window  width  means  to  change  at-
-       tributes  all the way to the end of the current line.  The <STRONG>wchgat</STRONG> func-
-       tion generalizes this to any window; the <STRONG>mvwchgat</STRONG> function does a  cur-
-       sor move before acting.
+       The  routine  <STRONG>chgat</STRONG>  changes  the  attributes  of  a  given  number  of
+       characters starting at the current cursor location of <STRONG>stdscr</STRONG>.  It  does
+       not update the cursor and does not perform wrapping.  A character count
+       of -1 or greater than  the  remaining  window  width  means  to  change
+       attributes  all  the  way  to  the end of the current line.  The <STRONG>wchgat</STRONG>
+       function generalizes this to any window; the <STRONG>mvwchgat</STRONG> function  does  a
+       cursor move before acting.
 
        In  these  functions, the color <EM>pair</EM> argument is a color-pair index (as
        in the first argument of <STRONG>init_pair</STRONG>, see <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>).
 
 </PRE><H3><a name="h3-Change-window-color">Change window color</a></H3><PRE>
        The routine <STRONG>color_set</STRONG> sets the current color of the given window to the
-       foreground/background  combination  described by the color <EM>pair</EM> parame-
-       ter.
+       foreground/background   combination   described   by   the  color  <EM>pair</EM>
+       parameter.
 
 
 </PRE><H3><a name="h3-Standout">Standout</a></H3><PRE>
 
        <STRONG>o</STRONG>   they have well established legacy use, and
 
-       <STRONG>o</STRONG>   there is no ambiguity about the way the attributes  might  be  com-
-           bined with a color pair.
+       <STRONG>o</STRONG>   there is no  ambiguity  about  the  way  the  attributes  might  be
+           combined with a color pair.
 
 
 </PRE><H2><a name="h2-VIDEO-ATTRIBUTES">VIDEO ATTRIBUTES</a></H2><PRE>
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
        X/Open Curses is largely based  on  SVr4  curses,  adding  support  for
-       "wide-characters"  (not  specific to Unicode).  Some of the X/Open dif-
-       ferences from SVr4 curses address the way video attributes can  be  ap-
-       plied  to  wide-characters.   But aside from that, <STRONG>attrset</STRONG> and <STRONG>attr_set</STRONG>
+       "wide-characters"  (not  specific  to  Unicode).   Some  of  the X/Open
+       differences from SVr4 curses address the way video  attributes  can  be
+       applied  to wide-characters.  But aside from that, <STRONG>attrset</STRONG> and <STRONG>attr_set</STRONG>
        are similar.  SVr4 curses provided the basic features for  manipulating
        video  attributes.  However, earlier versions of curses provided a part
        of these features.
        <STRONG>standout</STRONG>  and  <STRONG>standend</STRONG> which were carried along into X/Open Curses due
        to their pervasive use in legacy applications.
 
-       Some terminals in the 1980s  could  support  a  variety  of  video  at-
-       tributes,  although the BSD curses library could do nothing with those.
-       System V (1983) provided an improved curses library.  It defined the <STRONG>A_</STRONG>
-       symbols  for  use  by  applications to manipulate the other attributes.
-       There are few useful references for the chronology.
+       Some  terminals  in  the  1980s  could  support  a  variety  of   video
+       attributes,  although  the  BSD  curses  library  could do nothing with
+       those.  System V  (1983)  provided  an  improved  curses  library.   It
+       defined  the <STRONG>A_</STRONG> symbols for use by applications to manipulate the other
+       attributes.  There are few useful references for the chronology.
 
        Goodheart's book <EM>UNIX</EM> <EM>Curses</EM> <EM>Explained</EM> (1991)  describes  SVr3  (1987),
        commenting on several functions:
        This  table  showing  the number of bits for <STRONG>A_COLOR</STRONG> and <STRONG>A_CHARTEXT</STRONG> was
        gleaned from the curses header files for various operating systems  and
        architectures.   The inferred architecture and notes reflect the format
-       and size of the defined constants as well as clues such as  the  alter-
-       nate  character  set implementation.  A 32-bit library can be used on a
-       64-bit system, but not necessarily the reverse.
+       and size of the  defined  constants  as  well  as  clues  such  as  the
+       alternate  character  set implementation.  A 32-bit library can be used
+       on a 64-bit system, but not necessarily the reverse.
 
               <STRONG>Year</STRONG>   <STRONG>System</STRONG>        <STRONG>Arch</STRONG>    <STRONG>Color</STRONG>   <STRONG>Char</STRONG>   <STRONG>Notes</STRONG>
               ----------------------------------------------------------------
 
           Regarding OSF/1 (and Tru64),
 
-          <STRONG>o</STRONG>   These used 64-bit hardware.  Like ncurses, the OSF/1 curses  in-
-              terface is not customized for 32-bit and 64-bit versions.
+          <STRONG>o</STRONG>   These used 64-bit hardware.   Like  ncurses,  the  OSF/1  curses
+              interface is not customized for 32-bit and 64-bit versions.
 
-          <STRONG>o</STRONG>   Unlike other systems which evolved from AT&amp;T code, OSF/1 provid-
-              ed a new implementation for X/Open curses.
+          <STRONG>o</STRONG>   Unlike  other  systems  which  evolved  from  AT&amp;T  code,  OSF/1
+              provided a new implementation for X/Open curses.
 
           Regarding Solaris,
 
               Sun's copyright began in 1996.
 
           <STRONG>o</STRONG>   Sun updated the X/Open curses interface after 64-bit support was
-              introduced in 1997, but did not modify the  SVr4  curses  inter-
-              face.
+              introduced  in  1997,  but  did  not  modify  the  SVr4   curses
+              interface.
 
           Regarding U/Win,
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
        This implementation provides the <STRONG>A_ITALIC</STRONG> attribute for terminals which
-       have  the  <STRONG>enter_italics_mode</STRONG> (<STRONG>sitm</STRONG>) and <STRONG>exit_italics_mode</STRONG> (<STRONG>ritm</STRONG>) capa-
-       bilities.  Italics are not mentioned in X/Open Curses.  Unlike the oth-
-       er  video attributes, <STRONG>A_ITALIC</STRONG> is unrelated to the <STRONG>set_attributes</STRONG> capa-
-       bilities.  This implementation makes the  assumption  that  <STRONG>exit_attri-</STRONG>
-       <STRONG>bute_mode</STRONG> may also reset italics.
+       have   the   <STRONG>enter_italics_mode</STRONG>  (<STRONG>sitm</STRONG>)  and  <STRONG>exit_italics_mode</STRONG>  (<STRONG>ritm</STRONG>)
+       capabilities.  Italics are not mentioned in X/Open Curses.  Unlike  the
+       other  video  attributes,  <STRONG>A_ITALIC</STRONG>  is unrelated to the <STRONG>set_attributes</STRONG>
+       capabilities.   This   implementation   makes   the   assumption   that
+       <STRONG>exit_attribute_mode</STRONG> may also reset italics.
 
        Each  of  the functions added by XSI Curses has a parameter <EM>opts</EM>, which
-       X/Open Curses still (after more than twenty  years)  documents  as  re-
-       served for future use, saying that it should be <STRONG>NULL</STRONG>.  This implementa-
-       tion uses that parameter in ABI 6 for the functions which have a color-
-       pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
+       X/Open Curses  still  (after  more  than  twenty  years)  documents  as
+       reserved  for  future  use,  saying  that  it  should  be  <STRONG>NULL</STRONG>.   This
+       implementation uses that parameter in ABI 6  for  the  functions  which
+       have a color-pair parameter to support <EM>extended</EM> <EM>color</EM> <EM>pairs</EM>:
 
        <STRONG>o</STRONG>   For functions which modify the color, e.g., <STRONG>wattr_set</STRONG> and <STRONG>wattr_on</STRONG>,
            if <EM>opts</EM> is set it is treated as a pointer to <STRONG>int</STRONG>, and used  to  set
        The XSI Curses standard states that whether the  traditional  functions
        <STRONG>attron</STRONG>/<STRONG>attroff</STRONG>/<STRONG>attrset</STRONG>  can  manipulate  attributes other than <STRONG>A_BLINK</STRONG>,
        <STRONG>A_BOLD</STRONG>, <STRONG>A_DIM</STRONG>, <STRONG>A_REVERSE</STRONG>, <STRONG>A_STANDOUT</STRONG>, or <STRONG>A_UNDERLINE</STRONG> is  "unspecified".
-       Under  this implementation as well as SVr4 curses, these functions cor-
-       rectly manipulate all  other  highlights  (specifically,  <STRONG>A_ALTCHARSET</STRONG>,
+       Under  this  implementation  as  well  as  SVr4 curses, these functions
+       correctly manipulate all other highlights (specifically,  <STRONG>A_ALTCHARSET</STRONG>,
        <STRONG>A_PROTECT</STRONG>, and <STRONG>A_INVIS</STRONG>).
 
        XSI Curses added these entry points:
 
-              <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>
-              <STRONG>tr_get</STRONG>, <STRONG>wattr_set</STRONG>
+              <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>wattr_get</STRONG>, <STRONG>wattr_set</STRONG>
 
        The new functions are intended to work with a new series  of  highlight
        macros prefixed with <STRONG>WA_</STRONG>.  The older macros have direct counterparts in
            <STRONG>A_</STRONG> and <STRONG>WA_</STRONG>-using functions operates on the  same  current-highlight
            information.
 
-       <STRONG>o</STRONG>   However, in some implementations, those symbols have unrelated val-
-           ues.
+       <STRONG>o</STRONG>   However,  in  some  implementations,  those  symbols have unrelated
+           values.
 
            For example, the Solaris <EM>xpg4</EM> (X/Open) curses declares <STRONG>attr_t</STRONG> to be
-           an unsigned short integer (16-bits), while <STRONG>chtype</STRONG> is a unsigned in-
-           teger (32-bits).  The <STRONG>WA_</STRONG> symbols in this case are  different  from
+           an  unsigned  short  integer  (16-bits), while <STRONG>chtype</STRONG> is a unsigned
+           integer (32-bits).  The <STRONG>WA_</STRONG> symbols in this case are different from
            the  <STRONG>A_</STRONG>  symbols because they are used for a smaller datatype which
            does not represent <STRONG>A_CHARTEXT</STRONG> or <STRONG>A_COLOR</STRONG>.
 
 
        <STRONG>o</STRONG>   Because ncurses's <STRONG>attr_t</STRONG> can hold a  color  pair  (in  the  <STRONG>A_COLOR</STRONG>
            field),  a  call to <STRONG>wattr_on</STRONG>, <STRONG>wattr_off</STRONG>, or <STRONG>wattr_set</STRONG> may alter the
-           window's color.  If the color pair information in the attribute pa-
-           rameter is zero, no change is made to the window's color.
+           window's color.  If the color pair  information  in  the  attribute
+           parameter is zero, no change is made to the window's color.
 
            This is consistent with SVr4 curses; X/Open Curses does not specify
            this.
 
-       The XSI standard extended conformance level adds new highlights <STRONG>A_HORI-</STRONG>
-       <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
-       <STRONG>WA_</STRONG> macros for each).  As of August 2013, no  known  terminal  provides
-       these highlights (i.e., via the <STRONG>sgr1</STRONG> capability).
+       The  XSI  standard  extended  conformance  level  adds  new  highlights
+       <STRONG>A_HORIZONTAL</STRONG>,   <STRONG>A_LEFT</STRONG>,   <STRONG>A_LOW</STRONG>,   <STRONG>A_RIGHT</STRONG>,   <STRONG>A_TOP</STRONG>,   <STRONG>A_VERTICAL</STRONG>  (and
+       corresponding <STRONG>WA_</STRONG> macros for  each).   As  of  August  2013,  no  known
+       terminal provides these highlights (i.e., via the <STRONG>sgr1</STRONG> capability).
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
 
        <STRONG>o</STRONG>   returns an error if the window pointer is null.
 
-       <STRONG>o</STRONG>   returns an error if the color pair parameter for <STRONG>wcolor_set</STRONG> is out-
-           side the range 0..COLOR_PAIRS-1.
+       <STRONG>o</STRONG>   returns  an  error  if  the  color pair parameter for <STRONG>wcolor_set</STRONG> is
+           outside the range 0..COLOR_PAIRS-1.
 
        <STRONG>o</STRONG>   does not return an error if either of the parameters  of  <STRONG>wattr_get</STRONG>
            used for retrieving attribute or color-pair values is <STRONG>NULL</STRONG>.
 
 
 
-ncurses 6.4                       2023-09-09                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
+ncurses 6.4                       2023-09-16                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>