mirror of
https://github.com/Aigor44/ncursesw-morphos.git
synced 2024-12-27 07:49:06 +08:00
5dbe81a41e
+ regenerate HTML manpages. + improve manual pages for wgetch and wget_wch to point out that they might return values without names in curses.h (Debian #822426). + make linux3.0 entry the default linux entry (Debian #823658) -TD + modify linux2.6 entry to improve line-drawing so that the linux3.0 entry can be used in non-UTF-8 mode -TD + document return value of use_extended_names (report by Mike Gran).
180 lines
6.2 KiB
Plaintext
180 lines
6.2 KiB
Plaintext
.\"***************************************************************************
|
|
.\" Copyright (c) 2002-2012,2016 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_get_wch.3x,v 1.9 2016/05/15 01:12:50 tom Exp $
|
|
.TH curs_get_wch 3X ""
|
|
.na
|
|
.hy 0
|
|
.de bP
|
|
.IP \(bu 4
|
|
..
|
|
.SH NAME
|
|
\fBget_wch\fR,
|
|
\fBwget_wch\fR,
|
|
\fBmvget_wch\fR,
|
|
\fBmvwget_wch\fR,
|
|
\fBunget_wch\fR \- get (or push back) a wide character from curses terminal keyboard
|
|
.ad
|
|
.hy
|
|
.SH SYNOPSIS
|
|
\fB#include <curses.h>\fR
|
|
.sp
|
|
\fBint get_wch(wint_t *\fR\fIwch\fR\fB);\fR
|
|
.br
|
|
\fBint wget_wch(WINDOW *\fR\fIwin\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
|
|
.br
|
|
\fBint mvget_wch(int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
|
|
.br
|
|
\fBint mvwget_wch(WINDOW *\fR\fIwin\fR\fB, int \fR\fIy\fR\fB, int \fR\fIx\fR\fB, wint_t *\fR\fIwch\fR\fB);\fR
|
|
.br
|
|
\fBint unget_wch(const wchar_t \fR\fIwch\fR\fB);\fR
|
|
.SH DESCRIPTION
|
|
The
|
|
\fBget_wch\fR,
|
|
\fBwget_wch\fR,
|
|
\fBmvget_wch\fR, and
|
|
\fBmvwget_wch\fR
|
|
functions read a character
|
|
from the terminal associated with the current or specified window.
|
|
In no-delay mode,
|
|
if no input is waiting, the value \fBERR\fR is returned.
|
|
In delay mode,
|
|
the program waits until the system passes text through to the program.
|
|
Depending on the setting of \fBcbreak\fR,
|
|
this is after one character (cbreak mode),
|
|
or after the first newline (nocbreak mode).
|
|
In half-delay mode,
|
|
the program waits until the user types a character or the specified
|
|
timeout interval has elapsed.
|
|
.PP
|
|
Unless \fBnoecho\fR has been set,
|
|
these routines echo the character into the designated window.
|
|
.PP
|
|
If the window is not a pad and has been moved or modified since the
|
|
last call to \fBwrefresh\fR,
|
|
\fBwrefresh\fR will be called before another character is read.
|
|
.PP
|
|
If \fBkeypad\fR is enabled,
|
|
these functions respond to
|
|
the pressing of a function key by setting the object pointed to by
|
|
\fIwch\fR
|
|
to the keycode assigned to the function key,
|
|
and returning \fBKEY_CODE_YES\fR.
|
|
If a character (such as escape) that could be the
|
|
beginning of a function key is received, curses sets a timer.
|
|
If the remainder
|
|
of the sequence does arrive within the designated time, curses passes through
|
|
the character; otherwise, curses returns the function key value.
|
|
For this
|
|
reason, many terminals experience a delay between the time a user presses
|
|
the escape key and the time the escape is returned to the program.
|
|
.PP
|
|
The keycodes returned by these functions are the same as those
|
|
returned by \fBwgetch\fP:
|
|
.bP
|
|
The predefined function
|
|
keys are listed in \fB<curses.h>\fR as macros with values outside the range
|
|
of 8-bit characters.
|
|
Their names begin with \fBKEY_\fR.
|
|
.bP
|
|
Other (user-defined) function keys which may be defined using \fBdefine_key\fP(3X)
|
|
have no names, but also are expected to have values outside the range of
|
|
8-bit characters.
|
|
.PP
|
|
The
|
|
\fBunget_wch\fR
|
|
function pushes the wide character
|
|
\fIwch\fR
|
|
back onto the head of the input queue, so the wide character
|
|
is returned by the next call to
|
|
\fBget_wch\fR.
|
|
The pushback of
|
|
one character is guaranteed.
|
|
If the program calls
|
|
\fBunget_wch\fR
|
|
too many times without an intervening call to
|
|
\fBget_wch\fR,
|
|
the operation may fail.
|
|
.SH NOTES
|
|
The header file
|
|
\fB<curses.h>\fR
|
|
automatically
|
|
includes the header file
|
|
\fB<stdio.h>\fR.
|
|
.PP
|
|
Applications should not define the escape key by itself as a single-character
|
|
function.
|
|
.PP
|
|
When using
|
|
\fBget_wch\fR,
|
|
\fBwget_wch\fR,
|
|
\fBmvget_wch\fR, or
|
|
\fBmvwget_wch\fR, applications should
|
|
not use
|
|
\fBnocbreak\fR
|
|
mode and
|
|
\fBecho\fR
|
|
mode
|
|
at the same time.
|
|
Depending on the state of the tty driver when each character
|
|
is typed, the program may produce undesirable results.
|
|
.PP
|
|
All functions except \fBwget_wch\fR and \fBunget_wch\fR
|
|
may be macros.
|
|
.SH RETURN VALUE
|
|
When
|
|
\fBget_wch\fR,
|
|
\fBwget_wch\fR,
|
|
\fBmvget_wch\fR, and
|
|
\fBmvwget_wch\fR
|
|
functions successfully
|
|
report the pressing of a function key, they return
|
|
\fBKEY_CODE_YES\fR.
|
|
When they successfully report a wide character, they return
|
|
\fBOK\fR.
|
|
Otherwise, they return
|
|
\fBERR\fR.
|
|
.PP
|
|
Upon successful completion,
|
|
\fBunget_wch\fR
|
|
returns
|
|
\fBOK\fR.
|
|
Otherwise, the function returns
|
|
\fBERR\fR.
|
|
.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 SEE ALSO
|
|
\fBcurses\fR(3X),
|
|
\fBcurs_getch\fR(3X),
|
|
\fBcurs_ins_wch\fR(3X),
|
|
\fBcurs_inopts\fR(3X),
|
|
\fBcurs_move\fR(3X),
|
|
\fBcurs_refresh\fR(3X)
|