packages icon
This is the latest, and hopefully last, major release of the Info widget
posted on two other occasions to comp.sources.x. I will continute to
provide fixes and small functionality updates as necessary, of course,
but feel that this is now as featureful as it needs to be, given its
intended use.

The following changes have been made since the last release:

o	Resource entry fixed; no longer coredumps on RISC machines.

o	Goto function now more properly implemented.

o	Info files may now be compressed to save space - as long as they
	end with a .Z suffix, xinfo will automatically uncompress them for you.

o	More bugs fixed; memory no longer leaks like water through a sieve.
	Whoops. Code was also cleaned up a bit more.

o	Widget now subclassed from composite, not paned, making it more
	portable to other widget sets. Also handles geometry management
	much more effectively.

o	Mouse selections in the text now supported. If something looks
	interesting and you click on it, regardless of where it is,
	something will happen. Maybe even what you wanted.

o	Any resource that could be user specified without changing the basic
	functionality of the widget has been put into the resource database.
	Resources in general are now used much more effectively. This doesn't
	mean that you actually need to know how to set them (keine angst, RMS),
	since a reasonable set of defaults are available (and will be
	automatically installed).

o	The HELPFILE is gone; the help text is now a resource string. This
	means you can now give your users xinfo help in Pashto or Finnish,
	if you want, simply by editing the database.

o	Better support for color. I.E. I thought up some reasonable defaults
	that you can enable if you've got a color system.

o	Various accelerators for making life easier have been added.

o	A popup dialog for getting required arguments. XInfo no longer just
	beeps at you and gives you a whiny message about what you should have
	done, it jumps up and asks you for it.

o	The following text was added (finally):

When creating the info widget, the following resources are retrieved from
the resource database:

-------------------------------------------------------------------------------
Name		Class		Type		Notes	Default
-------------------------------------------------------------------------------
bellVolume	BellVolume	Int		CSG	50
callback	Callback	XtCallbackList	CSG	NULL
infoFile	InfoFile	String		CSG	XpDefaultInfoFile
infoNode	InfoNode	String		CSG	XpDefaultInfoNode
infoPath	InfoPath	String		CSG	XpDefaultInfoPath
printCommand	PrintCommand	String		CSG	XpDefaultPrintCommand
retainArg	RetainArg	Boolean		CSG	FALSE
-------------------------------------------------------------------------------

bellVolume	Determines how loud to ring the bell when something wants
		to complain.

callback	If specified, is called when the info widget wants to "quit"
		it is left up to the caller to decide what "quitting" means.

infoFile	Which info file to read from. Generally defaults to "dir".

infoNode	Which info node to try and find. Generally defaults to "top".

infoPath	Colon separated path to follow when looking for info files.

printCommand	Which unix command to run when the user asks to print the
		current node. This command will be run on a temporary file
		containing the node's text and header information.

retainArg	Determine whether or not to leave text (if any) in the
		argument area around after selecting a node.


CONTENTS
-------------------------------------------------------

This directory contains the sources for an "Emacs Info" browsing widget,
subclassed from the Composite widget.

The following files are important:

Info.c, Info.h, InfoP.h  - Comprise the Info widget (as is customary)

xinfo.c	- A simple application of the info widget (also demonstrates
	  usage of the quit callback).

XInfo.ad - Application defaults.

Compiling should be fairly straigtforward. You may want to edit some
of the defaults in Info.h to match the configuration at your site, though
this really should be changed in the resource database if at all possible.

Those wishing for an more elaborate view of the twisty mechanations
of my mind (regarding this code, at least) should read the NOTES file.

Questions, suggestions, bug fixes or large anonymous cash donations
(all currencies accepted) should be sent to:

				Jordan Hubbard

			ARPA:	jkh@meepmeep.pcs.com
			(OR):	jkh@meepmeep.pcs.de   (europe)