cdk_process - curses widget pre/post-processing
Perform pre- and post-processing of data which is injected into a widget.
Character input is handled by each widget by its injection function. That is
typically a large case-statement consisting of the actions to be taken for
editing and scrolling keys. The calling application can modify the behavior of
the injection function by defining either or both preprocess and postprocess
Preprocessing is performed before doing anything with the injected keystroke. If
the preprocess function returns zero, no further action is taken in the
injection function. Note that the preprocess function may do more than filter
out characters; it can fill in logic to coordinate different widgets.
Postprocessing is performed after all other actions have been done in the
injection function. Like the other actions, it is performed only if the
preprocess function returns a nonzero value. Unlike the preprocess function,
its return value is ignored.