Changes to Xfig
=============================================================================
Version 3.2
=============================================================================
Patchlevel 9a (Dez 2024)

CHANGES:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Remove application resource fixedFontSet, fontSetSize.
	o Use float fontsizes, ticket #168.

BUGS FIXED:
	o Enable compilation with libxaw, instead of libxaw3d, #138, #174.
	o Speed up drawing of a lot (thousands) of text objects, ticket #166.
	o Draw text in a user color, ticket #180.
	o Correctly place text into dimension lines, ticket #179.
	o Enable compilation on Mac Darwin, ticket #177.
	o Only print active layers if required, ticket #172.
	o Place line length values at saner locations, ticket #167.
	o Do not crash on export to pdf/latex under some circumstances, #165.
	o Export only active layers, ticket #163.
	o Sanitize sed script for build on Darwin, ticket #162.
	o Show symbol and dingbats fonts, ticket #159.

-----------------------------------
Patchlevel 9 (Aug 2023)

NEW FEATURES:
	o Text objects are rendered using the xft library, querying fontconfig.
	o Relative, not absolute paths to embedded picture files are written
	  to .fig files. This makes it easier to move and share .fig files.

CHANGES:
	o Fig files are saved as utf-8 encoded unicode and all bytes, except
	  backslash, are printed as is. Backslashes are escaped by a second
	  backslash. The second line of generated fig files is exactly
	  "#encoding: UTF-8".
	  Previously, bytes with a value larger than expressable with 7 bits
	  were printed as backslash-escaped three-digit octal value.

	o Remove application resources save8bit, latinKeyboard, scaleablefonts,
	  fig2devLocalizeOption, encoding, eucEncoding, localeEncoding.

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Compounds keep their their size after editing or updating, ticket #51.
	o Avoid crashing for large scaling, e.g., xfig -userscale 100, #144.
	o Fix crashing when embedding a pdf as the first picture, ticket #143.

-----------------------------------
Patchlevel 8b (Aug 2021)

BUGS FIXED:
	o Adding points to splines works if boxes are present in the figure.
	o Stay in the working directory when browsing picture files.

-----------------------------------
Patchlevel 8a (Mar 2021)

BUGS FIXED:
	o Distribute a current pdf documentation.
	  Thanks to Roland Rosenfeld for the script and pointing out the issue.

-----------------------------------
Patchlevel 8 (Dec 2020)

USER INTERFACE CHANGES:
	o Shift + Wheel Up pans left, Shift + Wheel Down pans right.
	  Alt or Meta + Wheel Up pops up the edit panel, Alt or Meta + Wheel
	  Down pops up the drawing panel. Previously, Shift + Wheel Up or Down
	  popped up the edit or drawing panel, respectively, and panning
	  sideways could only be achieved by moving the wheel sideways.

NEW FEATURES:
	o To display gif image files, either giftopnm and ppmtopcx from the
	  netpbm package, imagemagick, or graphicsmagick must be installed.
	o Obey the resolution given in embedded png, tiff and jpeg image files.
	o Embedded image files are displayed in full color, not reduced to
	  a maximum of 256 colors.
	o Display embedded pdf files.

BUGS FIXED:
	o Read version 1.3 fig files.
	o The default resolution of embedded raster images is changed
	  from 80 dpi to 72 dpi.
	o Read compressed files, but do not silently uncompress them.
	o Get correct bounding box (/MediaBox) of embedded pdf files.

-----------------------------------
Patchlevel 7b (Oct 2019)

NEW FEATURES:
	o New drawings in Electronic/Schematic library. Thanks to Niko Sauer.

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	o Fix core dump when clicking File -> Export. Ticket #45.
	o When exiting, cleanly pull down all windows. Ticket #54.
	o Adding and deleting arrows to arcs works, ticket #46.
	o Allow more than 100 comment lines, ticket #47.
	o Make `xfig -update' work again, would segfault.
	o Correctly draw interpolated splines, ticket #35.
	o Position points on grid, if appres.userspacing unequal 1. Ticket #31.

-----------------------------------
Patchlevel 7a (May 2018)

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	Debian bug numbers refer to https://bugs.debian.org/#.
	o Really fix ticket #9, debian bug #270113. When entering the "Open.."
	  dialog, moving to a new directory, pressing Cancel, a subsequent
	  "Save" placed the figure file into the new directory.

-----------------------------------
Patchlevel 7 (April 2018)

NEW FEATURES:
	o Export to pdf now allows to choose between output to a full-page pdf,
	  or cropping to the bounding box (the default behavior).
	o Enable horizontal scrolling with mouse buttons 6 and 7 (sideway push
	  of mouse wheel, or horizontal movement on touchpad).

CHANGES:
	o Rename the text flag "Special Flag" to "TeX Flag".
	o Interpolated splines are now created with the recommended value of the
	  shape factor of -0.5, not with -1.0. A description of the shape factor
	  as used in xfig has been added in the file doc/FORMAT3.2

BUGS FIXED:
	Ticket numbers refer to https://sourceforge.net/p/mcj/tickets/#.
	Debian bug numbers refer to https://bugs.debian.org/#.
	o Center canvas around cursor when zooming by pressing CTRL and using a
	  wheel-mouse.
	o Apply xfig-3.2.6a-fallback-for-nonscalable-fonts.patch and
	  xfig-3.2.6a-scalable-fonts.patch from Hans de Goede.
	o Apply debian patches 08_every_time.patch, 10_RELEASE_DATE.patch,
	  11_declare_swap_colors.patch, from Roland Rosenfeld.
	o Apply debian patch 07_colorsliderarrows.patch. Debian bug #870365.
	o Change map of India to disputed boundaries, from
	  https://en.wikipedia.org/wiki/File:India_disputed_areas_map.svg,
	  retrieved 2018-02-25. Debian bug #270799, 09_india_disputed.patch
	o Prevent integer overflow in {floor,ceil}_coords_{x,y}(). Fixes debian
	  bug #300436. Also prevent integer overflow in round_coords().
	o Completely remove alloca.h and alloca() from the code.
	o When entering the "Save as..." dialog, moving to a new directory and
	  pressing "Cancel", a subsequent "Save" wrote to the new directory.
	  This happened analogously for the "Export" dialog. Fixed, ticket #9.

-----------------------------------
Patchlevel 6a (January 2017)

CHANGES:
	o Draw lines with the same width on screen as in PostScript and other
	  outputs.

BUGS FIXED:
	o Add compile-switch --enable-tablet for using an input tablet.
	o Eventually, sorted out the xpm switches. Only use --enable-xpm-splash.
	o Improve ./configure and add diagnostic output. Looks now for headers
	  and libraries in unusual places, for compilation under mac darwin when
	  using fink or macports.

-----------------------------------
Patchlevel 6 (August 2016)

NEW FEATURES:
	o Add compile switch to enable xpm-icon and xpm-splash screen
	  independently (--enable-xpm-icon, --enable-xpm-splash).
	o New compile switch --enable-versioning, calls update_version_m4
	  to get version information from a source control system.

BUGS FIXED:
	o Update documentation to LaTeX and Xfig.
	From Roland Rosenfeld <roland@spinnaker.de>:
	o Update LaTeX documentation, use \documentclass instead of
	  \documentstyle, \usepackage instead of \input.
	o Builds on hurd, had to #include <limits.h> in a few places.
	o Use application/x-xfig, not image/x-xfig in xfig.desktop file.
	  See https://bugs.launchpad.net/ubuntu/+source/xfig/+bug/690067 and
	  https://bugs.launchpad.net/ubuntu/+source/xfig/+bug/1045848 .

-----------------------------------
Patchlevel 6-rc (July 2016)

NEW FEATURES:
	o Should compile on Mac (Darwin) after installing dependencies using
	  Macports, Fink or Homebrew.
	o Add two rudimentary tests. Run with make check.

UI CHANGES:
	From Brian V. Smith. These changes were made because the original
	view was of the drawing on the page instead of the modern view
	of the observer moving left/right/up/down:

	o Left arrow moves observer left (used to scroll canvas left)
	o Right arrow moves observer right
	o Up arrow moves observer up
	o Down arrow moves observer down
	o Ctrl+Wheel up zooms in, Ctrl+Wheel down zooms out (was the other
	  way around)

BUGS FIXED:
	o To compile on ancient systems, try make -DANCIENT.
	o Report correct paths to installed files in the man page.
	o Add pathmax.h and dirstruct.h, to define DIRSTRUCT and PATH_MAX.

	From Vladislav Zavjalov; Commit numbers refer to
	http://git.altlinux.org/people/slazav/packages/?p=xfig.git;a=commit;h=#
	o Preserve comments when deleting objects; Commit #6c42e5c
	o Restore colors and main comment after Delete All + Undo; #34f6105
	o Draw horizontal scrollbar if property buttons are too wide to fit
	  on the screen. Commit #e9c1394
	o Add save8bit app-resource to allow saving 8-bit files. #5bd9fbb
	o Move Xfuncs.h and Xosdefs.h out from fig.h. Commit #b433478
	o Move -l flags from LDFLAGS to LDADD. Commit #2d57c85

	From Roland Rosenfeld. Bug numbers refer to https://bugs.debian.org/#.
	o Do not link with -lXmu, if linking with Xaw3d > 1.5e.
	o Make japanese documentation available for LANG=ja_JP.ujis.
	o Set the Creation date in xfig_man.html to the date when
	  creating the source tarball.
	o Really fix reading png files,
	  https://bugzilla.redhat.com/show_bug.cgi?id=1150330
	o Delete some superfluos files, fix typos (Caribbean),
	  add semicolon in xfig.desktop (debian bug #812477).

	From Brian V. Smith:
	o old link for "Xfig On Microsoft Windows"
	  (Getting and Installing Xfig html page)
	o dash_list wrong dimension causes segfault on some line styles
	o Should handle systems where REG_NOERROR (regular expression)
	  is undefined now
	o Missing xfig_man.html
	o Modify a few places where to set locale to "C".
	o Didn't allocate enough space for fonts (would segfault
	  when popping up File panels)
	o Moving arc point would segfault

-----------------------------------
Patchlevel 6-beta (May 2016)

NEW FEATURES:
	o New tikz and pict2e export drivers.
	o Build using autoconf (./configure; make; make install).

BUGS FIXED:
	o Change \r\n to \n in all files.

	From Roland Rosenfeld. Bug numbers refer to https://bugs.debian.org/#.
	In fact, most of the bugs below, also those from other sources, were
	fixed by applying the debian-patches.
	o Position independent executables work, fixes #756791.
	o Revert previous change of X-spline parameter.
	o Use C locale for fig2dev, to correctly interpret decimal point.
	  Fixes debian bug #782737.
	o Correct grid mode distances in man page. Debian bug #314820.
	o Extend xfig.desktop.
	o Fix unsecure use of temporary file. From Thomas Hoger, gentoo.
	  Debian bug #565341.
	o Escape - in man-page.
	o Securely print string.
	o Restore old shadow behaviour.
	o Fix reading "/MediaBox" when importing pdf. Closes debian bug #530898.
	o With -papersize b1, use B1, not B10. Debian bug #535181.

	From Vladislav Zavjalov. Information on bugs is found
	at https://bugzilla.altlinux.org/show_bug.cgi?id=#
	o Do not use fontsets for symbol and dingbat fonts, #26579.
	o Fix compiler warnigs in w_indpanel.c. Commit feabe27.
	o Restore correct depths when loading a figure, then undo.
	  Commit b5c79b3.
	o Restore filename after delete region, undo. Commit 219d690.
	o Restore user color when opening new fig-file. Commit fccd915.
	o Restore correct depths when joining lines with different depths.
	  Commit a77bcaf.
	o Fix xfontlist->fset initialization. Commit a592399.
	o Fix default origin (100000,100000) -> (0,0) for filled objects.
	  Commit 4d87e60.
	o Fix 100% cpu-load by save panel. Commit 81a4596.
	o Do not use local SimpleMenu.c with XAW3D1_5E. Would segfault on
	  some 64-bit systems when opening main menu.

	o Missing argument may cause crash or undefined behaviour.
	  Debian bug #795642. From Michael Tautschnig.

	From Hans de Goede. Bug information
	at https://bugzilla.redhat.com/show_bug.cgi?id=#.
	o Patch for importing png-files, bug #1150330. From David Kaufmann.
	o Fix crash when changing arrow size. Red Hat bug #1046102.
	o Fix crash when creating dash-dotted lines. Red Hat bug #1023744.
	  From Michael Srb, thanks to Maurizio Pollini and David Kaufmann.
	o Fix crash on exit. From Peter Volkov at gentoo

-----------------------------------
Patchlevel 5c (August, 2013)

BUGS FIXED:
	o Increased default width of layer panel from 58 to 64 to accomodate scrollbar width
	o missing comma in FIXED_JAPANESE_PDF #ifdef case in w_cmdpanel.c
	o printer name enclosed in apostrophes when printing in case has spaces in name
	o new link from Elizabeth Bailey for Fig applications referenced in installation.html
	o old link to duke.uask.ca for Fig applications has new link in installation.html
	o Typo in message "GIF read error on extention ..." should be "extension"
	o Possibility of stack overflow with malformed Fig files.
	o In version 1.4 of the PNG library dither was removed so xfig now uses quantize when
	  importing PNG images with palettes
	o Other updates for PNG library version 1.5 from Peter Volkov
	o Some versions of Cygwin don't have either REG_NOERROR or REG_OKAY defined so
	  REG_NOERROR defined to be 0
	o Changed X-Spline parameter to match original intent of X-Spline authors:
	  changed definition of Q(s) from -s to -0.5 * s in u_draw_spline.c
	o Allowance for stricter ghostscript in -dSAFER mode.  Was causing error on reading EPS images.
	  From Hans de Goede
	o Security vulnerability with importing images fixed
	  (RedHat bug # 657981 - xfig buffer overflow when opening .fig file with malicius color definition)
	o When exporting to combined PS/PDF/LATEX the -D option to exclude all but active layers
	  was not passed to fig2dev
	o Uses 24-bit color instead of 8-bit when importing eps files (pcx24b driver for ghostscript)
	o Bug in freeing null fontset
	o Semicolon (;) added at end of MimeType line in xfig.desktop as per
	  http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
	o Reference to "Darwin Ports" changed to "MacPorts"
	o Renamed O_TEXT to O_TXT to avoid conflicts with system define
	o On lines with Round or Projecting cap style and arrowheads, the line endpoint stuck out
	  beyond the arrowhead

	From Vladsilav Zavjalov:
	o Uses fontsets for all fonts in international mode
	o SEGV when zooming while creating object (e.g. text)
	o Add locale_encoding appres which acts similar to euc_encoding, but uses system locale and
	  mbrlen function for multibyte character length calculation.
	o Move "file not found" error message from check_docfile() to launch_viewer(),
	  remove excess check_docfile() call.
	  Error message is not shown when looking for a locale-dependent docs. It is shown only
	  if no docs found at all.
	o Do not do strcpy with equal arguments in w_cmdpanel.c/update_cur_filename()
	o Print to file had extra argument in sprintf in international mode
	o Message panel not tall enough with 3D Athena widgets
	o Warnings about different size of int and void * on 64-bit system.
	  To fix this problem I changed int to intptr_t in some places.


NEW FEATURES:
	o New library objects from Markus Laner:
	  Networks: NodeB.fig, cloud.fig, router.fig, wlan.fig
	  Computers: datacard.fig, screen.fig, usbpen.fig, xbox.fig
	o New command-line option -nowrite_bak to turn off automatic renaming of .fig to .fig.bak
	  when saving .fig file.  X resource is "write_bak".  Also command-line option -write_bak
	  to force renaming to true.
	o Can now specify small buttons with command-line argument -smallicons
	  From Ed Rosten

-----------------------------------
Patchlevel 5b (Jun 1, 2009)

BUGS FIXED:
	o Dimension line indicator incorrectly showed arrow length/width
	o Several patches from Fedora xfig maintainer
	o divide by 0 under certain circumstances in ruler code
	  From Libor Pechacek
	o Segfault if PRINTER env variable was not defined
-----------------------------------
Patchlevel 5a (Mar 16, 2009):

NEW FEATURES:
	o "Chop" tool which allows you to chop polylines, arcs and circles into individual objects that together,
	  approximate the original object.
	  From Chris Moller
	o Fig-color merged into Fig app-defaults file because almost no one knows about
	  the "*customization: -color" option to make X programs read the color def file.
	o 22 new arrowhead types
	o changed default browser to firefox and default pdf viewer to xpdf
	o HTML MAP export (fig2dev) produces reference to .png file instead of .gif now
	o A note added to i18n.html that says if you run fig2dev standalone, you must
	  pass the -j option to it
	o No need to have the C99 complex functions in the math library.
	o New computers from Andre Esser (Libraries/Computers)
	o Some network icons colored and/or combined by Roland Rosenfeld.
	o When exporting only active layers have choice of bounding area of whole
	  figure or only the active layers
	o Two new library figures - piano_keyboard.fig, top view of a piano keyboard
	  by Reinaert Albrecht, and piano_keyboard_perspect.fig, a perspective
	  view of a piano keyboard by Brian Smith, both in the Libraries/Music
	  directory.
	o New library figure - scissors.fig in Libraries/OfficeEquip from Kasie
	  Breezer Talbot
	o Search tolerance increased from 4 pixels to 10 for zoom < 20
	o Isometric grid to ease making isometric drawings
	  From Jasper Wesselingh
	o New 37-pin D connector and 50-pin ribbon connector in Libraries/Electronic/Physical

BUGS FIXED:
	o dimension line arrowhead width and length used %d instead of %f in
	  dialog, always displaying 0
	o leftover debugging printf(...color = ) in startup
	o finally fixed size of mode panel so it doesn't cover indicator panel
	  under certain circumstances
	o removed "Alpha" from splash
	o updated copyright date in Help/About
	o problem with depth panel height due to snap mode indicator
	o snap indicator indicated "Focus" when "Diameter" was selected
	o w_keyboard.c had pointer assignment reversed
	o extraneous "done" in Imakefile in "install.jhtml" section
	  From Eric Scott
	o many protoytpe cleanups from Eric Scott
	o #ifndef __FreeBSD__ added around #include <alloca.h> from Eric Scott
	o uses rint() instead of lrint() for those with non-C99 compilers
	o Solaris doesn't have REG_NOERROR for regex, so have new #define for that
	o added dependency on version.h and patchlevel.h for f_util.c and f_save.c to
	  Imakefile
	o In imperial fractional scale mode, if the user scale factor wasn't 1.0, xfig
	  would switch to decimal mode.  This has been fixed to remain in fractional mode.
	o Added condition for GLIBC to not declare srandom(int)
	o Better resizing of message popup panel
	o Map of Spain included Portugal. From Eugen Dedu.
	o Double-clicking on either style or family would crash xfig
	o Export/Print grid units were not reset when loading Fig file of different units
	o When converting empty export/print grid units to fractional inches would make 0/2
	o Escaped hyphens in man page
	  From Roland Rosendfeld
	o When exporting to all three: PostScript, PDF and TeX, incorrectly generated
	  PostScript and PDF that included LaTeX-only (special) text
	o Bug when doing Save As to a shorter filename - would corrupt name sometimes
	o Note about 450 pixels/cm didn't make it from the FORMAT3.1 file to FORMAT3.2
	o Print command was using -P instead of -d for lp
	o On Cygwin, needed to double-escape PRINTER environment when backslashes in name
	o w_library.c had incompatible poiner type in call to ScanLibraryDirectory
	o Not enough characters allocated for ruler inch/cm indicators.  Would cause segfault
	  on zooming out because of longer ruler text, e.g. -10210cm

-----------------------------------
Patchlevel 5 (Feb 22, 2007):

NEW FEATURES:
	o Shift-U accelerator added to popup units panel
	o The library menu button sizes with the library panel, to show longer
	  path names if the user wants.
	o The cursor for drawing lines, splines, etc. is a crosshair now instead
	  of an arrow.
	o Snap features to allow snapping points to endpoints, midpoints and
	  intersections of other objects.
	  From Chris Moller.
	o Keyboard input of object coordinates for precise positioning.
	  From Chris Moller.
	o Can grab arc anywhere along the curve instead of just at grab points
	  From Chris Moller.
	o Added -noflipvisualhints for cases where, due to "different" pointer
	  devices, they aren't really flipped, but the mapping indicates they are.
	o Export to all of PS, PDF and LaTeX in one operation
	  From Alistair Ramsey
	o Reorganized Networks library and new devices: ASX-200, 1000, and 4000
	  by Bill Chimiak
	o New figures "betty.fig" (Betty Boop) and "nikke.fig" (German detective
	  Nick Knatter) in Libraries/Examples drawn by Markku Reunanen
	o Can finish text input by pressing Escape.  This removes the cancellation
	  of a compose sequence (e.g. a-umlaut)
	o Actually a bug fix, import of PDF files is now possible.  The code was
	  there since version 3.2.3, but the user interface was not.
	o Nearly-full ANSI protoization of code by Harald Koenig
	o Installation of Libraries and doc files faster with tar instead of shell loop
	o New Gregorian chant music symbols from Bill Chimiak.  Also, Music library
	  divided into "chant" and "modern"
	o Popup edit panel slightly more compact vertically
	o New library "Fasteners" containing various bolts and screws
	  From Jim Yuzwalk
	o Increased size of numeric entry fields in indicator panels
	o N-channel IGBT in Electronic/Schematics Library from Art Blair
	o starting values for arrow type, width, length, thickness may be specified
	  on command-line or in X resources:
	  -startarrowtype, -startarrowwidth, -startarrowlength, -startarrowthick

BUGS FIXED:
	o xfig would crash on 64-bit processors because of a missing include, which
	  causes new_string() to be declared implicitly as returning an integer.
	  This may cause the top 32 bits to get lost and hence the crash.
	o Blanks not preserved in imported picture filename when reading Fig file
	o When in metric mode, decimal precision was ignored for dimension lines
	o When showing vertex numbers on objects, first vertex is now 0 to match
	  edit window vertex numbers
	o Also, vertex numbers are not shown on inactive (grayed) layers
	o Widget shadow resources moved from Fig-color to Fig because they don't
	  really have anything to do with color. There was a problem when running
	  KDE because it set a global resource *Scrollbar*height: which made xfig
	  freeze when *customization: -color was NOT used.
	o The point positioning indicator is turned on when editing a compound
	  object to show the user that it is used
	o Increased the maximum size of images that can be imported.  There was
	  a limit in the PostScript image encoder of 4096x4096 pixels.  This was
	  increased to 8192x8192.
	o Centered text was changed to left-justified when flipped horizontally
	  inside a compound object.
	o With -v option, after reporting the version, xfig would say that -v
	  was an unknown option
	o Local locale was being used when writing the xfig cut buffer file
	  instead of switching to "C" locale.  This created commas instead of
	  decimal (.) for numbers in those particular locales.
	  From Dirk Osswald
	o Local locale was used when forming command for calling fig2dev,
	  resulting in commas instead of decimals for floating point numbers.
	o count_user_colors buffer overflow fixed
	o Under Cygwin, temporary file stayed around after unlink(), causing
	  error when importing more than one ps/eps/pdf file
	o Segfault when using -update because appres resources were NULL
	o -update option failed when not first option passed to xfig
	o Clicking window manager "close window" button in library titlebar
	  didn't close the window
	o Wasn't distributing objects in compounds when there were only 2 objects
	o Some compilers complain about the order of declaration in u_fonts.h - fixed
	o Northern part of map of India was incorrect (Libraries/Maps/Asia/india.fig)
	o Map of Serbia was misnamed "yugoslavia.fig" (Libraries/Maps/Europe/yugoslavia.fig)
	o Map of Central Europe had old Yugoslavia instead of Croatia, Serbia, Bosnia-
	  Herzegovina, and Macedonia (also, Slovenia was mistakenly inside the border)
	o Editing a compound object with more than 200 texts would crash xfig

-----------------------------------
Patchlevel 5-alpha5 (April, 26, 2004):

NEW FEATURES:
	o Added note to README and FAQ html file:
	  If the Xaw or Xaw3d Athena widget sets are compiled with the
	  ARROW_SCROLLBAR style of scrollbars, there is no StartScroll action
	  and you won't be able to scroll using the wheel on the mouse.
	  If you want to be able to scroll using the wheel, you must recompile
	  the Xaw library from sources, disabling the ARROW_SCROLLBAR option.
	o Astrological symbols for planets in Miscellaneous/Astrology by Andrew Collier
	o Added key bindings to text dialogs to be more like modern systems (the
	  Athena Widget Set that xfig uses is very old):
	    Home:  beginning-of-line
	    End:   end-of-line
	    Del:   delete-character-right
	o Added *.jpeg* to picture browse options
	o New libraries for electronics from Fabio González in
	  Libraries/Electronics/Schematic/More

BUGS FIXED:
	o typo in latex_and_xfig.html and LATEX_AND_XFIG files. Text should be:
	  \convertMPtoPDF{foo.0}{1}{1}
	  It was missing parameters {1}{1}
	o -correct_font_size missing from -help option list and man pages
	o -help and -version didn't work unless they were first in the options
	o -O option wasn't passed to fig2dev for overlapping pages in multiple
	  page mode for PostScript export
-----------------------------------
Patchlevel 5-alpha4 (Feb, 19, 2004):

Note:	There is a minor change to the copyright/permission notice for xfig.
	Basically, I have restored the part that allows one to sell xfig
	regardless of whether it is bundled as part of a package or not.
	This is identical to the original copyright/permission notice for
	xfig, which was based on the MIT (then later, the X Consortium)
	copyright notice.
	Here is the new notice (different files have different author
	copyrights at the top):

	> FIG : Facility for Interactive Generation of figures
	> Copyright (c) 1985-1988 by Supoj Sutanthavibul
	> Parts Copyright (c) 1989-2002 by Brian V. Smith
	> Parts Copyright (c) 1991 by Paul King

	> Any party obtaining a copy of these files is granted, free of charge, a
	> full and unrestricted irrevocable, world-wide, paid up, royalty-free,
	> nonexclusive right and license to deal in this software and documentation
	> files (the "Software"), including without limitation the rights to use,
	> copy, modify, merge, publish distribute, sublicense and/or sell copies of
	> the Software, and to permit persons who receive copies from any such
	> party to do so, with the only requirement being that the above copyright
	> and this permission notice remain intact.

NEW FEATURES:
	o Introduction.html and installation.html updated to include Macintosh
	  port of xfig
	o Button to collapse depths of a compound object (make all same depth)
	  in popup object editor
	o Grid changed from dotted line to light red solid line
	o Candle in Libraries/Miscellaneous by Dr. Lyman Hazelton
	o Right-click on depth checkbox sets current depth in indicator panel
	  to that depth
	o Library of symbols used when diagramming folding instructions to make
	  origami models and example contributed by Marc Vigo
	o Can adjust width and height directly in popup editor for picture
	  objects
	o Support for David Hawkey's Xaw3D version 1.5E
	  (http://www.visi.com/~hawkeyd/xaw3d.html)

BUGS FIXED:
	o When loading a library object, if it contained only a compound and
	  nothing else, when xfig promoted that compound to the toplevel the
	  main comment was lost
	o Incorrect header files used for SmeBSB resulted in either segfault or
	  none of the command panel entries being underlined
	o Drawing very large splines (e.g. at zoom = 0.01) caused integer
	  roundoff errors, making xfig loop indefinitely
	o Bug where a line that had a zero width or length arrowhead was not
	  redrawn after being moved, copied, canvas redraw, etc.
	o The page border and axis lines would obscure Fig objects when moving,
	  copying etc. other objects on the canvas.
	o In the popup picture editor, if the relative position of the corners
	  of the picture were changed, the rotation field was not updated
	  (this bug was in 3.2.5-alpha3 only)
	o line, arc, ellipse length tool was reporting 0 length

-----------------------------------
Patchlevel 5-alpha3 (Dec, 9, 2003):

NOTE:
	o URL for information about the color optimization code (written by
	  Anthony Dekker) has changed to:
	  http://members.ozemail.com.au/~dekker/NEUQUANT.HTML

NEW FEATURES:
	o -autorefresh command-line option (resource: Fig.autorefresh) which
	  will make xfig look at the timestamp on the .fig file and
	  automatically load it and display it every time it changes.
	o Removed requirement to compile with WHEELMOUSE when using wheelmouse
	o New tower computers (Libraries/Computers/AOpenKF45E.fig and
	  AOpenKF45E.fig from Dirko van Schalkwyk)
	o New 10/100 8port hub (Libraries/Networks/3Com3C16750.fig also from
	  Dirko van Schalkwyk)
	o When placing library objects, the name and comments are displayed in
	  message window
	o New flags (Libraries/Flags): Africa/Eritrea, Africa/Zimbabwe,
	  Asia/Myanmar, Asia/Tajikstan, Asia/Kyrgystan, Europe/Croatia
	o non-polar capacitor added to Libraries/Electronic/Schematic
	o Mouse wheel can be used to scroll through filename lists in File and
	  Export panels and icons or object lists in Library panel
	o Thickness of ticks in dimension lines are user-adjustable now
	o For attribute popup dialogs with only one text entry, keyboard now
	  focuses on the entry as long as the pointer is anywhere in the dialog
	o When using the "Open compound, keep rest visible", the other objects
	  are drawn in shades of gray similar to the inactive layers feature.
	o New library objects: adder, multiplier, sine-source and voltage-source
	  in Electronic/Schematic by Hubert Lam
	o Zooming in or out with the Z or z key respectively will keep the canvas
	  centered on the mouse pointer
	o Full version and patchlevel is included in Fig file header for
	  diagnostics
	o Can explicitly set the rotation of imported pictures in edit panel
	  after importing
	o Export option to produce both EPS and PDF (in two files) in one step.
	  Useful for those who both use LaTeX and PDFLaTeX
	o "Epoch" added to rpm spec
	o New HP/GL2 (fig2dev) driver from Glenn Burkhardt with paper size
	  selection, offset, centering and orientation options
	o New library object "atom" in Libraries/Miscellaneous is the classic
	  drawing of an atom with electrons circling
	  From Andrew B. Collier

BUGS FIXED:
	o Missing #ifdef XAW3D in SimpleMenu.c
	o Bug when breaking a compound object - depths were added twice to the
	  counts
	o When implicitly cancelling the placement of a library object by
	  choosing another mode, xfig would do one of two things:
	    1. tell user to cancel or finish the current operation, but there
	       was no way to do that
	    2. create the object that was being cancelled with extremely large,
	       negative coordinates
	o Picture Reread button was active before file was read the first time
	o Rereading picture in edit popup produced bad colors
	o When using multiple copies of an imported picture, h/w ratio was not
	  computed for copies
	o Importing PCX images were incorrect when bytes per line different from
	  width*bpp
	o When passed a filename containing a directory name for a Fig object
	  library using -library_dir, and that directory only contains Fig files
	  and no subdirectories with Fig files, xfig segfaulted
	o Several checks for memory allocation failure added to the library
	  loading procs
	o Forgot to free allocated memory when return abnormally from loading
	  libraries
	o Path length check in loading libraries fixed
	o Missing include for put_msg prototype in e_measeure.c
	o Needed #ifdef for XtVersion in SmeBSB.c (X11R5 doesn't have
	  international fontset)
	o Added SIGPIPE signal to ignore in case an external program dies when we're
	  using pipes
	o Screen capture on an MSBFirst X server with 24/32 bits per pixel was
	  incorrect.
	o Importing any image file on such a server was incorrect (bytes/bits
	  reversed).
	o Reading GIF or PCX files on 24-bit server *and* on big-endian machine
	  (e.g. Sparcstation) resulted in bytes being swapped and funny colors
	o Could popup unit dialog when drawing/editing objects
	o Embedded whitespace in filenames in recently loaded files weren't
	  parsed properly (.xfigrc)
	o When pasting an object on the canvas, point positioning grid wasn't used
	o Bug when reading a compressed eps file (file handle was passed to open
	  proc instead of name)
	o Minor grid spec used twice instead of minor/major when passed to fig2dev
	o Fixed conversions of export/print grid values when switching to/from
	  metric, decimal or fraction
	o When loading or merging a file, xfig appended ".fig" to the name if
	  there wasn't ".fig" in the name. Now it only appends ".fig" if there
	  is no suffix (no ".").
	o When appending the ".fig" before the previous change, xfig would segfault
	o Libraries/Electronic/Schematic/transformer and transformer_ironcore
	  aligned to 1/16" grid
	o Bugs in indicator panel display of text flags, dimension line params
	  and arrow size params when cycling through settings with middle or
	  right mouse button
	o Bug in callbacks for dimension line checkboxes that select actual
	  length or user text
	o When exporting to Combined PDF/LaTeX it uses ".pdf" and ".pdf_t"
	  suffixes because LaTeX doesn't recognize ".pdftex" as a PDF file
	o Better clipping around arrowheads on thick lines (lines that are
	  thicker than the arrowhead is wide)
	o Checks for open splines of < 2 points when reading figure file and
	  removes them
	o Clicking middle mouse button after creating first point of closed
	  spline switched to freehand mode
	o Export panel sections would get messed up when changing export
	  languages
	o Now checks whether scrollbars support StartScroll before trying to use
	  it for the wheel scrolling.  When the Xaw widgets are compiled with
	  ARROW_SCROLLBAR, there is no such action.
	o pstex_t export lacked border option (-b) to align LaTeX text when
	  pstex figure specified border (also fixed in fig2dev)
	o Create one picture object with no filename, then create another and
	  xfig crashed
	o Some bugs when freeing dimension line components
	o Bad choices for grid dot spacing in metric mode in the 5mm grid, and
	  decimal inch mode in the 0.5 and 1.0 inch grids
	o -international flag missing from xfig.html and xfig.man docs
	o Added call to XsetLocaleModifiers() when initializing input method
	  (-international mode only)
	o xfig was limiting arrowhead lengths to 50 pixels instead of 50 inches,
	  and the width to 10 pixels instead of 10 inches.
	o edit panel for circles shouldn't have "angle" entry
	o edit panel wasn't allowing typing in of negative angles for text and
	  ellipses
	o Objects were sometimes drawn with a wild point when zooming
	o Full path was being added to default export filename and wasn't
	  changing when user changed directories
	o When drawing a box or rounded box with the "show line lengths" on, the
	  sizes were in Fig units (1200ppi) instead of user units.
	o Spacing cedilla (ISO 0xB8 / octal 270) was missing from CompKeyDB file
	o Changing the units in the popup edit panel for a text object caused a
	  segfault.
	o Rulers and grid didn't change scale when user scale was != 1.0.  Even
	  though the message window showed the correct user scale when drawing
	  objects, the rulers and grid still showed the unscaled values.
	o Axis lines through 0,0 now drawn after page border so it remains
	  visible when there is a grid
	o Segfault if current directory was deleted after starting xfig
	o Positioning grid was set to "ANY" when editing a compound object,
	  causing the original bounding box to be lost
	o Bug in arc drawing caused arcs to be drawn as circles at high zoom
	o Computing the area of a polygon larger than 38x38 inches overflowed
	  calculation
	o Bug in bounds calculation for ellipses and circles that increased
	  bounding box even with line width = 1
	o Limit on number of styles in a family wasn't checked
	o If all depths were turned off and any edit operation was attempted on
	  the canvas such as move object, delete object, xfig would hang,
	  searching for objects indefinitely.

----------------------------
Patchlevel 4 (December 2002)

SPECIAL COPYRIGHT NOTICE:

*********** THE FOLLOWING HAS BEEN SUPERCEDED BY THE ONE FOR 3.2.5 ***********
The xfig copyright has changed slightly since the previous version.
It now states that:

	Any party obtaining a copy of these files is granted, free of charge, a
	full and unrestricted irrevocable, world-wide, paid up, royalty-free,
	nonexclusive right and license to deal in this software and
	documentation files (the "Software"), including without limitation the
	rights to use, copy, modify, merge, publish and/or distribute copies of
	the Software, and to permit persons who receive copies from any such
	party to do so, with the only requirement being that this copyright
	notice remain intact.

The previous notice allowed the *selling* of xfig or any code in xfig. This is
not allowed now, unless xfig is simply included in a collection of programs
(e.g. on a CD) that you are selling.
*******************************************************************************

NEW FEATURES:

	o Binary RPM available for systems with rpm (RedHat Package Manager).
	o Examples moved to Libraries/Examples so they are installed in a
	  convenient place for viewing (via the library feature)
	o "Front" and "Back" labels in depth manager to show relative
	  positioning of depths on drawing.
	o The mu (micro) character is now entered using "Compose | u" instead
	  of "Compose / u"
	o If you wish to place a library object at the position it was
	  originally created, e.g. for laser printer labels, hold down the Shift
	  key and press mouse button 3 (`place at orign posn') to place it.
	o New URL for chemtool, a chemical structure editor:
	  http://ruby.chemie.uni-freiburg.de/~martin/chemtool/chemtool.html
	o The minimum and maximum depth of objects are shown in the edit panel
	  for compound objects
	o EMF (Enhanced Metafile) export driver (TransFig/fig2dev) based on CGM
	  driver. Converted by M. Schrick
	o SVG (Scalable Vector Graphics) beta driver (for TransFig/fig2dev) from
	  Anthony Starks with major improvements by Martin Kroeker
	  Some caveats when using Mozilla-SVG to view these:
	    1. the file must be exported with magnification = 6.6% (0.066 in
	       fig2dev) to scale to screen coords
	    2. the file suffix must be ".xml"
	o The xfig documentation is nearly entirely GIF-free (TM).  Only the
	  frames images use GIF because they use a transparent background, which
	  many browsers don't honor.  PNG is used for all other images.
	o Xfig reference manual now available in PDF besides html.  The English
	  version is in Doc/xfig_en.pdf and the Japanese in Doc/xfig_jp.pdf.
	  These are also available in the Help menu.
	o Dimension lines - Hold the shift key down while drawing a polyline,
	  and after specifying the two endpoints a "dimension line" is created,
	  which is actually a compound object containing the line drawn (with
	  arrowheads if auto arrow mode is on) in the current color, "tick"
	  lines at each endpoint, text showing the length of the line in the
	  current units, and a box around the text filled in the current fill
	  color.  If this compound object is rescaled or one or more endpoints
	  are moved, the actual length is recalculated and the text is updated.
	o New Xfig logo courtesy of Marc-Aurele Darche.
	o Can now paste text in text mode using Shift+Middle-mouse-button in
	  addition to F20 and Sun's Paste key (F18).
	o If xfig is compiled with #define WHEELMOUSE uncommented in the
	  Imakefile, the wheel may be used for several things (see html docs
	  under Miscellaneous/Wheel Mouse).
	o New grid/positioning option for inches mode: -grid_unit.  If the value
	  given is "1/10", "ten", "tenth", "1/10" or "10", (e.g. -grid_unit ten)
	  then the grid and point positioning is in decimal inches.  Otherwise
	  they are in 1/16 inch units (as before).  When in this mode, the grid
	  step sizes are 0.1, 0.2, 0.5 and 1 inch and the positioning steps are
	  0.05, 0.10, 0.2, 0.5, and 1.0 inch.
	o Background (-g to fig2dev) option for tk export honored now.
	o New command-line argument -correct_font_size (X resource
	  Fig.correct_font_size) to make xfig use real points for font sizes
	  instead of units of 1/80 inch.  xfig has always claimed that the font
	  size units are points (1/72inch), but in fact they were 1/80 inch.
	  This new option is not the default because it will break some figures
	  by making the text too large compared to other Fig objects, but it
	  will be the default in a future version.
	  The corresponding argument to fig2dev is -F (xfig automatically sets
	  this when calling fig2dev).
	o Added "Stop" button to stop loading library.
	o Much more efficient when copying large imported pictures - existing
	  pixmap is used instead of creating new one.  This also precludes the
	  need to remap colors when running out of colors when the colors are
	  identical.
	o When changing an attribute of an imported picture that doesn't change
	  the picture itself (e.g. depth), the pixmap is not regenerated,
	  therefore saving time.  The same is true when copying a picture.
	o New X resource Fig.ghostscript and command-line argument -ghostscript
	  by which you can tell xfig what your ghostscript is called (e.g. "gs"
	  or "gswin32").
	o Can now add ASCII (EPSI) preview to EPS export. See export panel.
	o Can now add monochrome or color TIFF preview to EPS export.  This is
	  needed by Microsoft Word, Powerpoint, etc. to display the EPS on the
	  screen. Select from the pulldown menu of export languages.  You must
	  have fig2dev 3.2.4 for these features. See export panel.
	o Translations of LATEX.AND.XFIG document into two popular Chinese
	  encodings (GB2312 and Big5).  These are called LATEX.AND.XFIG.zh_CN
	  and LATEX.AND.XFIG.zh_TW respectively.
	  From Mendel Chan
	o When text becomes too small to see (e.g. small zoom), xfig will
	  "Greek" it, meaning it draws a gray line segment for each word in the
	  string.
	o When resizing canvas to a smaller height, the number of buttons per
	  row of the mode (side) panel increases so that it doesn't protrude
	  into the indicator (bottom) panel
	o Smarter redraw when turning on depths from the depth manager.  If
	  depth N is turned on and there are no active depths < N, only depth N
	  is drawn - otherwise, the canvas is erased and the whole figure is
	  redrawn.
	o If the user's pointer (mouse) buttons are switched (usually 3 2 1)
	  xfig will automatically flip the mouse hints messages. This overrides
	  the -flipvisualhints command-line argument.
	o If the user clicks on or modifies an existing text, and presses
	  return, the new text on the next line will use the attributes of the
	  first text instead of the attributes from the indicator panel.
	o Note in README and Imakefile about not casually setting the DESTDIR
	  make variable.
	o Picture objects are drawn as filled gray boxes when their layer is
	  inactive in gray mode.
	o xfig no longer requires fonts that are named "-adobe-..." (e.g. for
	  RedHat systems with URW fonts).
	o Updating the attribute panel from a compound object will retrieve
	  (only) the smallest depth from the compound.
	o When scaling an object, the line thickness is no longer scaled with it
	o New measuring modes: angle, length, area and tangent. See Editing
	  section in html docs.  From Alex Durner.
	o New feature to add tangents and normal lines to curves.  See Editing
	  section in html docs.  From Alex Durner.
	o Splash screen on startup. Disable with -nosplash (resource Fig.splash).
	  Interior logo by  Marc-Aurèle Darche.
	o New command-line option -grid_color (resource grid_color) to set the
	  color of the canvas grid (default: red).
	o New option to print grid when exporting or printing (see printing/
	  exporting section in html docs).
	o When drawing an arc by specifying the center point, a circle is drawn
	  showing the radius of the arc as the user drags the mouse, then when
	  the first end point is clicked an arc is drawn as the mouse is dragged.
	  The user then clicks in the direction the arc should go, followed by
	  the final angle to complete it.
	o If the Ruler unit is Imperial (in), you may have xfig display
	  measurements using fractions where possible.  If a measurement can be
	  shown as an integer multiple of 64ths of an inch (or 32nds, 16ths,
	  etc.) it will show it as such (e.g. 3-5/64 in), otherwise a decimal
	  value will be shown (e.g. 3.085 in).
	o When opening a compound object, if the middle button us used to open
	  the compound, all other objects on the canvas are kept visible.
	  From Alex Durner.
	o When opening a compound object, the "point positioning" indicator is
	  enabled, allowing you to set the bounds of the compound according to
	  the indicator when you close the compound.
	o Zero-crossing lines on canvas have own command-line parameter
	  (-zero_lines) and resource (Fig.zero_lines) for setting color separate
	  from page border color.
	o Smooth factor when exporting to bitmap format is now a pull-down menu
	  with: No smoothing, Some smoothing, More smoothing.
	o When flipping compound objects with text, a vertical flip will now
	  shift the text to maintain its relative position to the other objects
	  in the compound and its angle is rotated by 180 degrees minus the
	  original angle.  This behavior will for example, keep the orientation
	  of a text inside a polygon consistent with the polygon.
	  A horizontal flip of a compound containing text will change the angle
	  in the same way.
	o Three-D borders for buttons, etc reduced from 2 to 1 pixel for "lean"
	  look (resource Fig*shadowWidth in Fig-color.ad).
	o Additional JPEG file format (EXIF) added for import. These usually
	  come from digital cameras.
	o Validation for integer spinners - doesn't allow non-numeric input when
	  typing in values directly.
	o When scaling an object, the scale factor is shown in the message.
	  window in addition to the width/height. From Alex Durner.
	o New url for pstoedit (mentioned in installation.html).
	o When picking points of an object at high zoom, the tolerance has been
	  reduced to make it easier to pick the correct point.
	o When "graying" inactive depths, the inactive objects are drawn first
	  followed by active objects ensuring visibility of active objects.
	o xfig now draws "grayed out" picture objects (inactive depth) as a gray
	  box with the filename only.
	o Line style in edit panel now shows graphic of style instead of
	  textual description.
	o Cap style in edit panel was inadvertantly left off open-splines.
	o Popup dialog to edit behavior of spline point now pops up near the
	  point being edited.
	o When cancelling drawing a picture object from the popup editor, the
	  empty object is removed rather than showing a <empty> in the box.
	o Pressing Return or Escape in popup message window will dismiss it.
	o In picture browser popup, double clicking or clicking and pressing
	  Return will apply the selected picture AND close the browser.
	o New popup query if updating the depth in a compound object would
	  result in any depth exceeding the maximum.  The popup gives the user
	  the option to cancel the depth update part.
	  From Marcus Eger
	o More consistent placement of Cancel/Ok/Set etc. buttons in dialogs.
	  Generally, the Cancel button is first followed by the others, and
	  where possible, they are at the bottom of the dialog.
	o More meaningful message "Cut buffer is empty" if there is no .xfig
	  file in the user's home directory.
	o New MetaPost driver for TransFig 3.2.4 supported.
	o New option for binary CGM export (must have TransFig 3.2.4 too). The
	  ralcgm program is required for this option.
	  See ftp://ftp.cc.rl.ac.uk/pub/graphics/ralcgm/
	o In popup edit panel for compound objects, one may easily shift a
	  compound object by changing either corner's x, y values and pressing
	  return or scale it by changing the width and/or height and pressing
	  return.
	o "condensed" alias for "narrow" fonts (urw changed their helvetica-
	   narrow to helvetica-condensed).
	o Pressing escape in a popup dialog will dismiss it.
	o Zoom/Unzoom (Shift-Z/z) changes zoom by a factor of 1.5 instead of
	  adding or subtracting 1 from the zoom value. Also, the zoom/unzoom is
	  centered on the canvas.
	o Exporting to JPEG doesn't require compiling with USE_JPEG defined in
	  Imakefile.
	o Minimum and maximum depths of objects in a compound are displayed in
	  popup edit panel.
	o Named styles where user can save attributes that are often used for
	  quick access.  For example, the user may want dashed, thick, red lines
	  often so he can save those attributes and call it (e.g.) "thickred",
	  and easily call it up later.  See the html docs in Main Menus (the
	  View/Manage Styles...) menu entry.

NEW LIBRARIES and Examples:

	o Poster advertizing German version of "Little Shop of Horrors" in
	  Libraries/Examples/poster.fig.  From Kai-Martin Knaak
	o Three new Examples from Carlo Kopp (in Libraries/Examples):
	   Python-4.fig  - RAFAEL Python 4 all aspect agile heatseeking missile
	   YF-23A.fig    - Development example of the USAF's Northrop-MDC YF-23A
	   tsr2-side.fig - Notional camouflages for BAC TSR.2 production aircraft.
	o Many new country flags in the Libraries/Flags directory. Now
	  organized by region of the world (e.g. Africa, Europe, MiddleEast).
	o New flags of Bosnia and Slovenia with vector coat of arms in
	  Libraries/Flags directory from Roman Maurer
	o New maps of Yugoslavia, Macedonia, Croatia, Bosnia-Herzegovina and
	  Slovenia (Libraries/Maps/Europe)
	o New maps of Russia, Kazakstan, Kyrgyzstan, Tajikistan, Turkmenistan
	  and Uzbekistan (Libraries/Maps/Asia)
	o New Avery label templates in Libraries/Labels directory, including a
	  CD label, Avery_5931, done by William Chimiak.
	o New Avery and PerfectData Corp CD label templates in Libraries/Labels
[--snip--]
