ncurses 5.9 - patch 20150214
[ncurses.git] / doc / html / man / curs_outopts.3x.html
index a7a0a456cad6bb8297f2bd061e64f6292bfacb16..6252ebf3d27c6f383ee84075fae12b4613be51ef 100644 (file)
+<!-- 
+  ****************************************************************************
+  * 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>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>
-       <B>clearok</B>,   <B>idlok</B>,   <B>idcok</B>   <B>immedok</B>,  <B>leaveok</B>,  <B>setscrreg</B>,
-       <B>wsetscrreg</B>, <B>scrollok</B>, <B>nl</B>, <B>nonl</B> - <B>curses</B> output options
+<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>SYNOPSIS</H2><PRE>
-       <B>#include</B> <B>&lt;curses.h&gt;</B>
+<H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+       <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <B>int</B> <B>clearok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>int</B> <B>idlok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>void</B> <B>idcok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>void</B> <B>immedok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>int</B> <B>leaveok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>int</B> <B>setscrreg(int</B> <B>top,</B> <B>int</B> <B>bot);</B>
-       <B>int</B> <B>wsetscrreg(WINDOW</B> <B>*win,</B> <B>int</B> <B>top,</B> <B>int</B> <B>bot);</B>
-       <B>int</B> <B>scrollok(WINDOW</B> <B>*win,</B> <B>bool</B> <B>bf);</B>
-       <B>int</B> <B>nl(void);</B>
-       <B>int</B> <B>nonl(void);</B>
+       <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>
+<H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        These routines set options that change the style of output
-       within  <B>curses</B>.   All  options are initially <B>FALSE</B>, unless
-       otherwise stated.  It  is  not  necessary  to  turn  these
-       options off before calling <B>endwin</B>.
+       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  <B>clearok</B> is called with <B>TRUE</B> as argument, the next call
-       to <B>wrefresh</B> with this window will clear  the  screen  com-
+       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 <I>win</I> argument to <B>clearok</B> is the global variable <B>curscr</B>,
-       the  next  call  to  <B>wrefresh</B>  with  any window causes the
+       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 <B>idlok</B> is called with <B>TRUE</B> as  second  argument,  <B>curses</B>
+       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 <B>idlok</B> with <B>FALSE</B> as second
+       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 isn't really needed.  If insert/delete line  can-
-       not  be  used,  <B>curses</B> redraws the changed portions of all
+       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 <B>idcok</B> is called with <B>FALSE</B> as second  argument,  <B>curses</B>
+       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 <B>idcok</B> with
-       <B>TRUE</B> as second argument re-enables use of character inser-
+       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  <B>immedok</B> is called with <B>TRUE</B> <B>as</B> <B>argument</B>, any change in
-       the window image, such  as  the  ones  caused  by  <B>waddch,</B>
-       <B>wclrtobot,</B> <B>wscrl</B>, <I>etc</I>., automatically cause a call to <B>wre-</B>
-       <B>fresh</B>.  However, it may degrade performance  considerably,
-       due  to  repeated  calls  to  <B>wrefresh</B>.  It is disabled by
-       default.
+       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 <B>leaveok</B> option
-       allows the cursor to be left wherever the  update  happens
-       to leave it.  It is useful for applications where the cur-
-       sor is not used, since it  reduces  the  need  for  cursor
-       motions.   If  possible, the cursor is made invisible when
-       this option is enabled.
-
-       The <B>setscrreg</B> and <B>wsetscrreg</B> routines allow  the  applica-
+       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.  <I>top</I> and <I>bot</I> 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  <B>scrollok</B>  are
-       enabled,  an  attempt  to  move off the bottom 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 region capability in
-       the terminal, like that in the VT100.  If <B>idlok</B> 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  <B>scrollok</B> option controls what happens when the cursor
+       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, (<I>bf</I> is <B>FALSE</B>), the cursor is left
-       on the bottom line.  If enabled, (<I>bf</I> is <B>TRUE</B>), the  window
-       is  scrolled  up  one  line (Note that in order to get the
-       physical scrolling effect on the terminal, it is also nec-
-       essary to call <B>idlok</B>).
+       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  <B>nl</B>  and  <B>nonl</B> routines control whether the underlying
+       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  <B>addch('\n')</B>
+       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 <B>nonl</B>, <B>curses</B> will be able to make bet-
+       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, <B>curses</B> will then be able to detect
+       cursor  motion.   Also, <STRONG>curses</STRONG> will then be able to detect
        the return key.
 
 
 </PRE>
-<H2>RETURN VALUE</H2><PRE>
-       The functions <B>setscrreg</B> and <B>wsetscrreg</B> return <B>OK</B> upon suc-
-       cess  and <B>ERR</B> upon failure. All other routines that return
-       an integer always return <B>OK</B>.
+<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>PORTABILITY</H2><PRE>
-       These functions are described in the XSI Curses  standard,
+<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 <B>raw</B>() should disable the  CRLF  translations  con-
-       trolled by <B>nl</B>() and <B>nonl</B>().  BSD curses did turn off these
-       translations; AT&amp;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 does not mess with.
-
-       Some  historic  curses  implementations had, as an undocu-
-       mented feature,  the  ability  to  do  the  equivalent  of
-       <B>clearok(...,</B>  <B>1)</B>  by saying <B>touchwin(stdscr)</B> or <B>clear(std-</B>
-       <B>scr)</B>.  This will not work under ncurses.
-
-       Earlier System V  curses  implementations  specified  that
-       with  <B>scrollok</B> enabled, any window modification triggering
-       a scroll also forced a physical refresh.  XSI Curses  does
-       not  require this, and <B>ncurses</B> avoids doing it in order to
-       perform better vertical-motion  optimization  at  <B>wrefresh</B>
-       time.
+       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&amp;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  <B>leaveok</B>.
+       should be made invisible  as  a  side-effect  of  <STRONG>leaveok</STRONG>.
        SVr4  curses  documentation  does  this, but the code does
-       not.  Use <B>curs_set</B> to make the cursor invisible.
+       not.  Use <STRONG>curs_set</STRONG> to make the cursor invisible.
 
 
 </PRE>
-<H2>NOTES</H2><PRE>
-       Note that <B>clearok</B>, <B>leaveok</B>, <B>scrollok</B>, <B>idcok</B>, <B>nl</B>, <B>nonl</B>  and
-       <B>setscrreg</B> may be macros.
+<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 <B>immedok</B> routine is useful for windows that are used as
+       The <STRONG>immedok</STRONG> routine is useful for windows that are used as
        terminal emulators.
 
 
 </PRE>
-<H2>SEE ALSO</H2><PRE>
-       <B><A HREF="ncurses.3x.html">curses(3x)</A></B>,        <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B>,         <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B>,
-       <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B>, <B><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></B>, <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B>
-
-
-
-
-
-
-
-
-
-
-
-
+<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>
-<HR>
-<ADDRESS>
-Man(1) output converted with
-<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
-</ADDRESS>
+<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>