1*a0e6850fSThomas Cort.\" $NetBSD: form_win.3,v 1.10 2010/03/22 21:58:31 joerg Exp $ 2*a0e6850fSThomas Cort.\" 3*a0e6850fSThomas Cort.\" Copyright (c) 2001 4*a0e6850fSThomas Cort.\" Brett Lymn - blymn@baea.com.au, brett_lymn@yahoo.com.au 5*a0e6850fSThomas Cort.\" 6*a0e6850fSThomas Cort.\" This code is donated to The NetBSD Foundation by the author. 7*a0e6850fSThomas Cort.\" 8*a0e6850fSThomas Cort.\" Redistribution and use in source and binary forms, with or without 9*a0e6850fSThomas Cort.\" modification, are permitted provided that the following conditions 10*a0e6850fSThomas Cort.\" are met: 11*a0e6850fSThomas Cort.\" 1. Redistributions of source code must retain the above copyright 12*a0e6850fSThomas Cort.\" notice, this list of conditions and the following disclaimer. 13*a0e6850fSThomas Cort.\" 2. Redistributions in binary form must reproduce the above copyright 14*a0e6850fSThomas Cort.\" notice, this list of conditions and the following disclaimer in the 15*a0e6850fSThomas Cort.\" documentation and/or other materials provided with the distribution. 16*a0e6850fSThomas Cort.\" 3. The name of the Author may not be used to endorse or promote 17*a0e6850fSThomas Cort.\" products derived from this software without specific prior written 18*a0e6850fSThomas Cort.\" permission. 19*a0e6850fSThomas Cort.\" 20*a0e6850fSThomas Cort.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND 21*a0e6850fSThomas Cort.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22*a0e6850fSThomas Cort.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 23*a0e6850fSThomas Cort.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE 24*a0e6850fSThomas Cort.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25*a0e6850fSThomas Cort.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 26*a0e6850fSThomas Cort.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 27*a0e6850fSThomas Cort.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 28*a0e6850fSThomas Cort.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 29*a0e6850fSThomas Cort.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 30*a0e6850fSThomas Cort.\" SUCH DAMAGE. 31*a0e6850fSThomas Cort.\" 32*a0e6850fSThomas Cort.Dd January 1, 2001 33*a0e6850fSThomas Cort.Dt FORMS 3 34*a0e6850fSThomas Cort.Os 35*a0e6850fSThomas Cort.Sh NAME 36*a0e6850fSThomas Cort.Nm form_sub , 37*a0e6850fSThomas Cort.Nm form_win , 38*a0e6850fSThomas Cort.Nm scale_form , 39*a0e6850fSThomas Cort.Nm set_form_sub , 40*a0e6850fSThomas Cort.Nm set_form_win 41*a0e6850fSThomas Cort.Nd form library 42*a0e6850fSThomas Cort.Sh LIBRARY 43*a0e6850fSThomas Cort.Lb libform 44*a0e6850fSThomas Cort.Sh SYNOPSIS 45*a0e6850fSThomas Cort.In form.h 46*a0e6850fSThomas Cort.Ft WINDOW * 47*a0e6850fSThomas Cort.Fn form_sub "FORM *form" 48*a0e6850fSThomas Cort.Ft WINDOW * 49*a0e6850fSThomas Cort.Fn form_win "FORM *form" 50*a0e6850fSThomas Cort.Ft int 51*a0e6850fSThomas Cort.Fn scale_form "FORM *form" "int *rows" "int *cols" 52*a0e6850fSThomas Cort.Ft int 53*a0e6850fSThomas Cort.Fn set_form_sub "FORM *form" "WINDOW *window" 54*a0e6850fSThomas Cort.Ft int 55*a0e6850fSThomas Cort.Fn set_form_win "FORM *form" "WINDOW *window" 56*a0e6850fSThomas Cort.Sh DESCRIPTION 57*a0e6850fSThomas CortAll output to the screen done by the forms library is handled by the 58*a0e6850fSThomas Cortcurses library routines. 59*a0e6850fSThomas CortBy default, the forms library will output to the curses 60*a0e6850fSThomas Cort.Fa stdscr , 61*a0e6850fSThomas Cortbut if the forms window has been set via 62*a0e6850fSThomas Cort.Fn set_form_win 63*a0e6850fSThomas Cortthen output will be sent to the window specified by 64*a0e6850fSThomas Cort.Fn set_form_win , 65*a0e6850fSThomas Cortunless the forms subwindow has been set using 66*a0e6850fSThomas Cort.Fn set_form_sub . 67*a0e6850fSThomas CortIf a subwindow has been specified using 68*a0e6850fSThomas Cort.Fn set_form_sub 69*a0e6850fSThomas Cortthen it will be used by the forms library to for screen output. 70*a0e6850fSThomas CortThe current setting for the form window can be retrieved by calling 71*a0e6850fSThomas Cort.Fn form_win . 72*a0e6850fSThomas CortIf the forms window has not been set then 73*a0e6850fSThomas Cort.Dv NULL 74*a0e6850fSThomas Cortwill be returned. 75*a0e6850fSThomas CortSimilarly, the forms subwindow can be found by calling the 76*a0e6850fSThomas Cort.Fn form_sub 77*a0e6850fSThomas Cortfunction, again, if the subwindow has not been set then 78*a0e6850fSThomas Cort.Dv NULL 79*a0e6850fSThomas Cortwill be 80*a0e6850fSThomas Cortreturned. 81*a0e6850fSThomas CortThe 82*a0e6850fSThomas Cort.Fn scale_form 83*a0e6850fSThomas Cortfunction will return the minimum number of rows and columns that will 84*a0e6850fSThomas Cortentirely contain the given form. 85*a0e6850fSThomas Cort.Sh RETURN VALUES 86*a0e6850fSThomas CortFunctions returning pointers will return 87*a0e6850fSThomas Cort.Dv NULL 88*a0e6850fSThomas Cortif an error is detected. 89*a0e6850fSThomas CortThe functions that return an int will return one of the following error 90*a0e6850fSThomas Cortvalues: 91*a0e6850fSThomas Cort.Pp 92*a0e6850fSThomas Cort.Bl -tag -width E_UNKNOWN_COMMAND -compact 93*a0e6850fSThomas Cort.It Er E_OK 94*a0e6850fSThomas CortThe function was successful. 95*a0e6850fSThomas Cort.It Er E_NOT_CONNECTED 96*a0e6850fSThomas CortThe form has no fields connected to it. 97*a0e6850fSThomas Cort.It Er E_POSTED 98*a0e6850fSThomas CortThe form is posted to the screen. 99*a0e6850fSThomas Cort.El 100*a0e6850fSThomas Cort.Sh SEE ALSO 101*a0e6850fSThomas Cort.Xr curses 3 , 102*a0e6850fSThomas Cort.Xr forms 3 103*a0e6850fSThomas Cort.Sh NOTES 104*a0e6850fSThomas CortThe header 105*a0e6850fSThomas Cort.In form.h 106*a0e6850fSThomas Cortautomatically includes both 107*a0e6850fSThomas Cort.In curses.h 108*a0e6850fSThomas Cortand 109*a0e6850fSThomas Cort.In eti.h . 110