From e7e90b72fd3161c5d55fed49e100781dfa3e9408 Mon Sep 17 00:00:00 2001 From: Mattia Rizzolo Date: Fri, 3 Oct 2014 14:05:01 +0000 Subject: Imported Upstream version 0.84 --- xsane.CHANGES | 1248 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1248 insertions(+) (limited to 'xsane.CHANGES') 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 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 + + - 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 + + - 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 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 + + - 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 ) + + - 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 ) + + - 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 + - turkish translation - thanks to Togan Muftuoglo + - japanese translation - thanks to Kimizuka Tomokazu + - french translation - thanks to Laurent Grawet + + +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 + + - 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 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 + + - 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 + + - 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 + + - added dutch translation (nl.po) - thanks to + "Wim Sinke" + + +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 + + - 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 + -- cgit v1.2.3