blob: 78d5788ebc22f9bb6d7546eef8a23197ebc2f099 [file] [log] [blame]
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05301.\"***************************************************************************
micky3879b9f5e72025-07-08 18:04:53 -04002.\" Copyright 2019-2023,2024 Thomas E. Dickey *
3.\" Copyright 2002-2012,2017 Free Software Foundation, Inc. *
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +05304.\" *
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.\"
micky3879b9f5e72025-07-08 18:04:53 -040030.\" $Id: curs_addwstr.3x,v 1.37 2024/04/20 19:18:18 tom Exp $
31.TH curs_addwstr 3X 2024-04-20 "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.
Steve Kondikae271bc2015-11-15 02:50:53 +010043.de bP
micky3879b9f5e72025-07-08 18:04:53 -040044.ie n .IP \(bu 4
45.el .IP \(bu 2
Steve Kondikae271bc2015-11-15 02:50:53 +010046..
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053047.SH NAME
micky3879b9f5e72025-07-08 18:04:53 -040048\fB\%addwstr\fP,
49\fB\%addnwstr\fP,
50\fB\%waddwstr\fP,
51\fB\%waddnwstr\fP,
52\fB\%mvaddwstr\fP,
53\fB\%mvaddnwstr\fP,
54\fB\%mvwaddwstr\fP,
55\fB\%mvwaddnwstr\fP \-
56add a wide-character string to a \fIcurses\fR window and advance the cursor
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053057.SH SYNOPSIS
58.nf
micky3879b9f5e72025-07-08 18:04:53 -040059\fB#include <curses.h>
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053060.PP
micky3879b9f5e72025-07-08 18:04:53 -040061\fBint addwstr(const wchar_t *\fIwstr\fP);
62\fBint mvaddwstr(int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP);
63\fBint mvwaddwstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP);
64\fBint waddwstr(WINDOW *\fIwin\fP, const wchar_t *\fIwstr\fP);
65.PP
66\fBint addnwstr(const wchar_t *\fIwstr\fP, int \fIn\fP);
67\fBint mvaddnwstr(int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP, int \fIn\fP);
68\fBint mvwaddnwstr(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const wchar_t *\fIwstr\fP, int \fIn\fP);
69\fBint waddnwstr(WINDOW *\fIwin\fP, const wchar_t *\fIwstr\fP, int \fIn\fP);
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053070.fi
71.SH DESCRIPTION
micky3879b9f5e72025-07-08 18:04:53 -040072.B waddwstr
73writes the characters of the (wide-null-terminated) wide-character
74string
75.I wstr
76to the window
77.IR win .
78Its process is similar to constructing a
79.I cchar_t
80for each
81.I wchar_t
82in
83.IR wstr ,
84then calling \fB\%wadd_wch\fP(3X) with the resulting
85.IR cchar_t .
86.bP
87Spacing and non-spacing characters in the string
88are processed one at a time,
89and
90.bP
91control characters are processed as in \fB\%wadd_wch\fP(3X).
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +053092.PP
micky3879b9f5e72025-07-08 18:04:53 -040093.B waddnwstr
94writes at most
95.I n
96wide characters,
97or until a terminating wide null character occurs in
98.IR wstr .
99If
100.I n
101is \-1,
102.B
103.B waddnwstr
104writes the entire wide string.
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530105.PP
micky3879b9f5e72025-07-08 18:04:53 -0400106\fB\%ncurses\fP(3X) describes the variants of these functions.
Steve Kondikae271bc2015-11-15 02:50:53 +0100107.SH RETURN VALUE
micky3879b9f5e72025-07-08 18:04:53 -0400108These functions return
109.B OK
110on success and
111.B ERR
112on failure.
Steve Kondikae271bc2015-11-15 02:50:53 +0100113.PP
micky3879b9f5e72025-07-08 18:04:53 -0400114X/Open Curses does not specify any error conditions.
115.I \%ncurses
116returns an error
Steve Kondikae271bc2015-11-15 02:50:53 +0100117.bP
micky3879b9f5e72025-07-08 18:04:53 -0400118if the window pointer is
119.BR NULL ,
Steve Kondikae271bc2015-11-15 02:50:53 +0100120.bP
micky3879b9f5e72025-07-08 18:04:53 -0400121if the string pointer is
122.BR NULL ,
123or
Steve Kondikae271bc2015-11-15 02:50:53 +0100124.bP
micky3879b9f5e72025-07-08 18:04:53 -0400125if an internal \fB\%wadd_wch\fP(3X) call returns an error.
Steve Kondikae271bc2015-11-15 02:50:53 +0100126.PP
micky3879b9f5e72025-07-08 18:04:53 -0400127Functions prefixed with \*(``mv\*('' first perform cursor movement and
128fail if the position
129.RI ( y ,
130.IR x )
131is outside the window boundaries.
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530132.SH NOTES
micky3879b9f5e72025-07-08 18:04:53 -0400133All of these functions except
134.B waddnwstr
135may be implemented as macros.
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530136.SH PORTABILITY
micky3879b9f5e72025-07-08 18:04:53 -0400137X/Open Curses,
138Issue 4 describes these functions.
Amit Daniel Kachhape6a01f52011-07-20 11:45:59 +0530139.SH SEE ALSO
micky3879b9f5e72025-07-08 18:04:53 -0400140\fB\%curs_addstr\fP(3X) describes comparable functions of the
141.I \%ncurses
142library in its non-wide-character configuration.
143.PP
144\fB\%curses\fP(3X),
145\fB\%curs_add_wch\fP(3X),
146\fB\%curs_add_wchstr\fP(3X)