status.i4.v = toggle_switch_create_c(window_id.i2.v, row.i4.v,
					   column.i4.v, align_type.i4.v,
					   label.i1a.r, label_length.i4.v,
					   label_color.i4.v, switch_value.i1.r,
					   value_color.i4.v, callback_func.f.v,
					   callback_data.g.v, switch_help.s.r,
					   options.u4.v, handle.i1a.r,

	This routine will create a toggle switch field in a window.  All
	toggle switch fields in a window are automatically deleted when
	the window is deleted.

	window_id	window ID (use WMNGR_BACKGROUND for background window)
	row		switch field row
	column		left column of the switch field
	align_type	coordinate handling
			(TOGGLE_SWITCH_ALIGN_LABEL -> row and column indicate
						      the location of the
						      label text,
			 TOGGLE_SWITCH_ALIGN_VALUE -> row and column
						      indicate the location
						      of the switch value text)
	label		label text  (If a value of NULL is passed for this
			argument, no label will be displayed.)
	label_length	length of label text (If a value of zero is passed for
			this argument, the routine will determine the length
			of the label text.)
	label_color	color of label text (constants are in 'cnsparam')
	switch_value	switch value which will be updated when a user
			clicks on the switch
	value_color	color of switch value (constants are in 'cnsparam')
	callback_func	address of function to be called as follows:
			callback(window_id.i2.v, callback_data.g.v,
			("switch_data" is a structure of type TOGGLE_SWITCH_DATA)
	callback_data	pointer to user-supplied data to be passed to
			callback function
			(A value of NULL can be passed for this argument
			 if no callback data is needed.)
	switch_help	help callback information for the visible input field
			(structure of type HELP_CALLBACK_DATA)
			(A value of NULL can be passed for this argument if
			 no context sensitive help is to be provided.)
	options		create options
			(TOGGLE_SWITCH_OPT_NONE -> no options selected,
			 TOGGLE_SWITCH_OPT_NO_BRACKETS -> eliminate the
							  characters which
							  bracket the
							  switch field,
			 TOGGLE_SWITCH_OPT_LABEL_ON_RIGHT -> display the text to
							     the right of the
							     switch field)
	handle		null terminated ASCII handle to be used as an
			alternate means of accessing this switch field
			(Note: If this argument is not needed, a value of
			 NULL can be passed for it.)
	switch_id	returned switch ID
			(can be passed to toggle_switch_delete)
			(Note: If this argument is not needed, a value of
			 NULL can be passed for it.)

	This function returns ACNET status values as follows:

	OK			success
	CBS_INVARG		invalid data type or length
	CBS_NO_WINDOW		window doesn't exist
	CBS_INVSIZ		switch is too big to fit in the window
	CBS_NOT_IN_WINDOW	switch is not entirely in the
				requested window
	CBS_MEMFAIL		failed in allocating dynamic memory
	CBS_DUPREQ		this switch overlaps an existing switch

	This function requires the following include files:

	cnsparam_h, cns_data_structs_h, cbslib_h, acnet_errors_h

	Related functions:

	toggle_switch_delete, toggle_switch_window_delete_c,
	toggle_switch_read, toggle_switch_set_c, toggle_switch_enable,
	toggle_switch_disable, toggle_switch_set_id_type_c,

	C/C++ usage:

	static const char	label[] = "Label";
	static const char	handle[] = "my_switch";
	char	switch_value;
	short	window_id;
	int	status;
	int	row = 1;
	int	column = 1;
	int	align_type = WMNGR_ALIGN_LABEL;
	int	label_length = 0;
	int	label_color = CYAN;
	int	value_color = GREEN;
	int	switch_id;
	unsigned int	options = TOGGLE_SWITCH_OPT_NONE;
	void	callback_func(short window_id, void *callback_data,
			      TOGGLE_SWITCH_DATA *input_data);
	void	callback_data = (void *) NULL;

	status = toggle_switch_create_c(window_id,row,column,align_type,