dwww Home | Manual pages | Find package

field_buffer(3FORM)              Library calls              field_buffer(3FORM)

NAME
       form_field_buffer - field buffer control

SYNOPSIS
       #include <form.h>

       int set_field_buffer(FIELD *field, int buf, const char *value);
       char *field_buffer(const FIELD *field, int buffer);

       int set_field_status(FIELD *field, bool status);
       bool field_status(const FIELD *field);

       int set_max_field(FIELD *field, int max);

DESCRIPTION
       The  function  set_field_buffer  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  nbuf  argument of (see field_new(3FORM)) but are not manipu-
              lated by the forms library.

       The function field_buffer returns a pointer to the contents of the given
       numbered buffer:

          •   The buffer contents always have the same length, and  are  padded
              with trailing spaces as needed to ensure this length is the same.

          •   The  buffer  may  contain leading spaces, depending on how it was
              set.

          •   The buffer contents are set with set_field_buffer, or as  a  side
              effect of any editing operations on the corresponding field.

          •   Editing  operations  are  based  on the window which displays the
              field, rather than a string.  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.

          •   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.

       The function set_field_status sets the associated status flag of  field;
       field_status  gets  the  current  value.   The  status  flag is set to a
       nonzero value whenever the field changes.

       The function set_max_field sets the maximum size for  a  dynamic  field.
       An argument of 0 turns off any maximum size threshold for that field.

RETURN VALUE
       The  field_buffer function returns NULL on error.  It sets errno accord-
       ing to their success:

       E_OK The routine succeeded.

       E_BAD_ARGUMENT
            Routine detected an incorrect or out-of-range argument.

       The field_status function returns TRUE or FALSE.

       The remaining routines return one of the following:

       E_OK The routine succeeded.

       E_SYSTEM_ERROR
            System error occurred (see errno(3)).

       E_BAD_ARGUMENT
            Routine detected an incorrect or out-of-range argument.

NOTES
       When configured for wide characters, field_buffer 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 field_buffer to return the same buffer.

PORTABILITY
       These routines emulate the System V forms library.  They were  not  sup-
       ported on Version 7 or BSD versions.

       The set_max_field function checks for an ncurses extension O_INPUT_FIELD
       which  allows a dynamic field to shrink if the new limit is smaller than
       the current field size.

AUTHORS
       Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric  S.
       Raymond.

SEE ALSO
       ncurses(3NCURSES)  and  related  pages whose names begin “form_” for de-
       tailed descriptions of the entry points.

ncurses 6.5                        2024-12-28               field_buffer(3FORM)

Generated by dwww version 1.16 on Sat Oct 3 07:37:54 CEST 2026.