X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=man%2Fform_field_buffer.3x;h=cf71d00d7d2775517356cd0bfcc315b1d608bc2e;hp=c5d1d2ee199812670d0e5c6f7278dfd0fc9e5118;hb=349761f30e7fc0b4bf2718f7fc3da34e09ea6735;hpb=55ccd2b959766810cf7db8d1c4462f338ce0afc8 diff --git a/man/form_field_buffer.3x b/man/form_field_buffer.3x index c5d1d2ee..cf71d00d 100644 --- a/man/form_field_buffer.3x +++ b/man/form_field_buffer.3x @@ -1,6 +1,7 @@ '\" t .\"*************************************************************************** -.\" Copyright (c) 1998-2004,2005 Free Software Foundation, Inc. * +.\" Copyright 2018-2019,2020 Thomas E. Dickey * +.\" Copyright 1998-2010,2017 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 * @@ -27,13 +28,21 @@ .\" authorization. * .\"*************************************************************************** .\" -.\" $Id: form_field_buffer.3x,v 1.12 2005/05/15 15:59:55 tom Exp $ +.\" $Id: form_field_buffer.3x,v 1.26 2020/03/28 19:06:28 tom Exp $ .TH form_field_buffer 3X "" +.ie \n(.g .ds `` \(lq +.el .ds `` `` +.ie \n(.g .ds '' \(rq +.el .ds '' '' +.de bP +.ie n .IP \(bu 4 +.el .IP \(bu 2 +.. .SH NAME -\fBform_field_buffer\fR - field buffer control +\fBform_field_buffer\fR \- field buffer control .SH SYNOPSIS \fB#include \fR -.br +.sp int set_field_buffer(FIELD *field, int buf, const char *value); .br char *field_buffer(const FIELD *field, int buffer); @@ -46,60 +55,90 @@ int set_max_field(FIELD *field, int max); .br .SH DESCRIPTION The function \fBset_field_buffer\fR sets the numbered buffer of the given field -to contain a given string. Buffer 0 is the displayed value of the field; other -numbered buffers may be allocated by applications through the \fBnbuf\fR -argument of (see \fBform_field_new\fR(3X)) but are not manipulated by the forms -library. The function \fBfield_buffer\fR returns the address of the buffer. -Please note that this buffer has always the length of the buffer, that means -that it may typically contain trailing spaces. If you entered leading spaces -the buffer may also contain them. If you want the raw data, you must write your +to contain a given string: +.RS 3 +.bP +Buffer 0 is the displayed value of the field. +.bP +Other numbered buffers may be allocated by applications through the \fBnbuf\fR +argument of (see \fBform_field_new\fR(3X)) +but are not manipulated by the forms library. +.RE +.PP +The function \fBfield_buffer\fR returns a pointer to +the contents of the given numbered buffer: +.RS 3 +.bP +The buffer contents always have the same length, +and are padded with trailing spaces +as needed to ensure this length is the same. +.bP +The buffer may contain leading spaces, depending on how it was set. +.bP +The buffer contents are set with \fBset_field_buffer\fP, +or as a side effect of any editing operations on the corresponding field. +.bP +Editing operations are based on the \fIwindow\fP which displays the field, +rather than a \fIstring\fP. +The window contains only printable characters, and is filled with blanks. +If you want the raw data, you must write your own routine that copies the value out of the buffer and removes the leading -and trailing spaces. Please note also, that subsequent operations on the form -will probably change the content of the buffer. So do not use it for long term -storage of the entered form data. - +and trailing spaces. +.bP +Because editing operations change the content of the buffer to +correspond to the window, you should not rely on using buffers +for long-term storage of form data. +.RE +.PP The function \fBset_field_status\fR sets the associated status flag of -\fIfield\fR; \fBfield_status\fR gets the current value. The status flag +\fIfield\fR; \fBfield_status\fR gets the current value. +The status flag is set to a nonzero value whenever the field changes. - +.PP The function \fBset_max_field\fR sets the maximum size for a dynamic field. An argument of 0 turns off any maximum size threshold for that field. .SH RETURN VALUE The \fBfield_buffer\fR function returns NULL on error. - +It sets \fBerrno\fP according to their success: +.TP 5 +.B E_OK +The routine succeeded. +.TP 5 +.B E_BAD_ARGUMENT +Routine detected an incorrect or out-of-range argument. +.PP The \fBfield_status\fR function returns \fBTRUE\fR or \fBFALSE\fR. - +.PP The remaining routines return one of the following: .TP 5 -\fBE_OK\fR +.B E_OK The routine succeeded. .TP 5 -\fBE_SYSTEM_ERROR\fR -System error occurred (see \fBerrno\fR). +.B E_SYSTEM_ERROR +System error occurred (see \fBerrno\fR(3)). .TP 5 -\fBE_BAD_ARGUMENT\fR +.B E_BAD_ARGUMENT Routine detected an incorrect or out-of-range argument. .SH SEE ALSO -\fBcurses\fR(3X) and related pages whose names begin "form_" for detailed +\fBcurses\fR(3X) and related pages whose names begin \*(``form_\*('' for detailed descriptions of the entry points. .SH NOTES The header file \fB\fR automatically includes the header file - -When configured for wide-characters, \fBfield_buffer\fP returns a pointer +.PP +When configured for wide characters, \fBfield_buffer\fP returns a pointer to temporary storage (allocated and freed by the library). The application should not attempt to modify the data. It will be freed on the next call to \fBfield_buffer\fP to return the same buffer. \fB\fR. .SH PORTABILITY -These routines emulate the System V forms library. They were not supported on +These routines emulate the System V forms library. +They were not supported on Version 7 or BSD versions. +.PP +The \fBset_max_field\fP function checks for an ncurses extension +\fBO_INPUT_FIELD\fP which allows a dynamic field to shrink if the new +limit is smaller than the current field size. .SH AUTHORS -Juergen Pfeifer. Manual pages and adaptation for new curses by Eric -S. Raymond. -.\"# -.\"# The following sets edit modes for GNU EMACS -.\"# Local Variables: -.\"# mode:nroff -.\"# fill-column:79 -.\"# End: +Juergen Pfeifer. +Manual pages and adaptation for new curses by Eric S. Raymond.