diff options
Diffstat (limited to 'doc/html/man/curs_outopts.3x.html')
-rw-r--r-- | doc/html/man/curs_outopts.3x.html | 234 |
1 files changed, 234 insertions, 0 deletions
diff --git a/doc/html/man/curs_outopts.3x.html b/doc/html/man/curs_outopts.3x.html new file mode 100644 index 000000000000..9be94d9b78fb --- /dev/null +++ b/doc/html/man/curs_outopts.3x.html @@ -0,0 +1,234 @@ +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> +<!-- + **************************************************************************** + * 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 @ +--> +<HTML> +<HEAD> +<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>curs_outopts 3x</H1> +<HR> +<PRE> +<!-- Manpage converted by man2html 3.0.1 --> +<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>NAME</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>SYNOPSIS</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>DESCRIPTION</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>RETURN VALUE</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>PORTABILITY</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>NOTES</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>SEE ALSO</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> +<HR> +<ADDRESS> +Man(1) output converted with +<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a> +</ADDRESS> +</BODY> +</HTML> |