ncurses 5.3
[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,2000 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.15 2002/02/16 22:21:47 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
44 </PRE>
45 <H2>NAME</H2><PRE>
46        <STRONG>border</STRONG>,  <STRONG>wborder</STRONG>,  <STRONG>box</STRONG>, <STRONG>hline</STRONG>, <STRONG>whline</STRONG>, <STRONG>vline</STRONG>, <STRONG>wvline</STRONG>, <STRONG>mvh-</STRONG>
47        <STRONG>line</STRONG>, <STRONG>mvwhline</STRONG>, <STRONG>mvvline</STRONG>, <STRONG>mvwvline</STRONG> - create <STRONG>curses</STRONG> borders,
48        horizontal and vertical lines
49
50
51 </PRE>
52 <H2>SYNOPSIS</H2><PRE>
53        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
54        <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>
55           <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG> <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
56        <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ls,</STRONG> <STRONG>chtype</STRONG> <STRONG>rs,</STRONG>
57           <STRONG>chtype</STRONG> <STRONG>ts,</STRONG> <STRONG>chtype</STRONG> <STRONG>bs,</STRONG> <STRONG>chtype</STRONG> <STRONG>tl,</STRONG> <STRONG>chtype</STRONG> <STRONG>tr,</STRONG>
58           <STRONG>chtype</STRONG> <STRONG>bl,</STRONG> <STRONG>chtype</STRONG> <STRONG>br);</STRONG>
59        <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>verch,</STRONG> <STRONG>chtype</STRONG> <STRONG>horch);</STRONG>
60        <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
61        <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
62        <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
63        <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*win,</STRONG> <STRONG>chtype</STRONG> <STRONG>ch,</STRONG> <STRONG>int</STRONG> <STRONG>n);</STRONG>
64        <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>
65        <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>
66        <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>
67        <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>
68
69
70 </PRE>
71 <H2>DESCRIPTION</H2><PRE>
72        The <STRONG>border</STRONG>, <STRONG>wborder</STRONG> and <STRONG>box</STRONG> routines draw a box around the
73        edges of a window.  Other than the window,  each  argument
74        is a character with attributes:
75               <EM>ls</EM> - left side,
76               <EM>rs</EM> - right side,
77               <EM>ts</EM> - top side,
78               <EM>bs</EM> - bottom side,
79               <EM>tl</EM> - top left-hand corner,
80               <EM>tr</EM> - top right-hand corner,
81               <EM>bl</EM> - bottom left-hand corner, and
82               <EM>br</EM> - bottom right-hand corner.
83        If  any of these arguments is zero, then the corresponding
84        default values (defined in <STRONG>curses.h</STRONG>) are used instead:
85               <STRONG>ACS_VLINE</STRONG>,
86               <STRONG>ACS_VLINE</STRONG>,
87               <STRONG>ACS_HLINE</STRONG>,
88               <STRONG>ACS_HLINE</STRONG>,
89               <STRONG>ACS_ULCORNER</STRONG>,
90               <STRONG>ACS_URCORNER</STRONG>,
91               <STRONG>ACS_LLCORNER</STRONG>,
92               <STRONG>ACS_LRCORNER</STRONG>.
93
94        <STRONG>box(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>)</STRONG> is a shorthand  for  the  following
95        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>
96        <STRONG>0)</STRONG>.
97
98        The <STRONG>hline</STRONG> and <STRONG>whline</STRONG> functions draw a horizontal (left  to
99        right)  line using <EM>ch</EM> starting at the current cursor posi-
100        tion in the window.  The current cursor  position  is  not
101        changed.   The  line  is  at most <EM>n</EM> characters long, or as
102        many as fit into the window.
103        The <STRONG>vline</STRONG> and <STRONG>wvline</STRONG> functions draw  a  vertical  (top  to
104        bottom) line using <EM>ch</EM> starting at the current cursor posi-
105        tion in the window.  The current cursor  position  is  not
106        changed.   The  line  is  at most <EM>n</EM> characters long, or as
107        many as fit into the window.
108
109
110 </PRE>
111 <H2>RETURN VALUE</H2><PRE>
112        All routines return the integer  <STRONG>OK</STRONG>.   The  SVr4.0  manual
113        says  "or  a  non-negative integer if <STRONG>immedok</STRONG> is set", but
114        this appears to be an error.
115
116
117 </PRE>
118 <H2>NOTES</H2><PRE>
119        The borders generated by these functions are  <EM>inside</EM>  bor-
120        ders (this is also true of SVr4 curses, though the fact is
121        not documented).
122
123        Note that <STRONG>border</STRONG> and <STRONG>box</STRONG> may be macros.
124
125
126 </PRE>
127 <H2>PORTABILITY</H2><PRE>
128        These functions are described in the XSI Curses  standard,
129        Issue  4.   The standard specifies that they return <STRONG>ERR</STRONG> on
130        failure, but specifies no error conditions.
131
132
133 </PRE>
134 <H2>SEE ALSO</H2><PRE>
135        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>.
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165 </PRE>
166 <HR>
167 <ADDRESS>
168 Man(1) output converted with
169 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
170 </ADDRESS>
171 </BODY>
172 </HTML>