file_view_read

	status.i4.v = file_view_read(top_row.i4.v, left_column.i4.v,
				     num_columns.i4.v, num_rows.i4.v,
				     file_name.i1a.r [,call_me.f.v]
				     [,exit_switch.i4.v] [,title.i1a.r]
				     [,synchronous.i4.v] [,text_color.i4.v]
				     [,options.u4.v] [,search_string.i1a.r]
				     [,term_string.i1a.r])

	This routine reads and displays an ASCII text file.

	top_row		top row of window (use WMNGR_CENTER for centering
			or WINDOW_xxx_COORD macros in macro for special
			positioning)
	left_column	left column of window (use WMNGR_CENTER for centering
			or WINDOW_xxx_COORD macros in macro for special
			positioning)
	num_columns	number of columns inside the window  (If a value of 0
			is passed, an optimal window width is found.)
	num_rows	number of rows inside the window  (If a value of 0
			is passed, an optimal window height is found.)
	file_name	null-terminated string specifing the file
	[call_me]	If specified, caller specified function
			will be called upon keyboard interrupts
			inside the file_view text window.
			Called function will receive the window ID
			and location of cursor:
			call_me(window_id.i2.r, row.i4.r, column.i4.r)
			If you want the file_view_read window to exit after
			return from your callback, set window ID to zero
			in your callback function.
			(default is NULL)
	[exit_switch]	determine whether or not to display an exit switch
			(Note: This argument has no effect if "synchronous"
			 has a value of FALSE.)
			(TRUE -> display exit ("OK") switch,
			 FALSE -> no exit switch (default))
	[title]		optional window title
			(default title (NULL) is the name of the file)
	[synchronous]	declares the handling of the window
			(TRUE -> window will remain open until closed by user
				 action and then control will return to
				 the caller,
			 FALSE -> routine will return immediately after
				  drawing the window and will return the
				  window ID for deletion by the caller)
			(default is TRUE)
	[text_color]	text color (default is CYAN) (constants are in cnsparam)
	[options]	file read options
			(FILE_VIEW_OPT_NONE -> no options selected,
			 FILE_VIEW_OPT_NO_HTML -> strip HTML code,
			 FILE_VIEW_OPT_EXTRACT_CLIB_HELP -> extract only
							    CLIB-style help,
			 FILE_VIEW_OPT_SKIP_SEARCH -> skip file text preceding
						      the supplied search
						      string,
			 FILE_VIEW_OPT_USE_COLOR_TAGS -> look for embedded
							 color tags in the
							 file text and color
							 the text accordingly,
			 FILE_VIEW_OPT_SHOW_LINE_NUMBERS -> display line
							    numbers)
	[search_string]	string to search for  (If this argument is supplied
			and the string exists in the file text, the window
			will be scrolled to the first occurrence of the string.)
			(default is NULL)
	[term_string]	termination string  (If this argument is supplied
			and the string exists in the file text, the file
			read will end when this string is found.)
			(default is NULL)

	This function returns status values as follows:

	OK			success
	CBS_MEMFAIL		failed in allocating dynamic memory
	CBS_INVARG		requested window is too large
	CBS_NOTOPN		couldn't open file
	CBS_WINDOW_TOO_BIG	file window won't fit on background window
	otherwise		window ID if asynchronous mode is selected

	This function requires the following include files:

	cnsparam_h, cbslib_h, macro_h, acnet_errors_h

	Related functions:

	file_view_select, file_view_find, window_restore_hint_c, menu_setup_c,
	file_decide_c, file_acknowledge_c

	C/C++ usage:

	static const char	file_name[] = "/some_path/file_name.ext";
	static const char	title[] = "Title";
	char	*search_string = (char *) NULL;
	char	*term_string = (char *) NULL;
	int	status;
	int	top_row = WMNGR_CENTER;
	int	left_column = WMNGR_CENTER;
	int	num_columns = 0;
	int	num_rows = 0;
	int	exit_switch = TRUE;
	int	synchronous = TRUE;
	int	text_color = CYAN;
	unsigned int	options = FILE_VIEW_OPT_NONE;
	void	call_me(short *window_id, int *row, int *column);

	status = file_view_read(top_row,left_column,num_columns,num_rows,
				file_name,call_me,exit_switch,title,
				synchronous,text_color,options,search_string,
				term_string);