<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--
****************************************************************************
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--
****************************************************************************
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
<STRONG>int</STRONG> <STRONG>putp(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>vidputs(chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
<STRONG>int</STRONG> <STRONG>vidattr(chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>putp(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>vidputs(chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
<STRONG>int</STRONG> <STRONG>vidattr(chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG>
- <STRONG>int</STRONG> <STRONG>vid_puts(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(char));</STRONG>
+ <STRONG>int</STRONG> <STRONG>vid_puts(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>putc</EM><STRONG>)(int));</STRONG>
<STRONG>int</STRONG> <STRONG>vid_attr(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvcur(int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM>, int <EM>newcol</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>tigetflag(char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>vid_attr(attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void</STRONG> <STRONG>*</STRONG><EM>opts</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>mvcur(int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM>, int <EM>newcol</EM><STRONG>);</STRONG>
<STRONG>int</STRONG> <STRONG>tigetflag(char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG>
- returns an error if the string parameter is
- null. It does not detect I/O errors: X/Open
- states that <STRONG>tputs</STRONG> ignores the return value of
+ returns an error if the string parameter is
+ null. It does not detect I/O errors: X/Open
+ states that <STRONG>tputs</STRONG> ignores the return value of
- The <STRONG>setupterm</STRONG> routine should be used in place of <STRONG>setterm</STRONG>.
- It may be useful when you want to test for terminal capa-
- bilities without committing to the allocation of storage
+ The <STRONG>setupterm</STRONG> routine should be used in place of <STRONG>setterm</STRONG>.
+ It may be useful when you want to test for terminal capa-
+ bilities without committing to the allocation of storage
involved in <STRONG>initscr</STRONG>.
Note that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros.
involved in <STRONG>initscr</STRONG>.
Note that <STRONG>vidattr</STRONG> and <STRONG>vidputs</STRONG> may be macros.
- The function <STRONG>setterm</STRONG> is not described by X/Open and must
- be considered non-portable. All other functions are as
+ The function <STRONG>setterm</STRONG> is not described by X/Open and must
+ be considered non-portable. All other functions are as
- <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>.
- This is not part of X/Open Curses, but is assumed by some
+ <STRONG>setupterm</STRONG> copies the terminal name to the array <STRONG>ttytype</STRONG>.
+ This is not part of X/Open Curses, but is assumed by some
- In System V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type
- and returns <STRONG>OK</STRONG> or <STRONG>ERR</STRONG>. We have chosen to implement the
+ In System V Release 4, <STRONG>set_curterm</STRONG> has an <STRONG>int</STRONG> return type
+ and returns <STRONG>OK</STRONG> or <STRONG>ERR</STRONG>. We have chosen to implement the
X/Open Curses semantics.
In System V Release 4, the third argument of <STRONG>tputs</STRONG> has the
type <STRONG>int</STRONG> <STRONG>(*putc)(char)</STRONG>.
At least one implementation of X/Open Curses (Solaris) re-
X/Open Curses semantics.
In System V Release 4, the third argument of <STRONG>tputs</STRONG> has the
type <STRONG>int</STRONG> <STRONG>(*putc)(char)</STRONG>.
At least one implementation of X/Open Curses (Solaris) re-
- X/Open Curses prototypes <STRONG>tparm</STRONG> with a fixed number of pa-
- rameters, rather than a variable argument list. This im-
- plementation uses a variable argument list, but can be
- configured to use the fixed-parameter list. Portable ap-
- plications should provide 9 parameters after the format;
+ X/Open Curses prototypes <STRONG>tparm</STRONG> with a fixed number of pa-
+ rameters, rather than a variable argument list. This im-
+ plementation uses a variable argument list, but can be
+ configured to use the fixed-parameter list. Portable ap-
+ plications should provide 9 parameters after the format;
zeroes are fine for this purpose.
In response to comments by Thomas E. Dickey, X/Open Curses
Issue 7 proposed the <STRONG>tiparam</STRONG> function in mid-2009.
zeroes are fine for this purpose.
In response to comments by Thomas E. Dickey, X/Open Curses
Issue 7 proposed the <STRONG>tiparam</STRONG> function in mid-2009.
- X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state
- may not match the actual terminal state, and that an ap-
- plication should touch and refresh the window before re-
+ X/Open notes that after calling <STRONG>mvcur</STRONG>, the curses state
+ may not match the actual terminal state, and that an ap-
+ plication should touch and refresh the window before re-
suming normal curses calls. Both ncurses and System V Re-
lease 4 curses implement <STRONG>mvcur</STRONG> using the SCREEN data allo-
cated in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. So though it is docu-
suming normal curses calls. Both ncurses and System V Re-
lease 4 curses implement <STRONG>mvcur</STRONG> using the SCREEN data allo-
cated in either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. So though it is docu-
- X/Open states that the old location must be given for
- <STRONG>mvcur</STRONG>. This implementation allows the caller to use -1's
- for the old ordinates. In that case, the old location is
+ X/Open states that the old location must be given for
+ <STRONG>mvcur</STRONG>. This implementation allows the caller to use -1's
+ for the old ordinates. In that case, the old location is
- Extended terminal capability names, e.g., as defined by
- <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not stored in the arrays described in this
+ Extended terminal capability names, e.g., as defined by
+ <STRONG>tic</STRONG> <STRONG>-x</STRONG>, are not stored in the arrays described in this
- <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG>curs_term-</STRONG>
- <STRONG><A HREF="curs_termcap.3x.html">cap(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="putc.3.html">putc(3)</A></STRONG>,
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>, <STRONG>curs_term-</STRONG>
+ <STRONG><A HREF="curs_termcap.3x.html">cap(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="putc.3.html">putc(3)</A></STRONG>,