wbkgdset(3x) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

wbkgdset(3x)

curs_bkgd(3x)                    Library calls                   curs_bkgd(3x)

NAME
       bkgdset,  wbkgdset,  bkgd,  wbkgd, getbkgd - manipulate background of a
       curses window of characters

SYNOPSIS
       #include <ncursesw/curses.h>

       int bkgd(chtype ch);
       int wbkgd(WINDOW *win, chtype ch);

       void bkgdset(chtype ch);
       void wbkgdset(WINDOW *win, chtype ch);

       chtype getbkgd(WINDOW *win);

DESCRIPTION
       Every curses window has a background character  property:  in  the  li‐
       brary's  non-wide configuration, it is a curses character (chtype) that
       combines a set of attributes (and, if colors are enabled, a color  pair
       identifier)  with  a character code.  When erasing (parts of) a window,
       curses replaces the erased cells with the background character.

       curses also uses the background character when writing characters to  a
       populated window.

       •   The  attribute  part  of the background character combines with all
           non-blank character cells  in  the  window,  as  populated  by  the
           waddch(3X)  and  winsch(3X)  families  of functions (and those that
           call them).

       •   Both the character code and attributes of the background  character
           combine with blank character cells in the window.

       The  background character's set of attributes becomes a property of the
       character cell and move with it through any scrolling and insert/delete
       line/character operations.  To the  extent  possible  on  the  terminal
       type, curses displays the attributes of the background character as the
       graphic rendition of a character cell on the display.

   bkgd, wbkgd
       bkgd  and  wbkgd set the background property of stdscr or the specified
       window and then apply this setting to every character cell in that win‐
       dow.

       •   The rendition of every character in the window changes to  the  new
           background rendition.

       •   Wherever the former background character appears, it changes to the
           new background character.

       ncurses  updates  the rendition of each character cell by comparing the
       character, non-color attributes, and color pair selection.  The library
       applies the following procedure to each cell in the window, whether  or
       not it is blank.

       •   ncurses first compares the cell's character to the previously spec‐
           ified  background  character; if they match, ncurses writes the new
           background character to the cell.

       •   ncurses then checks whether the cell uses color; that is, its color
           pair value is nonzero.  If not, it simply replaces  the  attributes
           and color pair in the cell with those from the new background char‐
           acter.

       •   If  the  cell  uses color, and its background color matches that of
           the current window background, ncurses removes attributes that  may
           have  come  from the current background and adds those from the new
           background.  It finishes by setting the cell's  background  to  use
           the new window background color.

       •   If  the  cell  uses  color, and its background color does not match
           that of the current window background,  ncurses  updates  only  the
           non-color  attributes, first removing those that may have come from
           the current background, and then adding  attributes  from  the  new
           background.

       If the new background's character is non-spacing (for example, if it is
       a  control  character), ncurses retains the existing background charac‐
       ter, except for one special case: ncurses treats a background character
       code of zero (0) as a space.

       If the terminal does not support color, or if color has not  been  ini‐
       tialized with start_color(3X), ncurses ignores the new background char‐
       acter's color pair selection.

   bkgdset, wbkgdset
       bkgdset  and  wbkgdset manipulate the background of the applicable win‐
       dow, without updating the character cells as bkgd and  wbkgd  do;  only
       future writes reflect the updated background.

   getbkgd
       getbkgd  returns  the  given window's background character, attributes,
       and color pair as a chtype.

RETURN VALUE
       bkgdset and wbkgdset do not return a value.

       Functions returning an int return ERR upon failure and OK upon success.
       In ncurses, failure occurs if

       •   the curses screen has not been initialized, or

       •   win is NULL.

       getbkgd's return value is as described above.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

       box; cbp-1 | cbp-1 l | l .  ATTRIBUTE TYPE ATTRIBUTE VALUE = Availabil‐
       ity   library/ncurses = Stability Uncommitted

NOTES
       Unusually, there is no wgetbkgd function; getbkgd behaves as one  would
       expect wgetbkgd to, accepting a WINDOW pointer argument.

       bkgd and bkgdset may be implemented as macros.

       X/Open  Curses  mentions that the character part of the background must
       be a single-byte value.  ncurses, like SVr4 curses,  checks  to  ensure
       that  it is, and retains the existing background character if the check
       fails.

       Source code for open source software components in Oracle  Solaris  can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This software was built from source available at:
       https://github.com/oracle/solaris-userland

       The original community source was downloaded from:
       https://invisible-mirror.net/archives/ncurses/cur‐
       rent/ncurses-6.5-20250614.tgz

       Further information about this software can be found on the open source
       community website at https://invisible-island.net/ncurses/.

PORTABILITY
       X/Open  Curses  Issue 4  describes  these functions.  It indicates that
       bkgd, wbkgd, and getbkgd return ERR on failure  (in  the  case  of  the
       last,  this value is cast to chtype), but specifies no error conditions
       for them.

       SVr4 documentation says that bkgd and wbkgd return OK “or  a  non-nega‐
       tive  integer  if immedok() is set”, referring to the return value from
       wrefresh, which in SVr4 returns a count of characters  written  to  the
       window if its immedok property is set; in ncurses, it does not.

       Neither  X/Open  Curses nor the SVr4 manual pages detail how the rendi‐
       tion of characters in the window updates when bkgd or wbkgd changes the
       background character.  ncurses, like SVr4 curses, does not (in its non-
       wide configuration) store the background and window attribute contribu‐
       tions to each character cell separately.

HISTORY
       SVr3.1 (1987) introduced these functions.

SEE ALSO
       curs_bkgrnd(3X) describes the corresponding functions in the wide  con‐
       figuration of ncurses.

       curses(3X), curs_addch(3X), curs_attr(3X)


ncurses 6.5                       2025-01-18                     curs_bkgd(3x)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3