]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/curs_color.3x.html
ncurses 6.1 - patch 20180728
[ncurses.git] / doc / html / man / curs_color.3x.html
index dadd9a1ad900f884c78ebdefa05d29a9554153df..735c6f954230ad24b66f798a627af3dda8dcdd27 100644 (file)
@@ -1,6 +1,6 @@
 <!-- 
   ****************************************************************************
-  * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc.              *
+  * Copyright (c) 1998-2017,2018 Free Software Foundation, Inc.              *
   *                                                                          *
   * Permission is hereby granted, free of charge, to any person obtaining a  *
   * copy of this software and associated documentation files (the            *
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_color.3x,v 1.50 2017/04/01 19:57:19 tom Exp @
+  * @Id: curs_color.3x,v 1.55 2018/07/28 22:15:59 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
-<meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts">
+<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
 <TITLE>curs_color 3x</TITLE>
 <link rev=made href="mailto:bug-ncurses@gnu.org">
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
@@ -47,8 +47,8 @@
 
 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
        <STRONG>start_color</STRONG>, <STRONG>has_colors</STRONG>, <STRONG>can_change_color</STRONG>, <STRONG>init_pair</STRONG>, <STRONG>init_color</STRONG>,
-       <STRONG>color_content</STRONG>, <STRONG>pair_content</STRONG>, <STRONG>COLOR_PAIR</STRONG>, <STRONG>PAIR_NUMBER</STRONG> - <STRONG>curses</STRONG> color
-       manipulation routines
+       <STRONG>color_content</STRONG>, <STRONG>pair_content</STRONG>, <STRONG>reset_color_pairs</STRONG>, <STRONG>COLOR_PAIR</STRONG>, <STRONG>PAIR_NUMBER</STRONG>
+       - <STRONG>curses</STRONG> color manipulation routines
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
@@ -71,6 +71,9 @@
        <STRONG>int</STRONG> <STRONG>extended_color_content(int</STRONG> <STRONG>color,</STRONG> <STRONG>int</STRONG> <STRONG>*r,</STRONG> <STRONG>int</STRONG> <STRONG>*g,</STRONG> <STRONG>int</STRONG> <STRONG>*b);</STRONG>
        <STRONG>int</STRONG> <STRONG>extended_pair_content(int</STRONG> <STRONG>pair,</STRONG> <STRONG>int</STRONG> <STRONG>*f,</STRONG> <STRONG>int</STRONG> <STRONG>*b);</STRONG>
 
+       /* extensions */
+       <STRONG>void</STRONG> <STRONG>reset_color_pairs(void);</STRONG>
+
        <STRONG>int</STRONG> <STRONG>COLOR_PAIR(int</STRONG> <STRONG>n);</STRONG>
        <STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM><STRONG>);</STRONG>
 
        ors (color number <STRONG>-1</STRONG>) if you first  invoke  the  <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG>
        routine.
 
+       The  extension  <STRONG>reset_color_pairs</STRONG>  tells  ncurses to discard all of the
+       color-pair information which was set with <STRONG>init_pair</STRONG>.  It  also  touches
+       the  current-  and  standard-screens, allowing an application to switch
+       color palettes rapidly.
+
 
 </PRE><H3><a name="h3-init_color">init_color</a></H3><PRE>
-       The  <STRONG>init_color</STRONG>  routine  changes  the definition of a color.  It takes
+       The <STRONG>init_color</STRONG> routine changes the definition of  a  color.   It  takes
        four arguments: the number of the color to be changed followed by three
        RGB values (for the amounts of red, green, and blue components).
 
-       <STRONG>o</STRONG>   The  first argument must be a legal color value; default colors are
-           not allowed here.  (See the section <STRONG>Colors</STRONG> for  the  default  color
+       <STRONG>o</STRONG>   The first argument must be a legal color value; default colors  are
+           not  allowed  here.   (See the section <STRONG>Colors</STRONG> for the default color
            index.)
 
-       <STRONG>o</STRONG>   Each  of  the  last  three arguments must be a value in the range <STRONG>0</STRONG>
+       <STRONG>o</STRONG>   Each of the last three arguments must be a value  in  the  range  <STRONG>0</STRONG>
            through <STRONG>1000</STRONG>.
 
-       When <STRONG>init_color</STRONG> is used, all occurrences of that color  on  the  screen
+       When  <STRONG>init_color</STRONG>  is  used, all occurrences of that color on the screen
        immediately change to the new definition.
 
 
 </PRE><H3><a name="h3-color_content">color_content</a></H3><PRE>
        The <STRONG>color_content</STRONG> routine gives programmers a way to find the intensity
-       of the red, green, and blue (RGB) components in a color.   It  requires
-       four  arguments:  the  color  number, and three addresses of <STRONG>short</STRONG>s for
-       storing the information about the amounts of red, green, and blue  com-
+       of  the  red, green, and blue (RGB) components in a color.  It requires
+       four arguments: the color number, and three  addresses  of  <STRONG>short</STRONG>s  for
+       storing  the information about the amounts of red, green, and blue com-
        ponents in the given color.
 
-       <STRONG>o</STRONG>   The  first  argument  must  be a legal color value, i.e., <STRONG>0</STRONG> through
+       <STRONG>o</STRONG>   The first argument must be a legal color  value,  i.e.,  <STRONG>0</STRONG>  through
            <STRONG>COLORS-1</STRONG>, inclusive.
 
-       <STRONG>o</STRONG>   The values that are stored at the addresses pointed to by the  last
-           three  arguments  are  in  the  range <STRONG>0</STRONG> (no component) through <STRONG>1000</STRONG>
+       <STRONG>o</STRONG>   The  values that are stored at the addresses pointed to by the last
+           three arguments are in the range  <STRONG>0</STRONG>  (no  component)  through  <STRONG>1000</STRONG>
            (maximum amount of component), inclusive.
 
 
 </PRE><H3><a name="h3-pair_content">pair_content</a></H3><PRE>
-       The <STRONG>pair_content</STRONG> routine allows programmers to find out what  colors  a
-       given  color-pair consists of.  It requires three arguments: the color-
+       The  <STRONG>pair_content</STRONG>  routine allows programmers to find out what colors a
+       given color-pair consists of.  It requires three arguments: the  color-
        pair number, and two addresses of <STRONG>short</STRONG>s for storing the foreground and
        the background color numbers.
 
-       <STRONG>o</STRONG>   The  first argument must be a legal color value, i.e., in the range
+       <STRONG>o</STRONG>   The first argument must be a legal color value, i.e., in the  range
            <STRONG>1</STRONG> through <STRONG>COLOR_PAIRS-1</STRONG>, inclusive.
 
-       <STRONG>o</STRONG>   The values that are stored at the addresses pointed to by the  sec-
-           ond  and  third arguments are in the range <STRONG>0</STRONG> through <STRONG>COLORS</STRONG>, inclu-
+       <STRONG>o</STRONG>   The  values that are stored at the addresses pointed to by the sec-
+           ond and third arguments are in the range <STRONG>0</STRONG> through  <STRONG>COLORS</STRONG>,  inclu-
            sive.
 
 
 </PRE><H3><a name="h3-PAIR_NUMBER">PAIR_NUMBER</a></H3><PRE>
-       <STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM>) extracts the color value from  its  <EM>attrs</EM>  parameter
+       <STRONG>PAIR_NUMBER(</STRONG><EM>attrs</EM>)  extracts  the  color value from its <EM>attrs</EM> parameter
        and returns it as a color pair number.
 
 
 </PRE><H3><a name="h3-COLOR_PAIR">COLOR_PAIR</a></H3><PRE>
        Its inverse <STRONG>COLOR_PAIR(</STRONG><EM>n</EM><STRONG>)</STRONG> converts a color pair number to an attribute.
-       Attributes can hold color pairs in the range 0 to 255.  If you  need  a
-       color  pair  larger  than that, you must use functions such as <STRONG>attr_set</STRONG>
-       (which pass the color pair as a separate  parameter)  rather  than  the
+       Attributes  can  hold color pairs in the range 0 to 255.  If you need a
+       color pair larger than that, you must use functions  such  as  <STRONG>attr_set</STRONG>
+       (which  pass  the  color  pair as a separate parameter) rather than the
        legacy functions such as <STRONG>attrset</STRONG>.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
        The routines <STRONG>can_change_color</STRONG> and <STRONG>has_colors</STRONG> return <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>.
 
-       All  other routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG> (SVr4
-       specifies only "an integer value other than <STRONG>ERR</STRONG>") upon successful  com-
+       All other routines return the integer <STRONG>ERR</STRONG> upon failure and an <STRONG>OK</STRONG>  (SVr4
+       specifies  only "an integer value other than <STRONG>ERR</STRONG>") upon successful com-
        pletion.
 
-       X/Open  defines  no  error conditions.  This implementation will return
-       <STRONG>ERR</STRONG> on attempts to use color values outside the  range  <STRONG>0</STRONG>  to  <STRONG>COLORS</STRONG>-1
-       (except  for  the default colors extension), or use color pairs outside
-       the range <STRONG>0</STRONG> to <STRONG>COLOR_PAIRS-1</STRONG>.  Color values used in <STRONG>init_color</STRONG> must  be
+       X/Open defines no error conditions.  This  implementation  will  return
+       <STRONG>ERR</STRONG>  on  attempts  to  use color values outside the range <STRONG>0</STRONG> to <STRONG>COLORS</STRONG>-1
+       (except for the default colors extension), or use color  pairs  outside
+       the  range <STRONG>0</STRONG> to <STRONG>COLOR_PAIRS-1</STRONG>.  Color values used in <STRONG>init_color</STRONG> must be
        in the range <STRONG>0</STRONG> to <STRONG>1000</STRONG>.  An error is returned from all functions if the
        terminal has not been initialized.  An error is returned from secondary
        functions such as <STRONG>init_pair</STRONG> if <STRONG>start_color</STRONG> was not called.
 
           <STRONG>init_color</STRONG>
                returns an error if the terminal does not support this feature,
-               e.g., if the <STRONG>initialize_color</STRONG> capability  is  absent  from  the
+               e.g.,  if  the  <STRONG>initialize_color</STRONG>  capability is absent from the
                terminal description.
 
           <STRONG>start_color</STRONG>
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       In  the  <STRONG>ncurses</STRONG>  implementation,  there is a separate color activation
-       flag, color palette, color pairs table, and associated <STRONG>COLORS</STRONG> and  <STRONG>COL-</STRONG>
-       <STRONG>OR_PAIRS</STRONG>  counts for each screen; the <STRONG>start_color</STRONG> function only affects
+       In the <STRONG>ncurses</STRONG> implementation, there is  a  separate  color  activation
+       flag,  color palette, color pairs table, and associated <STRONG>COLORS</STRONG> and <STRONG>COL-</STRONG>
+       <STRONG>OR_PAIRS</STRONG> counts for each screen; the <STRONG>start_color</STRONG> function only  affects
        the current screen.  The SVr4/XSI interface is not really designed with
-       this  in  mind,  and historical implementations may use a single shared
+       this in mind, and historical implementations may use  a  single  shared
        color palette.
 
-       Setting an implicit background color via  a  color  pair  affects  only
-       character  cells  that  a character write operation explicitly touches.
-       To change the background color used when parts of a window are  blanked
+       Setting  an  implicit  background  color  via a color pair affects only
+       character cells that a character write  operation  explicitly  touches.
+       To  change the background color used when parts of a window are blanked
        by erasing or scrolling operations, see <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>.
 
-       Several  caveats  apply  on  older x86 machines (e.g., i386, i486) with
+       Several caveats apply on older x86 machines  (e.g.,  i386,  i486)  with
        VGA-compatible graphics:
 
-       <STRONG>o</STRONG>   COLOR_YELLOW is actually brown.  To get  yellow,  use  COLOR_YELLOW
+       <STRONG>o</STRONG>   COLOR_YELLOW  is  actually  brown.  To get yellow, use COLOR_YELLOW
            combined with the <STRONG>A_BOLD</STRONG> attribute.
 
-       <STRONG>o</STRONG>   The  A_BLINK  attribute should in theory cause the background to go
+       <STRONG>o</STRONG>   The A_BLINK attribute should in theory cause the background  to  go
            bright.  This often fails to work, and even some cards for which it
-           mostly  works  (such  as the Paradise and compatibles) do the wrong
-           thing when you try to set a bright "yellow" background (you  get  a
+           mostly works (such as the Paradise and compatibles)  do  the  wrong
+           thing  when  you try to set a bright "yellow" background (you get a
            blinking yellow foreground instead).
 
        <STRONG>o</STRONG>   Color RGB values are not settable.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       This  implementation satisfies XSI Curses's minimum maximums for <STRONG>COLORS</STRONG>
+       This implementation satisfies XSI Curses's minimum maximums for  <STRONG>COLORS</STRONG>
        and <STRONG>COLOR_PAIRS</STRONG>.
 
-       The <STRONG>init_pair</STRONG> routine accepts negative values of foreground  and  back-
-       ground  color to support the <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG> extension, but only
+       The  <STRONG>init_pair</STRONG>  routine accepts negative values of foreground and back-
+       ground color to support the <STRONG><A HREF="default_colors.3x.html">use_default_colors(3x)</A></STRONG> extension, but  only
        if that routine has been first invoked.
 
        The assumption that <STRONG>COLOR_BLACK</STRONG> is the default background color for all
-       terminals  can  be  modified using the <STRONG><A HREF="default_colors.3x.html">assume_default_colors(3x)</A></STRONG> exten-
+       terminals can be modified using  the  <STRONG><A HREF="default_colors.3x.html">assume_default_colors(3x)</A></STRONG>  exten-
        sion.
 
-       This implementation checks the pointers, e.g., for the values  returned
+       This  implementation checks the pointers, e.g., for the values returned
        by <STRONG>color_content</STRONG> and <STRONG>pair_content</STRONG>, and will treat those as optional pa-
        rameters when null.
 
-       X/Open Curses does not specify a limit for the  number  of  colors  and
+       X/Open  Curses  does  not  specify a limit for the number of colors and
        color pairs which a terminal can support.  However, in its use of <STRONG>short</STRONG>
-       for the parameters, it carries over SVr4's  implementation  detail  for
+       for  the  parameters,  it carries over SVr4's implementation detail for
        the compiled terminfo database, which uses signed 16-bit numbers.  This
-       implementation provides extended versions of those functions which  use
-       <STRONG>short</STRONG>  parameters, allowing applications to use larger color- and pair-
+       implementation  provides extended versions of those functions which use
+       <STRONG>short</STRONG> parameters, allowing applications to use larger color- and  pair-
        numbers.
 
+       The <STRONG>reset_color_pairs</STRONG> function is an extension of ncurses.
+
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,  <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,  <STRONG>de-</STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,  <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>de-</STRONG>
        <STRONG><A HREF="default_colors.3x.html">fault_colors(3x)</A></STRONG>