Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

curses(3curses)

curs_attr(3curses)

curs_clear(3curses)

curs_inch(3curses)

curs_outopts(3curses)

curs_refresh(3curses)

putwc(3S)






       curs_addwch(3curses)                            curs_addwch(3curses)


       NAME
             curs_addwch: addwch, waddwch, mvaddwch, mvwaddwch, echowchar,
             wechowchar - add a wchar_t character (with attributes) to a
             curses window and advance cursor

       SYNOPSIS
             cc [flag . . .] file -lcurses [library . . .]
             #include <curses.h>
             int addwch(chtype wch);
             int waddwch(WINDOW *win, chtype wch);
             int mvaddwch(int y, int x, chtype wch);
             int mvwaddwch(WINDOW *win, int y, int x, chtype wch);
             int echowchar(chtype wch);
             int wechowchar(WINDOW *win, chtype wch);

       DESCRIPTION
             The addwch, waddwch, mvaddwch, and mvwaddwch routines put the
             character wch, holding a wchar_t character, into the window at
             the current cursor position of the window and advance the
             position of the window cursor.  Their function is similar to
             that of putwchar in the C multibyte library.  At the right
             margin, an automatic newline is performed.  At the bottom of
             the scrolling region, if scrollok is enabled, the scrolling
             region is scrolled up one line.

             If wch is a tab, newline, or backspace, the cursor is moved
             appropriately within the window.  A newline also does a
             clrtoeol before moving.  Tabs are considered to be at every
             eighth column.  If wch is another control character, it is
             drawn in the ^X notation.  Calling winwch after adding a
             control character does not return the control character, but
             instead returns the representation of the control character.

             Video attributes can be combined with a wchar_t character by
             OR-ing them into the parameter.  This results in these
             attributes also being set.  (The intent here is that text,
             including attributes, can be copied from one place to another
             using inwch and addwch.)  [see standout, predefined video
             attribute constants, on the curs_attr(3curses) page].

             The echowchar and wechowchar routines are functionally
             equivalent to a call to addwch followed by a call to refresh,
             or a call to waddwch followed by a call to wrefresh.  The
             knowledge that only a single character is being output is
             taken into consideration and, for non-control characters, a
             considerable performance gain might be seen by using these


                           Copyright 1994 Novell, Inc.               Page 1













      curs_addwch(3curses)                            curs_addwch(3curses)


            routines instead of their equivalents.

         Line Graphics
            The following variables may be used to add line drawing
            characters to the screen with routines of the addwch family.
            When variables are defined for the terminal, the A_ALTCHARSET
            bit is turned on [see curs_attr(3curses)].  Otherwise, the
            default character listed below is stored in the variable.  The
            names chosen are consistent with the VT100 nomenclature.

                  __________________________________________________
                  Name           Default     Glyph Description
                  __________________________________________________
                  ACS_ULCORNER      +        upper left-hand corner
                  ACS_LLCORNER      +        lower left-hand corner
                  ACS_URCORNER      +        upper right-hand corner
                  ACS_LRCORNER      +        lower right-hand corner
                  ACS_RTEE          +        right tee (-|)
                  ACS_LTEE          +        left tee (-)
                  ACS_BTEE          +        bottom te_ (|)
|)                ACS_TTEE          +        top tee (
                  ACS_HLINE         -        horizontal line
                  ACS_VLINE         |        vertical line
                  ACS_PLUS          +        plus
                  ACS_S1            -        scan line 1
                  ACS_S9            _        scan line 9
                  ACS_DIAMOND       +        diamond
                  ACS_CKBOARD       :        checker board (stipple)
                  ACS_DEGREE        '        degree symbol
                  ACS_PLMINUS       #        plus/minus
                  ACS_BULLET        o        bullet
                  ACS_LARROW        <        arrow pointing left
                  ACS_RARROW        >        arrow pointing right
                  ACS_DARROW        v        arrow pointing down
                  ACS_UARROW        ^        arrow pointing up
                  ACS_BOARD         #        board of squares
                  ACS_LANTERN       #        lantern symbol
                  ACS_BLOCK         #        solid square block
                  __________________________________________________

         Return Values
            All routines return the integer ERR upon failure and an
            integer value other than ERR upon successful completion,
            unless otherwise noted in the preceding routine descriptions.




                          Copyright 1994 Novell, Inc.               Page 2













       curs_addwch(3curses)                            curs_addwch(3curses)


       REFERENCES
             curses(3curses), curs_attr(3curses), curs_clear(3curses),
             curs_inch(3curses), curs_outopts(3curses),
             curs_refresh(3curses), putwc(3S)

       NOTICES
             The header file curses.h automatically includes the header
             files stdio.h and unctrl.h.

             Note that addwch, mvaddwch, mvwaddwch, and echowchar may be
             macros.





































                           Copyright 1994 Novell, Inc.               Page 3








Typewritten Software • bear@typewritten.org • Edmonds, WA 98026