36aa8d579ccdffb45d52df8ffd4c9c0805b8cd6d
[ncurses.git] / doc / html / man / curs_border.3x.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2 <!-- 
3   ****************************************************************************
4   * Copyright (c) 1998-2005,2006 Free Software Foundation, Inc.              *
5   *                                                                          *
6   * Permission is hereby granted, free of charge, to any person obtaining a  *
7   * copy of this software and associated documentation files (the            *
8   * "Software"), to deal in the Software without restriction, including      *
9   * without limitation the rights to use, copy, modify, merge, publish,      *
10   * distribute, distribute with modifications, sublicense, and/or sell       *
11   * copies of the Software, and to permit persons to whom the Software is    *
12   * furnished to do so, subject to the following conditions:                 *
13   *                                                                          *
14   * The above copyright notice and this permission notice shall be included  *
15   * in all copies or substantial portions of the Software.                   *
16   *                                                                          *
17   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
18   * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
19   * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
20   * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
21   * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
22   * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
23   * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
24   *                                                                          *
25   * Except as contained in this notice, the name(s) of the above copyright   *
26   * holders shall not be used in advertising or otherwise to promote the     *
27   * sale, use or other dealings in this Software without prior written       *
28   * authorization.                                                           *
29   ****************************************************************************
30   * @Id: curs_border.3x,v 1.18 2006/02/25 21:49:19 tom Exp @
31 -->
32 <HTML>
33 <HEAD>
34 <TITLE>curs_border 3x</TITLE>
35 <link rev=made href="mailto:bug-ncurses@gnu.org">
36 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
37 </HEAD>
38 <BODY>
39 <H1>curs_border 3x</H1>
40 <HR>
41 <PRE>
42 <!-- Manpage converted by man2html 3.0.1 -->
43 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>                                         <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
44
45
46
47
48 </PRE>
49 <H2>NAME</H2><PRE>
50        <STRONG>border</STRONG>, <STRONG>wborder</STRONG>, <STRONG>box</STRONG>, <STRONG>hline</STRONG>, <STRONG>whline</STRONG>, <STRONG>vline</STRONG>, <STRONG>wvline</STRONG>,
51        <STRONG>mvhline</STRONG>, <STRONG>mvwhline</STRONG>, <STRONG>mvvline</STRONG>, <STRONG>mvwvline</STRONG> - create <STRONG>curses</STRONG>
52        borders, horizontal and vertical lines
53
54
55 </PRE>
56 <H2>SYNOPSIS</H2><PRE>
57        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
58        <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>
59           <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG> <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
60        <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG>
61           <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG> <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG>
62           <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
63        <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>verch,</STRONG> <STRONG>chtype</STRONG> <STRONG>horch);</STRONG>
64        <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
65        <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
66        <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
67        <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
68        <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>
69        <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>
70        <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>
71        <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>
72
73
74 </PRE>
75 <H2>DESCRIPTION</H2><PRE>
76        The <STRONG>border</STRONG>, <STRONG>wborder</STRONG> and <STRONG>box</STRONG> routines draw a box around the
77        edges of a window.  Other than the window,  each  argument
78        is a character with attributes:
79
80               <EM>ls</EM> - left side,
81               <EM>rs</EM> - right side,
82               <EM>ts</EM> - top side,
83               <EM>bs</EM> - bottom side,
84               <EM>tl</EM> - top left-hand corner,
85               <EM>tr</EM> - top right-hand corner,
86               <EM>bl</EM> - bottom left-hand corner, and
87               <EM>br</EM> - bottom right-hand corner.
88
89        If  any of these arguments is zero, then the corresponding
90        default values (defined in <STRONG>curses.h</STRONG>) are used instead:
91
92               <STRONG>ACS_VLINE</STRONG>,
93               <STRONG>ACS_VLINE</STRONG>,
94               <STRONG>ACS_HLINE</STRONG>,
95               <STRONG>ACS_HLINE</STRONG>,
96               <STRONG>ACS_ULCORNER</STRONG>,
97               <STRONG>ACS_URCORNER</STRONG>,
98               <STRONG>ACS_LLCORNER</STRONG>,
99               <STRONG>ACS_LRCORNER</STRONG>.
100
101        <STRONG>box(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>)</STRONG> is a shorthand  for  the  following
102        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>
103        <STRONG>0)</STRONG>.
104
105        The <STRONG>hline</STRONG> and <STRONG>whline</STRONG> functions draw a horizontal (left  to
106        right)  line using <EM>ch</EM> starting at the current cursor posi-
107        tion in the window.  The current cursor  position  is  not
108        changed.   The  line  is  at most <EM>n</EM> characters long, or as
109        many as fit into the window.
110
111        The <STRONG>vline</STRONG> and <STRONG>wvline</STRONG> functions draw  a  vertical  (top  to
112        bottom) line using <EM>ch</EM> starting at the current cursor posi-
113        tion in the window.  The current cursor  position  is  not
114        changed.   The  line  is  at most <EM>n</EM> characters long, or as
115        many as fit into the window.
116
117
118 </PRE>
119 <H2>RETURN VALUE</H2><PRE>
120        All routines return the integer  <STRONG>OK</STRONG>.   The  SVr4.0  manual
121        says  "or  a  non-negative integer if <STRONG>immedok</STRONG> is set", but
122        this appears to be an error.
123
124        X/Open does not define any error conditions.  This  imple-
125        mentation  returns an error if the window pointer is null.
126
127
128 </PRE>
129 <H2>NOTES</H2><PRE>
130        The borders generated by these functions are  <EM>inside</EM>  bor-
131        ders (this is also true of SVr4 curses, though the fact is
132        not documented).
133
134        Note that <STRONG>border</STRONG> and <STRONG>box</STRONG> may be macros.
135
136
137 </PRE>
138 <H2>PORTABILITY</H2><PRE>
139        These functions are described in the XSI Curses  standard,
140        Issue  4.   The standard specifies that they return <STRONG>ERR</STRONG> on
141        failure, but specifies no error conditions.
142
143
144 </PRE>
145 <H2>SEE ALSO</H2><PRE>
146        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>.
147
148
149
150                                                         <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
151 </PRE>
152 <HR>
153 <ADDRESS>
154 Man(1) output converted with
155 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
156 </ADDRESS>
157 </BODY>
158 </HTML>