"Fossies" - the Fresh Open Source Software Archive

Member "ivtools-ivtools-2.0.4/README" (9 Oct 2020, 17997 Bytes) of package /linux/misc/ivtools-ivtools-2.0.4.tar.gz:


As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file.

    1 
    2 			README for ivtools 2.0
    3 
    4 
    5 This directory contains a release of ivtools 2.0.4.  You should read
    6 the rest of this file for information on what ivtools is and the
    7 INSTALL file for instructions on how to build it.
    8 
    9 The overall copyright and permission notice for ivtools can be found
   10 in the COPYRIGHT file in this directory.  It is similar to the X11
   11 copyright, otherwise known as non-copylefted freeware.  
   12 
   13 * What is ivtools?:
   14 
   15 Online documentation (including an FAQ) is available for ivtools at:
   16 
   17 	http://www.ivtools.org/ivtools/doc/
   18 
   19 ivtools is a layered collection of application frameworks for building
   20 custom drawing editors and spatial data servers.  It incorporates a
   21 backward compatible copy of the original InterViews and Unidraw class
   22 libraries and sample programs (from 3.2a.tar.Z), augmented with new
   23 class libraries and sample programs for a wide variety of generic
   24 spatial data applications.
   25 
   26 ivtools comprises four sets of interrelated capabilities useful to
   27 application programmers.  The first set is the libraries and example
   28 programs borrowed whole from InterViews 3.1.  The second set is for
   29 reusing and extending the light-weight glyph objects of InterViews 3.1
   30 which embody a lot of the capability of TeX.  The third set reuses and
   31 extends the Unidraw library (Unidraw is a major portion of the overall
   32 InterViews 3.1 release that provides an application framework for
   33 custom drawing editors).  The fourth set adds a command interpreter
   34 and server mechanism to ivtools, and demonstrates these capabilities
   35 with text, glyph, and graphic front-ends.  To get more of an overview
   36 of these layers you can read:
   37 
   38     http://www.ivtools.org/ivtools/ivtools-layers.html.
   39 
   40 These are the libraries and example programs borrowed straight from
   41 InterViews 3.1:
   42 
   43 	IV		library of InterView 3.1, InterViews 2.6, Dispatch,
   44 			OS, and TIFF objects
   45 	dclock		digital clock with fading digits
   46 	iclass		C++ class browser
   47 	idemo		glyph demo 
   48 
   49 These are the libraries and example programs that make up the glyph
   50 part of ivtools (programs in the glyphs directory):
   51 
   52 	IVGlyph		library of Glyph derived classes
   53 
   54 	bdvtable        bounded-value editing 
   55 	formdemo	value-editing 
   56 	gclock		glyph-based clock
   57 	meter           sliding meter
   58 	radiogroup      radio-buttons
   59 	scrollable	2d scrollable glyph
   60 	scrollfield	2d scrollable field-editor
   61 	strchooser	string chooser 
   62 	timestamp	editable time glyph
   63 
   64 Plus a generally useful text display and editing program:
   65 
   66 	ivtext     emacs-like text editor 
   67 
   68 Also all the glyph example programs from InterViews 3.1 have been
   69 added in an examples3.1 directory under the glyphs directory.
   70 
   71 These are the libraries and example programs that make up the Unidraw
   72 part of ivtools:
   73 
   74 	Unidraw		copy of Unidraw library from InterViews 3.1
   75 	UniIdraw        librarification of 3.1 idraw 
   76 	OverlayUnidraw  extended Unidraw/idraw framework
   77 	TopoFace	spatial network library (nodes, edges, faces)
   78 	GraphUnidraw    graph browser/editor library
   79 	FrameUnidraw    multi-frame display mechanism
   80 
   81 	idraw		idraw built on UniIdraw library
   82 	drawtool        extended version of idraw built on OverlayUnidraw
   83 	graphdraw       graph browser/editor integrated with drawtool
   84 	flipbook        flipbook multi-frame editor based on drawtool
   85 
   86 These are the libraries that make up the command interpreter part of
   87 ivtools:
   88 
   89 	ComUtil		command interpreter utility functions
   90 	Attribute	attribute property list mechanism
   91 	AttrGlyph	glyphs for Attribute library
   92 	ComTerp		command interpreter objects
   93 	ComGlyph	glyphs for ComTerp library	
   94 	ComUnidraw      drawing editor with command interpreter
   95 	DrawServ        drawing server framework with support
   96 			for graphs and frames.
   97 
   98 	comtest		test program
   99 	comterp 	sample command interpreter 
  100 	glyphterp	command interpreter user interface
  101 	comdraw		drawtool with command interpreter
  102 	drawserv        comdraw with both graphs and frames.
  103 
  104 Note: GraphUnidraw/graphdraw and FrameUnidraw/flipbook have been
  105 rearranged within the ivtools source tree to take advantage of the
  106 ComUnidraw framework layer, so they really could be listed in both of
  107 the previous sections.
  108 
  109 There is also a Time library with Date and Time classes borrowed from
  110 the NIH's class library, and an example program, ivxt, that shows how
  111 an Xt widget can be wrapped around an InterViews application.
  112 Finally, there is a collection of utilities (utils) and shell scripts
  113 (scripts) that augment the drawing editors of ivtools with minor
  114 capabilities.  See the relevant directories and files for further
  115 information.
  116 	
  117 A series of makefile targets support the checkin of sources to
  118 cvs/rcs, and their subsequent update and modification.  This requires
  119 a copy of cvs available from the Free Software Foundation and
  120 ivmkcm-0.7.2 available through http://www.ivtools.org/ivmkcm/
  121 
  122 * More ivtools details
  123 
  124 ivtools is known to build with many versions of gcc (up to gcc-4.3)
  125 and on a variety of Unix'es: SunOS 4.1 (MIT's X11R5), Solaris 2.6
  126 (X11R6), Irix 5.2 (SGI's X11R5), Linux 1.2 (Slackware 3.0, XFree86
  127 3.1), Linux 2.* (RedHat 4.0 thru 7.0, Debian 2.* and 3.*), NetBSD,
  128 FreeBSD, and Darwin (Mac OS X).  There are contributed configs that
  129 are out of date for HPUX and Dec Alpha (though the HPUX contrib might
  130 almost have it right). It has been built on Windows NT 4.0 using
  131 Cygwin from Cygnus Solutions (see README.cygwin).  You can find links
  132 to available binaries on the ivtools web page (http://www.ivtools.org)
  133 and ivtools download page
  134 (http://www.ivtools.org/ivtools/download.html)
  135 
  136 If you have a question about this software, desire to add code, found
  137 a bug, want to request a feature, or wonder how to get further
  138 assistance, please send e-mail to the general purpose ivtools mailing
  139 list, ivtools-user@lists.sourceforge.net.  To subcribe to the mailing
  140 list, visit
  141 http://lists.sourceforge.net/mailman/listinfo/ivtools-user.  Other
  142 ivtools related mailing lists can be found at:
  143 
  144 	http://www.ivtools.org/ivtools/mailinglists.html
  145 
  146 Read about finding and generating all this from inline documentation
  147 below.  A copy of the (older) ivtools html documentation will be available for
  148 download as well:
  149 
  150 	http://downloads.sourceforge.net/ivtools/ivtools-doc-1.2.tgz
  151 
  152 A SourceForge project page for ivtools can be found at:
  153 
  154 	http://sourceforge.net/project/ivtools
  155 
  156 Read about other vector graphic free software at:
  157 
  158 	http://sourceforge.net/foundry/vectorgraphics
  159 
  160 * Finding and Generating Inline Documentation
  161 
  162 Extensive documentation is embedded within the ivtools source tree,
  163 including most all of the documentation originally available for
  164 InterViews 3.1 and Unidraw.  You can find all of it pre-extracted
  165 here:
  166 
  167         http://www.ivtools.org/ivtools/doc/
  168 
  169 Here is a list of documentation:
  170 
  171 	- README/man pages for executable programs
  172 
  173 	Within most directories that contain an executable program
  174 	(a main.c) you'll find a README that explains something
  175 	about the program, how to use it, what it does, what
  176 	arguments it takes.  In the case of the drawing editors
  177 	and command interpreters this README has been further
  178 	processed into a man page, which can be found in its
  179 	uninstalled state in the src/man/man1 directory or wherever 
  180 	you elect to install them.
  181 
  182 	- HTML class documentation
  183 
  184 	Many of the C++ class libraries of ivtools are documented 
  185 	using comments in the header files (the .h files) that can
  186 	be extracted using PERCEPS, a Perl documentation generator for
  187 	C++ (http://starship.python.net/crew/tbryan/PERCEPS/).
  188 
  189 	See src/html/README for instructions on auto-generating these
  190 	web pages yourself, or see the result on-line at:
  191 
  192 		http://www.ivtools.org/ivtools/doc/classes/
  193 
  194 	- InterViews 3.1 and Unidraw man pages
  195 
  196 	All the original man pages from InterViews 3.1 and Unidraw have
  197 	been preserved, and can be found in src/man/man3, or where ever
  198 	you elect to install them.  They also can be browsed online at:
  199 
  200 		http://www.ivtools.org/ivtools/doc/man3.1/
  201 
  202 	- InterViews 3.1 reference manual 
  203 
  204 	The original reference manual for InterViews 3.1 can be found in
  205 	PostScript form at src/man/refman3.1/refman.PS.  It is also
  206 	found in page-indexable online form at:
  207 
  208 		http://www.ivtools.org/ivtools/doc/refman3.1/
  209 
  210 
  211 * Building on top of ivtools
  212 
  213 Copied from the ivtools FAQ: 
  214 
  215 	http://www.ivtools.org/ivtools/faq.html#standalonedevel
  216 
  217 Q: How do I set up a stand-alone program or source tree on top of ivtools
  218 for development purposes?
  219 
  220 A: If you are writing a stand-alone program that will exist in a
  221 single directory, simply copy an appropriate Imakefile and main.c from
  222 a InterViews or ivtools example program directory, modify accordingly,
  223 then use "ivmkmf -a" to generate the Makefile. Make sure you are using
  224 a fresh ivmkmf that corresponds to your installation of ivtools. An
  225 example of this is the comtop sample program, a stand-alone program
  226 separate from ivtools that builds on top of the comterp command
  227 interpreter mechanism.  
  228 
  229 ** comtop.tgz is now part of the ivtools distribution **
  230 
  231 If you are setting up an entire source tree with both class libraries
  232 and executable programs, you will want to get started by replicating
  233 an equivalent source tree (i.e. vhclmaps) and change or rename all
  234 directories or files as appropriate. 
  235 
  236 ** read more on vhclmaps at http://www.ivtools.org/vhclmaps/ **
  237 
  238 
  239 * Acknowledgements:
  240 
  241 Roster of ivtools programmers:
  242 
  243 	Scott Johnston
  244 	Jorge Gautier
  245 	Brian Hogencamp
  246 	Rick Kissh
  247 	Eric Kahler
  248 
  249 InterViews 3.1 programmers that we know of:
  250 
  251 	Mark Linton
  252 	John Vlissides
  253 	Paul Calder
  254 	John Interrante
  255 	Scott Stanton
  256 	Steven Tang
  257 
  258 ivtools can be built to leverage a variety of separate third-party
  259 libraries:
  260 
  261 	* clippoly from Klamer Schutte for polygon intersection
  262 	(licensed under the LGPL)
  263 
  264 	* ACE from Doug Schmidt for middleware networking frameworks
  265 	(licensed similar to X Windows)
  266 
  267 ivtools detects and uses at runtime a variety of third-party executables:
  268 
  269 	* qhull from the University of Minnesota Geometry Center
  270 
  271 	* pstoedit from Wolfgang Glunz
  272 
  273 	* ghostscript from L. Peter Deutsch and Aladdin Systems
  274 
  275 	* djpeg from the JPEG group
  276 
  277 	* giftopnm from Jef Poskanzer's pbmplus toolkit
  278 	(a copy of anytopnm from the same toolkit is incorporated into
  279 	the scripts directory)
  280 
  281 OverlayUnidraw incorporates Version 3.1 of a "C++ Vector and Matrix
  282 Algebra routnes" (algebra3.h) from Jean-Francois Doue.
  283 	
  284 HPUX (HP-800) config contributed by Neal Becker.  ALPHA config
  285 contributed by Bruno Delfosse at Thomson CSF.  A lot of feedback on
  286 Solaris 2.6 building from M. Rasit Eskicioglu at the University of
  287 Alberta. NetBSD port and other assistance from Todd Gruhn.
  288 
  289 Cygwin development environment for Windows NT from RedHat (Cygnus Solutions).
  290 
  291 Patches to iv-3.2a incorporated from the PDP++ distribution from
  292 Carnegie Mellon University Department of Psychiatry, Randall
  293 C. O'Reilly, et. al.
  294 
  295 Patches for Debian 2.0 packaging incorporated from Guenter Geiger.
  296 This work included the conversion of drawtool, flipbook, and graphdraw
  297 README's to man page format.
  298 
  299 Patch for iv-3.1 shift key handling from Doug Scott, the author of
  300 MiXViews.
  301 
  302 Certain InterViews libraries (Dispatch, IV, IV-2_6, IV-X11,
  303 InterViews, OS, TIFF, Unidraw) and example programs (iclass, idemo,
  304 idraw) are copied from the InterViews 3.1 sources.  Here is the
  305 aggregrate copyright notice for that software package:
  306 
  307 /*
  308  * Copyright (c) 1987, 1988, 1989, 1990, 1991 Stanford University
  309  * Copyright (c) 1991 Silicon Graphics, Inc.
  310  * 
  311  * Permission to use, copy, modify, distribute, and sell this software and 
  312  * its documentation for any purpose is hereby granted without fee, provided
  313  * that (i) the above copyright notices and this permission notice appear in
  314  * all copies of the software and related documentation, and (ii) the names of
  315  * Stanford and Silicon Graphics may not be used in any advertising or
  316  * publicity relating to the software without the specific, prior written
  317  * permission of Stanford and Silicon Graphics.
  318  * 
  319  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  320  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  321  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  322  * 
  323  * IN NO EVENT SHALL STANFORD OR SILICON GRAPHICS BE LIABLE FOR
  324  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  325  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  326  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  327  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  328  * OF THIS SOFTWARE.
  329  */
  330 
  331 The building of Unidraw with gcc-2.5.* (and subsequent versions)
  332 was enabled by a patch from Adam Zell.
  333 
  334 The TIFF library was written by Sam Leffler and published with this
  335 copyright and permission notice:
  336 
  337 /*
  338  * Copyright (c) 1991, 1992 Sam Leffler
  339  * Copyright (c) 1991, 1992 Silicon Graphics, Inc.
  340  *
  341  * Permission to use, copy, modify, distribute, and sell this software and 
  342  * its documentation for any purpose is hereby granted without fee, provided
  343  * that (i) the above copyright notices and this permission notice appear in
  344  * all copies of the software and related documentation, and (ii) the names of
  345  * Sam Leffler and Silicon Graphics may not be used in any advertising or
  346  * publicity relating to the software without the specific, prior written
  347  * permission of Sam Leffler and Silicon Graphics.
  348  * 
  349  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  350  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  351  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  352  * 
  353  * IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
  354  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  355  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  356  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  357  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  358  * OF THIS SOFTWARE.
  359  */
  360 
  361 The strchooser example and StrChooser class were contributed by David
  362 B. Hollenbeck, as well as the glyph-based Motif-look pull-down menus
  363 of OverlayUnidraw.  Here is his copyright notice:
  364 
  365 /*
  366  * Copyright (c) 1993 David B. Hollenbeck
  367  *
  368  * Permission to use, copy, modify, distribute, and sell this software and 
  369  * its documentation for any purpose is hereby granted without fee, provided
  370  * that (i) the above copyright notice and this permission notice appear in
  371  * all copies of the software and related documentation, and (ii) the name of
  372  * David B. Hollenbeck may not be used in any advertising or
  373  * publicity relating to the software without the specific, prior written
  374  * permission of David B. Hollenbeck.
  375  * 
  376  * THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, 
  377  * EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY 
  378  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.  
  379  *
  380  * IN NO EVENT SHALL DAVID B. HOLLENBECK BE LIABLE FOR
  381  * ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
  382  * OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
  383  * WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF 
  384  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE 
  385  * OF THIS SOFTWARE.
  386  */
  387 
  388 The scrollable example is based on code from Chen Wang
  389 
  390 The text-editor example program is by Jan Andersson of Torpa Konsult
  391 AB.  Here is that copyright notice:
  392 
  393 //
  394 // Simple Text Editor
  395 //
  396 //
  397 // Copyright (C) 1993 Ellemtel Telecommunication Systems Labratories
  398 //
  399 // Permission is granted to any individual or institution to use, copy,
  400 // modify, and distribute this software, provided that this complete
  401 // copyright and permission notice is maintained, intact, in all copies
  402 // and supporting documentation.
  403 //
  404 // Ellemtel Telecommunication Systems Labratories make no representation
  405 // of the suitability of this software for any purpose. It is provided
  406 // "as is" without any expressed or implied warranty.
  407 //
  408 // Jan Andersson, Torpa Konsult AB
  409 // janne at torpa.se - 1993-08-29
  410 
  411 The Date and Time classes in the Time library are borrowed from the
  412 NIHCL class library, written by K. E. Gorlen, Computer Sciences
  413 Laboratory, DCRT, National Institutes of Health, Bethesda, MD 20892,
  414 and published with this notice:
  415 
  416      THIS SOFTWARE FITS THE DESCRIPTION IN THE U.S. COPYRIGHT ACT OF A
  417      "UNITED STATES GOVERNMENT WORK".  IT WAS WRITTEN AS A PART OF THE
  418      AUTHOR'S OFFICIAL DUTIES AS A GOVERNMENT EMPLOYEE.  THIS MEANS IT
  419      CANNOT BE COPYRIGHTED.  THIS SOFTWARE IS FREELY AVAILABLE TO THE
  420      PUBLIC FOR USE WITHOUT A COPYRIGHT NOTICE, AND THERE ARE NO
  421      RESTRICTIONS ON ITS USE, NOW OR SUBSEQUENTLY.
  422 
  423 The graylevel raster and painting mechanisms of OverlayUnidraw were
  424 originated by Richard B. Kissh under contract to Vectaport Inc, as
  425 well as the shared memory rasters and asychronous incremental download
  426 of rasters.
  427 
  428 The ComUtil library was originally developed at Triple Vision
  429 Inc. under NSF Grant ISI-8521259 (authors/contributors: Robert
  430 C. Fitch, Richard A. Fundakowski, Robert K. Graber, Scott
  431 E. Johnston).
  432 
  433 The ivdl URL downloading utility was developed by Eric F. Kahler under
  434 contract to Vectaport Inc.
  435 
  436 Keung Chi Ng of IET Inc. has provided a good deal of feedback on
  437 ivtools over the years, and has assisted in demonstrating the
  438 viability of the application frameworks by developing a variety of
  439 vertical applications on top of OverlayUnidraw, FrameUnidraw, and
  440 GraphUnidraw.
  441 
  442 The balance of ivtools has been developed by Vectaport Inc. (P.O. Box
  443 7141, Redwood City, CA 94063), with additional support from IET Inc.
  444 (P.O.  Box 112450, Campbell, CA 95011) in the form of ARPA
  445 subcontracts (DACA76-93-C-0025 and DACA76-97-C-0005), as well as
  446 directly employing Scott Johnston from April 1999 thru August 2000 and
  447 giving him the freedom to evolve ivtools and related open-source
  448 frameworks as part of his job. There was also support from Applied
  449 Sciences Inc, San Francisco, CA, in the form of a subcontract for a
  450 Phase II SBIR from NASA Ames.