summaryrefslogtreecommitdiff
path: root/xsane.CHANGES
diff options
context:
space:
mode:
Diffstat (limited to 'xsane.CHANGES')
-rw-r--r--xsane.CHANGES720
1 files changed, 719 insertions, 1 deletions
diff --git a/xsane.CHANGES b/xsane.CHANGES
index d436827..b27cbf6 100644
--- a/xsane.CHANGES
+++ b/xsane.CHANGES
@@ -1928,7 +1928,7 @@ xsane-0.82 -> 0.83:
xsane-0.83 -> 0.84:
-------------------
- - if xsane-license.txt is not file when it shall be displayed then xsane does
+ - if xsane-license.txt is not found 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
@@ -1957,3 +1957,721 @@ xsane-0.83 -> 0.84:
- added Plustek logo
+
+xsane-0.84 -> 0.85:
+-------------------
+
+ - replaced xsane_control_option by back_gtk_set_option in xsane_set_resolution.
+ if changing resolution causes a SANE_RELOAD_OPTIONS this is handled now.
+
+ - replaced xsane_save_scaled_image by a routine that does a blur over all covered pixel
+ insetad of using one pixel in the middle of the covered area
+
+ - changed radius definition of blur and despeckle, now r=1 means nothing happens
+
+ - extended blur routine, radius is now of type float, so you e.g. can blur with a
+ radius of 1.3.
+
+ - replaced all xsane*_scale_new* by xsane*_range_new*, the range can be displayed as:
+ - slider (scale) + value on right
+ - slider (scrollbar) + value on right
+ - spinbutton
+ - scale + spinbutton
+ - scrollbar + spinbutton
+ the user can select, which disply mode he likes to use.
+
+ - added timeout callback for xsane_resolution to set correct quantisation
+
+ - Some people complained that the user has to accept the GPL to use the program.
+ In fact from the view of the GPL it is not necessary that the user accepts
+ the license to run the program. But it is important that the user reads
+ and accepts the "NO WARRANTY" part of the license. Due to this I created
+ two license dialogs:
+ - EULA-Dialog displays the "NO WARRANTY" part of the GPL
+ - GPL-Dialog displays the compelte GPL
+ To run the program the user has to accept the "NO WARRANTY" agreement
+ after installation and each update of xsane.
+ I hope this compromise is usable for every side. Please understand and
+ accept that it is necessary in some countries that the user accepts the
+ no warranty agreement to make sure that the authors and others do not
+ have to pay any compensation in the case of any damage
+
+ - removed bug in scan and in preview-scan 16 bit routines when
+ sane_read returned with odd number of bytes
+
+ - reduced maximum filename counter length from 10 digits to 9 digits.
+ (10 digits need more than long int, long long int is not portable (not ANSI C))
+
+ - update_counter_in_filename does not touch the counter when step = 0 and
+ min_length = 0
+
+ - added preview function autoraise_scanarea (may be the name is stupid?):
+ if you select this function and click to an image then the image
+ is selected as scanarea
+
+ - colored preview pipette icons and zoom icons
+
+ - Changes/preparation for gtk+-2.0:
+
+ - added xsane-gtk-1_x-compat.h that wraps gtk+-2.0 functions to gtk+-1.x functions
+ when gtk+-1.x is used
+
+ - replaced all gtk_accel_group_attach() by gtk_window_add_accel_group() and
+ gtk_menu_set_accel_group()
+
+ - repleaced all GTK_WINDOW_DIALOG by GTK_WINDOW_TOPLEVEL
+
+ - addeded alternative part that uses gtk_text_view (gtk+-2.0) instead of gtk_text (gtk+-1.x)
+
+ - repleaced all gtk_signal_connect* by g_signal_connect* and defined makros for gtk+-1.x
+ - repleaced all gtk_signal_handler* by g_signal_handlers* and defined makros for gtk+-1.x
+
+ - repleaced (gtk+-1.x)
+ gtk_widget_draw(hist->pixmapwid, &rect);
+ for gtk+-2.0 by
+ gtk_widget_queue_draw(hist->pixmapwid);
+ gdk_window_process_updates(hist->pixmapwid->window, FALSE);
+
+ - filename entry is not set directly by gtk_entry_set_text(), it is set
+ by xsane_set_filename() now
+
+
+xsane-0.85 -> 0.86:
+-------------------
+
+ - reversed the change of xsane-0.84->0.85 that replaced
+ xsane_control_option by back_gtk_set_option in xsane_set_resolution.
+ If resolution change causes a SANE_RELOAD_OPTIONS this is not handled any
+ more.
+ Reason: It caused a segfault in different situations when panel_rebuild
+ was called. I tried to implement that it works like expected, but the
+ resolution option needs a lot of special cases handling that makes it
+ very hard to handle this. Also the gtk slider does not work when
+ the panel is rebuild each time when the value is changed.
+
+ - increased vendor length from 9 to 12 characters.
+
+ - changed dialog of viewer/scale
+ - The dialog uses xsane_range instead of a spinbutton now
+ - The scale sliders for x and y can be binded now,
+
+ - added %%Pages: 1 1 to header of postscript files in xsane-save.c
+
+ - changed preview zoom icons and function names:
+ - changed icon and name of zoom_in to zoom_area
+ - added new function zoom_in: if enabled a zoom cursor
+ is selected and when the user clicks to the preview
+ with the left or middle mouse button then it is zoomed
+ to the clicked position
+
+
+xsane-0.86 -> 0.87:
+-------------------
+
+ - preview_update_maximum_output_size: function sets block bit
+ at beginning of routine and resets it at end of routine, this
+ way it is made sure that the function is not called
+ recursive. This avoids infinite loops when backend
+ changes geometry options.
+
+ - xsane-device-preferences.c: saving and loading device options
+ does test for num_options now
+
+ - added xsane.ipc_pipefd and gdk_input_add(xsane.ipc_pipefd,...),
+ a child process can write to the pipe and xsane displays the
+ text in an error dialog (not for win32)
+ - added inter process communication pipe. When a child process
+ wants to display an error message it can write the message to
+ ipc_pipefd[1] and xsane will display the message in an error dialog
+
+ - xsane_back_gtk_decision_dialog can handle multiple dialogs now,
+ (used by xsane_back_gtk_error/warning/message/info
+
+ - added clear/redraw histogram to xsane_set_sensitivity()
+ removed clear/redraw histogram near calls to xsane_set_sensitivity()
+
+ - add xsane_sigchld_handler to cleanup zombie child processes,
+ this replaces xsane_mail_send_process_exited()
+
+ - changed progress bar pipe of ocr program:
+ -default option is "-x" (gocr)
+ -default progress keyword is "" (gocr)
+ -expects to values: "%d %d\r", main, sub
+ first value is used for progress bar, both are printed as text
+
+ - moved at the end of function xsane_device_dialog()
+ the call xsane_set_all_resolutions(); after xsane_refresh_dialog();
+ this way the backend default resolution is not overwritten at program startup
+
+ - changed calculation of aspect for startimage in preview_update_surface() from image aspect
+ to preview aspect
+
+ - xsane-scan.c saving lineart image as grayscale does work correct now:
+ - fwrite writes correct number of bytes
+ - x value is stored in global struct XSane so that it is not reset at
+ the beginning of xsane_read_image_data()
+
+ - moved ocr routine from xsane-viewer.c to xsane-save.c
+
+ - ocr routine can be selected by saving image as ".txt" or ".text" format
+
+ - added filetype menu to fileselection dialog
+
+ - changed behaviour of filetype menues: the extension immedeatly is added to/changed in
+ the filename (and is not added/corrected when the scan begins).
+ Now the filetype menu does behave the same way as gimp does. This means that
+ you e.g. can select filetype "jpeg" and name the file "image.pnm", in this
+ case the filetype is (like selected) "jpeg". I do not like this, but this is
+ how most programs do handle this situation.
+
+ - filetype is saved in preferences
+
+ - filetype "by ext" is handled as "" instead of NULL now
+
+ - selected working directory is saved in xsane preferences
+
+ - error_xpm, warning_xpm and info_xpm got a little 3d look
+
+ - added test for gtk2 to aclocal.m4 and configure.in/configure
+
+ - added bind_textdomain_codeset(xsane.prog_name, "UTF-8"); after bindtextdomain
+
+ - gtk-fileselection for selecting directories: for gtk2:
+ - selection_entry hidden
+ - added "/." to end of predefined path
+ - for gtk1 the text in selection_entry is removed from the filename after selection has finished
+
+ - updated translations: de, tr, ja, es, fr, cs, sv
+
+ - new translation: sk (slovakian), thanks to Zdenko Podobný <zdpo@mailbox.sk>
+
+ - changed configure script to support gtk2
+
+
+xsane-0.87 -> 0.88:
+-------------------
+
+ - xsane_back_gtk_range_new: made sure that digits is not negative
+ and for gtk+-1 that digits<6
+
+ - xsane_load_mail_project: changed "char c" to "int c" to get a chance to
+ identify EOF
+
+ - xsane_load_fax_project: changed "char c" to "int c" to get a chance to
+ identify EOF
+
+ - xsane_resolution_list_callback: changed "gchar *name" to "const gchar *name"
+
+ - xsane_add_medium_definition: changed "char *definition_name" to "const gchar *definition_name"
+
+ - added xsane-batch-scan.[ch]
+
+ - added routine preview_create_batch_icon_from_file() to xsane-preview.c
+
+ - xsane_batch_scan_update_icon_list is called by xsane_enhancement_by_gamma via a timer
+ this way a gamma correction also is visible in the icon list
+
+ - added xsane.scan_rotation that is used by xsane-scan.c instead of xsane.preview->rotation
+
+ - updated translations: cs, de, es, ja, ru, tr
+
+
+xsane-0.88 -> 0.89:
+-------------------
+
+ - 3 pass scanning: data interleaving is done in buffer, patch by <Oliver.Friedrich@hamburg.de>
+
+ - replaced fork() by spawnvp for ocr command in xsane-save.c (patch by Franz Bakan)
+
+ - xsane_save_jpeg does reduce a 16bit/sample images to 8bit/sample at first because jpeg does
+ not support 16 bit/sample
+
+ - xsane_save_ps does reduce 16bit/sample images to 8bit/sample while saving
+
+ - When scanning to file (mode SAVE) then the warning about image depth reduction 16->8 bit/sample
+ for jpeg and postscript is not printed any more.
+
+ - Since april 2000 there is defined a pnm (ppm/pgm) format for 16 bit binary images.
+ With this format the unofficial RAW16 format that has been used by xsane until version 0.88
+ becomes senseless. The RAW16 format has been removed, xsane does create 16 bit binary pnm files
+ now (the difference between the RAW16 and the pnm16binary format is that the pnm16binary format
+ always uses MSB first while RAW16 was written in machine byte order).
+ In preferences-Setup->Image there is a selection if the pnm16 image shall be saved in ascii or
+ binary format.
+ When you have any problems with the pnm16binary format then make sure at first that the program
+ you use does support it correct. imagemagic does support it, the xv version 3.10a does not
+ support it.
+
+ - read_pnm_header now does read the gamma, contrast, brightness, threshold values, so when these
+ data is saved in an image then it is correct now.
+
+ - gamma, brightness, contrast and threshold are added in the header of pnm files now
+
+ - when 16 bit image is scanned and "reduce 16bit image to 8bit" is selected and the image
+ is saved as pnm then the file is created correct now
+
+ - batch scan thumbnail: replaced gdk_image by gtk_preview
+ gdk_image needs pixel colors based on hardware, gtk_preview uses truecolor pixels.
+
+ - added po file converstion to utf8 in po/Makefile[.in]
+
+ - added documentation for batch scan window
+
+ - changed page size in range from (max-min)*1e-40 to (max-min)*1e-30
+ because some systems like solaris had problems (one long bar that
+ could not be moved)
+
+ - xsane-preview.c: in case of an error the error error text is created before
+ preview_scan_done is called when parameters->* are needed for creating the
+ error message
+
+ - made html pages compatible to html 4.01
+
+ - changed header of postscript files, may be this solves the printing problem on some systems
+
+ - added "%%EOF" to end of postscript files
+
+ - updated translations: cs, de, fr, ja, nl, ru, sv (update for 0.88), tr
+ - new translations: pt, pt_BR
+
+ - add no_device icon in error message: no devices available
+
+ - added help_no_devices dialog
+
+ - added device icon in device_scanning_dialog
+
+ - added a frame in the decision dialog
+
+ - when preview_autoselect_scanarea does not find an image then
+ the complete image is used
+
+ - added accelerator key ESC to decision dialog:
+ when a reject button (right) is available then ESC=reject,
+ when no reject button is available then ESC=OK.
+
+ - set block_update_maximum_output_size_clipping in preview_rotation_callback,
+ now rotation does work like expected when in copy mode
+
+ - added paper_orientation menu in copy mode
+
+
+
+xsane-0.89 -> 0.90:
+-------------------
+
+ - replaced "round(i+0.5)" in xsane_save_ps by "ceil(i)" because round is not
+ available on all systems
+
+ - replaced order of includes for sys/types.h ans sys/stat.h in xsane.h
+
+ - removed some includes from some *.c files that are already in xsane.h
+
+ - added to xsane.h:
+ #ifdef HAVE_OS2_H
+ # define strcasecmp stricmp
+ #endif
+
+ - always set position of outputfilename_entry to the right
+
+ - added test for (pid_status < 0) in xsane_fax_send in routine
+ waiting for child process. The program does continue now
+ when the fax is sent.
+
+ - fax setup: added "set program defaults" buttons for efax, hylafax and mgetty+sendfax
+
+ - bindtextdomain for backend is set for sane-"backendname" and sane-backends
+ sane-backends is used when sane-"backendname" does not exist (no "" entry)
+
+ - set codeset for backend textdomain to "UTF-8"
+
+ - xsane-preview.c: motion_notify_event_handler: added
+ if (p->selection_xedge != -1) and if (p->selection_yedge != -1)
+ before setting new coordinates
+
+ - xsane-preview.c: added aspect_ratio function to motion_event_handler
+
+ - added aspect_ratio menu to preview window
+
+ - xsane-save.c: save_scaled_image: added " 0.5" to round image width and height
+
+ - xsane-viewer.c: added widgets to scale dialog that allow defining image size
+
+ - aclocal.m4: added "-lintl" when gettext is found in libintl
+
+ - aclocal.m4: added warning that check for gtk is not possible when pkg-config
+ is not available
+
+ - added romanian (ro.po), vietnamese (vi.po) and danish (da.po) translation
+
+ - updated translation based on xsane-0.89 texts: es, it, ru
+
+ - updated translations: cs, de, fr, nl, sk, tr
+
+ - replaced some signals for spinbutton by signals for adjustments in xsane-viewer.c
+
+ - xsane_mail_dialog_close() and xsane_fax_dialog_close():
+ removed gtk_window_remove_accel_group(GTK_WINDOW(xsane.mail_dialog), xsane.accelerator_group);
+
+ - xsane-scan.c/xsane_read_image_data() and xsane-preview.c/preview_read_image_data:
+ when we have no select_fd then we don't leave the scanloop with break; but
+ we do a gtk_main_loop and continue;
+
+ - xsane-scan.c and xsane-preview.c: WIN32 now also does use the gdk_input_add functions.
+
+ - preview: added output of RGB values of the pixel under the pointer in the preview
+
+ - xsane_create_preview_gamma_curve: replaced 255 by 255.99999 to create correct preview gamma table
+
+
+xsane-0.90 -> 0.91:
+-------------------
+
+ - xsane_generate_dummy_filename(): use temporary file in case xsane.mode == XSANE_GIMP_EXTENSION
+
+ - changed <Shift> accellerator keys that used letters to other key (if possible same key with <Ctrl>,
+ because with these accelartor keys it was not possible to enter these letters in any entries.
+
+ - added accelerator group to mail dialog again, it is now possible to enter all texts and use
+ the accelerator keys at the same time
+
+ - added zoom of image under the pointer to the preview window
+
+ - removed all c++ style remarks "//"
+
+ - changed behaviour of medium definition mode:
+ - The raw histogram now does show the raw data when the selected medium definition
+ is not set to the full range
+ - When creating a new medium definition the name of the used definition is preset
+ - When creating a new medium definition then this definition is selected
+ - When deleting a definition then the previous definition is selected
+
+ - renamed temporary file "preview-level*" to "xsane-preview-level*"
+
+ - position of batch scan dialog is saved in device preferences
+
+ - added chines tranlation (zh)
+
+ - corrected RGBA mode
+
+ - added blocking function to viewer: it is not possible to open two dialogs for the same
+ viewer at the same time
+
+ - added signal handling for SIGINT and SIGHUP
+
+ - in Batch scanning mode sane_cancel is called between all scans! This has to be done
+ because it is not allowed to change scan parameters between sane_start and sane_cancel.
+
+
+xsane-0.91 -> 0.92:
+-------------------
+
+ - moved setting of preview gamma table from preview_start_scan (called 3 times for
+ 3 pass scan) to preview_scan (called once when "preview scan" button is pressed).
+ This should avoid error messages in 3 pass scanning mode
+
+ - removed parameter label from xsane_back_gtk_autobutton_new()
+
+ - xsane_back_gtk_autobutton_update sets range widget to insensitive in automatic mode
+
+ - added jpeg error_exit handler
+
+ - added several tests for errors after wrting image data (full disk) (not complete)
+
+ - if an advanced option is defined in a standard group then this option is listed in
+ the advanced options window now. For this a standard group also is created in the
+ advanced options window. If a group has no items then the group is not shown.
+
+ - an option without SANE_CAP_SOFT_DETECT is not read any more in xsane_control_option
+
+ - updated translations: sv
+
+
+xsane-0.92 -> 0.93:
+-------------------
+
+ - added ranlib to lib/Makefile.in to process liblib.a
+
+ - added 2 calls xsane_find_best_resolution() in xsane_resolution_widget_new()
+ to make sure that active value really is selectable in a list of resolutions
+
+ - added range values 9-25% to scaling list of xsane-viewer: 9, 13, 18, 25, 35, 50, 71, 100, 141, 200, 282, 400
+
+ - when no docviewer is defined at xsane startup (generally when xsane is started the first time) then
+ xsane tries to read the environment variable $BROWSER, if this fails it sets docviewer to netscape.
+
+ - xsane-preferences.c: mail dependant entries are only used when mail is activated
+
+ - replaced label HAVE_LIBGIMP_GIMP_H by HAVE_ANY_GIMP
+ HAVE_ANY_GIMP is defined in configure.in when HAVE_GIMP=yes
+
+ - added HAVE_GIMP_2 parts to xsane.c, xsane.h and xsane-save.c
+ HAVE_GIMP_2 is defined by configure.in when GIMP-2.0 was found
+
+ - created subdirectory m4 and put self written macros from aclocal.m4 to m4/*.m4,
+ copied gtk.m4, gtk-2.0.m4 and gimp-2.0.m4 from aclocal installation to m4 subdirectory,
+ gimp-orauch.m4 contains a modified gimp.m4 that also can handle gimp-1.0.x
+ (the original script only does work when gimptool is installed, gimp-1.0.x comes without it)
+ a new aclocal.m4 can be created with "aclocal -I m4/."
+
+ - configure.in: changed AM_FUNC_ALLOCA to AC_FUNC_ALLOCA
+
+ - configure.in + src/xsane.c: changed PACKAGE_VERSION to XSANE_PACKAGE_VERSION
+ because PACKAGE_VERSION did not work any more, looks like a new feature of aclocal or autoconf
+
+ - updated translations: de, it, da, cs, nl, es, sk, ro, fr
+
+ - po/Makefile.in: added test for msgfmt, gmsgfmt, gencat
+
+xsane-0.93 -> 0.94:
+-------------------
+
+ - changed "µs" to UTF8 codeset
+
+ - added test and warning message if option is defined without name (NULL)
+ to xsane_panel_build
+
+ - added handling for options with of SANE_TYPE_INT and SANE_TYPE FIXED
+ with CONSTRAINT_TYPE_NONE , uses spinbutton, no sliders
+
+ - changed default medium definition of Slide from highlight=30% to highlight=40%
+
+ - xsane_[back_gtk_]option_menu_new: added empty element to end of list
+ xsane_[back_gtk_]option_menu_lookup: test for existing element before comparision
+
+ - moved media defintions from xsane.rc to xsane.mdf
+
+ - preview: preset area: added definition name to context menu items
+
+ - preview: add preset area: you can change the suggested name now
+
+ - medium definitions: added same context menue like in preset area menu,
+ removed buttons "add medium" and "delete medium", they are in the
+ contect menu now
+
+ - added documentation how to use a medium and how to define a medium
+
+ - improved documentation how to edit the preset area definitions
+
+ - in edit medium definition mode autmatic scanarea selection and automatic
+ color correction is disbaled
+
+ - docs: replaced www.mostang.com/sane by www.sane-project.org
+ and sane-devel@mostang.com by sane-devel@lists.alioth.debian.org
+
+ - batch_scan default list is loaded at program startup
+
+ - added test for BUGGY_GDK_INPUT_EXECEPTION in xsane.c and xsane-preview.c
+ when gdk_input_add shall be used
+
+ - changed order in xsane.h: system includes are moved to the beginning of
+ the file. This way it is possible to test for operating system header files
+ to decide how some #defines are made
+
+ - added m4 makro test for msnative struct for windows
+
+ - BUGGY_GDK_INPUT_EXCEPTION is defined for windows
+
+ - src/Makefile.in: removed both "\" in
+ -DPATH_XSANE_DOC_DIR=\$(xsanedocdir) -DPATH_SANE_DATA_DIR=\$(sanedatadir)
+
+ - created new xsane-WIN32-compilation.txt
+
+ - for windows the GTK1 version of xsane_window_get_position is used
+
+ - xsane_back_gtk_get_filename: directory is prepared with ending SLASH
+ instead of ending "/.", this does work with windows now when SLASH is \
+
+
+xsane-0.94 -> 0.95:
+-------------------
+
+ - For xsane-win32 the xsane icon is added to the windows ressource of xsane.exe:
+ added definition of XSANE_ICON=xsane-icon.opc to configure[.in]
+ added creation rule of xsane-icon.opc to src/Makefile[.in]
+ added @XSANE_ICON@ to XSANE_OBJS
+
+ - in xsane_back_gtk_value_update: removed rounding (+ 0.5) in case SANE_TYPE_INT
+
+ - changed menues in the xsane main dialog:
+ - added new menu "Window"
+ - moved Window menue entries form "View" to "Window"
+ - moved "Show resolution list" entry from menu "Preferences" to "View"
+ - moved "Update policy" entry from menu "Preferences" to "View"
+ - moved "Length unit" entry from menu "Preferences" to "View"
+
+ - added test if resolution list is displayed or scale is displayed in
+ xsane_resolution_timer_callback(). Without this test it sometimes
+ happened that pressing CTRL+L (Swap show resolution list) caused a
+ segfault because the timer callback was executed in a moment where the
+ adjustment is not valid
+
+ - added: if (???->window)
+ before each: gdk_window_process_updates(???->window)
+ in xsane-gamma.c, this made problems with gtk+2.x
+
+ - when a postscript file is added to a faxproject then the original name of the
+ file is also used in the faxproject now. The pagecounter is still increased!
+
+ - fax fine mode selection is stored in preferences now
+
+ - handling of viewer filenames changed:
+ - when an image is saved in the viewer then the viewer shows the filename in
+ the window title and the viewer remembers the filename
+ - when the image has been changed after it has been saved then the filename
+ in the window title is shown in brackets
+ - when the filename ends with a number (counter) then the number is automatically
+ increased when the file is saved
+ - when a saved image is cloned then the suggested filename of the cloned image is
+ clone-of-"old-filename"
+
+ - viewer: added support for different modification restrictions
+ - VIEWER_NO_MODIFICATION (only view)
+ - VIEWER_NO_NAME_AND_SIZE_MODIFICATION (some filters allowed but keep size, e.g. fax)
+ - VIEWER_NO_NAME_MODIFICATION (use given name, e.g. fax, mail)
+ - VIEWER_FULL_MODIFICATION (normal mode)
+
+ - added undo function (1 step) to viewer
+
+ - changed menues in the xsane viewer dialog:
+ - added menu "Edit"
+ - added menu "Geometry"
+ - moved Scale function from menu "File" to menu "Geometry"
+ - added rotation and mirror functions to menu "Geometry"
+ - added undo function to menu "Edit"
+
+ - changed button boxes/icons in the xsane viewer dialog:
+ - added button boxes equal to menus: file, edit, filters, geometry
+ - added undo icon to edit box
+ - moved blur uand despeckle icon to filter box
+ - moved scale, rotation and mirrir icons to geometry box
+
+ - replaced several "char buf[???];" by "char filename[PATH_MAX];"
+
+ - changed fax mode:
+ - scanned images are stored in pnm format
+ - for each list entry there is a data and a type information now
+ - internal viewer is used now for pnm-fax files
+ - faxviewer is used for ps files
+ - before sending the fax pnm images are converted into ps images
+ - after sending the fax ps images are erased
+
+ - changed e-mail mode:
+ - scanned images are stored in pnm format
+ - for each list entry there is a data and a type information now
+ - internal viewer is used now for pnm-mail files
+ - before sending the mail pnm images are converted into png images
+ - after sending the mail the png images are erased
+ - mail project status is translated now
+ - BUFIX: end of email text is marked with 0 byte
+
+ - added function xsane_viewer_set_sensitivity()
+ - moved all gtk_widget_set_sensitive(GTK_WIDGET(v->button_box), TRUE/FALSE); to it
+ - added several gtk_widget_set_sensitive(???_menu, TRUE/FALSE); commands to it
+ - moved almost all v->block_actions to it
+ - now it should not be possible any more to crash xsane by closing the viewer
+ while it is saving something
+
+ - added info "reduce to lineart" to image_info + xsane-pnm-header
+
+ - renamed viewer v->reduce_to_lineart to v->allow_reduction_to_lineart
+
+ - save_image_as() now automatically reduces lineart images to pbm before saving
+
+ - new translations: hu
+
+ - updated translations: de, es, ja, pt, pt_BR, sk
+
+
+xsane-0.95 -> 0.96:
+-------------------
+
+ - fax progress bar does not change it's height any more when the fax dialog is resized
+
+ - mail progress bar does not change it's height any more when the mail dialog is resized
+
+ - added lockfile to mail project. The lockfile contains status and progress information
+ from the mail_send_process and is used to display a progress_bar
+
+ - mail status is only translated when it is displayed via gtk, in the data structures
+ the untranslated texts are used
+
+ - changed mail_attach_image_png to mail_attach_image, mime type is defined by parameter
+
+ - added filetype menu to mail dialog with filetypes PNG, JPEG and TIFF
+
+ - bugfix: viewer saves lineart PNM images again as lineart (bug in xsane-0.95)
+
+ - when image is saved as pnm and it is not reduced to lineart then the input file
+ is copied with xsane_copy_file => much faster
+
+ - xsane-save.c: reordered function parameters for saving/conversion functions to
+ (outfile, infile,...) or (output_filename, input_filename, ...)
+ (before we had sometimes infile at first and sometimes outfile at first)
+
+ - xsane_set_sensitivity: mail_dialog and fax_dialog:
+ the sensitivity off all but the progress_bar is set
+
+ - While mail is prepared (images are converted) the xsane sensitivity is set to
+ FALSE to make sure that the xsane mode is not changed in this case.
+ while sending the mail (after preparation) the xsane sensitivity is set to
+ TRUE and the project entry sensitivity is also TRUE, it is allowed to
+ changed xsane mode and to change the mailproject, because the
+ sending of the mail is done in a separate process, so there is no
+ influence by changing the mail project name.
+
+ - Comment:
+ When xsane is closed while sending one or more mails then xsane is closed
+ but the mail sending subprocesses are not terminated.
+
+ - added SMTP (HELO/FROM/RCPT/DATA) errors to mail status
+
+ - added xsane.fax_status, it is saved in the first line of the xsane-fax-list
+ this means that the fax project directories are incompatible to earlier versions!
+
+ - added mail_status and fax_status = ..._CHANGED when a new page is added to
+ the project
+
+ - updated images in documentation
+
+ - updated email modus in documentation
+
+ - email images are named "image-1" instead of "page-1"
+
+ - fax_dialog_delete() and mail_dialog_delete() return TRUE now.
+ In windows it was possible to delete the dialogs what caused
+ a crash when the window should be used or closed.
+
+ - translations: U=updated, N=not updated
+ cs da de es fr hu it ja nl pt pt_BR ro ru sk sl sr sv tr vi zh
+ U U U U U N N U U U U U U N N N N U U N
+
+ - xsane-preferences.c: when identifier is unknown or not a string then
+ the parser does not abort or crash any more.
+ XSane now should not have any problems with old config files.
+
+
+xsane-0.96 -> 0.97:
+-------------------
+
+ - write_smtp_footer(): changed ".\r\n" by "\r\n.\r\n", this
+ solves problems with microsoft exchange servers.
+
+ - translations: U=updated, N=not updated, A=added/new
+ cs da de es fr hu it ja nl pl pt pt_BR ro ru sk sl sr sv tr vi zh
+ N N N N N N U N N A N N N N N N N N N N U
+
+ - xsane-save.c: xsane_copy_file(): removed fclose(infile) and fclose(outfile)
+ this bug caused the error "*** glibc detected *** double free or corruption (!prev): 0x........ ***"
+ with new gelibc versions
+ xsane-save.c: xsane_copy_file_by_name(): added fclose(infile) and fclose(outfile)
+
+ - rmoved gtk_events_pending() from the waiting loop in xsane_back_gtk_get_filename,
+ it looks like gtk_events_pending() increases CPU load very much.
+
+ - xsane-scan.c: function xsane_reduce_to_lineart(): corrected order of filenames in
+ xsane_save_image_as_lineart()
+
+ - xsane_device_dialog(...): uses sane_control_option instead of xsane_control_option
+ to read option number 0. This means that it is not needed that SANE_CAP_SOFT_DETECT
+ is set for option number 0
+