mirror of
https://github.com/Aigor44/ncursesw-morphos.git
synced 2024-12-27 07:49:06 +08:00
027d0c57c4
+ amend change to ".pc" files to only use the extra loader flags which may have rpath options (report by Sven Joachim, cf: 20150502). + change versioning for dpkg's in test-packages for Ada95 and ncurses-examples for consistency with Debian, to work with package updates. + regenerate html manpages. + clarify handling of carriage return in waddch manual page; it was discussed only in the portability section (prompted by comment on Stack Overflow forum):
241 lines
14 KiB
HTML
241 lines
14 KiB
HTML
<!--
|
|
****************************************************************************
|
|
* Copyright (c) 1998-2007,2010 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_outopts.3x,v 1.25 2010/12/04 18:38:55 tom Exp @
|
|
-->
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
|
|
<meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts">
|
|
<TITLE>curs_outopts 3x</TITLE>
|
|
<link rev=made href="mailto:bug-ncurses@gnu.org">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
</HEAD>
|
|
<BODY>
|
|
<H1 class="no-header">curs_outopts 3x</H1>
|
|
<PRE>
|
|
<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
|
|
|
|
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-NAME">NAME</a></H2><PRE>
|
|
<STRONG>clearok</STRONG>, <STRONG>idlok</STRONG>, <STRONG>idcok</STRONG>, <STRONG>immedok</STRONG>, <STRONG>leaveok</STRONG>, <STRONG>setscrreg</STRONG>,
|
|
<STRONG>wsetscrreg</STRONG>, <STRONG>scrollok</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG> - <STRONG>curses</STRONG> output options
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
|
|
<STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
|
|
|
|
<STRONG>int</STRONG> <STRONG>clearok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>idlok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>void</STRONG> <STRONG>idcok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>void</STRONG> <STRONG>immedok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>leaveok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>setscrreg(int</STRONG> <STRONG>top,</STRONG> <STRONG>int</STRONG> <STRONG>bot);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>wsetscrreg(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>int</STRONG> <STRONG>top,</STRONG> <STRONG>int</STRONG> <STRONG>bot);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>scrollok(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>bool</STRONG> <STRONG>bf);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>nl(void);</STRONG>
|
|
<STRONG>int</STRONG> <STRONG>nonl(void);</STRONG>
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
|
|
These routines set options that change the style of output
|
|
within <STRONG>curses</STRONG>. All options are initially <STRONG>FALSE</STRONG>, unless
|
|
otherwise stated. It is not necessary to turn these op-
|
|
tions off before calling <STRONG>endwin</STRONG>.
|
|
|
|
If <STRONG>clearok</STRONG> is called with <STRONG>TRUE</STRONG> as argument, the next call
|
|
to <STRONG>wrefresh</STRONG> with this window will clear the screen com-
|
|
pletely and redraw the entire screen from scratch. This
|
|
is useful when the contents of the screen are uncertain,
|
|
or in some cases for a more pleasing visual effect. If
|
|
the <EM>win</EM> argument to <STRONG>clearok</STRONG> is the global variable <STRONG>curscr</STRONG>,
|
|
the next call to <STRONG>wrefresh</STRONG> with any window causes the
|
|
screen to be cleared and repainted from scratch.
|
|
|
|
If <STRONG>idlok</STRONG> is called with <STRONG>TRUE</STRONG> as second argument, <STRONG>curses</STRONG>
|
|
considers using the hardware insert/delete line feature of
|
|
terminals so equipped. Calling <STRONG>idlok</STRONG> with <STRONG>FALSE</STRONG> as second
|
|
argument disables use of line insertion and deletion.
|
|
This option should be enabled only if the application
|
|
needs insert/delete line, for example, for a screen edi-
|
|
tor. It is disabled by default because insert/delete line
|
|
tends to be visually annoying when used in applications
|
|
where it is not really needed. If insert/delete line can-
|
|
not be used, <STRONG>curses</STRONG> redraws the changed portions of all
|
|
lines.
|
|
|
|
If <STRONG>idcok</STRONG> is called with <STRONG>FALSE</STRONG> as second argument, <STRONG>curses</STRONG>
|
|
no longer considers using the hardware insert/delete char-
|
|
acter feature of terminals so equipped. Use of character
|
|
insert/delete is enabled by default. Calling <STRONG>idcok</STRONG> with
|
|
<STRONG>TRUE</STRONG> as second argument re-enables use of character inser-
|
|
tion and deletion.
|
|
|
|
If <STRONG>immedok</STRONG> is called with <STRONG>TRUE</STRONG> <STRONG>as</STRONG> <STRONG>argument</STRONG>, any change in
|
|
the window image, such as the ones caused by <STRONG>waddch,</STRONG> <STRONG>wclr-</STRONG>
|
|
<STRONG>tobot,</STRONG> <STRONG>wscrl</STRONG>, etc., automatically cause a call to <STRONG>wre-</STRONG>
|
|
<STRONG>fresh</STRONG>. However, it may degrade performance considerably,
|
|
due to repeated calls to <STRONG>wrefresh</STRONG>. It is disabled by de-
|
|
fault.
|
|
|
|
Normally, the hardware cursor is left at the location of
|
|
the window cursor being refreshed. The <STRONG>leaveok</STRONG> option al-
|
|
lows the cursor to be left wherever the update happens to
|
|
leave it. It is useful for applications where the cursor
|
|
is not used, since it reduces the need for cursor motions.
|
|
|
|
The <STRONG>setscrreg</STRONG> and <STRONG>wsetscrreg</STRONG> routines allow the applica-
|
|
tion programmer to set a software scrolling region in a
|
|
window. The <EM>top</EM> and <EM>bot</EM> parameters are the line numbers
|
|
of the top and bottom margin of the scrolling region.
|
|
(Line 0 is the top line of the window.) If this option
|
|
and <STRONG>scrollok</STRONG> are enabled, an attempt to move off the bot-
|
|
tom margin line causes all lines in the scrolling region
|
|
to scroll one line in the direction of the first line.
|
|
Only the text of the window is scrolled. (Note that this
|
|
has nothing to do with the use of a physical scrolling re-
|
|
gion capability in the terminal, like that in the VT100.
|
|
If <STRONG>idlok</STRONG> is enabled and the terminal has either a
|
|
scrolling region or insert/delete line capability, they
|
|
will probably be used by the output routines.)
|
|
|
|
The <STRONG>scrollok</STRONG> option controls what happens when the cursor
|
|
of a window is moved off the edge of the window or
|
|
scrolling region, either as a result of a newline action
|
|
on the bottom line, or typing the last character of the
|
|
last line. If disabled, (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the cursor is left
|
|
on the bottom line. If enabled, (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the window
|
|
is scrolled up one line (Note that to get the physical
|
|
scrolling effect on the terminal, it is also necessary to
|
|
call <STRONG>idlok</STRONG>).
|
|
|
|
The <STRONG>nl</STRONG> and <STRONG>nonl</STRONG> routines control whether the underlying
|
|
display device translates the return key into newline on
|
|
input, and whether it translates newline into return and
|
|
line-feed on output (in either case, the call <STRONG>addch('\n')</STRONG>
|
|
does the equivalent of return and line feed on the virtual
|
|
screen). Initially, these translations do occur. If you
|
|
disable them using <STRONG>nonl</STRONG>, <STRONG>curses</STRONG> will be able to make bet-
|
|
ter use of the line-feed capability, resulting in faster
|
|
cursor motion. Also, <STRONG>curses</STRONG> will then be able to detect
|
|
the return key.
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
|
|
The functions <STRONG>setscrreg</STRONG> and <STRONG>wsetscrreg</STRONG> return <STRONG>OK</STRONG> upon suc-
|
|
cess and <STRONG>ERR</STRONG> upon failure. All other routines that return
|
|
an integer always return <STRONG>OK</STRONG>.
|
|
|
|
X/Open does not define any error conditions.
|
|
|
|
In this implementation, those functions that have a window
|
|
pointer will return an error if the window pointer is
|
|
null.
|
|
|
|
<STRONG>wclrtoeol</STRONG>
|
|
returns an error if the cursor position is
|
|
about to wrap.
|
|
|
|
<STRONG>wsetscrreg</STRONG>
|
|
returns an error if the scrolling region lim-
|
|
its extend outside the window.
|
|
|
|
X/Open does not define any error conditions. This imple-
|
|
mentation returns an error if the window pointer is null.
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
|
|
These functions are described in the XSI Curses standard,
|
|
Issue 4.
|
|
|
|
The XSI Curses standard is ambiguous on the question of
|
|
whether <STRONG>raw</STRONG>() should disable the CRLF translations con-
|
|
trolled by <STRONG>nl</STRONG>() and <STRONG>nonl</STRONG>(). BSD curses did turn off these
|
|
translations; AT&T curses (at least as late as SVr1) did
|
|
not. We choose to do so, on the theory that a programmer
|
|
requesting raw input wants a clean (ideally 8-bit clean)
|
|
connection that the operating system will not alter.
|
|
|
|
Some historic curses implementations had, as an undocu-
|
|
mented feature, the ability to do the equivalent of
|
|
<STRONG>clearok(...,</STRONG> <STRONG>1)</STRONG> by saying <STRONG>touchwin(stdscr)</STRONG> or <STRONG>clear(std-</STRONG>
|
|
<STRONG>scr)</STRONG>. This will not work under ncurses.
|
|
|
|
Earlier System V curses implementations specified that
|
|
with <STRONG>scrollok</STRONG> enabled, any window modification triggering
|
|
a scroll also forced a physical refresh. XSI Curses does
|
|
not require this, and <STRONG>ncurses</STRONG> avoids doing it to perform
|
|
better vertical-motion optimization at <STRONG>wrefresh</STRONG> time.
|
|
|
|
The XSI Curses standard does not mention that the cursor
|
|
should be made invisible as a side-effect of <STRONG>leaveok</STRONG>.
|
|
SVr4 curses documentation does this, but the code does
|
|
not. Use <STRONG>curs_set</STRONG> to make the cursor invisible.
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-NOTES">NOTES</a></H2><PRE>
|
|
Note that <STRONG>clearok</STRONG>, <STRONG>leaveok</STRONG>, <STRONG>scrollok</STRONG>, <STRONG>idcok</STRONG>, <STRONG>nl</STRONG>, <STRONG>nonl</STRONG> and
|
|
<STRONG>setscrreg</STRONG> may be macros.
|
|
|
|
The <STRONG>immedok</STRONG> routine is useful for windows that are used as
|
|
terminal emulators.
|
|
|
|
|
|
</PRE>
|
|
<H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
|
|
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>,
|
|
<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
|
|
<STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
|
|
|
|
|
|
|
|
<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
|
|
</PRE>
|
|
<div class="nav">
|
|
<ul>
|
|
<li><a href="#h2-NAME">NAME</a></li>
|
|
<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
|
|
<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
|
|
<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
|
|
<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
|
|
<li><a href="#h2-NOTES">NOTES</a></li>
|
|
<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
|
|
</ul>
|
|
</div>
|
|
</BODY>
|
|
</HTML>
|