165 lines
6.1 KiB
Groff
165 lines
6.1 KiB
Groff
.\" $OpenBSD: curs_border.3,v 1.12 2023/10/17 09:52:08 nicm Exp $
|
|
.\"
|
|
.\"***************************************************************************
|
|
.\" Copyright 2018-2022,2023 Thomas E. Dickey *
|
|
.\" Copyright 1998-2007,2010 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.3,v 1.12 2023/10/17 09:52:08 nicm Exp $
|
|
.TH curs_border 3 2023-07-01 "ncurses 6.4" "Library calls"
|
|
.ie \n(.g .ds `` \(lq
|
|
.el .ds `` ``
|
|
.ie \n(.g .ds '' \(rq
|
|
.el .ds '' ''
|
|
.na
|
|
.hy 0
|
|
.SH NAME
|
|
\fBborder\fP,
|
|
\fBwborder\fP,
|
|
\fBbox\fP,
|
|
\fBhline\fP,
|
|
\fBwhline\fP,
|
|
\fBvline\fP,
|
|
\fBwvline\fP,
|
|
\fBmvhline\fP,
|
|
\fBmvwhline\fP,
|
|
\fBmvvline\fP,
|
|
\fBmvwvline\fP \- create \fBcurses\fP borders, horizontal and vertical lines
|
|
.ad
|
|
.hy
|
|
.SH SYNOPSIS
|
|
\fB#include <curses.h>\fP
|
|
.sp
|
|
\fBint border(chtype \fIls\fB, chtype \fIrs\fB, chtype \fIts\fB, chtype \fIbs\fB,\fR
|
|
\fBchtype \fItl\fB, chtype \fItr\fB, chtype \fIbl\fB, chtype \fIbr\fB);\fR
|
|
.br
|
|
\fBint wborder(WINDOW *\fIwin\fB, chtype \fIls\fB, chtype \fIrs\fB,\fR
|
|
\fBchtype \fIts\fB, chtype \fIbs\fB, chtype \fItl\fB, chtype \fItr\fB,\fR
|
|
\fBchtype \fIbl\fB, chtype \fIbr\fB);\fR
|
|
.sp
|
|
\fBint box(WINDOW *\fIwin\fB, chtype \fIverch\fB, chtype \fIhorch\fB);\fR
|
|
.sp
|
|
\fBint hline(chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint whline(WINDOW *\fIwin\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint vline(chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint wvline(WINDOW *\fIwin\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.sp
|
|
\fBint mvhline(int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint mvwhline(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint mvvline(int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.br
|
|
\fBint mvwvline(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR
|
|
.SH DESCRIPTION
|
|
The \fBborder\fP, \fBwborder\fP and \fBbox\fP routines
|
|
draw a box around the edges of a window.
|
|
Other than the window, each argument is a character with attributes:
|
|
.sp
|
|
.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:
|
|
.sp
|
|
.RS
|
|
\fBACS_VLINE\fP,
|
|
.br
|
|
\fBACS_VLINE\fP,
|
|
.br
|
|
\fBACS_HLINE\fP,
|
|
.br
|
|
\fBACS_HLINE\fP,
|
|
.br
|
|
\fBACS_ULCORNER\fP,
|
|
.br
|
|
\fBACS_URCORNER\fP,
|
|
.br
|
|
\fBACS_LLCORNER\fP,
|
|
.br
|
|
\fBACS_LRCORNER\fP.
|
|
.RE
|
|
.PP
|
|
\fBbox(\fIwin\fB, \fIverch\fB, \fIhorch\fB)\fR is a shorthand
|
|
for the following call: \fBwborder(\fIwin\fB,\fR \fIverch\fB,\fR
|
|
\fIverch\fB,\fR \fIhorch\fB,\fR \fIhorch\fB, 0, 0, 0, 0)\fR.
|
|
.PP
|
|
The \fBhline\fP and \fBwhline\fP functions draw a horizontal (left to right)
|
|
line using \fIch\fP starting at the current cursor position in the window.
|
|
The
|
|
current cursor position is not changed.
|
|
The line is at most \fIn\fP characters
|
|
long, or as many as fit into the window.
|
|
.PP
|
|
The \fBvline\fP and \fBwvline\fP functions draw a vertical (top to bottom) line
|
|
using \fIch\fP starting at the current cursor position in the window.
|
|
The
|
|
current cursor position is not changed.
|
|
The line is at most \fIn\fP characters
|
|
long, or as many as fit into the window.
|
|
.SH RETURN VALUE
|
|
All routines return the integer \fBOK\fP.
|
|
The SVr4.0 manual says "or a
|
|
non-negative integer if \fBimmedok\fP is set", but this appears to be an error.
|
|
.PP
|
|
X/Open does not define any error conditions.
|
|
This implementation returns an error
|
|
if the window pointer is null.
|
|
.PP
|
|
Functions with a \*(``mv\*('' prefix first perform a cursor movement using
|
|
\fBwmove\fP, and return an error if the position is outside the window,
|
|
or if the window pointer is null.
|
|
.SH NOTES
|
|
The borders generated by these functions are \fIinside\fP borders (this
|
|
is also true of SVr4 curses, though the fact is not documented).
|
|
.PP
|
|
Note that \fBborder\fP and \fBbox\fP may be macros.
|
|
.SH PORTABILITY
|
|
These functions are described in the XSI Curses standard, Issue 4.
|
|
The standard specifies that they return \fBERR\fP on failure,
|
|
but specifies no error conditions.
|
|
.SH SEE ALSO
|
|
\fBcurses\fP(3), \fBcurs_outopts\fP(3).
|