did_it.i4.v = window_border_button_c(window_id.i2.v, border.i4.v,
					     column.i4.v, text.i1a.r,
					     num_chars.i4.v [,color.i4.v]

	This routine will draw a text button on a window border and
	will reserve that field for decoding by the application
	program.  This will override window_manager's control over
	this field if automatic window moving and resizing is enabled.

	window_id	window ID
	border		button border
			(WMNGR_TOP_BORDER -> top border,
			 WMNGR_BOTTOM_BORDER -> bottom border)
	column		starting window column (use WMNGR_CENTER for centering)
	text		ASCII button label
	num_chars	number of ASCII characters in the button label
			(If "num_chars" = 0, the length of the string pointed
			 to by "text" is determined and used.)
	[color]		button label color
			(constants are in 'cnsparam')
	[end_character]	special character to place before and after button text
			(default is 0 which would indicate no end characters)
			(constants are in 'extchrset')
	[end_color]	color of end characters (default is YELLOW)
			(constants are in 'cnsparam')
	[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
			(default is NULL)
	[callback_data]	pointer to user-supplied data to be passed to
			callback function (default is NULL)

	This function returns ACNET status values as follows:

	OK			success
	CBS_INVARG		background or invalid window ID passed or
				invalid border or column
	CBS_NO_WINDOW		requested window does not exist
	CBS_INVTYP		requested window has no border
	CBS_INVSIZ		button field extends beyond the end of the
	CBS_NOTENB		action not enabled due to active window
				move or resize

	This function requires the following include files:

	cnsparam_h, cbslib_h, acnet_errors_h, extchrset_h

	Related functions:

	window_delete_border_button_c, window_close_button_c,
	window_menu_button_c, window_tvm(_c), window_set_clip_c,
	in_window_field(_c), window_button_create_c, window_button_delete_c,
	switch_create_c, switch_delete_c, window_field_create_c,

	C/C++ usage:

	static const char	text[] = "Label";
	char	end_character = SYMBOL_DIAMOND;
	short	window_id = WINDOW_ID;
	int	status;
	int	border = WMNGR_TOP_BORDER;
	int	column = 1;
	int	num_chars = 0;
	int	color = CYAN;
	int	end_color = YELLOW;
	void	callback_func(short window_id, void *callback_data,
			      WINDOW_FIELD_INTERRUPT_DATA *interrupt_data);
	void	*callback_data = (void *) NULL;

	status = window_border_button_c(window_id,border,column,text,