summaryrefslogtreecommitdiff
path: root/xsane.CHANGES
diff options
context:
space:
mode:
Diffstat (limited to 'xsane.CHANGES')
-rw-r--r--xsane.CHANGES1248
1 files changed, 1248 insertions, 0 deletions
diff --git a/xsane.CHANGES b/xsane.CHANGES
index 3491a27..d436827 100644
--- a/xsane.CHANGES
+++ b/xsane.CHANGES
@@ -709,3 +709,1251 @@ xsane-0.49 -> 0.50:
- changed dynamic menue list definition in xsane_setup for TIFF_COMPRESSION menu
+
+xsane-0.50 -> 0.51:
+-------------------
+
+ - added some rangechecks to histogram->gamma calculation
+ it is done as histogram->gamma->histogram now
+
+ - changed redraw frame in preview_display_partial_image(),
+ now the old image is completely overpainted!
+
+ - added xsane_set_all_resolutions() to xsane_printer_callback,
+ now paper size frame is updated when printer is changed
+
+ - corrected wrong error message in setting of scansource_selection
+ from "unknown type" to "unknown constraint type"
+
+ - moved xsane.header_size = 0; to the end of xsane_scan_done so it is called in each case
+ the missing command was responsible for a segfault when starting a scan after xsane_cancel
+ has been called
+
+ - moved progress_bar from it's own window to the bottom of the main window
+ progress_bar texts are displayed in info frame and in progress bar
+
+ - added size in mm/cm/in to progress bar when not scanning
+
+ - in scales the number of digits is defined by quantization now, if no quantization is given
+ by backend (quant=0, SANE_TYPE_FIXED) x.2 digits are displayed
+
+ - corrected page_step for scales
+
+ - selection_active is reset in preview_display_partial_image instead of preview_paint_image
+
+ - updated czech translation file cs.po.in - thanks to Stansislav Brabec
+
+
+xsane-0.51 -> 0.52:
+-------------------
+
+ - changed gimp_install_procedure(...) for specified device: "RGB, GRAY" -> 0
+
+ - in xsane-scan.c and xsane-preview.c added " | GDK_INPUT_EXCEPTION" to
+ gdk_input_add(fd, GDK_INPUT_READ | GDK_INPUT_EXCEPTION, preview_read_image_data, p);
+
+ - added static int xsane_set_modus_defaults(void)
+ zoomfactor is set to 1.0 if copy mode is selected
+ full preview area is selected if copy or fax mode is selected
+
+ - removed a second xsane_device_preferences_restore(); in static void xsane_device_dialog(void)
+
+ - zoom factor keeps unchanged when printer is changed
+
+ - added psfile-geometry to setup/saving options, it is used when saving postscript in scanmode
+
+ - moved exisiting routines to open functions to xsane-front-gtk.c:
+ void xsane_define_output_filename(void);
+ void xsane_identify_output_format(char **ext);
+
+ - define_maximum_output_size is called in each routine that changes filename or fileextension
+ because the output frame is also drawn in scanmode with filetype postscript now
+
+ - included Stanislav Brabec's <utx@penguin.cz> sed-scripts and changes for Makefile.in in xsane-*/po
+
+ - added creation of newlanguage.po in po/Makefile.in
+
+ - updated german translation file de.po
+
+ - updated czech translation file cs.po - thanks to Stanislav Brabec <utx@k332.feld.cvut.cz>
+
+ - updated french translation file fr.po
+
+
+xsane-0.52 -> 0.53:
+-------------------
+
+ - added test if vendor, model and type strings do exists (pointer != 0)
+ otherwise "no vendor",... is printed
+
+ - changed
+ ext = &extension;
+ to
+ if (extension)
+ {
+ *ext = strdup(extension);
+ }
+ else
+ {
+ *ext = 0;
+ }
+ in xsane_identify_output_format - bad thing, I get old ;-)
+
+ - added new routine xsane_find_best_resolution that makes sure that the selected resolution
+ fits into range/quantization given by backend.
+ This is used by xsane_set_resolution and when resolution_list is created.
+
+ - added xsane_set_all_resolutions to xsane_set_modus_defaults
+
+ - xsane resolution can be changed by backend now
+
+
+xsane-0.53 -> 0.54:
+-------------------
+
+ - updated french translation table
+
+ - updated german translation table
+
+ - changed type of umask in preferences from mode_t to int because
+ sizeof(mode_t) is on some machines only 2 bytes what cause problems.
+ all calls of umask(foo) are changed to umask((mode_t) foo)
+
+ - changed preferences update_policy from GtkUpdateType to int.
+
+ - selection box can not be moved out of the preview window, the
+ size of the selection keeps unchanged in that case now.
+
+ - removed some gtk_main_iteration and reordered some selection drawing routines.
+
+ - removed unused files/directories from package:
+ sanei, include/sane/sanei_(some).h, po_old
+
+
+xsane-0.54 -> 0.55:
+-------------------
+
+ - added preview support for 16 bpp (transformed to 8bpp)
+
+ - added copyright line in devcie selection dialog
+
+ - preview selection frame is only active when backend supports coordinate selection
+
+ - added preview oversampling factor (multiplier for calculated preview resolution)
+
+ - added lineart enhancement: preview can be done in grayscale now,
+ threshold value change is displayed without a new preview scan.
+
+ - added "device options" to setup dialog:
+ - Scanner dependant options for grayscale->lineart conversion have
+ to be entered there.
+
+ - a color preview is now displayed gray when grayscale mode is selected
+
+ - updated de.po, cs.po, fr.po
+
+ - updated po/xsane-pot.sed
+
+
+xsane-0.55 -> 0.56:
+-------------------
+
+ - added hold timer to preview (update-policy=delayed)
+
+ - added hold timer to xsane_slider (update-policy=delayed)
+
+ - moved help menu from file to help
+
+ - added swedish (sv) translation - thanks to Johan Bengtsson <johanb@lls.se>
+
+ - removed bug in xsane_rc_io_w_string, it returns EINVAL now each time when the string
+ does not begin with "
+
+
+xsane-0.56 -> 0.57:
+-------------------
+
+ - made xsane_choose_device return type to void (was gint32)
+
+ - arranged device-preferences in struct xsane in the order they are used
+ as device preferences, made sure that all variable types are correct:
+ - changed type of xsane.mode from gint32 to int
+ - changed type of xsane.lineart_mode from gint32 to int
+ - changed type of xsane.show_preview from SANE_Bool to int
+ - changed type of xsane.enhancement_rgb_default from SANE_Bool to int
+ - changed type of xsane.fax_finemode from SANE_Bool to int
+
+ - added mask for *_lock in preview motion_notify_event handling
+ Preview selection can be done with locks activated now
+
+ - histogram is cleared before/redrawn after saving/loading device settings
+
+ - added xsane_control_option() that tests if option >= 0 and returns SANE_STATUS_INVAL if not
+
+ - added xsane_get_option_descriptor() that tests if option >= 0 and returns NULL if not
+
+ - changed parameters of preview_area_resize and added preview_area_resize_handler
+
+ - removed a lot of gtk_main_iterations from xsane_preview.c
+ they make problems in the redrawing order and can cause display problems
+
+
+xsane-0.57 -> 0.58:
+-------------------
+
+ - split the preview_event_handler into
+ - preview_press_button_event_handler
+ - preview_motion_event_handler
+ - preview_release_button_event_handler
+
+ - the preview_expose_event_handler now is called twice,
+ the second call has been placed in the preview_event_handler_before
+
+ - reactivated gtk_main_iteration after at the end of motion_event
+
+ - added warning window when xsane is started as root
+
+ - added selection of temporary directory in preferences/setup/saving options
+
+ - added gdk_input_remove(xsane.input_tag); before xsane_start_scan is called
+ in 3-pass scanning mode (suggestion from Heiko_Schroeder@t-online.de)
+
+ - changed output of "xsane -v"
+
+ - in xsane_scan_done moved xsane.header_size = 0; before test for ADF
+ Thanks to Russell Coggrave for the info about it.
+
+ - added gtk_set_locale() before gtk_init()
+
+ - added copyright sign "(c)" to translated texts because it is not available on all charsets
+
+ - temporary filenames are created random and unique (mktemp + random number)
+ due to security problems with fixed/calculateable tempfiles.
+
+ - the preview-files are created (empty) at program startup now
+
+ - when program exits the previews are erased
+ there is no way to store the preview images any more when the program is closed
+
+ - preview_restore_image() creates the xsane-startimage if no preview is stored
+
+ - renamed directory frontend to src
+
+ - create xsane-help script that opens online helpfile
+
+
+xsane-0.58 -> 0.59:
+-------------------
+
+ - preview_do_gamma_correction does test for 3 pass scanner color mode
+
+ - changed fax x-resolution and standard resolution from 98 ppi to 204 ppi
+ and with of faxpage from 210.0 to 215.7 (so we get 1728 pixels in x direction,
+ hxlafax-faq says that is the correct size)
+
+ - split preferences.printer[..].resolution -> lineart, grayscale and color_resolution
+
+ - added setlocale(LC_NUMERIC, "C"); in xsane_init() and #include <locale.h> in xsane.h
+ this should solve the problems with empty images (100%transparent) with gimp
+ and other problems that were caused by local settings (1.3 <=> 1,3).
+
+ - added setup-option "disable gimp preview gamma"
+
+ - added selection (preferences/setup/enhancement options) if autoenhancement changes gamma value
+
+ - renamed Preferences/Setup/"Device options" to "Enhancement options"
+
+ - removed xsane internal callbacks from dialog struct, the functions are called directly now
+
+ - changed the reading of the preview image header. The last newline character before the image
+ data starts again made some problems, this seems to depend on the data that follows. So I added
+ a fgets() command to skip the newline character - this seems to work.
+
+ - changed increase_filename_in_counter, does work now if the only character of the base-filename
+ is the counter
+
+ - reduced size of src/xsane-startimage.pnm (1MB => 0.6MB)
+
+
+xsane-0.59 -> 0.60:
+-------------------
+
+ - after filename counter is increased the cursor in the outputfilename entry is moved to the right
+
+ - in preview_read_image_data when image is complete:
+ preview_update_surface(p, 0);
+ is called before
+ preview_display_image(p);
+ this way the geometry of the first preview scan is correct.
+
+ - moved xsane_set_all_resolutions in xsane_update_xsane_callback(),
+ it now also is called when the backend only uses one reesolution
+
+ - added calibration image (xsane-calibration.pnm) that is loaded when setup window is created.
+ The xsane enhancement functions are disabled in calibration mode, the image can not be
+ resized (xscale = yscale = 1.0).
+ The previsous image is reloaded when the setup window is closed again.
+
+ - enviornment variable SANE_DEFAULT_DEVICE is used to activate the radiobutton in the
+ device selection menu
+
+ - removed unused item "custom" from preview surface menu
+
+ - changed preview surface menu items:
+ A3 -> A3P (portrait)
+ A4 -> A4P (portrait)
+ A4H -> A4L (landscape)
+ A5 -> A5P (portrait)
+ A5H -> A5L (landscape)
+
+ - removed script xsane-help, necessary command now is listed in xsane.PROBLEMS
+
+
+xsane-0.60 -> 0.61:
+-------------------
+
+ - added debug output function and messages (environment variable XSANE_DEBUG)
+
+ - moved all global variables and struct GSGdialog to global struct xsane
+
+ - cleaned up some variable names
+
+ - added free gamma curve dialog (not ready)
+
+ - prepared xsane for win32:
+ - when BUGGY_GDK_INPUT_EXCEPTION is defined only blocking mode is used
+ (needed because GDK input exception does not work on win32)
+ - on win32 you cannot get a homedirectory, for this
+ XSANE_FIXED_HOME_PATH has to be set to the path that shall be
+ used as homedirectory
+ - replaced all gtk_dialog_new by gtk_window_new and added hbox and vbox to the window
+ (gtk_dialog_new does not work on WIN32)
+ - added xsane.WIN32 and xsane.WIN32-compilation that describes how xsane
+ is build on WIN32 with CYGWIN
+ - replaced "/" in all paths, added label SLASH that is predefined to '/' if it is
+ not defined by compiler option. For WIN32 it is set to '\' by compiler option
+ - all fopen functions use argument "rb" or "wb" now (b=binary). This is needed for WIN32
+ and the b is ignored on unix systems.
+ - published binary version xsane-win32-0v01 and xsane-win32-0v02 based on
+ xsane-pre0.61 versions
+
+ - removed an ugly bug: in struct Preferences there was predefined a string ("/tmp/")
+ that caused a bad memory state when the string memory was freed,
+ instead the string is defined in xsane_pref_restore now
+
+ - changes for tiff format:
+ - added support for 16 bit tiff format.
+ - predefined tiff-compression is changed from 5 to PACKBITS(16bit), JPEG(8bit), FAXG3(1bit).
+ - add resoultion-tags and datetime-tag to tiff files.
+
+ - added "change directory" entry to preferences menu
+
+ - added "scanning for devices" dialog
+
+
+xsane-0.61 -> 0.62:
+-------------------
+
+ - updated manpage (was about 1 year old)
+
+ - removed sigprocmask.c from xsane-*/lib (not used)
+
+ - added icons (32x32 and 48x48) for unix(xpm) and Windows(ico)
+
+ - some additional changes for rotating preview
+
+ - removed bug in preview_get_color that caused segfault when
+ click with pipette was placed into preview area but outside the image,
+ ( there was no test for image size )
+
+ - in info dialog tiff is now listed as supported 16 bit format
+
+ - filename counter is increased now if path or filename includes a "."
+ and fileytpe is seleced by menu
+
+ - added possibility to move the edge of the preview selection frame
+ thanks to Laurent Martelli for his suggestion for that
+
+ - added sane_get_parameters(xsane.dev, &xsane.param) at end of preview_scan_done
+ this way it is made sure that xsane.param is correct after preview scan
+ (was not correct in copy mode with lineart=grayscale->lineart preview)
+
+ - added explaination of "[DEVICE]" in xsane help message
+
+ - gimp handling now is always called in xsane_scan_done
+ (was not called when an error occured or the cancel button was pressed).
+
+ - moved selection of fax finemode to fax-project window, image is always scanned
+ in fine mode resolution.
+
+ - html-documentation is updated (a bit)
+
+ - removed bad "+ 0.5" from calculation in preview_set_option_float: word = SANE_FIX(value) + 0.5;
+
+ - included italian translation table (it.po), thanks to Mauro Colorio <macolori@tin.it>
+
+ - added error message in xsane_control_option if command failed
+
+ - p->startimage is set to 0 in preview_scan_start
+
+
+xsane-0.62 -> 0.63:
+-------------------
+
+ - added turkish translation (thanks to Togan Muftuoglu <toganm@turk.net>)
+
+ - changed gimp interface from 1.0 to 1.1.2x (GParam->GimpParam etc),
+ added xsane-oldgimp.h that adds #defines for the old gimp interface
+
+ - added "make uninstall"
+
+ - changed confiure.in, added test for x_includes before it is used,
+ renamed it to configure.old
+
+ - new configure.in file that does use "sane-config" now to find the sane libraries
+
+
+xsane-0.63 -> 0.64:
+-------------------
+
+ - changed xsane-oldgimp.h to work with gimp-1.0.4
+
+ - added info icon (green triangle with explanation mark)
+
+ - added info window function: xsane_back_gtk_info
+
+ - ADF mode: if first scan fails with NO_DOCS => error message: no docs
+ if another scan ends with NO_DOCS => info message: scanned pages: #
+
+ - added some accelerator keys. The key definitions may change any time,
+ this is a first test version. The key-definitions are listed in xsane.ACCELKEYS
+
+ - added grab_default for close buttton in info and about dialog
+
+ - changed test for sane-libs in aclocal.m4, "-lintl" is removed from
+ the output of "sane-config --libs"
+ (this caused segfaults when gettext is included in libc)
+
+ - added about translation dialog
+
+ - added options "-p", "--print-filenames", if enabled and xsane runs in scanmode it
+ prints names of produced image files to stdout
+
+ - added options "-N name", "--force-filename name", if set the user filename selection
+ is disabled and the given name is used as filename. The filename should be of the
+ form "basename-00001.filetype". The size of the counter has to be suffisunt large.
+
+ - some changes in configure script (missing libs needed by sane are not linked any more)
+
+
+xsane-0.64 -> 0.65:
+-------------------
+
+ - src/Makefile.in: added usage of SANE_CFLAGS and GTK_CFLAGS
+
+ - added secure password transmission for authorisation (md5digest)
+
+ - ~/.sane/pass is used for reading user:password:resource from file before asking the user
+
+ - configure: removed test for X (AC_PATH_X), this is done in GTK (gtk-config)
+ gtk includes and libs are used for png test (because png often is in X directories)
+
+ - changed xsane_*_with_pixmap:
+ old status: routines used xsane.histogram_dialog->window as window for gdk_pixmap_create_from_xpm_d()
+ this made problems with preview window if X default color depth differd from X color depth
+ new status: routines are called with parameter GdkWindow *window now.
+
+
+xsane-0.65 -> 0.66:
+-------------------
+
+ - added setup menu for Automatic Document Feeder Scansource
+ (ADF-Scansource name was predefined to "Automatic Document Feeder" before,
+ now it can be defined for each device (is saved in decice settings))
+
+ - changed setup for lineart->grayscale scanmode from entry to menu with available scanmodes
+
+ - updated xsane.WIN32-compilation and src/Makefile.in.WIN32
+ I compiled a pre version of xsane-0.66 with the cygwin snapshot from 2000-12-10 and
+ gtk+-dev-20001023.zip, glib-dev-20001023.zip, libiconv-dev-20001007.zip
+ with the way described in xsane.WIN32-compilation without any problems.
+ The problem with the fork() seems to be solved in this cygwin version.
+
+ - updated aclocal.m4 and configure (gimp test)
+
+
+xsane-0.66 -> 0.67:
+-------------------
+
+ - added test if (xsane.adf_scansource) before usage of xsane.adf_scansource
+ (caused segfault when no ADF Scanmode was defined in setup)
+
+
+xsane-0.67 -> 0.68:
+-------------------
+
+ - changed src/Makefile.in.WIN32 so that the installation directory can
+ be selected by configure --prefix=... and the used paths are more
+ common to the one on unix (/usr/local => c:\sane)
+
+ - changed src/Makefile.in.WIN32 for gimp support (uncomment GIMP_LIBS)
+
+ - WIN32+gimp-support: set_gimp_PLUG_IN_INFO_PTR(&PLUG_IN_INFO) is called
+
+ - added extern GimpPlugIn PLUG_IN_INFO to xsane.h (needed in xsane.c for win32)
+
+ - replaced free(xsane.tile) by g_free(xsane.tile)
+ (the free(...) caused a crash on win32)
+
+ - changed aclocal.m4: gimp test does work with gimp-1.0.x version again
+
+ - renamed xsane.WIN32 and xsane.WIN32-compilation to xsane-WIN32.txt
+ and xsane-WIN32-compilation.txt (it is easer to use on windows)
+
+ - removed (#ifndef _WIN32) gtk_set_locale() from xsane.c for win32
+ (when it was called gimp plugin created transparent images)
+
+ - saved xsane-style.rc in DOS mode (\n\r)
+
+
+xsane-0.68 -> 0.69:
+-------------------
+
+ - some changes in aclocal.m4 for gimp test:
+ - When gimp-config is not found, the output of gtk-config is used
+ - GTK_CFLAGS or GIMP_CFLAGS are added to CPPFLAGS for test for gimp.h and gimpfeatures.h
+ - GTK_CFLAGS and GTK_LIBS are erased when gimp_config is available
+
+ - changed src/Makefile.in: GIMP_CFLAGS is used now
+
+ - saved xsane-style.rc in unix mode (\n) because DOS mode (\n\r) made problems
+
+ - added new way to call netscape remote command:
+ at first xsane tries to find out if netscape is running, for this it tries to
+ find out if there is a link "~/.netscape/lock". If this link exists netscape should
+ be running and xsane calls "netscape -remote openFile(...)". Otherwise xsane calls
+ "netscape ..."
+
+ - changed keywork "netscape-remote" as docviewer to "netscape"
+
+ - changed way to find out home directory in xsane-back-gtk.c:
+ now getenv(ENVIRONMENT_HOME_DIR_NAME) is used instead of getpwuid(...)->pw_dir.
+ (getenv is usable for Win32 and unix, getpwuid makes problems on Win32)
+
+
+
+xsane-0.69 -> 0.70:
+-------------------
+
+ - removed some bugs in text for pipette in sane-xsane-preview-doc.html
+
+ - changed acloacal.m4: when gimp-config is not found we look for gimptool
+
+ - for WIN32 the filetypes listed in the filetype menu are ".jpg" and ".tif"
+ instead of ".jpeg" and ".tiff"
+
+ - added manufacturer image to bottom of standard and advanced options window.
+ The name of the image is "vendor"-logo.xpm" or "sane-"backend"-logo.xpm",
+ the size of the image should be 256x48 pixels with a transparent background.
+
+ - changed src/Makfile.in: *-logo.xpm are installed (make install) and
+ uninstalled (make uninstall) now
+
+ - changed src/Makfile.in.WIN32: *-logo.xpm are installed (make install)now
+
+ - several changes in xsane-preview.c for rotating preview by 0/90/180/270 degree
+ the preview rotation is ready now
+
+ - added new routine xsane_save_rotate_image to xsane-save.c
+
+ - added new routine xsane_save_grayscale_image_as_lineart to xsane-save.c
+
+ - lineart images are saved in grayscale mode at first if transformation has to be done
+
+ - xsane_save_rotate_image is called beween scanning and saving image
+
+ - xsane_save_grayscale_image_as_lineart is called beween rotating and saving image
+
+ - aclocal.m4/configure: changed sane_major_version etc to SANE_CURRENT_MAJOR
+
+ - fileheader of raw format changed. This format is not defined, but some programs
+ can read it as 16 bit pnm binary data, so we use a compatible header now:
+ P5
+ # This file is in a not public defined data format.
+ # It is a 16 bit gray binary format.
+ # Some programs can read this as pnm/pgm format.
+ # SANE data follows.
+ 100 100
+ 65535
+
+
+
+xsane-0.70 -> 0.71:
+-------------------
+
+ - corrected aspect ratio in xsane-preview.c in routine that calculates preview resolution
+
+ - corrected user definition of maximum scanner surface
+
+ - added translation of preview menu maximum surface(preset area)
+
+ - added tooltip for maximum surface(preset area) menu and rotation menu
+
+ - finished preview_autoselect_scanarea()
+
+ - added autoselect scanarea button to preview window
+
+ - changed automaitic increase of filename counter:
+ - the step direction and length is not forced to +1,
+ the user can select one of the values -2/-1/0/+1/+2.
+ It is defined by preferences.filename_counter_step.
+ This way it is possible to scan double sided papers
+ with correct automatic page number generation.
+ - the digits are not increased by a loop any more,
+ the number is read, the new number is calculated
+ and the new filename is generated. The user can
+ select a minimum filename counter length now,
+ it is defined in preferences.filename_counter_len
+ and can be selected by the user in setup/saving options
+ - when the number of digits are not enough the number is
+ automatically increased now.
+ - a message comes up when counter gets smaller than 0
+
+ - pipette the color is averaged on a square, the size of the
+ square can be defined by the user
+
+ - updated html doc (not complete)
+
+ - added tooltips to permission buttons (r,w,x)
+ permission texts: user, group, all, read, write, execute can be translated now.
+
+ - added japanese translation (thanks to Kimizuka Tomokazu <sgtom@pluto.dti.ne.jp>)
+
+ - renamed oldgimp.h to gimp-1_0-compat.h
+
+
+xsane-0.71 -> 0.72:
+-------------------
+
+ - changed default postscript viewer from xv to gv
+
+ - moved int i, select = 1; in static void xsane_saving_notebook() out of #ifdef HAVE_LIBTIFF block
+
+ - filename counter length correction is only done in sane_start when there is a user selectable filename
+
+ - if external filename is given the counter len is not touched when not necessary
+
+ - added "insert file" function to fax mode
+
+ - added output of gamma, brightness and contrast settings to pnm headers
+
+ - updated xsane online-documentation (html)
+
+ - added license dialog, it is shown when it was not already accepted for this xsane version
+ (tested in local xsane.rc)
+
+ - about and about translation dialogs do not set XSane´s sensitivity to false any more
+
+ - copyright sign is now always defined as "(c)", can be translated with \251 if character is available
+
+ - device preferences are not saved/loaded any more when file selection is aborted
+
+ - in xsane_info_dialog the scanner type is translated now
+
+ - added accelerator keys to device selection dialog:
+ Escape -> Cancel
+ F1,F2,.. -> select device number 1,2,...
+
+ - added usleep(100ms) in device selection dialog before scanning for devices, this way we make
+ sure that the text "scanning for devices" is displayed
+
+ - added some accelarator keys to the preview window:
+ Alt ESC Cancel Preview Scan
+ Alt KP+ Zoom in
+ Alt KP- Zoom out
+ Alt KP* Zoom not
+ Alt KP/ Zoom undo
+ Alt A Autoselect scanarea
+ Alt V Select visible scanarea
+
+ - added accelerator key Escape to file-selection-dialog, about-dialog and about-translation-dialog
+ attached to cancel/close button
+
+ - updated translations:
+ - german translation
+ - czech translation - thanks to Stanislav Brabec <utx@penguin.cz>
+ - turkish translation - thanks to Togan Muftuoglo <toganm@yahoo.com>
+ - japanese translation - thanks to Kimizuka Tomokazu <sgtom@pluto.dti.ne.jp>
+ - french translation - thanks to Laurent Grawet <laurent.grawet@ibelgique.com>
+
+
+xsane-0.72 -> 0.73:
+-------------------
+
+ - moved call to display license after test for command line options,
+ so it is not necessary to accept the license to print help/version/license
+
+ - added slowenian translation, thanks to Ales Kosir <ales.kosir@zaslon.com>
+
+ - an error message is printed when a preview file could not be created
+
+ - netscape is called with option new-window now
+
+ - rotating scanned image uses memory mapped image file if possible
+ thanks to Salvador Pinto Abreu <spa@di.uevora.pt> for his suggestions
+
+ - xsane windows are set insensitive while faxproject is generated/queued.
+ For this waitpid is called in a loop.
+
+ - before a html documentation is displayed xsane does test if the requetsted file
+ does exist in the subdirectory language_dir = gettext("language_dir")
+ (what e.g. gives "de" for german). If it does exist it is displayed, otherwise
+ the original english doc is displayed.
+ "language_dir" has to be part of the translation table, it should be
+ translated to the correct translation direcotry name, e.g. de for german
+
+ - preferences.printer momory is defined dynamicall now (has been defined to 10
+ pointers to printerdefinition before)
+
+ - chaged with of some setup fields - have been too small for large fonts
+
+ - xsane-scan:xsane_scan_dialog():
+ added test for color scan to the test if gamma tables for red, green and blue
+ exists (coolscan backend defines color gamma tables in grayscale mode
+ what caused segfault in xsane).
+
+ - added preselect scanarea after preview scan (selection in enhancment setup)
+
+ - added automatic color correction after preview scan (selection in enhancement setup)
+
+ - removed bug (that caused segfault when opening setup dialog) in xsane_enhance_notebook
+ while setting up menu itmes for grayscale scanmode selection:
+ replaced xsane.well_known.scanSOURCE xsane.well_known.scanMODE
+
+ - added option in prefences/setup saving options: save device preferences at exit
+
+ - now using always gdk_window_get_root_origin() to get a position of a window on desktop
+
+
+xsane-0.73 -> 0.74:
+-------------------
+
+ - transfering data to gimp plugin now is handled like saving to a special file format.
+ this way it is possibe to support handheld scanners and to get advance of
+ some xsane features like image rotation.
+
+ - corrected mmap() part in xsane-save.c/rotation:
+ data is mmaped with offset pos0, the offset pos0 is removed from pointer calculation
+
+ - changed xsane_enhancement_by_histogram() and xsane_histogram_to_gamma(): the ranges
+ for gamma, brightness and contrast are checked correct now
+
+ - added function preview_transform_coordinate_window_to_image(), it is used in
+ preview_get_color(). Pipette functions do work with rotated preview now.
+
+ - corrected bug in ruler calculation. The rulers do work correct now with rotated preview
+
+ - corrected bug in reading 16 bit preview data: sizeof(buf16)-> sizeof(buf)
+ now preview transformation from 16 to 8 bit is as fast as 8 bit preview
+
+ - preset areas are defined with position (new) and size (old) now.
+
+ - surface changes (size and rotation) do not change the selected preview area
+ any more if possible
+
+
+xsane-0.74 -> 0.75:
+-------------------
+
+ - xsane_read_image_data() does reduce 16 bit images to 8 bit when necessary/requested
+
+ - when scanning with 16 bits/color in gimp mode, to jpeg-file or postscript-file
+ xsane does ask if the image should be reduced to 8 bits/color
+
+ - added functions for mirroring preview and mirroring while rotating scan
+
+ - moved saving device preferences from xsane_quit() to xsane_scan_win_delete()
+ and replaced call to xsane_quit() by xsane_exit() in choose_device dialog
+ (this could cause a segfault).
+
+ - corrected a bug in calculation of histogram for rotation of 270 degree
+
+ - added xsane_bound_int(&mid, min, max) to xsane_calculate_auto_enhancement()
+ a segfault could occur when autoenhancement was activated when only a few
+ preview-pixels where available for calculation of autoenhancement values
+
+
+xsane-0.75 -> 0.76:
+-------------------
+
+ - rotoation routine: mmap does map the full image file (not only from pos0)
+
+ - added xsane.depth, it stores the depth of the scanned image,
+ it may differ from xsane.param.depth when lineart is converted to grayscale
+ or 16 bit image is reduced to 8 bit
+
+ - preview: preset_area list is read from xsane.rc
+
+ - added context menu to preview preset_area menu, the preset areas can
+ be changed by user now
+
+ - transformation 16->8 bits/color: replaced val/256 by val >> 8,
+ a user said that his compiler is too stupid for such an optimization
+
+ - updated translations: cs, de, fr, ja, sv
+
+ - calibration image is not rotated any more
+
+ - corrected exposure event handling (drawing of the selection frame)
+
+ - added call of preview_restore_image() at the beginning of preview_update_surface().
+ This way the correct image parameters are used for the calculation in
+ preview_update_surface(). preview_restore_image() does not paint the image any
+ more, this is done at the end of preview_update_surface() now.
+
+ - corrected bug in xsane_calculate_histogram() with zoomed and rotated preview
+ with angels 90 and 270 degree.
+
+ - info dialog does print sane version as #.#.# (instead of #.#) again.
+ sane-dll will return the version of the sane package from sane-1.0.5
+ so it is possible to find out the used library version in most cases.
+
+ - xsane-scan.c: scan data is not written with fwrite() in 1 byte steps
+ any more because it looks like some systems (at least HP 9000/B1000
+ (processor PA8500/300 MHz, 384 MB RAM) operating system HP-UX 10.20)
+ have problems with this. The data is stored in the read buffer when
+ any transformation (gamma, 16->8 bit) is needed, the complete
+ buffer that is read with sane_read is written in one part.
+
+ - added xsane.spec - created by Sebastian Wenzler <wenzler@techie.com>
+
+ - autoselection of scanarea is not done for startimage
+
+ - preview image files (level 0-2) are removed and recreated when
+ the temporary directory is changed in the saving setup
+ (Preview scan has to be reacquried after changing the temporary directory)
+
+ - directory selection dialogs (change working directory and select temporary directory)
+ do not display filelist and delete-file widgets.
+
+ - xsane-preview.c and xsane-gamma.c:
+ - raw preview data is stored with 16 bits/color
+ - gamma correction is done with (8-16) bit to 8 bit enhanced data
+ the gamma input bits is set to 12 (but could be changed if we
+ add a widget that can change this value)
+ 12 bit = 4096 values for each gamma table, this is a good
+ compromise between image quality, speed and memory usage
+ - All this slows down gamma and histogram routines, because of this
+ I accelerated these routines again:
+ - replaced field indexes by optimized pointer routines
+ - preview_motion_event_handler improved: continuous mode does use
+ a timer function now. this way the selection has a higher priority
+ than displaying the histograms.
+ - the raw histogram is only recalculated and displayed when it has been changed.
+
+ - improved event handling of the histogram sliders:
+ when continuous mode is active xsane_enhancement_by_histogram() is not called
+ directly any more, it is called via the xsane_slider_hold_event handler now
+
+ - split setup notebook "saving options" into "saving options" and "image options"
+
+ - added option "reduce 16 bit image to 8 bit" to setup/image options
+ This way you can use the preview with the full bit depth the scanner
+ can output and save it as image with 8 bits/color.
+ This is interesting e.g. when you scan slides or negatives.
+
+ - changed ouput in parameter box from "width x height (size unit)" to
+ "witdh x height x depth (size unit)"
+
+ - filetype menu is displayed correct now when xsane main window is rebuild
+
+ - removed a bug in aclocal.m4 wehn gimp was not found
+
+
+xsane-0.76 -> 0.77:
+-------------------
+
+ - removed "+0.5" in calculation of gamma table. A gamma value of 1.000 does
+ not change the image data any more
+
+ - xsane_update_gamma_curve(TRUE /* update raw */); is called when setup dialog is closed
+ (apply and cancel), now the preview is displayed with correct gamma values when setup
+ dialog is closed.
+
+ - configure does set gtk parameters correct when compiling gimp testprogram failed
+
+ - xsane internal gamma tables for scanning are created after sane_start is called,
+ this makes sure that the gamma table size calculated with param.depth really is correct
+
+ - setup uses selected length unit
+
+ - length unit is printed in top left edge between rulers in preview window
+
+ - when length unit is saved as inch the length unit submenu "in" now is selected at program start
+
+ - removed xsane.spec because I got a mail that it does not produce working installations
+
+ - length unit also can be selected now when backend length unit is pixel, so it
+ is possible to change the length unit of the setup window
+
+ - save device preferneces dialog is opened when user closes setup dialog and any
+ device options have been changed
+
+ - replaced all fprintf(stderr, ... by DBG(...
+
+ - updated translations: cs, de, fr, ja, sv, tr
+
+
+xsane-0.77 -> 0.78:
+-------------------
+
+ - when the backend defines a new scanner surface it is updated correct now
+ when the reduced preview surface does not limit the new surface
+ (added expand_surface to preview_update_surface()
+
+ - preview scan is aborted when backend sends more image data than expected,
+ the preview image is saved in this case
+
+ - the preview image is saved now when the preview scan is canceld, so the
+ already scanned part of the preview keeps visible
+
+ - when two preview levels have comparable quality it is used the preview
+ that is more up to date (scanned later)
+
+ - applied sanei_wire.c patches from sane-backends-1.0.5 to xsane-rc-io.c
+
+ - changed default values: histogram, and standard options windows are visible by default now
+
+ - added function (pirate icon) to delete preview image cache
+
+ - added mail project dialog
+
+ - added mail setup dialog
+
+ - added routines for sending images by mail (base64encoding, mail headers, smtp headers)
+
+
+xsane-0.78 -> 0.79:
+-------------------
+
+ - added test for lstat in configure/configure.in/config.h.in
+
+ - when lstat is available it is used for testing netscape lock file,
+ otherwise stat is used
+
+ - changed order of include lines in xsane-save.c
+
+ - for OS/2: in xsane_back_gtk_make_path() a colon ":" is replacte by "_"
+
+ - changed last argument of xsane_back_gtk_set_tooltip from char to gchar
+
+ - added function xsane_widget_test_uposition(GtkWidget *gtk_window)
+ that does test if gdk_window_get_deskrelative_origin or
+ gdk_window_get_root_origin gives the correct positions.
+ test is done with "scanning for devices" window.
+
+ - in xsane.c changed #if 1 to #ifdef BUGGY_GTK_TOOLTIPS_SET_COLORS
+
+ - split preview_increment_image_y in ... and preview_test_image_y,
+ test is called before a byte is copied into the buffer
+
+ - xsane-preview.c: preview_scan_start: preview image memory is only cleaned for
+ single pass mode and 1 pass of 3 pass mode (3 pass preview does work again)
+
+ - mail is sent in subprocess
+
+ - added "MIME-Version: 1.0" to mail header
+
+ - added mail status in mailfile, error messages while sending are stored in this file too
+
+ - aclocal.m4 test for gimp: moved saving of GTK_* to beginning of routine,
+ the GTK_* things should be set correct now when gimp-config is not found
+
+ - xsane.h: mail is deactivated when png is not available
+
+ - added preferences menu item "Medium":
+ The highlight/shadow/gamma values are defined to the intensity range
+ of the selected medium (e.g. agfa negative).
+ If possible the analog highlight/shadow function is used,
+ if not then the scanner internal digital gamma table is used
+ in bot then xsane´s internal gamma correction is used.
+ When the correct medium is selected it only is necessary to
+ do "soft" color corrections. Because of this the 400% values
+ in brightness/contrast have been reduced to 100% values now.
+ This is a typically range that e.g. also is used by the gimp.
+ If someone needs the larger ranges, change the following definitions
+ in sane.h:
+ #define XSANE_BRIGHTNESS_MIN -100.0
+ #define XSANE_BRIGHTNESS_MAX 100.0
+ #define XSANE_CONTRAST_GRAY_MIN -100.0
+ #define XSANE_CONTRAST_MIN -100.0
+ #define XSANE_CONTRAST_MAX 100.0
+
+ - moved call xsane_update_counter_in_filename as correction for counter length from
+ xsane_start_scan to xsane_scan_dialog (before open command), this way the
+ counter also is correct when the file is not transformed (pnm).
+
+ - corrected xsane_update_counter_in_filename: removed some pointer bugs when skipping
+ exisiting filenames
+
+ - added test for os2.h to configure/configure.in
+
+ - added set_gimp_PLUG_IN_INFO(&PLUG_IN_INFO); for os2
+
+ - removed "+0.5" in calculation of negative preview gamma table. A gamma value of 1.000 does
+ not change the image data any more
+
+ - effective user id is set to real user id in all subprocesses
+
+ - cancel preview does now only call sane_cancel and tests for SANE_STATUS_CANCELLED while
+ reading image data.
+
+
+xsane-0.79 -> 0.80:
+-------------------
+
+ - moved setting of medium gamma correction values from xsane_set_medium_callback in xsane.c
+ to xsane_set_medium in xsane-gamma.c
+
+ - xsane_set_medium is called in xsane_scan_dialog and in preview_scan
+
+ - replaced predefined areas 10x14 cm and 14x10 cm by 10x15 cm and 15x10 cm
+
+ - updated documentation (partly)
+
+ - correcting image height when canceling conversion to jpeg format,
+ program does not crash any more
+
+ - added russian translation - thanks to John Profic <profic@lrn.ru>
+
+ - solved problem with lineart image saved as png (wrong byte width)
+
+ - moved medium selection menue from preferences menu to xsane main dialog
+
+ - inactive backend options are not saved to the device-rc file
+
+ - added progress_bar to the paramter list of xsane_save_*
+
+ - added xsane-viewer.c and xsane-viewer.h to the src directory
+
+ - added fflush(outfile); to end of rotation routine, this seems to
+ solve a problem of incomplete files when rotating the image file
+
+ - added routine xsane_read_pnm_header to get correct header offset
+ and read geometrie values
+
+ - for saving routines now the header offset and geometrie values of
+ xsane_load_pnm_header are used instead of xsane´s internal values
+
+ - changed handling of color identification:
+ old: xsane_color == 0 => grayscale/lineart
+ new: xsane_colors == 1 => grayscale/lineart
+
+ - when image is saved as postscript file (not copy mode etc)
+ then the bounding box exactly surrounds the image now.
+ Removed psfile parts from setup and preferences.
+
+ - xsane_widget_test_uposition(gtk_window) does wait now until
+ gtk_window is realized before gtk_widget_set/get_uposition
+ test is done
+
+ - for hpux added include of alloca.h to sane.h
+
+ - added function xsane_debug_message that is used for DBG when
+ gcc is not used because defines with variable arguments is
+ not ANSI.
+
+ - updated translations: cs, de, fr, ja, ru, tr
+
+
+xsane-0.80 -> 0.81:
+-------------------
+
+ - xsane-gamma.c:
+ void xsane_calculate_raw_histogram(void): changed "maxval_raw = 0;" to "... = 1;"
+ void xsane_calculate_enh_histogram(void): changed "maxval_enh = 0;" to "... = 1;"
+ this avoids a floating point exception on some systems
+
+ - xsane-viewer.c: set default viewer size from 400, 400 to
+ 0.3 * screen_width, 0.5 * screen height
+
+ - xsane-save.c: xsane_save_rotate_image() swaps x and y resolution when
+ rotation 90 or 270 degree
+
+ - removed slash at end of mkdir("~/.sane/xsane/"), OS/2 did not like this
+
+ - when temporary direcotry is not defined (xsane.rc does not exist)
+ then xsane at first tries to read the environment variable
+ defined by ENVIRONMENT_TEMP_DIR_NAME (default TMP) and if that
+ does not exist it uses a predefined (TEMP_PATH) path.
+ When xsane.rc does exist the temporary directory stored in xsane.rc is used.
+
+ - added blur and despeckle selction dialog to select filter radius
+
+ - changed viewer and preview window type from GTK_WINDOW_DIALOG to GTK_WINDOW_TOPLEVEL
+
+ - preview gamma does not have any effect to the enhanced histogram any more
+
+ - preview does medium gamma correction now when scanner does not support
+ gamma tables
+
+ - medium selection is disabled for lineart mode, gamma table is set to default
+ in this case. This guarantees that advanced lineart preview (by grayscale scan)
+ does work conform to the real scan.
+
+ - default resolution set to 72 dpi (if no resolution is defined by backend)
+
+ - added scanning/valid/incomplete/invalid pixmap to preview action area
+
+ - preview cancel does call preview_get_image_data after canceling the
+ scan, this makes sure that xsane does detect a cancled scan when
+ gdk_input does not detect closing the select_fd (what happens when
+ the backend does close the select_fd too early (what is allowed by
+ the sane standard))
+
+ - scan cancel does make sure that xsane_read_image_data is run
+ after sane_cancel is called
+
+ - added SIGTERM handler: xsane_quit() is called on SIGTERM
+
+ - when faxproject/xsane-fax-list can not be created an error
+ message is printed and the creation of the project is aborted
+
+ - in saving mode temporary conversion file is removed after conversion
+
+ - corrected wrong filenames while saving mail image after scanning
+
+ - added ocr function to viewer
+
+
+xsane-0.81 -> 0.82:
+-------------------
+
+ - number of medium items and area definitions is calculated by size of the
+ structure now.
+
+ - Improved security of temporary file handling:
+ - replaced mktemp() my mkstemp() in xsane_back_gtk_make_path.
+ The filename format changed because mkstemp creates the file
+ and so it is not possible to add an extension and the file
+ has to end with "XXXXXX" what is replaced by the safe random number
+ generated by mkstemp.
+
+ - before creating the image filename in xsane-scan.c the filename
+ is removed only if the created file is not a temporary file.
+
+ - removed remove() in xsane_save_image_as_lineart()
+
+ - added routine xsane_create_secure_file() that makes sure that the created
+ file does not follow a symlink
+
+
+ - when an error occurs while saving a file or the saving is aborted then
+ the created image is removed
+
+ - swaped order of opening inputfile and outputfile (outputfile now first) in
+ xsane_save_image_as_lineart()
+
+ - viewer_save_callback(): several changes for saving as lineart
+
+ - moved xsane_update_histogram() at end of xsane_update_gamma_curve()
+ into if (xsane.preview) block - this avoids segfault on some systems
+
+ - despeckle radius and blur radius dialogs are closed before routine is started
+
+ - removed bug in despeckle routine
+
+ - increased speed of despeckle routine by about factor 6
+
+ - changed despeckle radius range from 1-9 to 2-10
+
+ - changed blur radius range from 1-9 to 2-20
+
+ - routines xsane_draw_histogram_with_*() do not have parameter "int invert" any more,
+ the inversion already is done in the medium dependant histogram of the preview.
+
+ - added image scaling routine to viewer
+
+ - added spanish translation (es.po) - thanks to
+ Gustavo D. Vranjes <gvranjes@abaconet.com.ar>
+
+ - added dutch translation (nl.po) - thanks to
+ "Wim Sinke" <sinke@wirehub.nl>
+
+
+xsane-0.82 -> 0.83:
+-------------------
+
+ - scaling image size does work for 16 bit images now
+
+ - xsane_create_secure_file() now always removes the file (not only if it is a link),
+ this is needed because open(..., O_EXCL) does fail when the file exists (what can
+ happend when we want to overwrite an existing file).
+
+ - removed buggy ";" at end of if statement in xsane_enhancement_negative_callback
+
+ - default mode is viewer instead of saving mode
+
+ - updated po-files: nl
+
+ - xsane-front-gtk.c: void xsane_progress_cancel(GtkWidget *widget, gpointer data)
+ changed GtkSignalFunc callback = (GtkSignalFunc) data; to
+ GtkFunction callback = (GtkFunction) data;
+
+ - added media, experimentally determined values with UMAX Powerlook3:
+ Agfa XRG 200-4
+ Agfa HDC 100
+ Konica VX 100
+ Rossmann HR 100
+
+ - preview.c: preview_update_surface calls preview_update_selection at first to
+ make sure that the preview selection is up to date. Now xsane comes up with
+ the saved area selection when e.g. transparency mode is stored which forces
+ a change of the surface
+
+ - removed parameter negative from xsane_calculate_auto_enhancement,
+ autoenhancement does work again when negative button is pressed
+
+ - added mode "--Medium-definition"/"-M":
+ - preview is done without scanner gamma correction for medium
+ - added two icons to the main dialog: medium new and medium delete
+
+ - added xsanedocdir to doc/Makefile.in and src/Makefile.in
+ the path is used by xsane.c and the mentioned Makefiles
+
+ - removed in xsane-viewer.c, line 222: xsane_create_secure_file(outputfilename) before
+ xsane_save_image_as(...)
+
+
+xsane-0.83 -> 0.84:
+-------------------
+
+ - if xsane-license.txt is not file when it shall be displayed then xsane does
+ print an error message and behaves like when the user did not accept the license.
+
+ - if xsane-startimage.pnm is not found then an image of the size 1x1 pixel is
+ created instead. This should normally never happen but some people start
+ xsane without that it has been installed. Then the behaviour of the preview
+ has been undefined before.
+
+ - removed "rm -f $cache_file" when gtk or sane was not found in configure.in,
+ this was bad when a user used a global cache file
+
+ - viewer is created with image size - if possible
+
+ - added serbian translation file (sr.po) - thanks to Du¹ko Rusmir <drusmir@gmx.ch>
+
+ - xsane_sigpipe_handler: changed
+ xsane_cancel_save(0);
+ to
+ xsane_cancel_save(&xsane.cancel_save);
+
+ - updated po-files: es, fr, ja, nl, ru, sr, tr
+
+ - x and y resolution information are added to jpeg and png files now
+
+ - preview zoom buttons are now also available when backend does geometry
+ options with unit pixel
+
+ - added Plustek logo
+