freebsd-src/man/curs_addstr.3x
2024-06-20 10:11:38 +02:00

136 lines
4.5 KiB
Plaintext

.\"***************************************************************************
.\" Copyright 2019-2023,2024 Thomas E. Dickey *
.\" Copyright 1998-2012,2017 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_addstr.3x,v 1.45 2024/04/20 19:18:18 tom Exp $
.TH curs_addstr 3X 2024-04-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 '' ""
.\}
.
.de bP
.ie n .IP \(bu 4
.el .IP \(bu 2
..
.SH NAME
\fB\%addstr\fP,
\fB\%addnstr\fP,
\fB\%waddstr\fP,
\fB\%waddnstr\fP,
\fB\%mvaddstr\fP,
\fB\%mvaddnstr\fP,
\fB\%mvwaddstr\fP,
\fB\%mvwaddnstr\fP \-
add a string to a \fIcurses\fR window and advance the cursor
.SH SYNOPSIS
.nf
\fB#include <curses.h>
.PP
\fBint addstr(const char *\fIstr\fP);
\fBint mvaddstr(int \fIy\fP, int \fIx\fP, const char *\fIstr\fP);
\fBint mvwaddstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char *\fIstr\fP);
\fBint waddstr(WINDOW *\fIwin\fP, const char *\fIstr\fP);
.PP
\fBint addnstr(const char *\fIstr\fP, int \fIn\fP);
\fBint mvaddnstr(int \fIy\fP, int \fIx\fP, const char *\fIstr\fP, int \fIn\fP);
\fBint mvwaddnstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const char *\fIstr\fP, int \fIn\fP);
\fBint waddnstr(WINDOW *\fIwin\fP, const char *\fIstr\fP, int \fIn\fP);
.fi
.SH DESCRIPTION
.B waddstr
writes the characters of the (null-terminated) string
.I str
to the window
.IR win .
Its process is similar to calling \fB\%waddch\fP(3X) for each
.I char
in
.IR str .
Control characters are processed as in \fB\%waddch\fP(3X).
.PP
.B waddnstr
writes at most
.I n
characters,
or until a terminating null character occurs in
.IR str .
If
.I n
is \-1,
.B
.B waddnstr
writes the entire string.
.PP
\fB\%ncurses\fP(3X) describes the variants of these functions.
.SH RETURN VALUE
These functions return
.B OK
on success and
.B ERR
on failure.
.PP
X/Open Curses does not specify any error conditions.
.I \%ncurses
returns an error
.bP
if the window pointer is
.BR NULL ,
.bP
if the string pointer is
.BR NULL ,
or
.bP
if an internal \fB\%waddch\fP(3X) call returns an error.
.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
All of these functions except \fBwaddnstr\fP may be macros.
.SH PORTABILITY
X/Open Curses,
Issue 4 describes these functions.
.SH SEE ALSO
\fB\%curs_addwstr\fP(3X) describes comparable functions of the
.I \%ncurses
library in its wide-character configuration
.RI ( \%ncursesw ).
.PP
\fB\%curses\fP(3X),
\fB\%curs_addch\fP(3X),
\fB\%curs_addchstr\fP(3X)