form_field_buffer 3x

form_field_buffer(3x)                             form_field_buffer(3x)




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:

          o   Buffer 0 is the displayed value of the field.

          o   Other numbered buffers may be allocated by applica-
              tions   through   the   nbuf   argument   of   (see
              form_field_new(3x))  but are not manipulated by the
              forms library.

       The function field_buffer returns a pointer  to  the  con-
       tents of the given numbered buffer:

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

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

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

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

          o   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 according to their success:

       E_OK The routine succeeded.

       E_BAD_ARGUMENT
            Routine  detected  an incorrect or out-of-range argu-
            ment.

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

       E_BAD_ARGUMENT
            Routine detected an incorrect or  out-of-range  argu-
            ment.


SEE ALSO

       curses(3x) and related pages whose names begin "form_" for
       detailed descriptions of the entry points.


NOTES

       The header file <form.h> automatically includes the header
       file

       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_buf-
       fer to return the same buffer.  <curses.h>.


PORTABILITY

       These  routines  emulate the System V forms library.  They
       were not supported on Version 7 or BSD versions.


AUTHORS

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



                                                  form_field_buffer(3x)