X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_color.3x.html;h=1ec2985902fd55f0d23e6225e1d703cb268e0c46;hp=b385da464dfbbfaed7cffff9d88ee774d924fc27;hb=aabb3a65ee5d88949abe529b5131adedb9cfab84;hpb=b0b1980be11bba618d84beb8b30ac94e2c820602 diff --git a/doc/html/man/curs_color.3x.html b/doc/html/man/curs_color.3x.html index b385da46..1ec29859 100644 --- a/doc/html/man/curs_color.3x.html +++ b/doc/html/man/curs_color.3x.html @@ -1,7 +1,6 @@ - +
+ +- curs_color(3x) curs_color(3x)-
+NAME
start_color, init_pair, init_color, has_colors, can_change_color, color_content, pair_content, COLOR_PAIR - curses color manipulation routines-SYNOPSIS
+SYNOPSIS
# include <curses.h> int start_color(void); @@ -67,10 +67,12 @@-DESCRIPTION
- Overview - curses support color attributes on terminals with that ca- - pability. To use these routines start_color must be +DESCRIPTION
+ ++Overview
+ curses supports color attributes on terminals with that + capability. To use these routines start_color must be called, usually right after initscr. Colors are always used in pairs (referred to as color-pairs). A color-pair consists of a foreground color (for characters) and a @@ -91,18 +93,89 @@ The routine pair_content allows a programmer to find out how a given color-pair is currently defined. - Routine Descriptions + ++Color Rendering
+ The curses library combines these inputs to produce the + actual foreground and background colors shown on the + screen: + + o per-character video attributes (e.g., via waddch), + + o the window attribute (e.g., by wattrset), and + + o the background character (e.g., wbkgdset). + + Per-character and window attributes are usually set by a + parameter containing video attributes including a COL- + OR_PAIR value. Some functions such as wattr_set use a + separate parameter which is the color pair number. + + The background character is a special case: it includes a + character value, just as if it were passed to waddch. + + The curses library does the actual work of combining these + color pairs in an internal function called from waddch: + + o If the parameter passed to waddch is blank, and it us- + es the special color pair 0, + + o curses next checks the window attribute. + + o If the window attribute does not use color pair 0, + curses uses the color pair from the window at- + tribute. + + o Otherwise, curses uses the background character. + + o If the parameter passed to waddch is not blank, or it + does not use the special color pair 0, curses prefers + the color pair from the parameter, if it is nonzero. + Otherwise, it tries the window attribute next, and fi- + nally the background character. + + Some curses functions such as wprintw call waddch. Those + do not combine its parameter with a color pair. Conse- + quently those calls use only the window attribute or the + background character. + + ++Routine Descriptions
The start_color routine requires no arguments. It must be - called if the programmer wants to use colors, and before - any other color manipulation routine is called. It is - good practice to call this routine right after initscr. - start_color initializes eight basic colors (black, red, - green, yellow, blue, magenta, cyan, and white), and two - global variables, COLORS and COLOR_PAIRS (respectively - defining the maximum number of colors and color-pairs the - terminal can support). It also restores the colors on the - terminal to the values they had when the terminal was just - turned on. + called if the programmer wants to use colors, and before + any other color manipulation routine is called. It is + good practice to call this routine right after initscr. + start_color does this: + + o It initializes two global variables, COLORS and COL- + OR_PAIRS (respectively defining the maximum number of + colors and color-pairs the terminal can support). + + o It initializes the special color pair 0 to the default + foreground and background colors. No other color + pairs are initialized. + + o It restores the colors on the terminal to the values + they had when the terminal was just turned on. + + o If the terminal supports the initc (initialize_color) + capability, start_color initializes its internal table + representing the red, green and blue components of the + color palette. + + The components depend on whether the terminal uses CGA + (aka "ANSI") or HLS (i.e., the hls (hue_lightness_sat- + uration) capability is set). The table is initialized + first for eight basic colors (black, red, green, yel- + low, blue, magenta, cyan, and white), and after that + (if the terminal supports more than eight colors) the + components are initialized to 1000. + + start_color does not attempt to set the terminal's + color palette to match its built-in table. An appli- + cation may use init_color to alter the internal table + along with the terminal's color. These limits apply to color values and color pairs. Val- ues outside these limits are not legal, and may result in @@ -200,7 +273,9 @@ to by the second and third arguments are in the range 0 through COLORS, inclusive. - Colors + ++Colors
In <curses.h> the following macros are defined. These are the default colors. curses also assumes that COLOR_BLACK is the default background color for all terminals. @@ -216,7 +291,7 @@-RETURN VALUE
+RETURN VALUE
The routines can_change_color() and has_colors() return TRUE or FALSE. @@ -245,7 +320,7 @@-NOTES
+NOTES
In the ncurses implementation, there is a separate color activation flag, color palette, color pairs table, and as- sociated COLORS and COLOR_PAIRS counts for each screen; @@ -277,7 +352,7 @@-PORTABILITY
+PORTABILITY
This implementation satisfies XSI Curses's minimum maxi- mums for COLORS and COLOR_PAIRS. @@ -296,7 +371,7 @@-SEE ALSO
+SEE ALSO
curses(3x), curs_initscr(3x), curs_attr(3x), curs_vari- ables(3x), default_colors(3x) @@ -304,7 +379,23 @@ curs_color(3x)-
-Man(1) output converted with man2html +