-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<!--
* t
****************************************************************************
- * Copyright (c) 1998,2002 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2008,2010 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 *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: form.3x,v 1.15 2002/01/19 22:48:05 tom Exp @
+ * @Id: form.3x,v 1.24 2010/12/04 18:40:45 tom Exp @
-->
<HTML>
<HEAD>
<HR>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
-<STRONG><A HREF="form.3x.html">form(3x)</A></STRONG> <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
+<STRONG><A HREF="form.3x.html">form(3x)</A></STRONG> <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
into forms, display forms on the screen, and handle inter-
action with the user.
- The <STRONG>form</STRONG> library uses the <STRONG>curses</STRONG> libraries, and a curses
- initialization routine such as <STRONG>initscr</STRONG> must be called
- before using any of these functions. To use the <STRONG>form</STRONG>
- library, link with the options <STRONG>-lform</STRONG> <STRONG>-lcurses</STRONG>.
+ The <STRONG>form</STRONG> library uses the <STRONG>curses</STRONG> libraries. To use the
+ <STRONG>form</STRONG> library, link with the options <STRONG>-lform</STRONG> <STRONG>-lcurses</STRONG>.
+ Your program should set up the locale, e.g.,
+
+ <STRONG>setlocale(LC_ALL,</STRONG> <STRONG>"");</STRONG>
+
+ so that input/output processing will work.
+
+ A curses initialization routine such as <STRONG>initscr</STRONG> must be
+ called before using any of these functions.
<STRONG>Current</STRONG> <STRONG>Default</STRONG> <STRONG>Values</STRONG> <STRONG>for</STRONG> <STRONG>Field</STRONG> <STRONG>Attributes</STRONG>
- The <STRONG>form</STRONG> library maintains a default value for field
- attributes. You can get or set this default by calling
- the appropriate <STRONG>set_</STRONG> or retrieval routine with a <STRONG>NULL</STRONG>
+ The <STRONG>form</STRONG> library maintains a default value for field
+ attributes. You can get or set this default by calling
+ the appropriate <STRONG>set_</STRONG> or retrieval routine with a <STRONG>NULL</STRONG>
field pointer. Changing this default with a <STRONG>set_</STRONG> function
- affects future field creations, but does not change the
+ affects future field creations, but does not change the
rendering of fields already created.
-
<STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
- The following table lists each <STRONG>form</STRONG> routine and the name
+ The following table lists each <STRONG>form</STRONG> routine and the name
of the manual page on which it is described.
<STRONG>curses</STRONG> Routine Name Manual Page Name
data_ahead <STRONG><A HREF="form_data.3x.html">form_data(3x)</A></STRONG>
data_behind <STRONG><A HREF="form_data.3x.html">form_data(3x)</A></STRONG>
dup_field <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
- dynamic_fieldinfo <STRONG><A HREF="form_field_info.3x.html">form_field_info(3x)</A></STRONG>
+ dynamic_field_info <STRONG><A HREF="form_field_info.3x.html">form_field_info(3x)</A></STRONG>
field_arg <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
field_back <STRONG><A HREF="form_field_attributes.3x.html">form_field_attributes(3x)</A></STRONG>
field_buffer <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
field_status <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
field_term <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
field_type <STRONG><A HREF="form_field_validation.3x.html">form_field_validation(3x)</A></STRONG>
+
field_userptr <STRONG><A HREF="form_field_userptr.3x.html">form_field_userptr(3x)</A></STRONG>
form_driver <STRONG><A HREF="form_driver.3x.html">form_driver(3x)</A></STRONG>
form_fields <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
form_init <STRONG><A HREF="form_hook.3x.html">form_hook(3x)</A></STRONG>
form_opts <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
-
form_opts_off <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
form_opts_on <STRONG><A HREF="form_opts.3x.html">form_opts(3x)</A></STRONG>
form_page <STRONG><A HREF="form_page.3x.html">form_page(3x)</A></STRONG>
form_userptr <STRONG><A HREF="form_userptr.3x.html">form_userptr(3x)</A></STRONG>
form_win <STRONG><A HREF="form_win.3x.html">form_win(3x)</A></STRONG>
free_field <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
+ free_fieldtype <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>
free_form <STRONG><A HREF="form_new.3x.html">form_new(3x)</A></STRONG>
link_field <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
link_fieldtype <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>
move_field <STRONG><A HREF="form_field.3x.html">form_field(3x)</A></STRONG>
new_field <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>
+ new_fieldtype <STRONG><A HREF="form_fieldtype.3x.html">form_fieldtype(3x)</A></STRONG>
new_form <STRONG><A HREF="form_new.3x.html">form_new(3x)</A></STRONG>
new_page <STRONG><A HREF="form_new_page.3x.html">form_new_page(3x)</A></STRONG>
pos_form_cursor <STRONG><A HREF="form_cursor.3x.html">form_cursor(3x)</A></STRONG>
</PRE>
<H2>RETURN VALUE</H2><PRE>
- Routines that return pointers return <STRONG>NULL</STRONG> on error. Rou-
- tines that return an integer return one of the following
- error codes:
+ Routines that return pointers return <STRONG>NULL</STRONG> on error, and
+ set errno to the corresponding error-code returned by
+ functions returning an integer. Routines that return an
+ integer return one of the following error codes:
<STRONG>E_OK</STRONG> The routine succeeded.
- <STRONG>E_CONNECTED</STRONG>
- The field is already connected to a form.
-
- <STRONG>E_SYSTEM_ERROR</STRONG>
- System error occurred (see <STRONG>errno</STRONG>).
-
<STRONG>E_BAD_ARGUMENT</STRONG>
Routine detected an incorrect or out-of-range argu-
ment.
- <STRONG>E_POSTED</STRONG>
- The form is already posted.
-
<STRONG>E_BAD_STATE</STRONG>
Routine was called from an initialization or termina-
tion function.
- <STRONG>E_NO_ROOM</STRONG>
- Form is too large for its window.
-
- <STRONG>E_NOT_POSTED</STRONG>
- The form has not been posted.
-
- <STRONG>E_UNKNOWN_COMMAND</STRONG>
- The form driver code saw an unknown request code.
+ <STRONG>E_CONNECTED</STRONG>
+ The field is already connected to a form.
<STRONG>E_INVALID_FIELD</STRONG>
Contents of a field are not valid.
<STRONG>E_NOT_CONNECTED</STRONG>
No fields are connected to the form.
+ <STRONG>E_NOT_POSTED</STRONG>
+ The form has not been posted.
+
+ <STRONG>E_NO_ROOM</STRONG>
+ Form is too large for its window.
+
+ <STRONG>E_POSTED</STRONG>
+ The form is already posted.
+
<STRONG>E_REQUEST_DENIED</STRONG>
The form driver could not process the request.
+ <STRONG>E_SYSTEM_ERROR</STRONG>
+ System error occurred (see <STRONG>errno</STRONG>).
+
+ <STRONG>E_UNKNOWN_COMMAND</STRONG>
+ The form driver code saw an unknown request code.
+
</PRE>
<H2>SEE ALSO</H2><PRE>
In your library list, libform.a should be before libn-
curses.a; that is, you want to say `-lform -lncurses', not
the other way around (which would give you a link error
- using GNU <STRONG><A HREF="ld.1.html">ld(1)</A></STRONG> and many other linkers).
+ using most linkers).
</PRE>
by Eric S. Raymond.
+</PRE>
+<H2>SEE ALSO</H2><PRE>
+ This describes <STRONG>ncurses</STRONG> version 5.9 (patch 20131221).
+
+
- <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
+ <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>
</PRE>
<HR>
<ADDRESS>