]> ncurses.scripts.mit.edu Git - ncurses.git/blob - man/curs_addchstr.3x
19c47fc59ff91e961d1a318fea3c8e72448216eb
[ncurses.git] / man / curs_addchstr.3x
1 .\"***************************************************************************
2 .\" Copyright 2019-2023,2024 Thomas E. Dickey                                *
3 .\" Copyright 1998-2012,2017 Free Software Foundation, Inc.                  *
4 .\"                                                                          *
5 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
6 .\" copy of this software and associated documentation files (the            *
7 .\" "Software"), to deal in the Software without restriction, including      *
8 .\" without limitation the rights to use, copy, modify, merge, publish,      *
9 .\" distribute, distribute with modifications, sublicense, and/or sell       *
10 .\" copies of the Software, and to permit persons to whom the Software is    *
11 .\" furnished to do so, subject to the following conditions:                 *
12 .\"                                                                          *
13 .\" The above copyright notice and this permission notice shall be included  *
14 .\" in all copies or substantial portions of the Software.                   *
15 .\"                                                                          *
16 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
17 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
18 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
19 .\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
20 .\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
21 .\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
22 .\" THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
23 .\"                                                                          *
24 .\" Except as contained in this notice, the name(s) of the above copyright   *
25 .\" holders shall not be used in advertising or otherwise to promote the     *
26 .\" sale, use or other dealings in this Software without prior written       *
27 .\" authorization.                                                           *
28 .\"***************************************************************************
29 .\"
30 .\" $Id: curs_addchstr.3x,v 1.46 2024/05/11 20:39:53 tom Exp $
31 .TH curs_addchstr 3X 2024-05-11 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
32 .ie \n(.g \{\
33 .ds `` \(lq
34 .ds '' \(rq
35 .\}
36 .el \{\
37 .ie t .ds `` ``
38 .el   .ds `` ""
39 .ie t .ds '' ''
40 .el   .ds '' ""
41 .\}
42 .
43 .de bP
44 .ie n  .IP \(bu 4
45 .el    .IP \(bu 2
46 ..
47 .SH NAME
48 \fB\%addchstr\fP,
49 \fB\%addchnstr\fP,
50 \fB\%waddchstr\fP,
51 \fB\%waddchnstr\fP,
52 \fB\%mvaddchstr\fP,
53 \fB\%mvaddchnstr\fP,
54 \fB\%mvwaddchstr\fP,
55 \fB\%mvwaddchnstr\fP \-
56 add a \fIcurses\fR character string to a window
57 .SH SYNOPSIS
58 .nf
59 \fB#include <curses.h>
60 .PP
61 \fBint addchstr(const chtype *\fIchstr\fP);
62 \fBint waddchstr(WINDOW *\fIwin\fP, const chtype *\fIchstr\fP);
63 \fBint mvaddchstr(int \fIy\fP, int \fIx\fP, const chtype *\fIchstr\fP);
64 \fBint mvwaddchstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const chtype *\fIchstr\fP);
65 .PP
66 \fBint addchnstr(const chtype *\fIchstr\fP, int \fIn\fP);
67 \fBint waddchnstr(WINDOW *\fIwin\fP, const chtype *\fIchstr\fP, int \fIn\fP);
68 \fBint mvaddchnstr(int \fIy\fP, int \fIx\fP, const chtype *\fIchstr\fP, int \fIn\fP);
69 \fBint mvwaddchnstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const chtype *\fIchstr\fP, int \fIn\fP);
70 .fi
71 .SH DESCRIPTION
72 .B \%waddchstr
73 copies the string of
74 .I curses
75 characters
76 .I \%chstr
77 to the window
78 .IR win "."
79 A null
80 .I curses
81 character terminates the string.
82 .B \%waddchnstr
83 does the same,
84 but copies at most
85 .I n
86 characters,
87 or as many as possible if
88 .I n
89 is
90 .BR \-1 "."
91 \fB\%ncurses\fP(3X) describes the variants of these functions.
92 .PP
93 Because these functions do not call \fB\%waddch\fP(3X) internally,
94 they are faster than \fB\%waddstr\fP(3X) and \fB\%waddnstr\fP(3X).
95 On the other hand,
96 they
97 .bP
98 do not treat the backspace,
99 carriage return,
100 or line feed characters specially;
101 .bP
102 do not represent unprintable characters with \fB\%unctrl\fP(3X);
103 .bP
104 do not update the cursor position to follow the last character written;
105 .bP
106 truncate the string at the window's right margin,
107 rather than wrapping it to the next line and potentially scrolling.
108 .SH RETURN VALUE
109 These functions return
110 .B OK
111 on success and
112 .B ERR
113 on failure.
114 .PP
115 X/Open Curses does not specify any error conditions.
116 .I \%ncurses
117 returns
118 .B ERR
119 if
120 .bP
121 .I win
122 is
123 .B NULL
124 or
125 .bP
126 .I chstr
127 is
128 .BR NULL "."
129 .PP
130 Functions prefixed with \*(``mv\*('' first perform cursor movement and
131 fail if the position
132 .RI ( y ,
133 .IR x )
134 is outside the window boundaries.
135 .SH NOTES
136 All of these functions except
137 .B \%waddchnstr
138 may be implemented as macros.
139 .SH PORTABILITY
140 X/Open Curses,
141 Issue 4 describes these functions.
142 .SH SEE ALSO
143 \fB\%curs_add_wchstr\fP(3X) describes comparable functions of the
144 .I \%ncurses
145 library in its wide-character configuration
146 .RI ( \%ncursesw ).
147 .PP
148 \fB\%curses\fP(3X),
149 \fB\%curs_addch\fP(3X),
150 \fB\%curs_addstr\fP(3X)