form_hook(3) | Library calls | form_hook(3)

# NAME

form_hook - set hooks for automatic invocation by applications

# SYNOPSIS

#include <form.h>

int set_field_init(FORM *form, Form_Hook func);
Form_Hook field_init(const FORM *form);

int set_field_term(FORM *form, Form_Hook func);
Form_Hook field_term(const FORM *form);

int set_form_init(FORM *form, Form_Hook func);
Form_Hook form_init(const FORM *form);

int set_form_term(FORM *form, Form_Hook func);
Form_Hook form_term(const FORM *form);

# DESCRIPTION

These functions make it possible to set hook functions to be called at various points in the automatic processing of input event codes by form_driver.

The function set_field_init sets a hook to be called at form-post time and each time the selected field changes (after the change). field_init returns the current field init hook, if any (NULL if there is no such hook).

The function set_field_term sets a hook to be called at form-unpost time and each time the selected field changes (before the change). field_term returns the current field term hook, if any (NULL if there is no such hook).

The function set_form_init sets a hook to be called at form-post time and just after a page change once it is posted. form_init returns the current form init hook, if any (NULL if there is no such hook).

The function set_form_term sets a hook to be called at form-unpost time and just before a page change once it is posted. form_init returns the current form term hook, if any (NULL if there is no such hook).

# RETURN VALUE

Routines that return pointers return NULL on error. Other routines return one of the following:

E_OK
  The routine succeeded.
E_SYSTEM_ERROR
  System error occurred (see errno(3)).

# SEE ALSO

curses(3), form(3).

# NOTES

The header file <form.h> automatically includes the header file <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.

2023-07-01 | ncurses 6.4