+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
+<!--
+ ****************************************************************************
+ * Copyright (c) 1998-2006,2007 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_border.3x,v 1.19 2007/02/24 16:15:38 tom Exp @
+-->
<HTML>
+<HEAD>
+<TITLE>curs_border 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_border 3x</H1>
+<HR>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
+<STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
+
+
+
</PRE>
<H2>NAME</H2><PRE>
- <B>border</B>, <B>wborder</B>, <B>box</B>, <B>hline</B>, <B>whline</B>, <B>vline</B>, <B>wvline</B>, <B>mvh-</B>
- <B>line</B>, <B>mvwhline</B>, <B>mvvline</B>, <B>mvwvline</B> - create <B>curses</B> borders,
- horizontal and vertical lines
+ <STRONG>border</STRONG>, <STRONG>wborder</STRONG>, <STRONG>box</STRONG>, <STRONG>hline</STRONG>, <STRONG>whline</STRONG>, <STRONG>vline</STRONG>, <STRONG>wvline</STRONG>,
+ <STRONG>mvhline</STRONG>, <STRONG>mvwhline</STRONG>, <STRONG>mvvline</STRONG>, <STRONG>mvwvline</STRONG> - create <STRONG>curses</STRONG>
+ borders, horizontal and vertical lines
</PRE>
<H2>SYNOPSIS</H2><PRE>
- <B>#include</B> <B><curses.h></B>
- <B>int</B> <B>border(chtype</B> <B>ls,</B> <B>chtype</B> <B>rs,</B> <B>chtype</B> <B>ts,</B> <B>chtype</B> <B>bs,</B>
- <B>chtype</B> <B>tl,</B> <B>chtype</B> <B>tr,</B> <B>chtype</B> <B>bl,</B> <B>chtype</B> <B>br);</B>
- <B>int</B> <B>wborder(WINDOW</B> <B>*win,</B> <B>chtype</B> <B>ls,</B> <B>chtype</B> <B>rs,</B>
- <B>chtype</B> <B>ts,</B> <B>chtype</B> <B>bs,</B> <B>chtype</B> <B>tl,</B> <B>chtype</B> <B>tr,</B>
- <B>chtype</B> <B>bl,</B> <B>chtype</B> <B>br);</B>
- <B>int</B> <B>box(WINDOW</B> <B>*win,</B> <B>chtype</B> <B>verch,</B> <B>chtype</B> <B>horch);</B>
- <B>int</B> <B>hline(chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>int</B> <B>whline(WINDOW</B> <B>*win,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>int</B> <B>vline(chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>int</B> <B>wvline(WINDOW</B> <B>*win,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>mvhline(int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>mvwhline(WINDOW</B> <B>*,</B> <B>int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>int</B> <B>mvvline(int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
- <B>int</B> <B>mvwvline(WINDOW</B> <B>*,</B> <B>int</B> <B>y,</B> <B>int</B> <B>x,</B> <B>chtype</B> <B>ch,</B> <B>int</B> <B>n);</B>
+ <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
+ <STRONG>int</STRONG> <STRONG>border(chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG> <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG> <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG> <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG>
+ <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
+ <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>verch,</STRONG> <STRONG>chtype</STRONG> <STRONG>horch);</STRONG>
+ <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvhline(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwhline(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvvline(int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
+ <STRONG>int</STRONG> <STRONG>mvwvline(WINDOW</STRONG> <STRONG>*,</STRONG> <STRONG>int</STRONG> <STRONG>y,</STRONG> <STRONG>int</STRONG> <STRONG>x,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
</PRE>
<H2>DESCRIPTION</H2><PRE>
- The <B>border</B>, <B>wborder</B> and <B>box</B> routines draw a box around the
- edges of a window. The argument <I>ls</I> is a character and
- attributes used for the left side of the border, <I>rs</I> -
- right side, <I>ts</I> - top side, <I>bs</I> - bottom side, <I>tl</I> - top
- left-hand corner, <I>tr</I> - top right-hand corner, <I>bl</I> - bottom
- left-hand corner, and <I>br</I> - bottom right-hand corner. If
- any of these arguments is zero, then the following default
- values (defined in <B>curses.h</B>) are used instead: <B>ACS_VLINE</B>,
- <B>ACS_VLINE</B>, <B>ACS_HLINE</B>, <B>ACS_HLINE</B>, <B>ACS_ULCORNER</B>,
- <B>ACS_URCORNER</B>, <B>ACS_LLCORNER</B>, <B>ACS_LRCORNER</B>.
-
- <B>box(</B><I>win</I><B>,</B> <I>verch</I><B>,</B> <I>horch</I><B>)</B> is a shorthand for the following
- call: <B>wborder(</B><I>win</I><B>,</B> <I>verch</I><B>,</B> <I>verch</I><B>,</B> <I>horch</I><B>,</B> <I>horch</I><B>,</B> <B>0,</B> <B>0,</B> <B>0,</B>
- <B>0)</B>.
-
- The <B>hline</B> and <B>whline</B> functions draw a horizontal (left to
- right) line using <I>ch</I> starting at the current cursor posi-
+ The <STRONG>border</STRONG>, <STRONG>wborder</STRONG> and <STRONG>box</STRONG> routines draw a box around the
+ edges of a window. Other than the window, each argument
+ is a character with attributes:
+
+ <EM>ls</EM> - left side,
+ <EM>rs</EM> - right side,
+ <EM>ts</EM> - top side,
+ <EM>bs</EM> - bottom side,
+ <EM>tl</EM> - top left-hand corner,
+ <EM>tr</EM> - top right-hand corner,
+ <EM>bl</EM> - bottom left-hand corner, and
+ <EM>br</EM> - bottom right-hand corner.
+
+ If any of these arguments is zero, then the corresponding
+ default values (defined in <STRONG>curses.h</STRONG>) are used instead:
+
+ <STRONG>ACS_VLINE</STRONG>,
+ <STRONG>ACS_VLINE</STRONG>,
+ <STRONG>ACS_HLINE</STRONG>,
+ <STRONG>ACS_HLINE</STRONG>,
+ <STRONG>ACS_ULCORNER</STRONG>,
+ <STRONG>ACS_URCORNER</STRONG>,
+ <STRONG>ACS_LLCORNER</STRONG>,
+ <STRONG>ACS_LRCORNER</STRONG>.
+
+ <STRONG>box(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>)</STRONG> is a shorthand for the following
+ call: <STRONG>wborder(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>,</STRONG> <STRONG>0,</STRONG> <STRONG>0,</STRONG> <STRONG>0,</STRONG>
+ <STRONG>0)</STRONG>.
+
+ The <STRONG>hline</STRONG> and <STRONG>whline</STRONG> functions draw a horizontal (left to
+ right) line using <EM>ch</EM> starting at the current cursor posi-
tion in the window. The current cursor position is not
- changed. The line is at most <I>n</I> characters long, or as
+ changed. The line is at most <EM>n</EM> characters long, or as
many as fit into the window.
- The <B>vline</B> and <B>wvline</B> functions draw a vertical (top to
- bottom) line using <I>ch</I> starting at the current cursor posi-
+ The <STRONG>vline</STRONG> and <STRONG>wvline</STRONG> functions draw a vertical (top to
+ bottom) line using <EM>ch</EM> starting at the current cursor posi-
tion in the window. The current cursor position is not
- changed. The line is at most <I>n</I> characters long, or as
+ changed. The line is at most <EM>n</EM> characters long, or as
many as fit into the window.
</PRE>
<H2>RETURN VALUE</H2><PRE>
- All routines return the integer <B>OK</B>. The SVr4.0 manual
- says "or a non-negative integer if <B>immedok</B> is set", but
+ All routines return the integer <STRONG>OK</STRONG>. The SVr4.0 manual
+ says "or a non-negative integer if <STRONG>immedok</STRONG> is set", but
this appears to be an error.
+ X/Open does not define any error conditions. This imple-
+ mentation returns an error if the window pointer is null.
+
</PRE>
<H2>NOTES</H2><PRE>
- The borders generated by these functions are <I>inside</I> bor-
+ The borders generated by these functions are <EM>inside</EM> bor-
ders (this is also true of SVr4 curses, though the fact is
not documented).
- Note that <B>border</B> and <B>box</B> may be macros.
+ Note that <STRONG>border</STRONG> and <STRONG>box</STRONG> may be macros.
</PRE>
<H2>PORTABILITY</H2><PRE>
These functions are described in the XSI Curses standard,
- Issue 4. Additional functions <B>mvhline</B>, <B>mvvline</B>, <B>mvwhline</B>,
- and <B>mvwvline</B> are described there which this implementation
- does not yet support. The standard specifies that they
- return <B>ERR</B> on failure, but specifies no error conditions.
+ Issue 4. The standard specifies that they return <STRONG>ERR</STRONG> on
+ failure, but specifies no error conditions.
</PRE>
<H2>SEE ALSO</H2><PRE>
- <B><A HREF="ncurses.3x.html">curses(3x)</A></B>, <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B>.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>.
+ <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
</PRE>
<HR>
<ADDRESS>