mirror of
https://github.com/ThomasDickey/ncurses-snapshots.git
synced 2026-01-26 11:04:35 +00:00
194 lines
6.5 KiB
Plaintext
194 lines
6.5 KiB
Plaintext
.\"***************************************************************************
|
|
.\" Copyright 2019-2024,2025 Thomas E. Dickey *
|
|
.\" Copyright 2002-2011,2012 Free Software Foundation, Inc. *
|
|
.\" *
|
|
.\" Permission is hereby granted, free of charge, to any person obtaining a *
|
|
.\" copy of this software and associated documentation files (the *
|
|
.\" "Software"), to deal in the Software without restriction, including *
|
|
.\" without limitation the rights to use, copy, modify, merge, publish, *
|
|
.\" distribute, distribute with modifications, sublicense, and/or sell *
|
|
.\" copies of the Software, and to permit persons to whom the Software is *
|
|
.\" furnished to do so, subject to the following conditions: *
|
|
.\" *
|
|
.\" The above copyright notice and this permission notice shall be included *
|
|
.\" in all copies or substantial portions of the Software. *
|
|
.\" *
|
|
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
|
|
.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
|
|
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
|
|
.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
|
|
.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
|
|
.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
|
|
.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
|
.\" *
|
|
.\" Except as contained in this notice, the name(s) of the above copyright *
|
|
.\" holders shall not be used in advertising or otherwise to promote the *
|
|
.\" sale, use or other dealings in this Software without prior written *
|
|
.\" authorization. *
|
|
.\"***************************************************************************
|
|
.\"
|
|
.\" $Id: curs_border_set.3x,v 1.50 2025/10/21 00:10:56 tom Exp $
|
|
.TH curs_border_set 3X 2025-10-20 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
|
|
.ie \n(.g \{\
|
|
.ds `` \(lq
|
|
.ds '' \(rq
|
|
.\}
|
|
.el \{\
|
|
.ie t .ds `` ``
|
|
.el .ds `` ""
|
|
.ie t .ds '' ''
|
|
.el .ds '' ""
|
|
.\}
|
|
.SH NAME
|
|
\fB\%border_set\fP,
|
|
\fB\%wborder_set\fP,
|
|
\fB\%box_set\fP,
|
|
\fB\%hline_set\fP,
|
|
\fB\%whline_set\fP,
|
|
\fB\%mvhline_set\fP,
|
|
\fB\%mvwhline_set\fP,
|
|
\fB\%vline_set\fP,
|
|
\fB\%wvline_set\fP,
|
|
\fB\%mvvline_set\fP,
|
|
\fB\%mvwvline_set\fP \-
|
|
draw borders and lines in a \fIcurses\fR window of wide characters
|
|
.SH SYNOPSIS
|
|
.nf
|
|
\fB#include <curses.h>
|
|
.PP
|
|
\fBint border_set(const cchar_t *\fIls\fB, const cchar_t *\fIrs\fP,
|
|
\fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP,
|
|
\fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP,
|
|
\fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR
|
|
.br
|
|
\fBint wborder_set(\fBWINDOW *\fIwin\fP,
|
|
\fBconst cchar_t *\fIls\fB, const cchar_t *\fIrs\fP,
|
|
\fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP,
|
|
\fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP,
|
|
\fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR
|
|
.PP
|
|
\fBint box_set(\fBWINDOW *\fIwin\fP, \fBconst cchar_t *\fIverch\fP,
|
|
\fBconst cchar_t *\fIhorch\fB);\fR
|
|
.PP
|
|
\fBint hline_set(const cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
\fBint whline_set(WINDOW *\fIwin\fP, \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
\fBint mvhline_set(int \fIy\fB, int \fIx\fP, \fBconst cchar_t *\fIwch\fB,\fR \fBint \fIn\fB);\fR
|
|
\fBint mvwhline_set(WINDOW *\fIwin\fP, \fBint \fIy\fB, int \fIx\fP,
|
|
\fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
.PP
|
|
\fBint vline_set(const cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
\fBint wvline_set(WINDOW *\fIwin\fP, \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
\fBint mvvline_set(int \fIy\fB, int \fIx\fP, \fBconst cchar_t *\fIwch\fB,\fR \fBint \fIn\fB);\fR
|
|
\fBint mvwvline_set(WINDOW *\fIwin\fP, \fBint \fIy\fB, int \fIx\fP,
|
|
\fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR
|
|
.fi
|
|
.SH DESCRIPTION
|
|
The
|
|
\fBborder_set\fP
|
|
and
|
|
\fBwborder_set\fP
|
|
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.
|
|
.PP
|
|
Other than the window, each argument is a complex character with attributes:
|
|
.RS
|
|
\fIls\fP \- left side,
|
|
.br
|
|
\fIrs\fP \- right side,
|
|
.br
|
|
\fIts\fP \- top side,
|
|
.br
|
|
\fIbs\fP \- bottom side,
|
|
.br
|
|
\fItl\fP \- top left-hand corner,
|
|
.br
|
|
\fItr\fP \- top right-hand corner,
|
|
.br
|
|
\fIbl\fP \- bottom left-hand corner, and
|
|
.br
|
|
\fIbr\fP \- bottom right-hand corner.
|
|
.RE
|
|
.PP
|
|
If any of these arguments is zero, then the corresponding
|
|
default values (defined in \fBcurses.h\fP) are used instead:
|
|
.RS
|
|
\fBWACS_VLINE\fP,
|
|
.br
|
|
\fBWACS_VLINE\fP,
|
|
.br
|
|
\fBWACS_HLINE\fP,
|
|
.br
|
|
\fBWACS_HLINE\fP,
|
|
.br
|
|
\fBWACS_ULCORNER\fP,
|
|
.br
|
|
\fBWACS_URCORNER\fP,
|
|
.br
|
|
\fBWACS_LLCORNER\fP, and
|
|
.br
|
|
\fBWACS_LRCORNER\fP.
|
|
.RE
|
|
.PP
|
|
\fBbox_set(\fIwin\fR, \fIverch\fB, \fIhorch\fB);\fR
|
|
is a shorthand for the following call:
|
|
.PP
|
|
\fBwborder_set(\fIwin\fB, \fIverch\fB, \fIverch\fB,\fR
|
|
\fIhorch\fB, \fIhorch\fB, NULL, NULL, NULL, NULL);\fR
|
|
.PP
|
|
The
|
|
\fB*line_set\fP
|
|
functions use
|
|
\fIwch\fP
|
|
to draw a line starting at the current cursor position in the window.
|
|
The line is at most \fIn\fP characters long or as many as fit into the window.
|
|
The current cursor position is not changed.
|
|
.PP
|
|
The
|
|
\fBhline_set\fP,
|
|
\fBmvhline_set\fP,
|
|
\fBmvwhline_set\fP, and
|
|
\fBwhline_set\fP
|
|
functions draw a line proceeding toward the last column of the same line.
|
|
.PP
|
|
The
|
|
\fBvline_set\fP,
|
|
\fBmvvline_set\fP,
|
|
\fBmvwvline_set\fP, and
|
|
\fBwvline_set\fP
|
|
functions draw a line proceeding toward the last line of the window.
|
|
.SH RETURN VALUE
|
|
Upon successful completion, these functions return
|
|
\fBOK\fP.
|
|
Otherwise, they return
|
|
\fBERR\fP.
|
|
.PP
|
|
Functions using a window parameter return
|
|
.B ERR
|
|
if it is null.
|
|
.PP
|
|
Functions prefixed with \*(``mv\*('' first perform cursor movement and
|
|
fail if the position
|
|
.RI ( y ,
|
|
.IR x )
|
|
is outside the window boundaries.
|
|
.SH NOTES
|
|
.BR \%border_set ","
|
|
.BR \%hline_set ","
|
|
.BR \%mvhline_set ","
|
|
.BR \%mvvline_set ","
|
|
.BR \%mvwhline_set ","
|
|
.BR \%mvwvline_set ","
|
|
and
|
|
.B \%vline_set
|
|
may be implemented as macros.
|
|
.SH PORTABILITY
|
|
X/Open Curses Issue\ 4 describes these functions.
|
|
It specifies no error conditions for them.
|
|
.SH HISTORY
|
|
X/Open Curses Issue\ 4 (1995) initially specified these functions.
|
|
.SH SEE ALSO
|
|
\fB\%curses\fP(3X),
|
|
\fB\%curs_add_wch\fP(3X),
|
|
\fB\%curs_border\fP(3X),
|
|
\fB\%curs_outopts\fP(3X)
|