status.i4.v = window_field_add_callback_c(field_id.i4.v,

	This routine will add, replace, or remove a callback function
	for an interrupt callback field created by an earlier call to

	field_id	ID of desired field
			(returned by prior call to window_field_create_c)
	callback_func	address of function to be called as follows:
			callback(window_id.i2.v, callback_data.g.v,
			("interrupt_data" is a structure of type
			(Note: Passing a value of NULL for this argument
			 will result in the removal of a previously
			 established callback.)
	callback_data	pointer to user-supplied data to be passed to
			callback function
	interrupt_mask	mask of interrupt events for which this callback
			will be active (events can be or'ed together)
			(WMNGR_INT_ALL -> active on all interrupts except
					  enter and leave field,
			 WMNGR_INT_INIT -> executed when field is initialized,
			 WMNGR_INT_KBD -> active on keyboard interrupts,
			 WMNGR_INT_SHIFT_KBD -> active on shift click interrupts,
			 WMNGR_INT_CTRL_KBD -> active on control click interrupts,
			 WMNGR_INT_ALT_KBD -> active on alt click interrupts,
			 WMNGR_INT_RIGHT_CLICK -> active on right click events,
			 WMNGR_INT_PER -> active on periodic interrupts,
			 WMNGR_INT_TERM -> executed when field is destroyed,
			 WMNGR_INT_KEYUP -> active on button up interrupts,
			 WMNGR_INT_DOUBLE -> active on double clicks,
			 WMNGR_INT_ENTER_FIELD -> executed when cursor enters
						  the field,
			 WMNGR_INT_LEAVE_FIELD -> executed when cursor leaves
						  the field)
	delete_if_last	delete field flag
			(TRUE -> delete this field if the last callback
				 function has been removed,
			 FALSE -> do not delete this field)
	options		callback addition options
			(WMNGR_CB_OPT_NONE -> no options selected,
			 WMNGR_CB_OPT_DELETE_IF_LAST -> delete this field if
							the last callback
							function is being
							      this periodic even
							      if the cursor is
							      not in the field)

	This function returns ACNET status values as follows:

	OK			success
	CBS_NO_SUCH		field does not exist

	This function requires the following include files:

	cnsparam_h, cbslib_h, acnet_errors_h

	Related functions:

	window_field_create_c, window_field_delete_callback_c,
	window_field_delete_c, field_window_delete_c, window_field_init_c,
	window_field_disable_c, window_field_enable_c,
	field_window_set_exclusive_c, field_window_restore_exclusive,
	window_field_enable_all_occluded, window_field_disable_all_occluded,
	window_field_restore_all_occluded, intro_tv_windows

	C/C++ usage:

	int	status;
	int	field_id;
	unsigned int	interrupt_mask = WMNNGR_INT_KBD;
	unsigned int	options = WMNGR_CB_OPT_DELETE_IF_LAST;
	void	callback_func(short window_id, void *callback_data,
			      WINDOW_FIELD_INTERRUPT_DATA *interrupt_data);
	void	callback_data = (void *) NULL;

	status = window_field_add_callback_c(field_id,callback_func,