curs_border_set(3x) Library calls curs_border_set(3x)
border_set, wborder_set, box_set, hline_set, whline_set, mvhline_set,
mvwhline_set, vline_set, wvline_set, mvvline_set, mvwvline_set - draw
borders and lines in a curses window of wide characters
#include <curses.h>
int border_set(const cchar_t *ls, const cchar_t *rs,
const cchar_t *ts, const cchar_t *bs,
const cchar_t *tl, const cchar_t *tr,
const cchar_t *bl, const cchar_t *br);
int wborder_set(WINDOW *win,
const cchar_t *ls, const cchar_t *rs,
const cchar_t *ts, const cchar_t *bs,
const cchar_t *tl, const cchar_t *tr,
const cchar_t *bl, const cchar_t *br);
int box_set(WINDOW *win, const cchar_t *verch,
const cchar_t *horch);
int hline_set(const cchar_t *wch, int n);
int whline_set(WINDOW *win, const cchar_t *wch, int n);
int mvhline_set(int y, int x, const cchar_t *wch,
int n);
int mvwhline_set(WINDOW *win, int y, int x,
const cchar_t *wch, int n);
int vline_set(const cchar_t *wch, int n);
int wvline_set(WINDOW *win, const cchar_t *wch, int n);
int mvvline_set(int y, int x, const cchar_t *wch,
int n);
int mvwvline_set(WINDOW *win, int y, int x,
const cchar_t *wch, int n);
The border_set and wborder_set functions draw a border around the edges
of the current or specified window. These functions do not change the
cursor position, and do not wrap.
Other than the window, each argument is a complex character with
attributes:
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 of these arguments is zero, then the corresponding default
values (defined in curses.h) are used instead:
WACS_VLINE,
WACS_VLINE,
WACS_HLINE,
WACS_HLINE,
WACS_ULCORNER,
WACS_URCORNER,
WACS_LLCORNER, and
WACS_LRCORNER.
box_set(win, verch, horch); is a shorthand for the following call:
wborder_set(win, verch, verch,
horch, horch, NULL, NULL, NULL, NULL);
The *line_set functions use wch to draw a line starting at the current
cursor position in the window. The line is at most n characters long
or as many as fit into the window. The current cursor position is not
changed.
The hline_set, mvhline_set, mvwhline_set, and whline_set functions draw
a line proceeding toward the last column of the same line.
The vline_set, mvvline_set, mvwvline_set, and wvline_set functions draw
a line proceeding toward the last line of the window.
Upon successful completion, these functions return OK. Otherwise, they
return ERR.
Functions using a window parameter return ERR if it is null.
Functions prefixed with "mv" first perform cursor movement and fail if
the position (y, x) is outside the window boundaries.
border_set, hline_set, mvhline_set, mvvline_set, mvwhline_set,
mvwvline_set, and vline_set may be implemented as macros.
X/Open Curses Issue 4 describes these functions. It specifies no error
conditions for them.
X/Open Curses Issue 4 (1995) initially specified these functions.
curses(3x), curs_add_wch(3x), curs_border(3x), curs_outopts(3x)
ncurses 6.5 2025-02-01 curs_border_set(3x)