"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
the uninterpreted source code file.
2 README for ivtools 2.0
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.
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.
13 * What is ivtools?:
15 Online documentation (including an FAQ) is available for ivtools at:
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.
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:
40 These are the libraries and example programs borrowed straight from
41 InterViews 3.1:
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
49 These are the libraries and example programs that make up the glyph
50 part of ivtools (programs in the glyphs directory):
52 IVGlyph library of Glyph derived classes
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
64 Plus a generally useful text display and editing program:
66 ivtext emacs-like text editor
68 Also all the glyph example programs from InterViews 3.1 have been
69 added in an examples3.1 directory under the glyphs directory.
71 These are the libraries and example programs that make up the Unidraw
72 part of ivtools:
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
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
86 These are the libraries that make up the command interpreter part of
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.
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.
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.
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
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/
122 * More ivtools details
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
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, firstname.lastname@example.org. 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:
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:
152 A SourceForge project page for ivtools can be found at:
156 Read about other vector graphic free software at:
160 * Finding and Generating Inline Documentation
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
169 Here is a list of documentation:
171 - README/man pages for executable programs
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.
182 - HTML class documentation
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/).
189 See src/html/README for instructions on auto-generating these
190 web pages yourself, or see the result on-line at:
194 - InterViews 3.1 and Unidraw man pages
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:
202 - InterViews 3.1 reference manual
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:
211 * Building on top of ivtools
213 Copied from the ivtools FAQ:
217 Q: How do I set up a stand-alone program or source tree on top of ivtools
218 for development purposes?
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.
229 ** comtop.tgz is now part of the ivtools distribution **
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.
236 ** read more on vhclmaps at http://www.ivtools.org/vhclmaps/ **
239 * Acknowledgements:
241 Roster of ivtools programmers:
243 Scott Johnston
244 Jorge Gautier
245 Brian Hogencamp
246 Rick Kissh
247 Eric Kahler
249 InterViews 3.1 programmers that we know of:
251 Mark Linton
252 John Vlissides
253 Paul Calder
254 John Interrante
255 Scott Stanton
256 Steven Tang
258 ivtools can be built to leverage a variety of separate third-party
261 * clippoly from Klamer Schutte for polygon intersection
262 (licensed under the LGPL)
264 * ACE from Doug Schmidt for middleware networking frameworks
265 (licensed similar to X Windows)
267 ivtools detects and uses at runtime a variety of third-party executables:
269 * qhull from the University of Minnesota Geometry Center
271 * pstoedit from Wolfgang Glunz
273 * ghostscript from L. Peter Deutsch and Aladdin Systems
275 * djpeg from the JPEG group
277 * giftopnm from Jef Poskanzer's pbmplus toolkit
278 (a copy of anytopnm from the same toolkit is incorporated into
279 the scripts directory)
281 OverlayUnidraw incorporates Version 3.1 of a "C++ Vector and Matrix
282 Algebra routnes" (algebra3.h) from Jean-Francois Doue.
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.
289 Cygwin development environment for Windows NT from RedHat (Cygnus Solutions).
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.
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.
299 Patch for iv-3.1 shift key handling from Doug Scott, the author of
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:
308 * Copyright (c) 1987, 1988, 1989, 1990, 1991 Stanford University
309 * Copyright (c) 1991 Silicon Graphics, Inc.
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.
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.
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.
331 The building of Unidraw with gcc-2.5.* (and subsequent versions)
332 was enabled by a patch from Adam Zell.
334 The TIFF library was written by Sam Leffler and published with this
335 copyright and permission notice:
338 * Copyright (c) 1991, 1992 Sam Leffler
339 * Copyright (c) 1991, 1992 Silicon Graphics, Inc.
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.
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.
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.
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:
366 * Copyright (c) 1993 David B. Hollenbeck
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.
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.
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.
388 The scrollable example is based on code from Chen Wang
390 The text-editor example program is by Jan Andersson of Torpa Konsult
391 AB. Here is that copyright notice:
394 // Simple Text Editor
397 // Copyright (C) 1993 Ellemtel Telecommunication Systems Labratories
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.
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.
408 // Jan Andersson, Torpa Konsult AB
409 // janne at torpa.se - 1993-08-29
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:
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.
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.
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).
433 The ivdl URL downloading utility was developed by Eric F. Kahler under
434 contract to Vectaport Inc.
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
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.