home *** CD-ROM | disk | FTP | other *** search
/ Stars of Shareware: Programmierung / SOURCE.mdf / programm / msdos / c / xv221src / changelo < prev    next >
Encoding:
Text File  |  1992-04-29  |  40.6 KB  |  1,010 lines

  1. Revision History
  2. ----------------
  3.  
  4. Rev: 4/28/92    (version 2.21)
  5. -----------------------------
  6. Since XDestroyImage() seems to fail to destroy the actual image data on
  7.     some systems, I've replaced all calls to XDestroyImage() with
  8.     xvDestroyImage(), which explicitly kills both the image data and
  9.     the image structure.
  10.  
  11. Added '-close' option (and 'autoClose' boolean resource) to toggle the
  12.     "automatically close all windows when you iconify the image window"
  13.     behavior.  By default, this behavior is turned *on*.
  14.  
  15. You can now specify just a width *or* a height in the '-geometry' spec.
  16.     The other dimension will be calculated to preserve the aspect ratio.
  17.  
  18. Makefile.std was *not* up to date.
  19.  
  20. Various prototype fixes, Imakefile changed, etc.
  21.                 (David Brooks  (dbrooks@osf.org))
  22.  
  23. Conflict with constant 'BITS' (defined in xvgifwr.c) on some systems.
  24.             (Bernd Mohr (mohr@immd7.informatik.uni-erlangen.de))
  25.  
  26. 'xwd.c' seems to have snuck into the 2.20 distribution.  It has been excised.
  27.  
  28. The '-expand' option didn't work with negative numbers, as it should.  Also,
  29.     '-e' didn't work, even though there are no other '-e*' options.
  30.                 (Marcel Wijkstra  (wijkstra@fwi.uva.nl))
  31.  
  32. Minor AIX tweakage
  33.  
  34. Some calls to rd_str() should have been rd_str_cl(), and other minor probs.
  35.                 (Andreas Stolcke  (stolcke@icsi.berkeley.edu))
  36.  
  37.  
  38. Rev: 4/24/92    (version 2.20)
  39. -----------------------------
  40. Enhancement:  In the color editor, you can now 'Set' the 'Reset' button,
  41.     as well as presets 1-4.  This is useful if you've like to temporarily
  42.     set your 'default' settings for the remainder of the current XV
  43.     session, without having to play around with 'xrdb'.  For example,
  44.     you might temporarily be using XV on a monitor with different 
  45.     color characteristics than the one you normally use.  You could 
  46.     deal with this problem by playing with the r,g,b graphs, and then,
  47.     once the image looks 'right' again, setting the 'Reset' button, so
  48.     that all subsequent images will have this same modification applied 
  49.     to them.
  50.  
  51. Enhancement:  The '-wait' option works better.  It now waits until the
  52.     image has been fully drawn before starting the timer.  Now, you're
  53.     guaranteed that your images will be up at least as long as you
  54.     specify with the '-wait' option (plus whatever time it takes to
  55.     load and prepare the next image for display).
  56.  
  57.     Also, you can now specify '-wait 0' to mean 'as fast as possible'.
  58.     Handy if you're doing the weather map trick described below.
  59.  
  60. Enhancement:  The '-visual' option seems to actually *work* now.  It only
  61.     'theoretically' worked before (read: "didn't work at all"), as my 
  62.     X server only supports one visual, making testing impossible.
  63.     Since then I've gotten my hands on a DecStation, which has an X 
  64.     server that supports several different 8-bit visuals.  It should
  65.     work with visuals of different depths, as well, but it might
  66.     not.
  67.  
  68. Enhancement:  All places in the code that were hard-coded to use the directory
  69.     "/tmp" (when creating temp files) now use the value of the environment
  70.     variable TMPDIR, if defined, and "/tmp" if not.
  71.  
  72. Added Feature: '-loadclear' command-line option (and 'clearOnLoad' boolean
  73.     resource) lets you turn on the clearing of the image window
  74.     (or root window) done whenever you load an image on a PseudoColor
  75.     (or Grayscale) display.  This clearing USED to be done by default, 
  76.     to hide    the temporary 'rainbow' effect caused when colormap 
  77.     entries are freed and reallocated.  This is no longer the case.
  78.     I've decided that I find the effect vaguely entertaining (something
  79.     to look at while waiting for the next image to load), and more 
  80.     importantly, if you have a series of images that use the same 
  81.     colors, you can now use    XV to animate them (albeit no faster than 
  82.     a frame every 1-2 seconds).
  83.  
  84.     Ferinstance, get the satallite radar images from vmd.cso.uiuc.edu,
  85.     (in the directory 'phil.515'), and run 'xv -wait 0 -wloop SA*'.
  86.     Just like the evening news!
  87.  
  88. Added Feature: There's now a 'compressed' checkbox in the Postscript window.
  89.     When enabled, XV will generate RLE-compressed Postscript files.  Also,
  90.     the images will be written as 8-bit data with a colormap.  The
  91.     practical upshot is that color PS files can now be *much* smaller.
  92.     (Resource name: 'pscompress', type: boolean)
  93.  
  94.     One note:  Compressed images may take considerably longer to print
  95.     than uncompressed images.  As an example, the default XV pic took
  96.     (on a LaserWriter II NTX):
  97.         Color, Compressed:    (87k)    4:00  (4 minutes, not hours!)
  98.         Color, Uncompressed:    (391k)    2:30
  99.         Gray,  Compressed:    (85k)    1:40
  100.         Gray,  Uncompressed:    (130k)     :20
  101.  
  102.     The lesson is: unless you're printing to a color printer, you're
  103.     probably best off sending uncompressed grayscale Postscript.
  104.  
  105. Added Feature: whizzo new 'Grab' command.  Lets you grab any
  106.     rectangular section of the screen into XV.  To use, click on
  107.     the Grab button (or type ctrl-G).  The display will beep, and
  108.     the cursor will change.  Press the LEFT mouse button and draw
  109.     a rectangle, or press the RIGHT mouse button to abort the
  110.     grab.  The grabbed portion of screen will be automatically
  111.     loaded into XV for manipulation.
  112.  
  113.     Alternately, you can click the MIDDLE mouse button on a window.
  114.     The window (and its frame) will be snarfed into XV.
  115.  
  116.     Used in conjunction with XV's extensive color manipulation thingys,
  117.     you can now figure out the 'perfect' colors for your xterms, icons,
  118.     xclocks, or any other thing you can get up on your X display.  Finally,
  119.     a replacement for the program 'pikapix' from the ol' X10 days!
  120.  
  121.     For what it's worth, the Grab command doesn't work on Mac's
  122.     running MacX in a 'rootless' mode, for semi-obvious reasons.
  123.         (idea from: Arvind Sabharwal (arvind@brutus.ct.gmr.com))
  124.  
  125. Added Feature:  XV can now read RLE files (Utah Raster Toolkit format).
  126.  
  127. Added Feature:  'HistEQ' button in Color Editor window.  Performs 
  128.     intensity histogram equalization on the CURRENTLY VIEWED
  129.     PORTION OF THE IMAGE.  Occurs between the colormap editor and the 
  130.     HSV modifier (in terms of the color editor data flow).  This
  131.     command has the general effect of balancing the overall contrast
  132.     of the image (increasing contrast on washed-out images, and 
  133.     decreasing the contrast    on overly-sharp images, so to speak...)  
  134.     It works best on grayscale images.  
  135.  
  136.     The keyboard equivalent is 'H' (capital 'h').
  137.  
  138. Change:    The 'MaxCn' (maximum contrast) button has been changed to a 
  139.     'Norm' (normalize) button.  It expands the intensity range of
  140.     an image so that the darkest pixels will be have an intensity
  141.     of '0' and the brightest pixels will have an intensity of '255'.
  142.     
  143.     This is *almost*, but not quite, what it used to do.
  144.     The keyboard equivalent is now 'N' (capital 'n').
  145.  
  146. Added Feature: You can now Load files from a pipe by having the first 
  147.     character in the Load box filename thingy be a '!' (or a '|').
  148.     For example, you can Load "! bggen -s 400 -w 400 0 0 255".  
  149.     XV will run the    specified command, saving its standard output to 
  150.     a file, and then load this file.  (The stdout produced must still 
  151.     be in one of the recognized image formats.)  You could use this get 
  152.     an image from a    video digitizer or scanner, assuming you have the 
  153.     appropriate filter program written.
  154.  
  155.     You can pipe multiple commands together, as well.  For example, 
  156.     you can Load "! xwd | xwdtopnm" to take a snapshot of a window
  157.     and display it, though given the new Grab command, this isn't
  158.     such a great example...
  159.  
  160. Change:    The 'Save to pipe' feature is now specified by starting the 
  161.     filename with *either* a '!' or a '|' character, to 
  162.     be consistent with the 'Load from pipe' command.
  163.  
  164.  
  165. Added Feature: exciting new 'zoom' and 'unzoom' commands!  To use
  166.     them, hold down the 'control' key, and move the mouse into the
  167.     image window.  A Left click will zoom in by a factor of two,
  168.     centered on the mouse position.  A right click will zoom out
  169.     by a factor of two (if possible), centered around the
  170.     currently displayed subimage.  These commands can easily
  171.     replace the Crop/UnCrop commands for casual users.
  172.             (idea from: Dan Zehme  (dan@mordor.webo.dg.com))
  173.  
  174. Added Feature:  'include preview' check box added to postscript dialog
  175.     box.  Let's you write ps files without the preview, to save
  176.     some space.  (resource name: 'pspreview', type boolean)
  177.     
  178. Added Feature:  all xv windows are closed if you iconify the image window
  179.     (or the controls window if you're in a 'root' display mode).
  180.     All closed windows will be reopened when you deiconify the image
  181.     window (or controls window).  One misfeature:  only the 'main'
  182.     xv windows (image, controls, info and color editor) will retain their
  183.     screen position.  The various 'pop-up' windows will not.  To be
  184.     dealt with at a later time.
  185.  
  186. Enhancement: Support for 4" x 5" and 35mm postscript film recorders added
  187.  
  188. Enhancement: Increased size of control window to make room for 
  189.     '24-bit conversion' menu button.  List now displays 11 names
  190.     instead of 9.
  191.  
  192. Enhancement: Hooked in the new version (3.0) of the TIFF library.
  193.  
  194. Bug fix:  more bug fixes to the 'slow' 24-to-8 algorithm
  195.  
  196. Bug fix:  if loading a truncated interlaced GIF file (not that I recommend it),
  197.     XV will no longer clear from the 'current line' to the bottom of the
  198.     image, which would overwrite valid image data
  199.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  200.  
  201. Bug fix:  memory leak in the '-slow24' code discovered and fixed.
  202.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  203.  
  204.  
  205.  
  206. Rev: 3/17/92    (version 2.12)
  207. -----------------------------
  208. Added Feature: 'save at normal size' checkbox in save window.  When
  209.     turned on, images will be saved at their normal, unexpanded
  210.     (and *unshrunk*) size, subject to the current cropping and
  211.     rotation.  Note: The Dither and Smooth commands operate on
  212.     expanded images.  (In fact running Smooth on a 1:1 image
  213.     should have no effect.)  AS SUCH, images saved at 'normal size' 
  214.     will be saved 'Raw'.  (Resource name: saveNormal  type: boolean)
  215.  
  216. Added Feature:  You can now change 24-to-8-bit algorithms 
  217.     (ie, quick24, slow24, best24) while running the program 
  218.     (via a pop-up menu button).
  219.  
  220. Added Feature: '-nolimits' option (and 'nolimits' resource).  If set, there 
  221.     are no limits on the size of the image (beyond the X-imposed 64K 
  222.     by 64K).  WARNING:  Be *very* careful when using this option and 
  223.     playing    with cropping, as it's dangerously easy to accidentally 
  224.     generate a HUGE image, and crash XV, the host machine, your X server, 
  225.     or all three.  USE AT YOUR OWN RISK!
  226.                 (Tero Kivinen  (kivinen@joker.cs.hut.fi))
  227.  
  228. Enhancement: X images (on 8-bit displays) are now generated so that
  229.     scanlines are a multiple of 32 bits long.  This should avoid 
  230.     problems with certain broken X libraries and/or servers that 
  231.     weren't doing the image format translation correctly.
  232.                  (Jeff Coffler  (coffler@jeck.amherst.nh.us))
  233.  
  234. Enhancement: Changed scrollbar behavior: Now, when you drag the
  235.     indicator, the list that the scrollbar controls is updated
  236.     while you drag.
  237.  
  238. Enhancement: when choosing a new directory (in the save menu), xv now remembers
  239.     the 'suggested' filename to save under, instead of clearing the 
  240.     text entry doodad.
  241.  
  242. Enhancement: Upped maximum number of files in control window list (and
  243.     therefore, on the command line) to 4096 (from 1024).
  244.  
  245. Enhancement: Hooked in the new version (3.0) of the JPEG libraries.  Most
  246.     relevant change: when loading JPEG files ONLY, the 'quick' and
  247.     'slow' 24-to-8    algorithms are now performed by the JPEG
  248.     software.  They seem to be every bit as good or better than
  249.     the XV algorithms.  The 'best' algorithm still falls through
  250.     to using the ppmquant-based algorithm in XV.
  251.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  252.                 
  253.  
  254. Change:    by default, the 'keepAround' flag is now set to 'true'.
  255.     Now, xv will hang around if you delete the last file in the
  256.     controls list.  (-keeparound toggles this flag on and off, and
  257.     the keepAround resource still behaves the same way.)
  258.  
  259.  
  260. Bug fix:  Compound resources (eg 'xv.preset1.satval') weren't getting properly
  261.     set on certain systems.
  262.                 (Dean Elhard  (elhard@system-m.za05.bull.com))
  263.                 
  264. Bug fix: XV will now (potentially) run 'better' under DXWM.
  265.  
  266. Bug fix: 'Reduced Color' images weren't saving as such in either the
  267.     PPM or TIFF formats.  (They won't in JPEG, either, but trust
  268.     me, you don't want to save reduced color images in the JPEG
  269.     format...)
  270.  
  271. Bug Fix:  numerical inaccuracies in HSV modification part of color
  272.     editor were causing certain colors to be lost  (eg, an input of
  273.     (254,254,254) was coming out (253,253,253), even when everything 
  274.     was set up to do a 1:1 mapping.)
  275.  
  276. Bug Fix:  minor memory leak in KillOldRootInfo() fixed.
  277.  
  278.  
  279.  
  280. Rev: 3/4/92    (version 2.11)
  281. -----------------------------
  282. Problems with Imakefile fixed.        (David Brooks  (dbrooks@osf.org))
  283.  
  284. Problems with SetISTR() function declaration fixed.
  285.                     (David Brooks  (dbrooks@osf.org))
  286.  
  287. Compiler noise shut up        (Phil Karlton  (karlton@fudge.asd.sgi.com))
  288.  
  289.  
  290. Rev: 2/26/92   (version 2.10)
  291. -----------------------------
  292. Generate updated documentation, this time on a Mac running System 7.  The
  293.     generated postscript *may* be cleaner.  I hope...
  294.  
  295. Incorporated Anthony Datri's PDS/VICAR file reading code
  296.  
  297. Added '-rv' option (and 'reverse' resource).  Displays 'negative' images
  298.     (white becomes black, black becomes white, and colors do 
  299.     interesting things).  
  300.  
  301. Bug fix:  shifted arrow keys (for adjusting cropping rectangle size) didn't
  302.     work on Sparcstations running OpenWindows.
  303.  
  304.  
  305.  
  306. Rev: 2/22/92   (version 2.06)
  307. -----------------------------
  308. Added whizzo new colormap editing feature.  Click on a color cell with the 
  309.     left mouse button.  Now click on another color cell with the middle
  310.     mouse button.  All colorcells in between these two colorcells will
  311.     be interpolated between these two colors.
  312.  
  313.     For example, view the 'default' image by just running 'xv' without
  314.     any options.  Open the color editor window, left-click on the first
  315.     colorcell, and turn it 'red'.  Left-click on the 64th colorcell
  316.     (the rightmost cell on the last complete line of the colorcell grid),
  317.     and turn this colorcell yellow.  Now, middle click on the first
  318.     colorcell.  Voila!  Niftily interpolated reddish yellows.  Neato!
  319.  
  320. Added 'reload on signal' feature.  If you send the XV process a 'QUIT' signal
  321.     ('kill -QUIT <pid>', or 'kill -3 <pid>' on most systems), the program
  322.     will reload the currently selected file.  (The one that is currently
  323.     highlighted in the xv controls window filename list.)  This behavior
  324.     is exactly the same as hitting '<return>' in the xv controls window.
  325.     If XV is currently in a state where hitting '<return>' in the 
  326.     controls window won't load an image (ie, some pop-up dialog box is
  327.     grabbing all such events), then sending this signal won't work either.
  328.  
  329.     Note:  it also won't work if the current file was read from <stdin>
  330.  
  331. Changed way 'uncrop' works to limit 'drifting' of windows when cropping and
  332.     uncropping.  Also, puts window back where it belongs when you load
  333.     a new image.
  334.  
  335. When cropping, Raw/Dithered/Smooth status of image will remain the same.
  336.     When uncropping, however, it will revert to 'raw', given how long
  337.     the dither/smooth operations can take on a potentially large image.
  338.  
  339. Now tracks x,y coordinates of handles in the 'graph' windows of the color
  340.     editor window, for precise placement.  Also, you can now move a
  341.     handle through all 256 x and y positions, not just the 'even' values.
  342.  
  343. Bug fix to 24-to-8 code.  (Would crash on a 1-bit display.)
  344.  
  345.  
  346.  
  347.  
  348. Rev: 2/13/92   (version 2.04)
  349. -----------------------------
  350. tracked pixel values strings are now put in the 'cut buffer' with a trailing 
  351.     '\n' character
  352.  
  353. '-black' and '-white' options now affect how all 1-bit b/w images are 
  354.     displayed, no longer just used in conjunction with '-ncols 0'
  355.  
  356. Added command line options '-quick24', '-slow24', and '-best24' to select
  357.     different 24-to-8 conversion algorithms.  'slow24' is the default.
  358.     (Also, 'quick24' and 'best24' boolean resources)
  359.  
  360. Added the 'ppmquant' 24-to-8 bit algorithm ('-best24' option).  Note that 
  361.     this algorithm is *much* slower than the so-called '-slow24' algorithm.
  362.     The major difference is that this algorithm will produce good-looking
  363.     undithered images, whereas the 'slow24' algorithm dithers.
  364.  
  365. Fixed various bugs in the '-slow24' 24-to-8 bit algorithm.
  366.  
  367. Added '-cecmap' option (and 'ceditColorMap' resource) to specify whether or 
  368.     not to install the image's colormap in the color editor window
  369.  
  370. TIFF i/o routines added        (Sam Leffler  (sam@sgi.com))
  371.  
  372. Added a 'browse' button in the Load window.  Lets you change the 'browse mode'
  373.     interactively, while the program is running.  (See '-browse' option
  374.     below.)
  375.  
  376. Added 'autoApply', 'displayMods' and 'autoReset' resources to control initial
  377.     settings of respective checkboxes in the color editor window.
  378.  
  379. Program is less likely to gratuitously clear the image/root window if you are
  380.     on a non-PseudoColor/GrayScale display
  381.  
  382. increased size of 'OutCode[]' array in gif reader.
  383.                 (Rolf Mayer  (rz90@rz.uni-karlsruhe.de))
  384.  
  385. load/save window used to crash if you had a directory with 'too many' files
  386.                 (Craig McGregor (CRAIG@csdvax.csd.unsw.EDU.AU))
  387.  
  388.  
  389. Rev: 1/24/92  (version 2.01)
  390. -----------------------------
  391. Added '-crop' option (and 'autoCrop' resource) to do the 'autocrop' command
  392.     automatically whenever an image is loaded.
  393.  
  394. Added '-browse' option (and browseMode resource).  Keeps the Load window
  395.     from being closed after succesfully loading a file.  
  396.  
  397. Added '-nostat' option (and 'nostat' resource) to speed up Load/Save
  398.     windows.  Prevents the program from doing 'stat()' calls when you
  399.     change directories.  (Useful for systems with a lot of remote
  400.     files, where doing the stat() calls takes 'too long')
  401.     Downside:  it won't be able to mark directories with a 'folder'
  402.     icon, as it won't *know* that they're directories.
  403.  
  404. added '-noresetroot' option (and 'resetroot' resource).  Let you turn off
  405.     the 'clear the root when switching from a root mode back to 
  406.     window mode in the display modes menu' behavior.  Useful for checking
  407.     your cropping, if you're working on a 'mirrored' root background
  408.     (or something)        (David Elliot  (dce@smsc.sony.com))
  409.  
  410. added a 'rescan' button in the Load and Save windows.  Rescans the current
  411.     directory.
  412.  
  413. fixed up GIF89 parsing somewhat.
  414.  
  415. fixed bugs in xvAllocColor() that would show up if running XV on a TrueColor
  416.     display.
  417.  
  418. PostScript files written in B/W Stipple weren't correct
  419.             (Peter Glassenbury  (pete@cosc.canterbury.ac.nz))
  420.  
  421. SortColormap() function in xvcolor.c sped up 
  422.             (Dave Jones  (jonesd@kcgl1.eng.ohio-state.edu))
  423.  
  424. fixed problem with 'cropping rectangle' not being drawn correctly.
  425.  
  426. Loads current directory only when opening the Load/Save windows, not 
  427.     when the program starts up.  This is to improve startup time.
  428.  
  429. Reloads current directory when you do a 'Delete file' command, just in
  430.     case you deleted a file in the current directory.
  431.  
  432. 'hints' handling improved.  When controls/info/coledit windows are closed
  433.     and reopened, they reappear where they *were*, not where the 
  434.     original geometry spec put them.
  435.  
  436. FREAD and FWRITE macros in jinclude.h renamed, to avoid conflicts.
  437.  
  438. problems with 'XLookupString()' on VMS and AIX fixed
  439.                 (Dave Jones  (jonesd@kcgl1.eng.ohio-state.edu))
  440.  
  441. patches for Sequent machines    (Scott Erickson (sources@sherlock.ics.uci.edu))
  442.  
  443. Added 'fsQuick' code.  Dithers (on 1-bit displays) 2 to 3 times faster
  444.     than the old code.  Looks about as good.
  445.                 (David B. Rosen  (rosen@cns.bu.edu))
  446.  
  447. code for 2-bit displays (so to speak :-) added
  448.                 (Marc Kossa  (M.Kossa@frec.bull.fr))
  449.  
  450. bug in parsing '-dither'/'-display' fixed
  451.                 (Nigel Pearson  (nigel@socs.uts.edu.au))
  452.  
  453. Fixed crash if you hit 'return' while xv was running with no file names.
  454.  
  455. fixed potential memory leak on systems where XDestroyImage() doesn't
  456.     free the image data, only the structure.
  457.  
  458. fixed '-fixed' option
  459.  
  460. fixed bogus Macintosh prolog file in PS documentation.
  461.  
  462. 8-bit characters in PS documentation turned into properly-escaped
  463.     7-bit characters.    (Reg Clemens  (clemens@plk.af.mil))
  464.  
  465. minor mods for RS6000        (Tom McConnel  (tmcconne@sedona.intel.com))
  466.  
  467. new (still unsupported) version of VICAR/PDS file handler added to 
  468.     unsupt/ directory    (Anthony Datri  (datri@concave.convex.com)
  469.  
  470. fixed segmentation fault in openPic()    (Jimmy Aitken  (jimmy@pyra.co.uk))
  471.  
  472. fixes for Pyramid BSD machines        (Jimmy Aitken  (jimmy@pyra.co.uk))
  473.  
  474. fixed 'tolower' bug in lower_str function (Rich Thomson (rthomson@dsd.es.com))
  475.  
  476. patches for AUX systems
  477.  
  478. some ANSI C complaints quieted            (Jamie Zawinski (jwz@lucid.com))
  479.  
  480. fixed WM_DELETE property problems      (Jamie Zawinski (jwz@lucid.com))
  481.  
  482. Changed occurrences of string 'basename' to 'basefname' to avoid conflict on
  483.     certain systems, and fixed a bug in rd_int()
  484.                     (David Elliot  (dce@smsc.sony.com))
  485.  
  486. fixed bug that could cause window to move bizarrely on a 'Max Size' command
  487.  
  488. make 'clean' dependancy added to Imakefile  
  489.             (Rainer Klute (klute@irb.informatik.uni-dortmund.de))
  490.  
  491.  
  492.  
  493.  
  494. Rev: 1/2/92  (version 2.00)
  495. -----------------------------
  496. *** SUN Rasterfile support         (Dave Heath  (heath@cs.jhu.edu))
  497.  
  498. fixed unclosed comment in xv.h       (Paul Close (pdc@sgi.com))
  499.  
  500. fixed infinite loop in Imakefile   (Kjetil Jorgensen  (jorgens@lise.unit.no)
  501.  
  502. fixed problems in Imakefile (bitmaps.h wasn't being rebuilt)
  503.                 (Jonathan Kamens  (jik@pit-manager.mit.edu))
  504.  
  505. additional bug fixes/workarounds for 24/32-bit TrueColor displays
  506.                 (Dave Gregorich (dtg@csula-ps.calstatela.edu))
  507.  
  508. include string.h or strings.h based on 'SYSV' flag
  509.                 (Kevin Brown  (brown@hpbsm15.boi.hp.com))
  510.  
  511. bogus command line parsing ('-autogamma' wouldn't work)
  512.                 (Doug Washburn  (washburn@hpmpea2.cup.hp.com))
  513.  
  514. fixed 4-bit X code to work on MSBFirst machines
  515.                 (Stefan Esser  (se@ikp.Uni-Koeln.DE))
  516.  
  517. mods for HPUX 7.0        (Jan D.  (jhd@irfu.se))
  518.  
  519. added window classes 'XVroot', 'XVcontrols', 'XVdir', 'XVinfo', and 'XVcedit',
  520.     so Motif users can do things like this:
  521.  
  522.     Mwm*XVroot*clientDecoration:            none
  523.     Mwm*XVcontrols*clientDecoration:        -resizeh
  524.     Mwm*XVdir*clientDecoration:            -resizeh -maximize
  525.     Mwm*XVcedit*clientDecoration:           -resizeh -maximize
  526.     Mwm*XVinfo*clientDecoration:            -resizeh -maximize
  527.  
  528.     Also, WM_DELETE_WINDOW is now set up in the WM_PROTOCOLS 
  529.     property, allowing the 'close' menu selection under MWM to
  530.     close an XV window without terminating the application.
  531.                 (Jan D.  (jhd@irfu.se))
  532.  
  533. slow 24-to-8 conversion was moving the image down 1 scan-line
  534.                 (Satoshi Asami  (asami@is.s.u-tokyo.ac.jp))
  535.  
  536. mods for MIPS machines      (David Boulware  (dgb@landau.phys.washington.edu))
  537.  
  538. Ability to LOAD pictures that weren't specified on the command line
  539.  
  540. fixed bug in CheckForConfig()
  541.  
  542. twm workaround from patchlevel 2 now only turned on if '-twmkludge' option is
  543.     specified.  Was causing problems on OpenLook 2.0 systems
  544.  
  545. directories and symbolic links are now sorted together at the top of
  546.     the 'xv directory' list
  547.  
  548. fixed crashes when 'AutoCropping' in conjunction with '-root' option
  549.  
  550. file format/color buttons in Directory window are now set whenever an image
  551.     is loaded.  (Set to the format/color of the loaded image.)
  552.  
  553. clicking anywhere inside the Info box will now close it
  554.  
  555. added support for up/down arrows, page up/down, home, and end keys when
  556.     mouse is in control window or directory window (for operating
  557.     the scrollable list thingy)
  558.  
  559. changed 'Return' key binding to mean 'display currently selected picture'
  560.     rather than 'Next'
  561.  
  562. added binding of Tab key to 'Next' function
  563.  
  564. '-wait' now waits until picture is fully up on screen before starting timer
  565.  
  566. '-wloop' option added.  Causes '-wait' slideshow to loop at end
  567.  
  568. added 'hagan-style' tiling on the root window.  '-root', '-center', and
  569.     '-rpat 0'  (the default) will now draw an image centered on the
  570.     root window, with images going off the screen in all 4 directions
  571.  
  572.     (Unlike 'normal' ('-root' only) tiling, which has one image
  573.     pinned in the top-left corner of the screen, and subsequent
  574.     images going off the screen ONLY on the bottom and right sides)
  575.  
  576. added '-maxpect' option.  (An abbreviation for '-center -fixed -max')
  577.     makes the image as large as possible, without changing the
  578.     aspect ratio.  Only relevant when used in conjunction with 
  579.     '-root'.  (When not using '-root', both '-max' and '-maxpect' do
  580.     the same thing (as large as possible without changing the aspect).
  581.     When USING '-root', '-max' makes the image the size of the screen,
  582.     in all likelyhood changing the aspect ratio)
  583.  
  584. added '-olwm' option (and xv.olwm resource) for people using Sun's OpenLook
  585.     window manager.  Makes the window behave correctly when resized via
  586.     any of the xv resizing commands.
  587.  
  588. added new, slicker-looking icon.  The old one was outside Motif's accepted
  589.     range of icon sizes.
  590.  
  591. SMOOTHING controls (Smooth, Dither, and Raw buttons) added
  592.  
  593. added '-cursor' option (and xv.cursor resource).  Allows you to pick a 
  594.     different cursor for the image window (instead of the 
  595.     default crosshair cursor)
  596.  
  597. various modifications to work somewhat better with tvtwm (or other
  598.     virtual window managers)
  599.         Hitoshi Saji    saji@is.s.u-tokyo.ac.jp
  600.         Tetsuya Ikeda    tetsuya@is.s.u-tokyo.ac.jp
  601.         Satoshi Asami    asami@is.s.u-tokyo.ac.jp
  602.  
  603. fixed up some multiple-redraw bugs, for improved speed
  604.  
  605. Added spiffy 'hue' and 'saturation' dials to cedit box
  606.  
  607. New format for '-GAMMA' command line option and gamma resources.  Fully
  608.     specifies state of gamma controls, including 'lines/spline' and
  609.     'rgb/hsv' modes
  610.  
  611. Improved 'undo' handling in Gamma box.
  612.  
  613. Added 'reduced' color save.  Used in conjunction with the '-nc' command
  614.     line option.  Saves the image more-or-less 'as shown', rather than
  615.     "as it's supposed to be".  For example, you can now save bizarrely
  616.     stippled pictures by doing something like '-nc 0 -wh red -bl blue'
  617.     on the command line, and then saving the image in 'reduced color'.
  618.  
  619.  
  620. added '-adither', '-asmooth' options (and 'xv.autoDither', 'xv.autoSmooth'
  621.     resources) to automatically dither or smooth the image upon 
  622.     loading it.  Mainly for use the case where you want XV to 
  623.     load an image onto the root window and go away without any user
  624.     intervention.  (Like you might put in a startup script.)
  625.  
  626. added some X error handling so that XV doesn't blow up (ungraciously) when
  627.     you're using '-root' on an X terminal that doesn't have enough
  628.     memory to do a full-screen root image
  629.  
  630. code reorganization:  xv.c and xvmisc.c have been split into (xv.c, xvevent.c,
  631.     xvroot.c) and (xvmisc.c, xvimage.c, xvcolor.c, xvsmooth.c) 
  632.     respectively.  The files were getting annoyingly large.
  633.  
  634. added colormap editing capabilities to the gamma box
  635.     Colors can be edited in either HSV mode or RGB mode
  636.     You are modifying the original colormap of the image, BEFORE
  637.         the '-mono' or '-rv' options are applied, BEFORE
  638.         any GAMMA correction is applied, and before it's
  639.         determined how to get the image on the screen.
  640.         As a result, it's best to edit colors when the GAMMA
  641.         controls are set to 'Linear'
  642.     You can select the color to be edited by clicking in the colormap
  643.         area of the GAMMA box, or by clicking in the image window
  644.         (in which case the color selected will match the last pixel
  645.         value you displayed)
  646.     Using '-rw' mode will generally speed things up, but isn't
  647.         necessary.
  648.  
  649. added colormap 'grouping'.  Use Button3 to add/delete color cells from the
  650.         current group.  Hold shift key down and the image regeneration
  651.         will be delayed until you let go of the shift key.  (normally
  652.         the image would be redrawn every time you released Button3.)
  653.         This allows you you quickly group multiple pixels.
  654.  
  655. added 'cut buffer' usage.  Whenever you track pixel values (by clicking the
  656.     left button in the image window), the last pixel values are put in 
  657.     the X cut buffer, so that you can paste them into your own program,
  658.     an xterm window, or whatever.  Useful if you're using XV to choose
  659.     'points-of-interest' to be used as input to another program.
  660.  
  661.     Also, if you click on the gamma values (above the graph in the 
  662.     gamma window), those values will be put in the cut buffer as well.
  663.     (Handy for setting default values for the Gamma resources.)
  664.  
  665. added a slightly-improved 'cropping' rectangle.  Should show up better on some
  666.     pictures.
  667.  
  668. added hsv pixel display.  When tracking pixel values in the image window
  669.     (with the left mouse button), the values will either be displayed
  670.     as R,G,B components (0-255), or as HSV components (0-359, 0-100, 0-100)
  671.     This is based on the setting of the HSV/RGB switch in the Gamma box.
  672.  
  673. added a 'Randomize Colors' button.  (keyboard equiv: 'R').
  674.     Causes the entire colormap of the current picture to be
  675.     randomized.  Groupings *will* be respected, however.  (ie, all pixels
  676.     in a group will still have the same color, albeit a new one).  For
  677.     amusing effects, do some by-hand color reduction (by grouping all
  678.     similar colors), then do the randomize function.  
  679.  
  680. added an 'Undo All' button in the Gamma box.  Undoes all changes made to the
  681.     image's colormap and clears all groupings.
  682.  
  683. added '-hsv' and '-rgb' switches (and xv.hsvmode resource (boolean)) to
  684.     allow user to set initial hsv/rgb mode.  By default, program uses
  685.     RGB.
  686.  
  687. fixed 'shift key' bug with regards to entering filenames in dir window
  688.  
  689. 'enter' in file i/o window now opens the currently selected directory
  690.  
  691. fixed bugs on 1-bit displays (fish cursor didn't flap during re-ditherization,
  692.     CMap wasn't properly refreshed after loading new pic)
  693.  
  694. Smooth/Dither now sets 'Current Size' RButt in file i/o box.  (Need to save
  695.     at current size to save 'smoothed' picture.)
  696.  
  697. BadAccess errors cause by XFreeColors are now ignored, as this is simply a 
  698.     sign of a busted X server, and happens when multiply-allocated 
  699.     colors are freed more than once.  (like they're supposed to be)
  700.     Should make '-bfc' option obsolete.
  701.  
  702. Current Size RButt ripped out.  (Always saves at current size)
  703.  
  704. flapping fish cursor added during PBM/PGM/PPM file i/o
  705.  
  706. created GRAF type
  707.  
  708. MASSIVE modifications to GAMMA box
  709.  
  710. Gamma box renamed 'Color Editor' box ('cedit')
  711.  
  712. Added direct numeric gamma input to GRAF boxes
  713.  
  714. Created HDIAL controls
  715.  
  716. Changed non-range HDIAL to be a hue/saturation control
  717.  
  718. Created CBUTT check boxes
  719.  
  720. Added 'drag the whole range around' feature in range HDIALs
  721.  
  722. Added -nopos, -fgeom, and -fmap command line options (and resources)
  723.  
  724. Fixed 'crop near corner' graphics bug
  725.  
  726. Fixed multiple redraw bug, with any luck.
  727.  
  728. Added '-2xlimit' option and resource.  Allows the image window to be larger
  729.     than the screen (up to 2x).  *NOT* recommended unless your WM
  730.     is capable of operating windows without visible borders.  (ie, you'll
  731.     need some meta-mouse-button action, ala twm/uwm...)
  732.  
  733. Added rudimentary GIF89 reading.  (Jon Brinkmann, jvb7u@astro.Virginia.Edu)
  734.  
  735. Changed ISTR_INFO to be more to Hagan's liking.  
  736.     (eg  "320x200 GIF87.  Got all 37 colors.")
  737.  
  738. Fixed some probs in xvsunras.c
  739.     (didn't understand RT_FORMAT_RGB, and RT_BYTE_ENCODED 8-bit
  740.      rasterfiles didn't load correctly, nor did it handle odd-width
  741.      24-bit images correctly)
  742.  
  743. Added POSTSCRIPT OUTPUT and PostScript Box  (7/6/91)
  744.     Drag the image window around on the page with the mouse.  The scale
  745.     controls are used for stretching.  Note:  if you use the arrow keys
  746.     (regular and shifted), you can get precise positioning control.
  747.  
  748. Added GIF89 aspect ratio handling, warning message about skipped extensions,
  749.     PlainText block handling (doesn't do anything with it)
  750.  
  751. Ripped out the '-fish' option and related code.  Never worked right anyway.
  752.  
  753. Added ability to type long strings in 'filename' field of dir box.
  754.  
  755. Split 'file i/o' button into two buttons 'Load' and 'Save'.  Directory box
  756.     is now either a 'Load box' or a 'Save box', depending.  (^L and ^S
  757.     are the accelerators).
  758.  
  759. Added ability to type pathnames in 'filename' field.  And 'cd-ing' to different
  760.     directories directly without going through pesky UI.
  761.  
  762. Added 'popup' windows.  (The computer seems to be on fire.  <Ok> )
  763.  
  764. Stretched ctrlW so that 'helvetica' font would still fit (Ultrix 4.2 doesn't
  765.     include 'lucida' still...)
  766.  
  767. Added 'close' (via mwm menu) handling to PostScript window and PopUp window.
  768.  
  769. Added wait cursor during directory-reading (whenever you change directories)
  770.  
  771. Fixed PostScript file output (to have correct comments)
  772.  
  773. Added 'maxpect' button in PS window.
  774.  
  775. Hooked up remaining buttons in ColEdit window  (undo, redo, 
  776.     brite, dim, sharp, dull)
  777.  
  778. Got rid of 'recolor' operations when non-visible changes made to Graf's
  779.     (changes of less than '2' aren't visible due to coordinate halving)
  780.  
  781. Added 'max contrast' button to gamma window
  782.  
  783. Added 'C' and 'R' keyboard equivs for 'MaxCnt' and 'Reset' respectively
  784.  
  785. Added 'default' picture (xvdflt.c)
  786.  
  787. Added 'Flip H' and 'Flip V' buttons ('h' and 'v' keyboard equivs)
  788.  
  789. Redesigned ctrl window somewhat
  790.  
  791. When you 'Load' files (via the Load dialog box), the file names are stuck
  792.     in the 'ctrlW' list for E-Z Re-Viewing...
  793.  
  794. Added ability to 'reload' current picture (by double clicking on its entry
  795.     int the ctrl window list)
  796.  
  797. Added 'Delete' command.  ('^D' keyboard equiv)
  798.  
  799. Mods to work (better) on Apollo systems
  800.                 (Robert Goodwill (robert@earth.cs.jcu.edu.au))
  801.  
  802. Added support for 16-bit displays
  803.                 (David Elliot    (dce@smsc.sony.com))
  804.  
  805. Improved 24-to-8 color compression routines
  806.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  807.  
  808. Improved color selection algorithm
  809.                 (Tom Lane     (Tom.Lane@g.gp.cs.cmu.edu))
  810.  
  811. Flag resources now accept 'on', '1', 'true', 'yes' in either u/l case
  812.                 (Chris Weikart   (weikart@prl.dec.com))
  813.  
  814. Fixed potential overflow bug in linear interpolation code
  815.                 (Chris Weikart   (weikart@prl.dec.com))
  816.  
  817. Added Motif-Style 3-d buttons
  818.  
  819. Added 'Auto-Reset' check box in ColEdit window
  820.  
  821. Optimization to ColEdit:  if changing a control hasn't actually
  822.     affected the 'desired colormap', don't bother applying the change
  823.  
  824. Changed 'graf' controls:  you can now hold down the shift key and modify them
  825.     to your hearts content.  The image is not actually recomputed until
  826.     you let go of the shift key.
  827.  
  828. Added '-hi' and '-lo' options ('highcolor' and 'lowcolor' resources) for 
  829.     setting the 'other' two colors on the buttons.
  830.  
  831. Added '-v' option ('visual' resource) to allow the user to force XV to use a
  832.     specific visual type, rather than the server default.
  833.  
  834. Added gamma resources.  Hooked up 'Get Resources' button (copies current
  835.     gamma settings into the cut buffer)
  836.  
  837. Ripped out '-tile', '-center', and '-rpat' options.  Replaced them with 
  838.     '-rmode' option ('rootMode' resource)
  839.  
  840. Added mirrored tiling and integer mirrored tiling root modes.
  841.  
  842. PopUp window now pops up with the right-most button centered under the mouse,
  843.     rather than in the middle of the screen.
  844.  
  845. Added '^D' accellerator key (for 'Disk File') in the 'Delete What' PopUp box.
  846.  
  847. Changed '-asmooth' and '-adither' to '-smooth' and '-dither', respectively.
  848.  
  849. Added stricter command line argument matching.  '-snausage' no longer would
  850.     match the '-s' flag.
  851.  
  852. Changed way '-expand' (and 'expand' resource) works.  Now takes floating
  853.     point number.  For backwards compatibility, negative numbers are 
  854.     still treated as reciprocals.  (ie, both '-2' and '.5' will halve 
  855.     the image)
  856.  
  857. Created 'MBUTT' pop-up menu widget.
  858.  
  859. Added 'Display Modes' popup button.
  860.  
  861. Fixed bug when using '-perfect'.  The XCopyColormapAndFree() function had the
  862.     rather undesirable side effect of getting rid of the allocated
  863.     colors used for the various windows, etc. (ie, more than the
  864.     image colors)
  865.  
  866. Made 'Hagan-Style' tiling (aka, Centered Tiling) much more efficient
  867.                 (Robert Potter  (rpotter@grip.cis.upenn.edu))
  868.  
  869. Made the 'directory' listing in the load/save box use an MBUTT.
  870.  
  871. Added JPEG support.        (Markus Baur  (s_baur@iravcl.ira.uka.de))
  872.                 (and, of course, the Independent JPEG Group)
  873.  
  874. Added '-keeparound' flag (and 'keepAround' resource).  By default, if you
  875.     'delete' the last file remaining in the ctrl window list, 
  876.     the program will auto-exit.  This option overrides that behavior.
  877.  
  878. Ripped out '-fgeom' and '-fmap' options (and 'fileGeometry' resource).
  879.     Load/Save boxes now come up wherever the mouse is.
  880.  
  881. Wrote OpenOutFile() and CloseOutFile() routines to unify redundant code
  882.     in 'DoSave()' and 'writePS()'
  883.  
  884. Added 'piped' output.  (ie, save file "| lpr")
  885.  
  886. Added 'Alert' boxes (button-less PopUp's)
  887.  
  888. Bug fixes when loading/saving '~' files
  889.  
  890. Fixed PS output to be Encapsulated PostScript compatible
  891.  
  892. Added a faked 'colorimage' procedure for grayscale PS printers.
  893.     (Color postscript files will print on non-color printers, albeit in
  894.      grayscale.)
  895.  
  896. New Window positioning code.  Should work for (nearly) all WMs.
  897.                 (Matthew Stier  (matthew@sunpix.East.Sun.COM))
  898.  
  899. Automatically smooths images that were 'shrunk' (2x, 4x, etc...)
  900.  
  901. Bug fixes to the JPEG i/o code.    (Tom Lane  (Tom_Lane@G.GP.CS.CMU.EDU))
  902.  
  903. Fixed problem in xv24to8.c with the Floyd-Steinberg dithering code.
  904.                 (Charles Hannum  (mycroft@gnu.ai.mit.edu))
  905.  
  906. Modified 'Delete' behavior.  Only loads an image if you deleted the
  907.     currently-viewed image.
  908.  
  909. Changes the suffix of the filename in the 'save window' when you change 
  910.     file formats.
  911.  
  912. Got rid of 'Quit XV' buttons in load and save windows
  913.  
  914. Added extra verbiage to JPEG save window.
  915.  
  916. Dicked around some more with window positioning code.  Seems to work
  917.     correctly in TWM and MWM.  Hopefully, it'll work in OLWM as well.
  918.  
  919. Added Makefile options and xv.h #ifdefs for Encore's UMAX 
  920.     version of Unix System V.    (Drew Watson  (dwatson@encore.com))
  921.  
  922. Added '-owncmap' option (and 'ownCmap' resource) to make XV *always*
  923.     use/install its own colormap.    (Bill Turner  (bturner@cv.hp.com))
  924.  
  925.  
  926. Rev: 11/29/90  (version 1, patchlevel 3)
  927. -----------------------------
  928.  
  929. Changed 'CCOPTIONS' to 'DEFINES' in Imakefile
  930.  
  931. Fixes for use with virtual root window managers (ie, tvtwm)
  932.     (only cares about virtual root when using '-root' option,
  933.      negative geometry's correctly handled.)
  934.             (Andreas Stolcke   (stolcke@ICSI.Berkeley.EDU))
  935.  
  936. Modifications for Sequent machines (no 'mem*() routines)
  937.             (Daniel Pommert    (daniel@ux1.cso.uiuc.edu))
  938.  
  939. Modifications to avoid bug in certain optimizers, most notably the default
  940. optimization (-O) in Sun's C compiler.  (Incorrectly handles lines of the
  941. sort "*p = array[*p]")
  942.  
  943. Modification to get around 'when I shift my arrow keys (to adjust the
  944. cropping rectangle), my keyboard generates numbers instead' problem
  945.             (Mark Horstman     (mh2620@sarek.sbc.com)
  946.  
  947. Modification to allow 'xsetroot' and 'xloadimage' to cleanup any
  948. xv-displayed images in the root window, and vice-versa.
  949.             (Richard Bingle    (bingle@cs.purdue.edu))
  950.  
  951.  
  952.  
  953. Rev: 11/26/90  (version 1, patchlevel 2)
  954. -----------------------------
  955. added workaround for 'X Protocol Errors' on broken servers (XFreeColors())
  956.     (see the '-bfc' option)
  957. fixed core dump when cropping on certain displays
  958. misc. #ifdefs for HPs
  959. fixed problem with fish cursor remaining around too long
  960. more SVR4 #ifdefs            (David Elliott,  dce@smsc.sony.com)
  961. fixed bug in tracking pixel values    (Bob Finch,      bob@gli.com)
  962. misc #ifdefs for ISC 386/ix 2.0.2    (Mark Snitily    mark@zok.uucp)
  963. misc #ifdefs for AT&T machines         (Eric Raymond   eric@snark.thyrsus.com)
  964. misc #ifdefs for Silicon Graphics       (Paul Close     pdc@lunch.wpd.sgi.com)
  965. Added POSIX signal handling        (Mike Patnode   (mikep@sco.com))
  966. Port to SCO UNIX/ODT            (Mike Patnode   (mikep@sco.com))
  967.  
  968. fixed problem with using '-max' and '-fixed' at same time
  969.             (Greg Spencer   greg@longs.lance.colostate.edu)
  970. modification to work with Virtual Root Windows (ala swm and tvtwm)
  971.             (Bill Kucharski  kucharsk@solbourne.com)
  972.  
  973. the 'save-as' filename is now set to the 'current' filename
  974.  
  975. Also, if you double click on 'plain' files in the directory box,
  976.     it will set the 'save-as' filename accordingly.
  977.  
  978. Added ability to view images centered on the root window, without
  979.     any tiling.  Added associated options ('-center', '-rfg', '-rbg',
  980.     and '-rpat')
  981.  
  982. Workaround for twm 'No title bars' bug  
  983.              (Steve Swales  steve@bat.lle.rochester.edu)
  984.  
  985. Bidirectional Rotate commands added
  986.  
  987. Maxpect command added:  (Maximum size, but preserve aspect ratio)
  988.  
  989. AutoCrop command added:  (Crops out solid borders.)
  990.  
  991. Potential support for 32-bit displays.  (Hasn't been tested.  Don't have one.)
  992.  
  993.  
  994. Rev: 10/17/90   (version 1, patchlevel 1)
  995. ------------------------------
  996. Imakefile added            (David Elliot    (dce@smsc.sony.com))
  997. System V release 4 mods        (David Elliot    (dce@smsc.sony.com))
  998. Bug in 'quick check' fixed    (Arthur Olson    (ado@elsie.nci.nih.gov))
  999. Mods for Convex machines    (Anthony Datri   (datri@convex.com))
  1000. 'vprintf' module added         (Jonathan Kamens (jik@pit-manager.mit.edu))
  1001. window creation bug fixed
  1002. added icon
  1003. fixed 'Input Focus' probs
  1004. added '-w' flag to bggen
  1005. various cleanups to shut up 'noisy' compilers
  1006.  
  1007.  
  1008. Rev: 10/9/90    (version 1, patchlevel 0  -  initial release)
  1009.  
  1010.