X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Fcurs_addstr.3x;h=6f280e64ee1bae44e5606eb415cd21d5fcfd5ab1;hp=3859a34b8b429dd6a13dd48e31ca564495e0da2e;hb=42259b594b5dabd37fe2bc294051d2db82e873a2;hpb=3a9b6a3bf0269231bef7de74757a910dedd04e0c;ds=sidebyside diff --git a/man/curs_addstr.3x b/man/curs_addstr.3x index 3859a34b..6f280e64 100644 --- a/man/curs_addstr.3x +++ b/man/curs_addstr.3x @@ -1,48 +1,119 @@ +.\"*************************************************************************** +.\" Copyright 2019,2020 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.23 2020/10/17 23:11:02 tom Exp $ .TH curs_addstr 3X "" +.ie \n(.g .ds `` \(lq +.el .ds `` `` +.ie \n(.g .ds '' \(rq +.el .ds '' '' +.de bP +.ie n .IP \(bu 4 +.el .IP \(bu 2 +.. +.na +.hy 0 .SH NAME -\fBaddstr\fR, \fBaddnstr\fR, \fBwaddstr\fR, \fBwaddnstr\fR, -\fBmvaddstr\fR, \fBmvaddnstr\fR, \fBmvwaddstr\fR, \fBmvwaddnstr\fR - add a -string of characters to a \fBcurses\fR window and advance cursor +\fBaddstr\fR, +\fBaddnstr\fR, +\fBwaddstr\fR, +\fBwaddnstr\fR, +\fBmvaddstr\fR, +\fBmvaddnstr\fR, +\fBmvwaddstr\fR, +\fBmvwaddnstr\fR \- add a string of characters to a \fBcurses\fR window and advance cursor +.ad +.hy .SH SYNOPSIS +.nf \fB#include \fR - -\fBint addstr(const char *str);\fR +.PP +\fBint addstr(const char *\fR\fIstr\fR\fB);\fR .br -\fBint addnstr(const char *str, int n);\fR +\fBint addnstr(const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR .br -\fBint waddstr(WINDOW *win, const char *str);\fR +\fBint waddstr(WINDOW *\fR\fIwin\fR\fB, const char *\fR\fIstr\fR\fB);\fR .br -\fBint waddnstr(WINDOW *win, const char *str, int n);\fR +\fBint waddnstr(WINDOW *\fR\fIwin\fR\fB, const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR +.sp +\fBint mvaddstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr\fR\fB);\fR .br -\fBint mvaddstr(int y, int x, const char *str);\fR +\fBint mvaddnstr(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr\fR\fB, int \fR\fIn\fR\fB);\fR .br -\fBint mvaddnstr(int y, int x, const char *str, int n);\fR +\fBint mvwaddstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr\fR\fB);\fR .br -\fBint mvwaddstr(WINDOW *win, int y, int x, const char *str);\fR -.br -\fBint mvwaddnstr(WINDOW *win, int y, int x, const char *str, int n);\fR +\fBint mvwaddnstr(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, const char *\fR\fIstr, int \fR\fIn\fR\fB);\fR +.fi .SH DESCRIPTION -These routines write the characters of the (null-terminated) character string -\fIstr\fR on the given window. It is similar to calling \fBwaddch\fR once for -each character in the string. The four routines with \fIn\fR as the last -argument write at most \fIn\fR characters. If \fIn\fR is -1, then the -entire string will be added. +These functions write the (null-terminated) character string +\fIstr\fR on the given window. +It is similar to calling \fBwaddch\fR once for each byte in the string. +.PP +The \fImv\fR functions perform cursor movement once, before writing any +characters. +Thereafter, the cursor is advanced as a side-effect of writing to the window. +.PP +The four functions with \fIn\fR as the last argument +write at most \fIn\fR bytes, +or until a terminating null is reached. +If \fIn\fR is \-1, then the entire string will be added. .SH RETURN VALUE -All routines return the integer \fBERR\fR upon failure and \fBOK\fR on success -(the SVr4 manuals specify only "an integer value other than \fBERR\fR") upon -successful completion. +All functions return the integer \fBERR\fR upon failure and \fBOK\fR on success. +.PP +X/Open does not define any error conditions. +This implementation returns an error +.bP +if the window pointer is null or +.bP +if the string pointer is null or +.bP +if the corresponding calls to \fBwaddch\fP return an error. +.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. +If an error is returned by the \fBwmove\fP, +no characters are added to the window. +.PP +If an error is returned by \fBwaddch\fP +(e.g., +because the window is not large enough, +or an illegal byte sequence was detected) +only part of the string may be added. +Aside from that, +there is a special case in \fBwaddch\fP where an error may be +returned after successfully writing a character to the lower-right corner +of a window when \fBscrollok\fP is disabled. .SH NOTES -Note that all of these routines except \fBwaddstr\fR and \fBwaddnstr\fR may be -macros. +All of these functions except \fBwaddnstr\fR may be macros. .SH PORTABILITY -All these entry points are described in the XSI Curses standard, Issue 4. The -XSI errors EILSEQ and EOVERFLOW, associated with extended-level conformance, -are not yet detected. +These functions are described in the XSI Curses standard, Issue 4. .SH SEE ALSO -\fBcurses\fR(3X), \fBcurs_addch\fR(3X). -.\"# -.\"# The following sets edit modes for GNU EMACS -.\"# Local Variables: -.\"# mode:nroff -.\"# fill-column:79 -.\"# End: +\fBcurses\fR(3X), +\fBcurs_addch\fR(3X).