This is a list of what I want to change/include for xsane.
If you have any suggestions: mail to Oliver.Rauch@rauch-domain.de

Sign explaination:
 # planned for XSane-1.0.0
 + planned to do this soon/higher priority (but not promised for XSane-1.0)
 - comes later/lower priority

 device-selection:
    - preselect last used device

 save-function:
    - list of last used filenames
    - enable filters in save mode?
    - ps needs a boundingbox, not only a pageboundingbox

 multipage-project:
    - reduce to lineart

 projects:
    # add selection for project directory to setup
    # store mail, fax and multipage projects in project directory
    # add buton "open project" to all project dialogs
    # disable "scan batch" button when we are in project mode
      and the project does not exist

 scan-routines:
    # allow additional image data after each row (is sane standard conform)
    - make visible if the user did a final scan with the recent settings


 fax-function:
++  # add new image types to fax fileformat: tiff/pbm/g3
    # delete page/project: create dialog "really remove?"
    # add possibility to create a multi page file that includes the complete fax
    + zoom ?
    + create lock file with information, add progress bar while spooling fax (how?)
    + add coverpage with editor like in mail function (may be same routines for mail and fax)
    - add send delayed option
    - add options for sender/receiver Name
    - add cancel button while preparing fax pages

 email-function:
    # delete image/project: create dialog "really remove?"
    # test for existance of lockfile?
    - add ASMTP CRAM-MD5 authentication
    - add cancel button while preparing mail images

 gamma function:
    # add target gamma (e.g. for web publishing)
    - correct gtk custom gamma functions and include it
      or better: write an own gamma curve widget

 medium selection:
    - medium definition in dependance of the scanner (?)
      (I am not sure if this makes sense with color managemant)

 medium definition:
    # make grayscale values do not influence color values

 preview function:
    # allow additional image data after each row (is sane standard conform)
    - force size of scanarea in pixels (calculate resolution)
      this will not produce exact results with some scanners!!!

 viewer function:
++  # clone to 8 bit: reduce 16bit image to 8bit
++  # crop to new viewer
++  # fill rectangular area (e.g. for masking unwanted parts of a scanned fax)
+   # print image
-   # show histogram of viewer image

 internal:
++  # add range check / valid value when reading xsane.rc/*.drc files
    # test if image file is writable before scan is started
    + cleanup of configuration file handling
      (problem with old config files should already be solved)
    + add several defaults (fax=> mode=gray, ocr=> mode=gray, ...)
    + test memory after each call of malloc - partly done
    - average of a multiple scan of the same image ???
    - include much more parameters when saving images - mostly done
    - add infrared filter for transmissive rgbi scans (sane-2):
      use next neighbour with high transmission(i) value
      (may be to viewer)
    ? project save/load with preview image, scanmode, .... ???



 include special functions for GNOME/KDE
     - drag and drop for preview or viewer image?
     - other drag and drop functions?
     - image copy/paste functions?

 TWAIN:
    - add a twain-win32 interface (for xsane-win32)
    - define a twain-unix interface in cooperation with TWAIN-group
      (first contact to TWAIN in summer 1999, TWAIN is intersted in
      creating a TWAIN-unix interface that uses sane as scanner driver API)
    - add a twain-unix interface to xsane
 
 WIN32 version of xsane/sane
    - may be xsane-win32 without cygwin.dll on native win32 mode
    - may be later we make a sane-WIN32 version so that the backends do work too


