dwww Home | Manual pages | Find package

border(3NCURSES)                 Library calls                 border(3NCURSES)

NAME
       border,  wborder,  box, hline, whline, vline, wvline, mvhline, mvwhline,
       mvvline, mvwvline - draw borders and lines in a curses window of charac-
       ters

SYNOPSIS
       #include <curses.h>

       int border(chtype ls, chtype rs, chtype ts, chtype bs,
             chtype tl, chtype tr, chtype bl, chtype br);
       int wborder(WINDOW *win, chtype ls, chtype rs,
             chtype ts, chtype bs, chtype tl, chtype tr,
             chtype bl, chtype br);

       int box(WINDOW *win, chtype verch, chtype horch);

       int hline(chtype ch, int n);
       int whline(WINDOW *win, chtype ch, int n);
       int mvhline(int y, int x, chtype ch, int n);
       int mvwhline(WINDOW *win, int y, int x, chtype ch, int n);

       int vline(chtype ch, int n);
       int wvline(WINDOW *win, chtype ch, int n);
       int mvvline(int y, int x, chtype ch, int n);
       int mvwvline(WINDOW *win, int y, int x, chtype ch, int n);

DESCRIPTION
       wborder and border draw a box at the edges of the  specified  window  or
       stdscr,  respectively.   Each chtype argument corresponds to a geometric
       component of the border as follows:
              ls - left side,
              rs - right side,
              ts - top side,
              bs - bottom side,
              tl - top left-hand corner,
              tr - top right-hand corner,
              bl - bottom left-hand corner, and
              br - bottom right-hand corner.

       If any chtype argument is 0, then curses uses  forms-drawing  characters
       (see addch(3NCURSES)) in the following correspondence:
              ACS_VLINE,
              ACS_VLINE,
              ACS_HLINE,
              ACS_HLINE,
              ACS_ULCORNER,
              ACS_URCORNER,
              ACS_LLCORNER, and
              ACS_LRCORNER.

       box(win,  verch,  horch) is shorthand for “wborder(win, verch, horch, 0,
       0, 0, 0)”.

       whline draws a horizontal line of ch from left to right,  and  wvline  a
       vertical  one  from  top to bottom, stopping once n characters have been
       drawn or upon reaching the boundary of win.  These functions do not  up-
       date the cursor position (beyond any motion directed by their “mv” vari-
       ants).  ncurses(3NCURSES) describes the variants of these functions.

RETURN VALUE
       These functions return OK on success and ERR on failure.

       In ncurses,

       •   these functions fail if the screen is not initialized; and

       •   functions  taking  a  WINDOW  pointer argument fail if win is a null
           pointer.

       Functions prefixed with “mv” first perform cursor movement and  fail  if
       the position (y, x) is outside the window boundaries.

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

       border, box, hline, mvhline, mvwhline, vline, mvvline, and mvwvline  may
       be implemented as macros.

       Borders drawn by these functions are interior borders.

PORTABILITY
       These functions are described in X/Open Curses Issue 4.  It specifies no
       error conditions for them.

       SVr4  documentation  says that these functions 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.

       BSD curses drew boxes with horch in every character cell of the top  and
       bottom lines of the window, whereas SVr3.1 and later curses, because its
       box wrapped wborder, used the default corner characters.

HISTORY
       4BSD (1980) introduced box, defining it as a function.

       SVr3.1  (1987)  added  whline  and wvline and their variants, as well as
       border and wborder, redefining box as a macro wrapping the latter.

SEE ALSO
       ncurses(3NCURSES), outopts(3NCURSES)

ncurses 6.5                        2025-02-01                  border(3NCURSES)

Generated by dwww version 1.16 on Fri Oct 2 06:09:29 CEST 2026.