[gimp-perl] Fix whitespace problems. Bug 727122



commit d08c118ff4ea13688ed6b98a735ee7b0f3700a41
Author: Ed J <m8r-35s8eo mailinator com>
Date:   Thu Mar 27 00:16:26 2014 +0000

    Fix whitespace problems. Bug 727122

 ChangeLog                    |  198 ++++++++--------
 Changes                      |   50 ++--
 Gimp.pm                      |   36 ++--
 Gimp.xs                      |    4 +-
 Gimp/ColorDB.pm              |  406 +++++++++++++++++-----------------
 Gimp/Compat.pm               |   10 +-
 Gimp/Data.pm                 |    6 +-
 Gimp/Feature.pm              |    2 +-
 Gimp/Fu.pm                   |   16 +-
 Gimp/Lib.xs                  |  510 +++++++++++++++++++++---------------------
 Gimp/Util.pm                 |   28 ++--
 Makefile.PL                  |   62 +++---
 Net/Makefile.PL              |    3 -
 Net/Net.pm                   |   14 +-
 Net/Net.xs                   |    8 +-
 README                       |   44 ++--
 TODO                         |    6 +-
 UI/UI.pm                     |  118 +++++-----
 UI/UI.xs                     |    6 +-
 examples/README              |   12 +-
 examples/billboard           |  110 +++++-----
 examples/blended2            |  100 ++++----
 examples/bricks              |   48 ++--
 examples/burst               |  104 +++++-----
 examples/centerguide         |    2 +-
 examples/colorhtml           |   72 +++---
 examples/dataurl             |    4 +-
 examples/ditherize           |   30 ++--
 examples/dots                |   48 ++--
 examples/dust                |    8 +-
 examples/example-fu          |    6 +-
 examples/example-oo          |   12 +-
 examples/examples.TODO       |    2 +-
 examples/fade-alpha          |  130 ++++++------
 examples/feedback            |   40 ++--
 examples/gallery             |  116 +++++-----
 examples/gimp-make-img-map   |   86 ++++----
 examples/glowing_steel       |   10 +-
 examples/gouge               |    6 +-
 examples/guidegrid           |   14 +-
 examples/guides_to_selection |    8 +-
 examples/iland               |   20 +-
 examples/image_tile          |    6 +-
 examples/innerbevel          |   32 ++--
 examples/layerfuncs          |   10 +-
 examples/map_to_gradient     |    2 +-
 examples/mirrorsplit         |    6 +-
 examples/perlotine           |   42 ++--
 examples/pixelmap            |   66 +++---
 examples/prep4gif            |    2 +-
 examples/randomart1          |   72 +++---
 examples/randomblends        |   32 ++--
 examples/repdup              |    2 +-
 examples/roundsel            |   18 +-
 examples/selective_sharpen   |   78 ++++----
 examples/sethspin            |   54 +++---
 examples/testall             |   28 ++--
 examples/translogo           |   94 ++++----
 examples/warp-sharp          |    2 +-
 examples/xachlego            |   44 ++--
 examples/xachshadow          |   22 +-
 examples/xachvision          |    6 +-
 examples/yinyang             |    8 +-
 po/ChangeLog                 |   10 +-
 po/pxgettext                 |    4 +-
 pxgettext                    |    2 +-
 t/run.t                      |    2 +-
 utils/embedxpm               |    5 +-
 utils/gimpdoc                |    8 +-
 utils/scm2perl               |   32 ++--
 70 files changed, 1598 insertions(+), 1606 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 3135f74..a843435 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -63,7 +63,7 @@
 
 2007-12-07  Kevin Cozens  <kcozens cvs gnome org>
 
-       * TODO: Added notes regarding some additional issues. 
+       * TODO: Added notes regarding some additional issues.
 
        * scm2perl: Added support for caddr, cadddr, cdddr, and cddddr.
 
@@ -185,7 +185,7 @@
        * examples/xachvision: s/Distrubuted/Distributed/
 
 2005-10-11  Seth Burgess <sjburges gimp org>
-       * examples/scratches: fixed problem if layersize!=imagesize 
+       * examples/scratches: fixed problem if layersize!=imagesize
        that Carol pointed out.
 
 2005-10-11  Seth Burgess <sjburges gimp org>
@@ -216,30 +216,30 @@
        * examples/testall: script to exercise other scripts (not
          yet complete, but good enough for below)
        * examples/blowinout
-       * examples/bricks  
-       * examples/dust  
-       * examples/example-net  
-       * examples/glowing_steel  
-       * examples/goldenmean  
-       * examples/guides_to_selection  
-       * examples/innerbevel  
-       * examples/mirrorsplit  
-       * examples/perlotine  
-       * examples/repdup  
+       * examples/bricks
+       * examples/dust
+       * examples/example-net
+       * examples/glowing_steel
+       * examples/goldenmean
+       * examples/guides_to_selection
+       * examples/innerbevel
+       * examples/mirrorsplit
+       * examples/perlotine
+       * examples/repdup
        * examples/scratches
        * examples/selective_sharpen
        * examples/tex-to-float
        * examples/xachlego
        * examples/xachshadow: a variety of fixes caught with testing
-       
+
 
 2005-09-14  Seth Burgess <sjburges gimp org>
-       * UI/UI.pm: Fixed up the various selection diaglogs; still has some 
-         brokeness I suspect is on the gimp side, and is VERY slow on the 
+       * UI/UI.pm: Fixed up the various selection diaglogs; still has some
+         brokeness I suspect is on the gimp side, and is VERY slow on the
          patterns.
        * Gimp.pm: Some more pseudoclasses
        * TODO: changed accordingly
-       * examples/map_to_gradient: fixed broken logic on gradient data 
+       * examples/map_to_gradient: fixed broken logic on gradient data
          getting; works again :)
 
 2005-09-13  Seth Burgess <sjburges gimp org>
@@ -262,7 +262,7 @@
 2005-09-08  Seth Burgess <sjburges gimp org>
        * examples/mirrorsplit: undeprecated
        * examples/blended2
-       * examples/innerbevel: check gimp version and use apporpriate API for 
+       * examples/innerbevel: check gimp version and use apporpriate API for
          set_preserve_trans/set_lock_alpha
 
 2005-09-07  Carol Spears <carol gimp org>
@@ -297,47 +297,47 @@
          instead of deprecated gimp_brushes_
 
 2005-09-06  Seth Burgess <sjburges gimp org>
-       * examples/fade-alpha 
-       * examples/dots: removed deprecated stuff, used Context        
+       * examples/fade-alpha
+       * examples/dots: removed deprecated stuff, used Context
 
 2005-09-06  Seth Burgess <sjburges gimp org>
-       * Makefile.PL: require ExtUtils::Depends too. 
+       * Makefile.PL: require ExtUtils::Depends too.
 
 2005-09-06  Seth Burgess <sjburges gimp org>
-       * Makefile.PL: require ExtUtils::PkgConfig in order to avoid it failing 
-         in config.pl silently.  
+       * Makefile.PL: require ExtUtils::PkgConfig in order to avoid it failing
+         in config.pl silently.
 
 2005-09-06  Seth Burgess <sjburges gimp org>
-       * Gimp.pm: add a Context pseudoclass.  Change first match for Layer 
-         pseudoclass to be gimp_drawable_ instead of gimp_layer_, because 
+       * Gimp.pm: add a Context pseudoclass.  Change first match for Layer
+         pseudoclass to be gimp_drawable_ instead of gimp_layer_, because
          gimp_layer_* is largely deprecated now.
        * examples/billboard: use new Context pseudoclass, and other fix above.
 
 2005-09-06  Seth Burgess <sjburges gimp org>
        * config.pl
-       * Makefile.PL: no longer use autoconf (configure) to determine things; 
+       * Makefile.PL: no longer use autoconf (configure) to determine things;
          use ExtUtils::PkgConfig and gimptool instead.
 
-       * Gimp/Lib.xs: have first parameter name checked for either "run_mode" 
-         or "run-mode" when deciding to automagically set the 
-         GIMP_RUN_NONINTERACTIVE (if not set otherwise).  Lets all the tests 
+       * Gimp/Lib.xs: have first parameter name checked for either "run_mode"
+         or "run-mode" when deciding to automagically set the
+         GIMP_RUN_NONINTERACTIVE (if not set otherwise).  Lets all the tests
          pass now!
 
 2005-05-12  Carol Spears <carol gimp org>
-       * examples/glowing_steel: changed deprecated pdb calls. 
-       * examples/glowing_steel: even though Procedure Browser reports mblur 
-         needing only optional center_x and center_y FLOAT, it complains and 
-         stops unless it gets them.  I fed 0,0 to the script. 
+       * examples/glowing_steel: changed deprecated pdb calls.
+       * examples/glowing_steel: even though Procedure Browser reports mblur
+         needing only optional center_x and center_y FLOAT, it complains and
+         stops unless it gets them.  I fed 0,0 to the script.
 
 2005-04-03  Carol Spears <carol gimp org>
-       * examples/burst: changed deprecated pdb calls. 
+       * examples/burst: changed deprecated pdb calls.
        * examples/sethspin: changed deprecated pdb calls, including changing
-         gimp-rotate to a much longer name that also wanted new information 
-         and in a different order.  removed the -1 to the progress_init to 
-         stop those pop-ups. 
+         gimp-rotate to a much longer name that also wanted new information
+         and in a different order.  removed the -1 to the progress_init to
+         stop those pop-ups.
 
 2004-07-30  Seth Burgess <sjburges gimp org>
-       * Gimp/Lib.xs: fixup longstanding bug of not being able to 
+       * Gimp/Lib.xs: fixup longstanding bug of not being able to
                       use RUN_NONINTERACTIVE
        * t/run.t: reenabled the test that uses this
 
@@ -347,11 +347,11 @@
        * Gimp/Fu.pm: bit of pod cleanup
 
 2004-06-28  Seth Burgess <sjburges gimp org>
-       * UI/UI.xs: fixed an XS error that shows up for GCC 2.95; 
+       * UI/UI.xs: fixed an XS error that shows up for GCC 2.95;
          shouldn't create a temp variable in CODE: - put it in PREINIT:
          Reported by Marc 'HE' Brockschmidt <he debian org>.
          Fixed a typo in GradientSelect.
-       
+
        * examples/burst: s/undo_push/undo
 
 2004-04-17  Seth Burgess <sjburges gimp org>
@@ -365,23 +365,23 @@
 2004-05-15  Seth Burgess <sjburges gimp org>
        * Made 2.0 release.
 
-       * Gimp.pm 
+       * Gimp.pm
        * Changes: updated docs to reflect
 
 2004-05-15  Seth Burgess <sjburges gimp org>
        * examples/fade-alpha: s/RADIAL/GRADIENT_RADIAL/ fixes bug #141444
-       * examples/selective_sharpen: change threshold to be zero based, fix 
-         a bug if no selection was present. 
+       * examples/selective_sharpen: change threshold to be zero based, fix
+         a bug if no selection was present.
 
 2004-05-15  Seth Burgess <sjburges gimp org>
-       * examples/selective_sharpen: use a curve suggested by tigert 
-         to "Basically just darken the very dark noisy grays to black 
+       * examples/selective_sharpen: use a curve suggested by tigert
+         to "Basically just darken the very dark noisy grays to black
          and boost everything else."
 
 2004-05-15  Seth Burgess <sjburges gimp org>
-       * examples/selective_sharpen: added new script based on tigert's 
+       * examples/selective_sharpen: added new script based on tigert's
          method.
-       * Makefile.PL: install it 
+       * Makefile.PL: install it
        * MANIFEST: updated accordingly
 
 2004-05-15  Seth Burgess <sjburges gimp org>
@@ -396,7 +396,7 @@
        * Makefile.PL: upped Gtk requirement to at least rev 1.0, removed
        scm2scm from EXE_FILES, removed REC_DECENT warning.
 
-       * Gimp.pm: reordered docuemntation, so that canonicalize_colour 
+       * Gimp.pm: reordered docuemntation, so that canonicalize_colour
        doesn't come first on CPAN listing for GIMP.
 
 2004-05-07  Seth Burgess <sjburges gimp org>
@@ -425,7 +425,7 @@
 
        * Makefile.PL: removed reference to povray
 
-       * t/run.t: removed regex that wasn't matching; use 
+       * t/run.t: removed regex that wasn't matching; use
          --gimpplugindir instead.  'make test' should work for more people.
 
        * examples/pixelmap: strip \n's from image title (prevent gui oddity)
@@ -434,18 +434,18 @@
        * examples/animate_cells:  s/channel_ops_duplicate/image_duplicate/
        * examples/billboard:  s/push_undo/undo/g
        * examples/clear_alpha: s/push_undo/undo/g (broken still)
-       * examples/dataurl: Changed png to pass right # of parameters, changed 
-       some deprecated functions, fixed some sub's in Gimp.xs for the 
+       * examples/dataurl: Changed png to pass right # of parameters, changed
+       some deprecated functions, fixed some sub's in Gimp.xs for the
        export functionality.
        * examples/ditherize: s/push_undo/undo/g
-       * examples/example-fu: uncommented the now functional widgets for 
+       * examples/example-fu: uncommented the now functional widgets for
        gradient, brush, texture.  Added a couple other comments.
        * examples/example-net: commented
-       * examples/example-oo:  use Gimp qw(:auto) important! Also, 
+       * examples/example-oo:  use Gimp qw(:auto) important! Also,
        register as a PLUGIN not an EXTENSION.  Works now!
-       * exmaples/fade-alpha: put in the <Image>/Layer/Transparency menu 
+       * exmaples/fade-alpha: put in the <Image>/Layer/Transparency menu
        * examples/gouge: uncommented 2 registration strings.
-       * examples/guides_to_selection: reworded description, so it will 
+       * examples/guides_to_selection: reworded description, so it will
        hopefully be a bit more obvious what it does.
        * examples/iland: changed plug_in_rotate calls to work-around bug
        of not being able to call with RUN_NONINTERACTIVE
@@ -453,12 +453,12 @@
        can't edit yet.  Also fixed a Gtk2 problem (add_with_viewport).  I
        can't get this to do anything useful.
        * examples/scratches: s/VALUE_LUT/HISTOGRAM_VALUE/
-       
+
        * Gimp.pm: previously neglected to rename VALUE_LUT in the subs; fixed.
        Added some more EXPORT_CAN_HANDLE*.
-       * Gimp.xs: corresponding EXPORT_CAN_HANDLE* additions. 
-       
-       * examples/examples.TODO: updated accordingly + failures.  Now have 
+       * Gimp.xs: corresponding EXPORT_CAN_HANDLE* additions.
+
+       * examples/examples.TODO: updated accordingly + failures.  Now have
        everything sorted into working and not working.
 
 2004-04-24  Seth Burgess <sjburges gimp org>
@@ -534,7 +534,7 @@
        * examples/xachlego
        * examples/xachshadow
        * examples/xachvision
-       * examples/yinyang: added a LICENSING heading and filled out 
+       * examples/yinyang: added a LICENSING heading and filled out
        to the best of my knowledge
 
        * examples/examples.TODO: updated accordingly
@@ -574,36 +574,36 @@
        * examples/tex-to-float: fixed, erased various debug output
 
 2004-3-28 Seth Burgess <sjburges gimp org>
-       * UI/Makefile.PL: removed pkg->add_define call, since its no longer in 
-       Extutils::Depends 0.20x.  Need to generate another release for this, 
-       since its a blocker for people installing (a somewhat-important step).   
+       * UI/Makefile.PL: removed pkg->add_define call, since its no longer in
+       Extutils::Depends 0.20x.  Need to generate another release for this,
+       since its a blocker for people installing (a somewhat-important step).
 2004-3-27 Seth Burgess <sjburges gimp org>
        * GIMP.pm: updated enums
-       
-       * examples/blended2: fixed, updated enums, removed 
+
+       * examples/blended2: fixed, updated enums, removed
        extraneous 'exit main'.
        * examples/tex-to-float: moved to Render
        * examples/translogo: moved to Web
        * examples/webify: s/push_group/push/
 
-       * examples/fade-alpha 
-       * examples/innerbevel 
+       * examples/fade-alpha
+       * examples/innerbevel
        * examples/randomart1: updated enums
 
        * examples/examples.TODO: updated accordingly
 
 2004-3-22 Seth Burgess <sjburges gimp org>
        * Makefile.PL: don't install known broken plugins
-       * TODO: split between Marc and Seth lists 
+       * TODO: split between Marc and Seth lists
        * Gimp.pm: updated POD a bit to reflect a bit more reality
-       
+
        * examples/fade-alpha: renamed registering to fade_alpha, fixed typos
-       * examples/frame_filter: moved to Filters/Generic/ 
+       * examples/frame_filter: moved to Filters/Generic/
        * examples/pixelmap: moved to Filters/Generic/
        * examples/examples.TODO: updated accordingly + can't use example-oo
 
 2004-3-21 Manish Singh <yosh gimp org>
-       * configure: Quick fix to make it build with current gimp. Real fix 
+       * configure: Quick fix to make it build with current gimp. Real fix
          is a lot more work, so punt for later.
 
 2004-3-20 Seth Burgess <sjburges gimp org>
@@ -614,33 +614,33 @@
        * README: changed some typos; most things with gtk do work now; make
          test could be broken, probably needs some attention; removed linux
          plug (don't think its required any more).  Removed python reference.
-       
+
        * Gimp/UI.pm: updated PF_TEXT for Gtk2 (stock buttons, sizing)
          Also re-enabled help.  Want to use Gtk2::Podviewer if available
          for the POD viewing portion, and fall back to Gimp::POD.
        * Gimp/Fu.pm: corrected description of PF_TEXT
-       
+
        * examples/examples.TODO: tested pixelmap.  It needs more docs, but
          works pretty well (uses PF_TEXT).
 
 2004-3-08 Seth Burgess <sjburges gimp org>
        * Gimp.pm: removed debug code
-       
-       * UI/UI.pm: made Gimp::Fu dialogs much more similar to 
-         script-fu in appearance.  Did away with "Previous" button, 
-         at least temporarily.  Help button is currently commented 
-         out, need to place it to right of blurb.  Removed FG/BG 
-         buttons (dragging works, so shouldn't be needed.  Made 
+
+       * UI/UI.pm: made Gimp::Fu dialogs much more similar to
+         script-fu in appearance.  Did away with "Previous" button,
+         at least temporarily.  Help button is currently commented
+         out, need to place it to right of blurb.  Removed FG/BG
+         buttons (dragging works, so shouldn't be needed.  Made
          width adjustable, changed text/widget alignment.
 
-       * examples/glowing_steel: s/bucket_fill/edit_bucket_fill 
+       * examples/glowing_steel: s/bucket_fill/edit_bucket_fill
        * examples/innerbevel: better defaults, better naming, removed debug
          code, more fudging.
        * examples/warp-sharp: s/undo_push/undo/, added edge detect param
        * examples/examples.TODO: updated accordingly
 
 2004-2-29 Seth Burgess <sjburges gimp org>
-       * Gimp.pm: change canonicalize_color to detect and fix 0-255=>0-1.0 
+       * Gimp.pm: change canonicalize_color to detect and fix 0-255=>0-1.0
          problems for a reference passed in.  Still has lousy error detection.
          Can hose up gimp's color selection pretty well.  Needs more testing.
 
@@ -655,15 +655,15 @@
 
        * examples/dust: removed deprecated stuff
        * examples/map_to_gradient: added param to get non-reversed gradient
-       * examples/mirrorsplit: changed algorithm to add a layer; can't flip 
+       * examples/mirrorsplit: changed algorithm to add a layer; can't flip
          without it being added now.  Changed deprecated stuff.
        * examples/prep4gif: s/layer_set_visible/drawable_set_visible/
 
        * examples/examples.TODO: changed accordingly.
 
 2004-2-25 Seth Burgess <sjburges gimp org>
-       * examples/bricks: brought up to date now that we have a pattern 
-       selector.  Still has some work that could be done, but 
+       * examples/bricks: brought up to date now that we have a pattern
+       selector.  Still has some work that could be done, but
        functionality is restored.
        * examples/examples.TODO: changed accordingly.
 
@@ -674,7 +674,7 @@
        * UI/UI.pm: Gradients are back in!
 
 2004-2-22 Seth Burgess <sjburges gimp org>
-       * UI/basewidget.pm: still needs to compile and return a value (for now) 
+       * UI/basewidget.pm: still needs to compile and return a value (for now)
        so stuff should work again.
 
 2004-2-21 Seth Burgess <sjburges gimp org>
@@ -692,7 +692,7 @@
        * UI/UI.pm: Used Gtk2 to make PatternSelection work.  Stripped out the
        basewidget stuff.  Found that you cannot use the "Subclass" of Gtk2
        for implementing this, because of the dynamic loading (thanks muppet!).
-       Selection dialog is still pretty ugly at this point, but it should 
+       Selection dialog is still pretty ugly at this point, but it should
        at least work.
 
        * UI/basewidget.pm: removed contents of file
@@ -706,7 +706,7 @@
        Changes to find which revision has which features).
 
 2003-12-28 Seth Burgess <sjburges gimp org>
-       * UI/UI.xs: add a call to gimp_stock_init() to UI startup, so we 
+       * UI/UI.xs: add a call to gimp_stock_init() to UI startup, so we
        get the gimp-* stock icons.  I'm not sure this is the proper way to
        do this, but it works... still not familiar enough with xs.
 
@@ -714,30 +714,30 @@
        * examples/glowing_steel: changed color specifiers to be 0-1.0
 
 2003-12-24 Seth Burgess <sjburges gimp org>
-       
-       * UI/UI.pm: forgot this one.  
+
+       * UI/UI.pm: forgot this one.
        Removed camel logo.  I don't want users to be aware of a difference.
 
        s/get_name/drawable_get_name/
        s/patterns_list/patterns_list("")/
        s/gradients_get_list/gradients_get_list("")/
-       
+
 2003-12-24 Seth Burgess <sjburges gimp org>
 
        * I'm taking over maintainence of gimp-perl for now, knowing little
-       about perl packages or some of the deeper magick in gimp-perl.  
+       about perl packages or some of the deeper magick in gimp-perl.
        Any assistance is appreciated.
-       
+
        * Changes: This file will now be in a gimp-like Changelog format,
-       that will record changes a little better than the previous method 
+       that will record changes a little better than the previous method
        (see below).
 
-       * Gimp/Util.pm: s/->image/->get_image/, 
+       * Gimp/Util.pm: s/->image/->get_image/,
                        s/set_visible/drawable_set_visible/
        * Gimp/Lib.xs: s/drawable_image_id/drawable_get_image/
        * Gimp/Feature.pm: removed Gtk package references, replaced with Gtk2
-       
-       * examples/examples.TODO: added.  Keep track of testing of 
+
+       * examples/examples.TODO: added.  Keep track of testing of
        scripts and plans for their futures.
 
        * examples/Create_Images
@@ -767,9 +767,9 @@
        * examples/translogo
        * examples/xachlego
        * examples/xachshadow
-       * examples/xachvision 
-       * examples/yinyang: 
-         removal of 'running under a shell' check; these are added at 
+       * examples/xachvision
+       * examples/yinyang:
+         removal of 'running under a shell' check; these are added at
          installation-time, so were double-checked after install.
 
          s/gimp_image_active_drawable/gimp_image_get_active_drawable/
@@ -787,7 +787,7 @@
 
        * examples/PDB: updated with a partial Gtk2 conversion; needs more
          work still.
-       * examples/dots: put in Render/Pattern/Dots instead of Render/Dots 
+       * examples/dots: put in Render/Pattern/Dots instead of Render/Dots
        * examples/randomart1: removed last random selection, fixed colors
          to be within [0,0,0]-[1,1,1]
        * examples/randomblends: fixed off-by-one error in loop
diff --git a/Changes b/Changes
index 49d9315..0033b9c 100644
--- a/Changes
+++ b/Changes
@@ -4,7 +4,7 @@ Please add detailed ChangeLog entries to the ChangeLog file, keeping this
 file to document revision changes (similar to a GNU-style NEWS file).
 
 2.2   Fri Dec  7, 2007
-       - TODO: Added notes regarding some additional issues. 
+       - TODO: Added notes regarding some additional issues.
        - gimpdoc: Added POD information based on man page created by
          Ben Gertzfield. Fixes bug #117349.
        - Gimp.pm: Fixed parsing of colour strings of format #ff00ff.
@@ -31,12 +31,12 @@ file to document revision changes (similar to a GNU-style NEWS file).
        - added plug-in selective_sharpen
         - removed gobs of plug-ins that were non-functional/non-useful
         - documentation cleanup
-       - Removed 'embed' whose purpose was unclear to me and wasn't built 
+       - Removed 'embed' whose purpose was unclear to me and wasn't built
           anyway
-       - Removed 'scm2scm'.  
-          See http://pages.interlog.com/~kcozens/software/gimp/updates.html 
+       - Removed 'scm2scm'.
+          See http://pages.interlog.com/~kcozens/software/gimp/updates.html
           for a perl script with no dependencies that does the same thing.
-          Removed Rec::Decent requirement, though scm2perl is still there 
+          Removed Rec::Decent requirement, though scm2perl is still there
           and has said requirement.
 
 2.0pre3  Sun Apr 25, 2004
@@ -44,13 +44,13 @@ file to document revision changes (similar to a GNU-style NEWS file).
        - make test works
        - licensing updates for plug-ins
        - tons of bugfixes, see ChangeLog
-       
+
 2.0pre2  Sun Mar 28, 2004
        - change in UI/Makefile.PL to work with latest ExtUtils::Depends.
        - enum updates, script updates.
 
-2.0pre1  Mon Mar 22, 2004 
-        - prerelease to have something available when The GIMP 2.0 ships.  
+2.0pre1  Mon Mar 22, 2004
+        - prerelease to have something available when The GIMP 2.0 ships.
          Its quite usable now, but requires a good bit of testing and polish
          yet.
        - bumped version number to 2.0 purely to be similar to the Gimp version
@@ -72,11 +72,11 @@ file to document revision changes (similar to a GNU-style NEWS file).
            examples/frame_reshuffle: put in Layer rather than Layers
 
           Gimp.pm: Require version 1.3 of Gimp now
-          
+
           UI/Ui.xs
-          UI/typemap: Change to use GimpFileEntry rather than 
-          GimpFileSelection to match the move in Gimp 
-         
+          UI/typemap: Change to use GimpFileEntry rather than
+          GimpFileSelection to match the move in Gimp
+
           UI/basewidget.pm: changed Gtk to Gtk2
           Gimp/Feature.pm: bumped the Gtk to Gtk2; no longer will
           install with the Gtk module, requires Gtk2
@@ -86,22 +86,22 @@ file to document revision changes (similar to a GNU-style NEWS file).
 
            Gimp/Util.pm : changed enum to BACKGROUND_FILL
           Minor fixes to some scripts for Gimp 1.3.x comformance:
-           examples/innerbevel: changed font handling, blend arguments, 
+           examples/innerbevel: changed font handling, blend arguments,
                                color spec. to be 0.0-1.0.
-          examples/guide_remove 
+          examples/guide_remove
           examples/centerguide
            examples/guidegrid
            examples/guides_to_selection: changed to <Image>/Image/Guides/
 
-          examples/fade-alpha: updated GTK to be 2.x confromant, 
-                               changed blend parameters, 
-                               changed color specifiers to be 0.0-1.0  
+          examples/fade-alpha: updated GTK to be 2.x confromant,
+                               changed blend parameters,
+                               changed color specifiers to be 0.0-1.0
 
           examples/burst: changed to PF_SPINNERs
 
            examples/randomblends: s/set_active/set_gradient/,
                                   s/get_active/get_gradient/,
-                                 changed to PF_SPINNERs, 
+                                 changed to PF_SPINNERs,
                                  changed number of blend arguments
 
           examples/prep4gif: channel_op PDB changed to $img->*
@@ -154,7 +154,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
 1.201 Thu Aug 24 23:44:43 CEST 2000
        ** LAST VERSION THAT WORKS WITH 1.0 **
        - s/gimp_plugin_domain_add/gimp_plugin_domain_register/
-       - really moved sethspin into <Image>/Filters (neo) 
+       - really moved sethspin into <Image>/Filters (neo)
        - moved sethspin back to Filters/Animation (sjb)
         - fixed problem in Net.pm/try_connect (AF_LOCAL vs. PF_UNIX, or
           "sysv rules the world, but sun shines everyhwere".
@@ -322,7 +322,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
         - gimpdocs troff output did not include the description.
         - allow NULL strings in arrays to be returned as undef.
         - gimpdoc now outputs the menupath and other info as well.
-        
+
 1.12  Tue Aug 24 19:30:29 CEST 1999
        - do not emit warning for function names prefixed with "+".
         - removed non-c89 ansi'isms from Lib.xs.
@@ -354,7 +354,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
         - fixed a "Attempt to free unreferenced scalar" bug that was caused
           by passing undef for strings.
         - moved interact & friends into Gimp::UI.
-        
+
 1.1   Fri Jul 30 07:37:30 CEST 1999
        - one of the most successful releases, in terms of features & bugfixes.
         - it was also a long night. And expensive (irc).
@@ -503,7 +503,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
         - reenabled all of t/run.t again, fixed to to actually _work_.
         - rearranged gimp link flags into LDDLFLAGS (hack! bug in gtk/gimp!).
         - fixed RUN_FULLINTERACTIVE.
-        
+
 1.082 Tue May 11 19:02:30 CEST 1999
        - fixed sunos/solaris socketpair "protocol not implemented" problem.
         - added the Gimp::register_callback function and made Gimp::Fu use it.
@@ -582,7 +582,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
         - bangpath is no longer updated inplace. As a result, only plug-ins
           that are going to get installed are being fixed, the examples are
           not.
-       - fixed error handling bugs in Gimp::Lib, streamlined and improved 
+       - fixed error handling bugs in Gimp::Lib, streamlined and improved
          error handling.
        - reworked callback handling, should be more flexible in the future.
         - changed implementation of PF_CUSTOM (still untested).
@@ -652,7 +652,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
        - implemented PF_CUSTOM (untested).
        - added Gimp::UI::ColorSelectbutton, I was utterly fed up with
          GtkColorSelectbutton never working.
-       
+
 1.055 Mon Feb 22 22:38:44 CET 1999
        - applied seth's script changes.
        - gimp11ified some plug-ins.
@@ -700,7 +700,7 @@ file to document revision changes (similar to a GNU-style NEWS file).
        - added view3d.pl to examples (untested)
        - Gimp::Util is reborn (give it a try and contribute!)
        - more Gtk changes (tested with Gtk-0.5 and gtk-1.1.x, uh-oh)
-       - faster startup by not loading Gtk by default ;)
+       - faster startup by not loading Gtk by default ;)
 
 1.05  Fri Dec 18 22:05:25 CET 1998
        - some 5.006 compatibility fixes
diff --git a/Gimp.pm b/Gimp.pm
index 86bb056..21f76a9 100644
--- a/Gimp.pm
+++ b/Gimp.pm
@@ -404,8 +404,8 @@ _pseudoclass qw(Item                ), @item_prefixes;
 _pseudoclass qw(Layer          gimp_layer_ gimp_floating_sel_), @drawable_prefixes;
 _pseudoclass qw(Image          ), @image_prefixes;
 _pseudoclass qw(Drawable       ), @drawable_prefixes;
-_pseudoclass qw(Selection      gimp_selection_);
-_pseudoclass qw(Vectors        gimp_vectors_);
+_pseudoclass qw(Selection      gimp_selection_);
+_pseudoclass qw(Vectors                gimp_vectors_);
 _pseudoclass qw(Channel                gimp_channel_ gimp_selection_), @drawable_prefixes;
 _pseudoclass qw(Display                gimp_display_ gimp_);
 _pseudoclass qw(Plugin         ), @plugin_prefixes;
@@ -459,7 +459,7 @@ sub name($)         { $_[0]->[0] }
 sub flags($)           { $_[0]->[1] }
 sub data($)            { $_[0]->[2] }
 sub compare($$)                { $_[0]->[0] eq $_[1]->[0] and
-                         $_[0]->[1] eq $_[1]->[1] and 
+                         $_[0]->[1] eq $_[1]->[1] and
                          $_[0]->[2] eq $_[1]->[2] }
 sub new($$$$)          { shift; [ _] }
 
@@ -479,7 +479,7 @@ This is a release of gimp-perl for gimp-2.8.  It is not compatible with
 version 2.6 or below of GIMP.
 
 This is mostly a reference manual. For a quick intro, look at
-L<Gimp::Fu>. 
+L<Gimp::Fu>.
 
 =head1 SYNOPSIS
 
@@ -496,7 +496,7 @@ available to your plug-in.
 =item :auto
 
 Import useful constants, like RGB, RUN_NONINTERACTIVE... as well as all
-libgimp and pdb functions automagically into the caller's namespace. 
+libgimp and pdb functions automagically into the caller's namespace.
 This will overwrite your AUTOLOAD function, if you have one. The AUTOLOAD
 function that gets installed must only be used in OO mode - either as
 an object or a class method call - the only exception is when the first
@@ -574,7 +574,7 @@ syntax, i.e. C<gimp_image_new(600,300,RGB)> is the same as C<new
 Image(600,300,RGB)>
 
 =item *
-Networked plug-ins look/behave the same as those running from within gimp.  
+Networked plug-ins look/behave the same as those running from within gimp.
 
 =item *
 Gimp::Fu will start GIMP for you, if it cannot connect to an existing
@@ -641,7 +641,7 @@ of C<Gimp::main>:
  exit main; # Gimp::Fu::main is exported by default when using Gimp::Fu
 
 This is similar to Gtk, Tk or similar modules, where you have to call the
-main eventloop. 
+main eventloop.
 
 Although you call C<exit> with the result of C<main>, the main function
 might not actually return. This depends on both the version of GIMP and
@@ -684,7 +684,7 @@ B<PDB> (the Procedural DataBase), and functions from B<libgimp> (the
 C-language interface library).
 
 You can get a listing and description of every PDB function by starting
-the B<DB Browser> extension in GIMP's B<Xtns> menu (but remember to change 
+the B<DB Browser> extension in GIMP's B<Xtns> menu (but remember to change
  "-" (dashes) to  "_" (underscores)).
 
 B<libgimp> functions can't be traced (and won't be traceable in the
@@ -720,7 +720,7 @@ not as Methods (C<Gimp-E<gt>>).
 
 =item main(), Gimp::main()
 
-Should be called immediately when perl is initialized. Arguments are not 
+Should be called immediately when perl is initialized. Arguments are not
 supported. Initializations can later be done in the init function.
 
 =item Gimp::gtk_init()
@@ -782,11 +782,11 @@ or a code reference (\&my_make).
 
 =item Gimp::canonicalize_colour/Gimp::canonicalize_color
 
-Take in a color specifier in a variety of different formats, and return 
-a valid gimp color specifier, consisting of 3 or 4 numbers in the range 
+Take in a color specifier in a variety of different formats, and return
+a valid gimp color specifier, consisting of 3 or 4 numbers in the range
 between 0 and 1.0.
 
-For example: 
+For example:
 
  $color = canonicalize_colour ("#ff00bb");
  $color = canonicalize_colour ([255,255,34]);
@@ -813,7 +813,7 @@ Mostly same as gimp_install_procedure from the C library. The
 parameters and return values for the functions are specified as an
 array ref containing either integers or array-refs with three elements,
 [PARAM_TYPE, \"NAME\", \"DESCRIPTION\"].
- 
+
 =item gimp_progress_init(message,[])
 
 Initializes a progress bar. In networked modules this is a no-op.
@@ -871,7 +871,7 @@ is described. See L<Gimp::OO> for details on using the object oriented
 syntax.  The 'gimpdoc' script will also return OO varients when functions
 are described.  For example:
 
-gimpdoc image_new 
+gimpdoc image_new
 
 has a section:
 
@@ -895,11 +895,11 @@ make sure to do so in a C<BEGIN> block.
 
 =item Gimp::set_trace (tracemask)
 
-Tracking down bugs in gimp scripts is difficult, due to a lack of 
-reasonable error messages.  Often, if anything goes wrong, you only get 
-an execution failure. 
+Tracking down bugs in gimp scripts is difficult, due to a lack of
+reasonable error messages.  Often, if anything goes wrong, you only get
+an execution failure.
 
-You can switch on tracing to see which parameters are used to call pdb 
+You can switch on tracing to see which parameters are used to call pdb
 functions, so you can at least see what was called to cause the error.
 
 This function is never exported, so you have to qualify it when calling.
diff --git a/Gimp.xs b/Gimp.xs
index 8bbdf1d..63aea45 100644
--- a/Gimp.xs
+++ b/Gimp.xs
@@ -244,11 +244,11 @@ BOOT:
    ADD_GIMP_CONST("PARASITE_ATTACH_PARENT", GIMP_PARASITE_ATTACH_PARENT);
    ADD_GIMP_CONST("PARASITE_PARENT_PERSISTENT", GIMP_PARASITE_PARENT_PERSISTENT);
    ADD_GIMP_CONST("PARASITE_PARENT_UNDOABLE", GIMP_PARASITE_PARENT_UNDOABLE);
-   
+
    ADD_GIMP_CONST("PARASITE_ATTACH_GRANDPARENT", GIMP_PARASITE_ATTACH_GRANDPARENT);
    ADD_GIMP_CONST("PARASITE_GRANDPARENT_PERSISTENT", GIMP_PARASITE_GRANDPARENT_PERSISTENT);
    ADD_GIMP_CONST("PARASITE_GRANDPARENT_UNDOABLE", GIMP_PARASITE_GRANDPARENT_UNDOABLE);
-   
+
    ADD_GIMP_CONST("TRACE_NONE", TRACE_NONE);
    ADD_GIMP_CONST("TRACE_CALL", TRACE_CALL);
    ADD_GIMP_CONST("TRACE_TYPE", TRACE_TYPE);
diff --git a/Gimp/ColorDB.pm b/Gimp/ColorDB.pm
index 8109d6a..804ea47 100644
--- a/Gimp/ColorDB.pm
+++ b/Gimp/ColorDB.pm
@@ -470,107 +470,107 @@ __DATA__
 205 155         29             goldenrod3
 139 105         20             goldenrod4
 174 174 174            gray
-0 0 0                  gray0
-3 3 3                  gray1
-26 26 26               gray10
-255 255 255            gray100
-28 28 28               gray11
-31 31 31               gray12
-33 33 33               gray13
-36 36 36               gray14
-38 38 38               gray15
-41 41 41               gray16
-43 43 43               gray17
-46 46 46               gray18
-48 48 48               gray19
-5 5 5                  gray2
-51 51 51               gray20
-54 54 54               gray21
-56 56 56               gray22
-59 59 59               gray23
-61 61 61               gray24
-64 64 64               gray25
-66 66 66               gray26
-69 69 69               gray27
-71 71 71               gray28
-74 74 74               gray29
-8 8 8                  gray3
-77 77 77               gray30
-79 79 79               gray31
-82 82 82               gray32
-84 84 84               gray33
-87 87 87               gray34
-89 89 89               gray35
-92 92 92               gray36
-94 94 94               gray37
-97 97 97               gray38
-99 99 99               gray39
-10 10 10               gray4
-102 102 102            gray40
-105 105 105            gray41
-107 107 107            gray42
-110 110 110            gray43
-112 112 112            gray44
-115 115 115            gray45
-117 117 117            gray46
-120 120 120            gray47
-122 122 122            gray48
-125 125 125            gray49
-13 13 13               gray5
-127 127 127            gray50
-130 130 130            gray51
-133 133 133            gray52
-135 135 135            gray53
-138 138 138            gray54
-140 140 140            gray55
-143 143 143            gray56
-145 145 145            gray57
-148 148 148            gray58
-150 150 150            gray59
-15 15 15               gray6
-153 153 153            gray60
-156 156 156            gray61
-158 158 158            gray62
-161 161 161            gray63
-163 163 163            gray64
-166 166 166            gray65
-168 168 168            gray66
-171 171 171            gray67
-173 173 173            gray68
-176 176 176            gray69
-18 18 18               gray7
-179 179 179            gray70
-181 181 181            gray71
-184 184 184            gray72
-186 186 186            gray73
-189 189 189            gray74
-191 191 191            gray75
-194 194 194            gray76
-196 196 196            gray77
-199 199 199            gray78
-201 201 201            gray79
-20 20 20               gray8
-204 204 204            gray80
-207 207 207            gray81
-209 209 209            gray82
-212 212 212            gray83
-214 214 214            gray84
-217 217 217            gray85
-219 219 219            gray86
-222 222 222            gray87
-224 224 224            gray88
-227 227 227            gray89
-23 23 23               gray9
-229 229 229            gray90
-232 232 232            gray91
-235 235 235            gray92
-237 237 237            gray93
-240 240 240            gray94
-242 242 242            gray95
-245 245 245            gray96
-247 247 247            gray97
-250 250 250            gray98
-252 252 252            gray99
+0 0 0                  gray0
+3 3 3                  gray1
+26 26 26               gray10
+255 255 255            gray100
+28 28 28               gray11
+31 31 31               gray12
+33 33 33               gray13
+36 36 36               gray14
+38 38 38               gray15
+41 41 41               gray16
+43 43 43               gray17
+46 46 46               gray18
+48 48 48               gray19
+5 5 5                  gray2
+51 51 51               gray20
+54 54 54               gray21
+56 56 56               gray22
+59 59 59               gray23
+61 61 61               gray24
+64 64 64               gray25
+66 66 66               gray26
+69 69 69               gray27
+71 71 71               gray28
+74 74 74               gray29
+8 8 8                  gray3
+77 77 77               gray30
+79 79 79               gray31
+82 82 82               gray32
+84 84 84               gray33
+87 87 87               gray34
+89 89 89               gray35
+92 92 92               gray36
+94 94 94               gray37
+97 97 97               gray38
+99 99 99               gray39
+10 10 10               gray4
+102 102 102            gray40
+105 105 105            gray41
+107 107 107            gray42
+110 110 110            gray43
+112 112 112            gray44
+115 115 115            gray45
+117 117 117            gray46
+120 120 120            gray47
+122 122 122            gray48
+125 125 125            gray49
+13 13 13               gray5
+127 127 127            gray50
+130 130 130            gray51
+133 133 133            gray52
+135 135 135            gray53
+138 138 138            gray54
+140 140 140            gray55
+143 143 143            gray56
+145 145 145            gray57
+148 148 148            gray58
+150 150 150            gray59
+15 15 15               gray6
+153 153 153            gray60
+156 156 156            gray61
+158 158 158            gray62
+161 161 161            gray63
+163 163 163            gray64
+166 166 166            gray65
+168 168 168            gray66
+171 171 171            gray67
+173 173 173            gray68
+176 176 176            gray69
+18 18 18               gray7
+179 179 179            gray70
+181 181 181            gray71
+184 184 184            gray72
+186 186 186            gray73
+189 189 189            gray74
+191 191 191            gray75
+194 194 194            gray76
+196 196 196            gray77
+199 199 199            gray78
+201 201 201            gray79
+20 20 20               gray8
+204 204 204            gray80
+207 207 207            gray81
+209 209 209            gray82
+212 212 212            gray83
+214 214 214            gray84
+217 217 217            gray85
+219 219 219            gray86
+222 222 222            gray87
+224 224 224            gray88
+227 227 227            gray89
+23 23 23               gray9
+229 229 229            gray90
+232 232 232            gray91
+235 235 235            gray92
+237 237 237            gray93
+240 240 240            gray94
+242 242 242            gray95
+245 245 245            gray96
+247 247 247            gray97
+250 250 250            gray98
+252 252 252            gray99
 0 255 0                        green
 159 211 0              green yellow
   0 255          0             green1
@@ -578,107 +578,107 @@ __DATA__
   0 205          0             green3
   0 139          0             green4
 174 174 174            grey
-0 0 0                  grey0
-3 3 3                  grey1
-26 26 26               grey10
-255 255 255            grey100
-28 28 28               grey11
-31 31 31               grey12
-33 33 33               grey13
-36 36 36               grey14
-38 38 38               grey15
-41 41 41               grey16
-43 43 43               grey17
-46 46 46               grey18
-48 48 48               grey19
-5 5 5                  grey2
-51 51 51               grey20
-54 54 54               grey21
-56 56 56               grey22
-59 59 59               grey23
-61 61 61               grey24
-64 64 64               grey25
-66 66 66               grey26
-69 69 69               grey27
-71 71 71               grey28
-74 74 74               grey29
-8 8 8                  grey3
-77 77 77               grey30
-79 79 79               grey31
-82 82 82               grey32
-84 84 84               grey33
-87 87 87               grey34
-89 89 89               grey35
-92 92 92               grey36
-94 94 94               grey37
-97 97 97               grey38
-99 99 99               grey39
-10 10 10               grey4
-102 102 102            grey40
-105 105 105            grey41
-107 107 107            grey42
-110 110 110            grey43
-112 112 112            grey44
-115 115 115            grey45
-117 117 117            grey46
-120 120 120            grey47
-122 122 122            grey48
-125 125 125            grey49
-13 13 13               grey5
-127 127 127            grey50
-130 130 130            grey51
-133 133 133            grey52
-135 135 135            grey53
-138 138 138            grey54
-140 140 140            grey55
-143 143 143            grey56
-145 145 145            grey57
-148 148 148            grey58
-150 150 150            grey59
-15 15 15               grey6
-153 153 153            grey60
-156 156 156            grey61
-158 158 158            grey62
-161 161 161            grey63
-163 163 163            grey64
-166 166 166            grey65
-168 168 168            grey66
-171 171 171            grey67
-173 173 173            grey68
-176 176 176            grey69
-18 18 18               grey7
-179 179 179            grey70
-181 181 181            grey71
-184 184 184            grey72
-186 186 186            grey73
-189 189 189            grey74
-191 191 191            grey75
-194 194 194            grey76
-196 196 196            grey77
-199 199 199            grey78
-201 201 201            grey79
-20 20 20               grey8
-204 204 204            grey80
-207 207 207            grey81
-209 209 209            grey82
-212 212 212            grey83
-214 214 214            grey84
-217 217 217            grey85
-219 219 219            grey86
-222 222 222            grey87
-224 224 224            grey88
-227 227 227            grey89
-23 23 23               grey9
-229 229 229            grey90
-232 232 232            grey91
-235 235 235            grey92
-237 237 237            grey93
-240 240 240            grey94
-242 242 242            grey95
-245 245 245            grey96
-247 247 247            grey97
-250 250 250            grey98
-252 252 252            grey99
+0 0 0                  grey0
+3 3 3                  grey1
+26 26 26               grey10
+255 255 255            grey100
+28 28 28               grey11
+31 31 31               grey12
+33 33 33               grey13
+36 36 36               grey14
+38 38 38               grey15
+41 41 41               grey16
+43 43 43               grey17
+46 46 46               grey18
+48 48 48               grey19
+5 5 5                  grey2
+51 51 51               grey20
+54 54 54               grey21
+56 56 56               grey22
+59 59 59               grey23
+61 61 61               grey24
+64 64 64               grey25
+66 66 66               grey26
+69 69 69               grey27
+71 71 71               grey28
+74 74 74               grey29
+8 8 8                  grey3
+77 77 77               grey30
+79 79 79               grey31
+82 82 82               grey32
+84 84 84               grey33
+87 87 87               grey34
+89 89 89               grey35
+92 92 92               grey36
+94 94 94               grey37
+97 97 97               grey38
+99 99 99               grey39
+10 10 10               grey4
+102 102 102            grey40
+105 105 105            grey41
+107 107 107            grey42
+110 110 110            grey43
+112 112 112            grey44
+115 115 115            grey45
+117 117 117            grey46
+120 120 120            grey47
+122 122 122            grey48
+125 125 125            grey49
+13 13 13               grey5
+127 127 127            grey50
+130 130 130            grey51
+133 133 133            grey52
+135 135 135            grey53
+138 138 138            grey54
+140 140 140            grey55
+143 143 143            grey56
+145 145 145            grey57
+148 148 148            grey58
+150 150 150            grey59
+15 15 15               grey6
+153 153 153            grey60
+156 156 156            grey61
+158 158 158            grey62
+161 161 161            grey63
+163 163 163            grey64
+166 166 166            grey65
+168 168 168            grey66
+171 171 171            grey67
+173 173 173            grey68
+176 176 176            grey69
+18 18 18               grey7
+179 179 179            grey70
+181 181 181            grey71
+184 184 184            grey72
+186 186 186            grey73
+189 189 189            grey74
+191 191 191            grey75
+194 194 194            grey76
+196 196 196            grey77
+199 199 199            grey78
+201 201 201            grey79
+20 20 20               grey8
+204 204 204            grey80
+207 207 207            grey81
+209 209 209            grey82
+212 212 212            grey83
+214 214 214            grey84
+217 217 217            grey85
+219 219 219            grey86
+222 222 222            grey87
+224 224 224            grey88
+227 227 227            grey89
+23 23 23               grey9
+229 229 229            grey90
+232 232 232            grey91
+235 235 235            grey92
+237 237 237            grey93
+240 240 240            grey94
+242 242 242            grey95
+245 245 245            grey96
+247 247 247            grey97
+250 250 250            grey98
+252 252 252            grey99
 240 255 240            honeydew
 240 255 240            honeydew1
 224 238 224            honeydew2
@@ -853,7 +853,7 @@ __DATA__
 255 255 255            white
 245 245 245            white smoke
 255 255 0              yellow
-75 211 0               yellow green
+75 211 0               yellow green
 255 255          0             yellow1
 238 238          0             yellow2
 205 205          0             yellow3
diff --git a/Gimp/Compat.pm b/Gimp/Compat.pm
index 18d4b4c..34ceccb 100644
--- a/Gimp/Compat.pm
+++ b/Gimp/Compat.pm
@@ -52,7 +52,7 @@ use Gimp ('croak', '__');
 
 # The following function is used to convert a xlfd to the array structure
 # used by the pre 1.2 functions gimp_text_ext() and gimp_text_get_extent_ext().
-             
+
 sub xlfd_unpack {
     my $fontname = shift;
     my $size_overload = shift;
@@ -68,7 +68,7 @@ sub xlfd_unpack {
                  $set_width,
                    $dummy2,
                      $pixelsize,
-                       $pointsize, 
+                       $pointsize,
                          $spacing,
                            $registry,
                              $encoding
@@ -114,11 +114,11 @@ sub fun {
 
 fun 1,1,gimp_text_get_extents_fontname,sub {
    my($string, $xlfd_size, $xlfd_unit, $xlfd) = @_;
-   
+
    Gimp->text_get_extents_ext($string, @font_info,
                               xlfd_unpack($xlfd, $xlfd_size, $xlfd_unit));
 };
-       
+
 fun 1,1,gimp_text_fontname,sub {
    my $img = shift if $_[0]->isa('Gimp::Image');
    my ($drw, $x,$y, $string,$border,$antialias, $xlfd_size, $xlfd_unit, $xlfd) = @_;
@@ -131,7 +131,7 @@ fun 1,1,gimp_text_fontname,sub {
 
    push(@params, $drw, $x, $y, $string, $border, $antialias,
        xlfd_unpack($xlfd, $xlfd_size, $xlfd_unit));
-   
+
    Gimp->text_ext(@params);
 };
 
diff --git a/Gimp/Data.pm b/Gimp/Data.pm
index 0cfdff9..072fcaa 100644
--- a/Gimp/Data.pm
+++ b/Gimp/Data.pm
@@ -40,7 +40,7 @@ sub FETCH {
    thaw eval { Gimp->parasite_find ($_[1])->data }
         || ($@ ? Gimp->get_data ($_[1]) : ());
 }
-     
+
 sub STORE {
    my $data = freeze $_[2];
    eval { Gimp->parasite_attach ([$_[1], Gimp::PARASITE_PERSISTENT, $data]) };
@@ -50,7 +50,7 @@ sub STORE {
 sub EXISTS {
    $_[0]->FETCH ? 1 : ();
 }
-     
+
 tie (%Gimp::Data, 'Gimp::Data');
 
 1;
@@ -63,7 +63,7 @@ Gimp::Data - Set and get state data.
 =head1 SYNOPSIS
 
   use Gimp::Data;
-  
+
   $Gimp::Data{'value1'} = "Hello";
   print $Gimp::Data{'value1'},", World!!\n";
 
diff --git a/Gimp/Feature.pm b/Gimp/Feature.pm
index ad66880..9fd4e2b 100644
--- a/Gimp/Feature.pm
+++ b/Gimp/Feature.pm
@@ -225,7 +225,7 @@ feature was missing.
 This is the function used when importing symbols from the module.
 
 =item missing(feature-description,[function-name])
-   
+
 Indicates that a generic feature (described by the first argument) is
 missing. A function name can further be specified. This function will log
 the given message and exit gracefully.
diff --git a/Gimp/Fu.pm b/Gimp/Fu.pm
index c4c9e30..279ccab 100644
--- a/Gimp/Fu.pm
+++ b/Gimp/Fu.pm
@@ -63,7 +63,7 @@ fully suffices to provide a professional interface and the
 ability to run this script from within GIMP and standalone
 from the commandline.
 
-Dov Grobgeld has written an excellent tutorial for Gimp-Perl. 
+Dov Grobgeld has written an excellent tutorial for Gimp-Perl.
 You can find it at C<http://www.gimp.org/tutorials/Basic_Perl/>.
 
 =head1 INTRODUCTION
@@ -369,7 +369,7 @@ Gimp::on_query {
          require Gimp::Feature;
          undef $menupath unless Gimp::Feature::present('gtk');
       }
-      
+
       Gimp->install_procedure(
        $function,
        $blurb,
@@ -606,7 +606,7 @@ anything (directory, link). It might not even exist at all.
 
 =item PF_TEXT
 
-Similar to PF_STRING, but the entry widget is much larger and has Load, 
+Similar to PF_STRING, but the entry widget is much larger and has Load,
 Save, and Edit (in external editor) buttons.
 
 =back
@@ -834,7 +834,7 @@ IMAGETYPE is one of GIF, JPG, JPEG, PNM or PNG, options include
  -Cn   use compression level n
  -E    Do not skip ancillary chunks (default)
  +E    Skip ancillary chunks
- 
+
  options for JPEG images
  -Qn   use quality "n" to save file (JPEG only)
  -S    do not smooth (default)
@@ -846,7 +846,7 @@ some examples:
  JPG:test.jpg          the same
  JPG-Q70:test.jpg      the same but force a quality of 70
  GIF-I-F:test.jpg      save a gif image(!) named test.jpg
-                       non-interlaced and without flattening
+                       non-interlaced and without flattening
 
 =back
 
@@ -869,10 +869,10 @@ sub save_image($$) {
    $type=uc($1) if $path=~/\.([^.]+)$/;
    $type=uc($1) if s/^(GIF|JPG|JPEG|PNM|PNG)//i;
    while($_ ne "") {
-      $interlace=$1 eq "+",    next if s/^([-+])[iI]//;
-      $flatten=$1 eq "+",      next if s/^([-+])[fF]//;
+      $interlace=$1 eq "+",    next if s/^([-+])[iI]//;
+      $flatten=$1 eq "+",      next if s/^([-+])[fF]//;
       $noextra=$1 eq "+",      next if s/^([-+])[eE]//;
-      $smooth=$1 eq "+",       next if s/^([-+])[sS]//;
+      $smooth=$1 eq "+",       next if s/^([-+])[sS]//;
       $quality=$1*0.01,                next if s/^-[qQ](\d+)//;
       $compress=$1,            next if s/^-[cC](\d+)//;
       $loop=$1 eq "+",         next if s/^([-+])[lL]//;
diff --git a/Gimp/Lib.xs b/Gimp/Lib.xs
index f2e897f..531e0e2 100644
--- a/Gimp/Lib.xs
+++ b/Gimp/Lib.xs
@@ -127,8 +127,8 @@ static pdl *redim_pdl (pdl *p, int ndim, int newsize)
   sv_setiv (*av_fetch (dims, ndim, 0), newsize);
 
   PDL->affine_new (p, r, 0,
-                   sv_2mortal (newRV_noinc ((SV*)dims)),
-                   sv_2mortal (newRV_noinc ((SV*)dimincs)));
+                  sv_2mortal (newRV_noinc ((SV*)dims)),
+                  sv_2mortal (newRV_noinc ((SV*)dimincs)));
 
   return r;
 }
@@ -167,15 +167,15 @@ trace_init ()
 #if __STDC_VERSION__ > 199900
 #define trace_printf(...) \
        do { \
-               if (trace_file) PerlIO_printf (trace_file, __VA_ARGS__); \
+               if (trace_file) PerlIO_printf (trace_file, __VA_ARGS__); \
                else            sv_catpvf (trace_var, __VA_ARGS__); \
-        } while(0)
+       } while(0)
 #elif __GNUC__
 #define trace_printf(frmt,args...) \
-        do { \
+       do { \
                if (trace_file) PerlIO_printf (trace_file, frmt, ## args); \
                else            sv_catpvf (trace_var, frmt, ## args); \
-        } while(0)
+       } while(0)
 #elif defined(__STDC__)
 
 /* sigh */
@@ -313,11 +313,11 @@ static SV *force_gdrawable (SV *drawable)
   if (!(sv_derived_from (drawable, PKG_GDRAWABLE)))
     {
       if (sv_derived_from (drawable, PKG_DRAWABLE)
-          || sv_derived_from (drawable, PKG_LAYER)
-          || sv_derived_from (drawable, PKG_CHANNEL))
-        drawable = sv_2mortal (new_gdrawable (SvIV (SvRV (drawable))));
+         || sv_derived_from (drawable, PKG_LAYER)
+         || sv_derived_from (drawable, PKG_CHANNEL))
+       drawable = sv_2mortal (new_gdrawable (SvIV (SvRV (drawable))));
       else
-        croak (__("argument is not of type %s"), PKG_GDRAWABLE);
+       croak (__("argument is not of type %s"), PKG_GDRAWABLE);
     }
 
   return drawable;
@@ -403,7 +403,7 @@ perl_paramdef_count (GimpParamDef *arg, int count)
     { \
       for (j = 0; j < args[index-1].data.d_int32; j++) \
        trace_printf (frmt "%s", (ctype) args[index].data.datatype[j], \
-                     j < args[index-1].data.d_int32 - 1 ? ", " : ""); \
+                     j < args[index-1].data.d_int32 - 1 ? ", " : ""); \
     } \
   else \
     trace_printf (__("(UNINITIALIZED)")); \
@@ -431,12 +431,12 @@ dump_params (int nparams, GimpParam *args, GimpParamDef *params)
   for (i = 0; i < nparams; i++)
     {
       if ((trace & TRACE_TYPE) == TRACE_TYPE)
-        {
+       {
          if ((unsigned int)params[i].type < GIMP_PDB_END+1)
            trace_printf ("%s ", ptype[params[i].type]);
          else
            trace_printf ("T%d ", params[i].type);
-        }
+       }
 
       if ((trace & TRACE_NAME) == TRACE_NAME)
        trace_printf ("%s=", params[i].name);
@@ -447,7 +447,7 @@ dump_params (int nparams, GimpParam *args, GimpParamDef *params)
          case GIMP_PDB_INT16:          trace_printf ("%d", args[i].data.d_int16); break;
          case GIMP_PDB_INT8:           trace_printf ("%d", (guint8) args[i].data.d_int8); break;
          case GIMP_PDB_FLOAT:          trace_printf ("%f", args[i].data.d_float); break;
-          case GIMP_PDB_STRING:                trace_printf ("\"%s\"", args[i].data.d_string ? 
args[i].data.d_string : "[null]"); break;
+         case GIMP_PDB_STRING:         trace_printf ("\"%s\"", args[i].data.d_string ? args[i].data.d_string 
: "[null]"); break;
          case GIMP_PDB_DISPLAY:        trace_printf ("%d", args[i].data.d_display); break;
          case GIMP_PDB_IMAGE:          trace_printf ("%d", args[i].data.d_image); break;
          case GIMP_PDB_LAYER:          trace_printf ("%d", args[i].data.d_layer); break;
@@ -483,36 +483,36 @@ dump_params (int nparams, GimpParam *args, GimpParamDef *params)
 
          case GIMP_PDB_COLOR:
            trace_printf ("[%f,%f,%f,%f]",
-                         args[i].data.d_color.r,
-                         args[i].data.d_color.g,
-                         args[i].data.d_color.b,
-                          args[i].data.d_color.a);
+                         args[i].data.d_color.r,
+                         args[i].data.d_color.g,
+                         args[i].data.d_color.b,
+                         args[i].data.d_color.a);
            break;
 
          case GIMP_PDB_PARASITE:
            {
              gint32 found = 0;
 
-              if (args[i].data.d_parasite.name)
-                {
-                 trace_printf ("[%s, ", args[i].data.d_parasite.name);
-                 if (args[i].data.d_parasite.flags & GIMP_PARASITE_PERSISTENT)
-                   {
-                     trace_printf ("GIMP_PARASITE_PERSISTENT");
-                     found |= GIMP_PARASITE_PERSISTENT;
-                   }
-
-                 if (args[i].data.d_parasite.flags & ~found)
-                   {
-                     if (found)
-                       trace_printf ("|");
-                     trace_printf ("%d", args[i].data.d_parasite.flags & ~found);
-                   }
-
-                 trace_printf (__(", %d bytes data]"), args[i].data.d_parasite.size);
-               }
-              else
-                trace_printf (__("[undefined]"));
+             if (args[i].data.d_parasite.name)
+               {
+                trace_printf ("[%s, ", args[i].data.d_parasite.name);
+                if (args[i].data.d_parasite.flags & GIMP_PARASITE_PERSISTENT)
+                  {
+                    trace_printf ("GIMP_PARASITE_PERSISTENT");
+                    found |= GIMP_PARASITE_PERSISTENT;
+                  }
+
+                if (args[i].data.d_parasite.flags & ~found)
+                  {
+                    if (found)
+                      trace_printf ("|");
+                    trace_printf ("%d", args[i].data.d_parasite.flags & ~found);
+                  }
+
+                trace_printf (__(", %d bytes data]"), args[i].data.d_parasite.size);
+              }
+             else
+               trace_printf (__("[undefined]"));
            }
            break;
 
@@ -757,14 +757,14 @@ static int check_int (char *croak_str, SV *sv)
       char *p = SvPV_nolen (sv);
 
       if (*p
-          && *p != '0' && *p != '1' && *p != '2' && *p != '3' && *p != '4'
-          && *p != '5' && *p != '6' && *p != '7' && *p != '8' && *p != '9'
-          && *p != '-')
-        {
-          sprintf (croak_str, __("Expected an INT32 but got '%s'. Add '*1' if you really intend to pass in a 
string"), p);
-          check_for_typoe (croak_str, p);
-          return 0;
-        }
+         && *p != '0' && *p != '1' && *p != '2' && *p != '3' && *p != '4'
+         && *p != '5' && *p != '6' && *p != '7' && *p != '8' && *p != '9'
+         && *p != '-')
+       {
+         sprintf (croak_str, __("Expected an INT32 but got '%s'. Add '*1' if you really intend to pass in a 
string"), p);
+         check_for_typoe (croak_str, p);
+         return 0;
+       }
     }
   return 1;
 }
@@ -815,27 +815,27 @@ push_gimp_sv (const GimpParam *arg, int array_as_ref)
       case GIMP_PDB_VECTORS:
       case GIMP_PDB_STATUS:
 
-        {
-          int id;
-
-          switch (arg->type) {
-            case GIMP_PDB_DISPLAY:     id = arg->data.d_display; break;
-            case GIMP_PDB_IMAGE:       id = arg->data.d_image; break;
-            case GIMP_PDB_LAYER:       id = arg->data.d_layer; break;
-            case GIMP_PDB_CHANNEL:     id = arg->data.d_channel; break;
-            case GIMP_PDB_DRAWABLE:    id = arg->data.d_drawable; break;
-            case GIMP_PDB_SELECTION:   id = arg->data.d_selection; break;
-            case GIMP_PDB_VECTORS:     id = arg->data.d_vectors; break;
-            case GIMP_PDB_STATUS:      id = arg->data.d_status; break;
-            default:                   abort ();
-          }
-
-          if (id == -1)
-            PUSHs (newSVsv (&PL_sv_undef));
-          else
-            sv = newSViv (id);
-        }
-        break;
+       {
+         int id;
+
+         switch (arg->type) {
+           case GIMP_PDB_DISPLAY:      id = arg->data.d_display; break;
+           case GIMP_PDB_IMAGE:        id = arg->data.d_image; break;
+           case GIMP_PDB_LAYER:        id = arg->data.d_layer; break;
+           case GIMP_PDB_CHANNEL:      id = arg->data.d_channel; break;
+           case GIMP_PDB_DRAWABLE:     id = arg->data.d_drawable; break;
+           case GIMP_PDB_SELECTION:    id = arg->data.d_selection; break;
+           case GIMP_PDB_VECTORS:      id = arg->data.d_vectors; break;
+           case GIMP_PDB_STATUS:       id = arg->data.d_status; break;
+           default:                    abort ();
+         }
+
+         if (id == -1)
+           PUSHs (newSVsv (&PL_sv_undef));
+         else
+           sv = newSViv (id);
+       }
+       break;
 
       case GIMP_PDB_COLOR:
        {
@@ -852,14 +852,14 @@ push_gimp_sv (const GimpParam *arg, int array_as_ref)
        break;
 
       case GIMP_PDB_PARASITE:
-        if (arg->data.d_parasite.name)
-          {
-            AV *av = newAV ();
-            av_push (av, neuSVpv (arg->data.d_parasite.name));
-            av_push (av, newSViv (arg->data.d_parasite.flags));
-            av_push (av, newSVpv (arg->data.d_parasite.data, arg->data.d_parasite.size));
-            sv = (SV *)av;
-          }
+       if (arg->data.d_parasite.name)
+         {
+           AV *av = newAV ();
+           av_push (av, neuSVpv (arg->data.d_parasite.name));
+           av_push (av, newSViv (arg->data.d_parasite.flags));
+           av_push (av, newSVpv (arg->data.d_parasite.data, arg->data.d_parasite.size));
+           sv = (SV *)av;
+         }
 
        break;
 
@@ -938,8 +938,8 @@ convert_sv2gimp (char *croak_str, GimpParam *arg, SV *sv)
   switch (arg->type)
     {
       case GIMP_PDB_INT32:     check_int (croak_str, sv);
-                               arg->data.d_int32 = SvIV(sv);
-                               arg->data.d_int32       = sv2gimp_extract_noref (SvIV, "INT32"); break;
+                               arg->data.d_int32 = SvIV(sv);
+                               arg->data.d_int32       = sv2gimp_extract_noref (SvIV, "INT32"); break;
       case GIMP_PDB_INT16:     arg->data.d_int16       = sv2gimp_extract_noref (SvIV, "INT16"); break;
       case GIMP_PDB_INT8:      arg->data.d_int8        = sv2gimp_extract_noref (SvIV, "INT8"); break;
       case GIMP_PDB_FLOAT:     arg->data.d_float       = sv2gimp_extract_noref (SvNV, "FLOAT"); break;
@@ -958,47 +958,47 @@ convert_sv2gimp (char *croak_str, GimpParam *arg, SV *sv)
       case GIMP_PDB_VECTORS:
       case GIMP_PDB_STATUS:
 
-        if (SvOK(sv))
-          switch (arg->type) {
-            case GIMP_PDB_ITEM:                arg->data.d_item        = unbless(sv, PKG_ITEM  , croak_str); 
break;
-            case GIMP_PDB_DISPLAY:     arg->data.d_display     = unbless(sv, PKG_DISPLAY  , croak_str); 
break;
-            case GIMP_PDB_LAYER:       arg->data.d_layer       = unbless(sv, PKG_ITEM  , croak_str); break;
-            case GIMP_PDB_CHANNEL:     arg->data.d_channel     = unbless(sv, PKG_ITEM  , croak_str); break;
-            case GIMP_PDB_DRAWABLE:    arg->data.d_drawable    = unbless(sv, PKG_ITEM  , croak_str); break;
-            case GIMP_PDB_VECTORS:     arg->data.d_vectors     = unbless(sv, PKG_ITEM  , croak_str); break;
-            case GIMP_PDB_STATUS:      arg->data.d_status      = sv2gimp_extract_noref (SvIV, "STATUS"); 
break;
-            case GIMP_PDB_IMAGE:
-              {
-                if (sv_derived_from (sv, PKG_ITEM))
-                  arg->data.d_image = gimp_item_get_image(
+       if (SvOK(sv))
+         switch (arg->type) {
+           case GIMP_PDB_ITEM:         arg->data.d_item        = unbless(sv, PKG_ITEM  , croak_str); break;
+           case GIMP_PDB_DISPLAY:      arg->data.d_display     = unbless(sv, PKG_DISPLAY  , croak_str); 
break;
+           case GIMP_PDB_LAYER:        arg->data.d_layer       = unbless(sv, PKG_ITEM  , croak_str); break;
+           case GIMP_PDB_CHANNEL:      arg->data.d_channel     = unbless(sv, PKG_ITEM  , croak_str); break;
+           case GIMP_PDB_DRAWABLE:     arg->data.d_drawable    = unbless(sv, PKG_ITEM  , croak_str); break;
+           case GIMP_PDB_VECTORS:      arg->data.d_vectors     = unbless(sv, PKG_ITEM  , croak_str); break;
+           case GIMP_PDB_STATUS:       arg->data.d_status      = sv2gimp_extract_noref (SvIV, "STATUS"); 
break;
+           case GIMP_PDB_IMAGE:
+             {
+               if (sv_derived_from (sv, PKG_ITEM))
+                 arg->data.d_image = gimp_item_get_image(
                    unbless(sv, PKG_ITEM, croak_str)
                  );
-                else if (sv_derived_from (sv, PKG_IMAGE) || !SvROK (sv)) {
+               else if (sv_derived_from (sv, PKG_IMAGE) || !SvROK (sv)) {
                  arg->data.d_image = unbless(sv, PKG_IMAGE, croak_str);
                  break;
                } else
-                  strcpy (croak_str, __("argument incompatible with type IMAGE"));
-
-                return 0;
-              }
-
-            default:
-              abort ();
-          }
-        else
-          switch (arg->type) {
-            case GIMP_PDB_ITEM:                arg->data.d_item        = -1; break;
-            case GIMP_PDB_DISPLAY:     arg->data.d_display     = -1; break;
-            case GIMP_PDB_LAYER:       arg->data.d_layer       = -1; break;
-            case GIMP_PDB_CHANNEL:     arg->data.d_channel     = -1; break;
-            case GIMP_PDB_DRAWABLE:    arg->data.d_drawable    = -1; break;
-            case GIMP_PDB_VECTORS:     arg->data.d_vectors     = -1; break;
-            case GIMP_PDB_STATUS:      arg->data.d_status      = -1; break;
-            case GIMP_PDB_IMAGE:       arg->data.d_image       = -1; return 0; break;
-            default:                   abort ();
-          }
-
-       break;
+                 strcpy (croak_str, __("argument incompatible with type IMAGE"));
+
+               return 0;
+             }
+
+           default:
+             abort ();
+         }
+       else
+         switch (arg->type) {
+           case GIMP_PDB_ITEM:         arg->data.d_item        = -1; break;
+           case GIMP_PDB_DISPLAY:      arg->data.d_display     = -1; break;
+           case GIMP_PDB_LAYER:        arg->data.d_layer       = -1; break;
+           case GIMP_PDB_CHANNEL:      arg->data.d_channel     = -1; break;
+           case GIMP_PDB_DRAWABLE:     arg->data.d_drawable    = -1; break;
+           case GIMP_PDB_VECTORS:      arg->data.d_vectors     = -1; break;
+           case GIMP_PDB_STATUS:       arg->data.d_status      = -1; break;
+           case GIMP_PDB_IMAGE:        arg->data.d_image       = -1; return 0; break;
+           default:                    abort ();
+         }
+
+       break;
 
       case GIMP_PDB_COLOR:
        canonicalize_colour (croak_str, sv, &arg->data.d_color);
@@ -1009,19 +1009,19 @@ convert_sv2gimp (char *croak_str, GimpParam *arg, SV *sv)
          {
            if (SvTYPE(SvRV(sv)) == SVt_PVAV)
              {
-               AV *av = (AV *)SvRV(sv);
-               if (av_len(av) == 2)
-                 {
-                    STRLEN size;
-
-                   arg->data.d_parasite.name  = SvPv(*av_fetch(av, 0, 0));
-                   arg->data.d_parasite.flags = SvIV(*av_fetch(av, 1, 0));
-                   arg->data.d_parasite.data  = SvPV(*av_fetch(av, 2, 0), size);
-
-                    arg->data.d_parasite.size = size;
-                 }
-               else
-                 sprintf (croak_str, __("illegal parasite specification, expected three array members"));
+               AV *av = (AV *)SvRV(sv);
+               if (av_len(av) == 2)
+                 {
+                   STRLEN size;
+
+                   arg->data.d_parasite.name  = SvPv(*av_fetch(av, 0, 0));
+                   arg->data.d_parasite.flags = SvIV(*av_fetch(av, 1, 0));
+                   arg->data.d_parasite.data  = SvPV(*av_fetch(av, 2, 0), size);
+
+                   arg->data.d_parasite.size = size;
+                 }
+               else
+                 sprintf (croak_str, __("illegal parasite specification, expected three array members"));
              }
            else
              sprintf (croak_str, __("illegal parasite specification, arrayref expected"));
@@ -1129,10 +1129,10 @@ static void pii_query(void) { try_call ("-query"); }
 static void pii_quit (void) { try_call ("-quit" ); }
 
 static void pii_run(const gchar *name,
-                    gint nparams,
-                    const GimpParam *param,
-                    gint *xnreturn_vals,
-                    GimpParam **xreturn_vals)
+                   gint nparams,
+                   const GimpParam *param,
+                   gint *xnreturn_vals,
+                   GimpParam **xreturn_vals)
 {
   // static as need to leave allocated until finished with; freed on next entry
   static GimpParam *return_vals;
@@ -1296,18 +1296,18 @@ set_trace (var)
 
                if (SvROK (sv) || SvTYPE (sv) == SVt_PVGV)
                  {
-                   if (trace_var)
+                   if (trace_var)
                      SvREFCNT_dec (trace_var), trace_var = 0;
 
                    if (SvTYPE (sv) == SVt_PVGV) /* pray it's a filehandle!  */
                      trace_file = IoOFP (GvIO (sv));
                    else
                      {
-                       trace_file = 0;
-                       sv = SvRV (sv);
-                       SvREFCNT_inc (sv);
-                       (void) SvUPGRADE (sv, SVt_PV);
-                       trace_var = sv;
+                       trace_file = 0;
+                       sv = SvRV (sv);
+                       SvREFCNT_inc (sv);
+                       (void) SvUPGRADE (sv, SVt_PV);
+                       trace_var = sv;
                      }
                  }
                else
@@ -1354,7 +1354,7 @@ gimp_main(...)
                    gimp_is_initialized = 1;
                    RETVAL = gimp_main (&PLUG_IN_INFO, argc, argv);
                    gimp_is_initialized = 0;
-                    /*exit (0);*/ /*D*//* shit, some memory problem here, so just exit */
+                   /*exit (0);*/ /*D*//* shit, some memory problem here, so just exit */
                  }
        OUTPUT:
        RETVAL
@@ -1370,21 +1370,21 @@ initialized()
 
 int
 gimp_major_version()
-       CODE:
+       CODE:
        RETVAL = gimp_major_version;
        OUTPUT:
        RETVAL
 
 int
 gimp_minor_version()
-       CODE:
+       CODE:
        RETVAL = gimp_minor_version;
        OUTPUT:
        RETVAL
 
 int
 gimp_micro_version()
-       CODE:
+       CODE:
        RETVAL = gimp_micro_version;
        OUTPUT:
        RETVAL
@@ -1476,7 +1476,7 @@ PPCODE:
 
 void
 gimp_call_procedure (proc_name, ...)
-  utf8_str     proc_name
+  utf8_str     proc_name
 PPCODE:
 {
   char croak_str[MAX_STRING] = "";
@@ -1753,7 +1753,7 @@ gimp_get_data(id)
                gimp_get_data (SvPV_nolen (id), SvGROW (data, dlen+1));
                SvCUR_set (data, dlen);
                *((char *)SvPV_nolen (data) + dlen) = 0;
-               XPUSHs (sv_2mortal (data));
+               XPUSHs (sv_2mortal (data));
        }
 
 gdouble
@@ -1775,11 +1775,11 @@ SV *
 gimp_personal_rc_file(basename)
        char *  basename
        CODE:
-        basename = gimp_personal_rc_file (basename);
-        RETVAL = sv_2mortal (newSVpv (basename, 0));
-        g_free (basename);
-        OUTPUT:
-        RETVAL
+       basename = gimp_personal_rc_file (basename);
+       RETVAL = sv_2mortal (newSVpv (basename, 0));
+       g_free (basename);
+       OUTPUT:
+       RETVAL
 
 guint
 gimp_tile_width()
@@ -1799,7 +1799,7 @@ SV *
 gimp_drawable_get(drawable_ID)
        DRAWABLE        drawable_ID
        CODE:
-        RETVAL = new_gdrawable (drawable_ID);
+       RETVAL = new_gdrawable (drawable_ID);
        OUTPUT:
        RETVAL
 
@@ -1817,7 +1817,7 @@ gimp_pixel_rgn_init(gdrawable, x, y, width, height, dirty, shadow)
        int     dirty
        int     shadow
        CODE:
-        RETVAL = new_gpixelrgn (force_gdrawable (gdrawable),x,y,width,height,dirty,shadow);
+       RETVAL = new_gpixelrgn (force_gdrawable (gdrawable),x,y,width,height,dirty,shadow);
        OUTPUT:
        RETVAL
 
@@ -1834,24 +1834,24 @@ gimp_pixel_rgn_resize(pr, x, y, width, height)
 GimpPixelRgnIterator
 gimp_pixel_rgns_register(...)
        CODE:
-        if (items == 1)
+       if (items == 1)
          RETVAL = gimp_pixel_rgns_register (1, old_pixelrgn (ST (0)));
-        else if (items == 2)
+       else if (items == 2)
          RETVAL = gimp_pixel_rgns_register (2, old_pixelrgn (ST (0)), old_pixelrgn (ST (1)));
-        else if (items == 3)
+       else if (items == 3)
          RETVAL = gimp_pixel_rgns_register (3, old_pixelrgn (ST (0)), old_pixelrgn (ST (1)), old_pixelrgn 
(ST (2)));
-        else
-          croak (__("gimp_pixel_rgns_register supports only 1, 2 or 3 arguments, upgrade to gimp-1.1 and 
report this error"));
-        OUTPUT:
-        RETVAL
+       else
+         croak (__("gimp_pixel_rgns_register supports only 1, 2 or 3 arguments, upgrade to gimp-1.1 and 
report this error"));
+       OUTPUT:
+       RETVAL
 
 SV *
 gimp_pixel_rgns_process(pri_ptr)
        GimpPixelRgnIterator    pri_ptr
-        CODE:
-        RETVAL = boolSV (gimp_pixel_rgns_process (pri_ptr));
-        OUTPUT:
-        RETVAL
+       CODE:
+       RETVAL = boolSV (gimp_pixel_rgns_process (pri_ptr));
+       OUTPUT:
+       RETVAL
 
 # struct accessor functions
 
@@ -1859,7 +1859,7 @@ guint
 gimp_gdrawable_width(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->width;
+       RETVAL = gdrawable->width;
        OUTPUT:
        RETVAL
 
@@ -1867,7 +1867,7 @@ guint
 gimp_gdrawable_height(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->height;
+       RETVAL = gdrawable->height;
        OUTPUT:
        RETVAL
 
@@ -1875,7 +1875,7 @@ guint
 gimp_gdrawable_ntile_rows(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->ntile_rows;
+       RETVAL = gdrawable->ntile_rows;
        OUTPUT:
        RETVAL
 
@@ -1883,7 +1883,7 @@ guint
 gimp_gdrawable_ntile_cols(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->ntile_cols;
+       RETVAL = gdrawable->ntile_cols;
        OUTPUT:
        RETVAL
 
@@ -1891,7 +1891,7 @@ guint
 gimp_gdrawable_bpp(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->bpp;
+       RETVAL = gdrawable->bpp;
        OUTPUT:
        RETVAL
 
@@ -1899,7 +1899,7 @@ gint32
 gimp_gdrawable_id(gdrawable)
        GimpDrawable *gdrawable
        CODE:
-        RETVAL = gdrawable->drawable_id;
+       RETVAL = gdrawable->drawable_id;
        OUTPUT:
        RETVAL
 
@@ -1907,7 +1907,7 @@ guint
 gimp_pixel_rgn_x(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->x;
+       RETVAL = pr->x;
        OUTPUT:
        RETVAL
 
@@ -1915,7 +1915,7 @@ guint
 gimp_pixel_rgn_y(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->y;
+       RETVAL = pr->y;
        OUTPUT:
        RETVAL
 
@@ -1923,7 +1923,7 @@ guint
 gimp_pixel_rgn_w(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->w;
+       RETVAL = pr->w;
        OUTPUT:
        RETVAL
 
@@ -1931,7 +1931,7 @@ guint
 gimp_pixel_rgn_h(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->h;
+       RETVAL = pr->h;
        OUTPUT:
        RETVAL
 
@@ -1939,7 +1939,7 @@ guint
 gimp_pixel_rgn_rowstride(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->rowstride;
+       RETVAL = pr->rowstride;
        OUTPUT:
        RETVAL
 
@@ -1947,7 +1947,7 @@ guint
 gimp_pixel_rgn_bpp(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->bpp;
+       RETVAL = pr->bpp;
        OUTPUT:
        RETVAL
 
@@ -1955,7 +1955,7 @@ guint
 gimp_pixel_rgn_shadow(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->shadow;
+       RETVAL = pr->shadow;
        OUTPUT:
        RETVAL
 
@@ -1963,7 +1963,7 @@ gint32
 gimp_pixel_rgn_drawable(pr)
        GimpPixelRgn *pr
        CODE:
-        RETVAL = pr->drawable->drawable_id;
+       RETVAL = pr->drawable->drawable_id;
        OUTPUT:
        RETVAL
 
@@ -1971,7 +1971,7 @@ guint
 gimp_tile_ewidth(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->ewidth;
+       RETVAL = tile->ewidth;
        OUTPUT:
        RETVAL
 
@@ -1979,7 +1979,7 @@ guint
 gimp_tile_eheight(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->eheight;
+       RETVAL = tile->eheight;
        OUTPUT:
        RETVAL
 
@@ -1987,7 +1987,7 @@ guint
 gimp_tile_bpp(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->bpp;
+       RETVAL = tile->bpp;
        OUTPUT:
        RETVAL
 
@@ -1995,7 +1995,7 @@ guint
 gimp_tile_shadow(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->shadow;
+       RETVAL = tile->shadow;
        OUTPUT:
        RETVAL
 
@@ -2003,7 +2003,7 @@ guint
 gimp_tile_dirty(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->dirty;
+       RETVAL = tile->dirty;
        OUTPUT:
        RETVAL
 
@@ -2011,7 +2011,7 @@ DRAWABLE
 gimp_tile_drawable(tile)
        GimpTile *tile
        CODE:
-        RETVAL = tile->drawable->drawable_id;
+       RETVAL = tile->drawable->drawable_id;
        OUTPUT:
        RETVAL
 
@@ -2022,7 +2022,7 @@ gimp_pixel_rgn_get_row2(pr, x, y, width)
        int     y
        int     width
        CODE:
-        RETVAL = newSVn (width * pr->bpp);
+       RETVAL = newSVn (width * pr->bpp);
        gimp_pixel_rgn_get_row (pr, (guchar *)SvPV_nolen(RETVAL), x, y, width);
        OUTPUT:
        RETVAL
@@ -2034,7 +2034,7 @@ gimp_pixel_rgn_get_col2(pr, x, y, height)
        int     y
        int     height
        CODE:
-        RETVAL = newSVn (height * pr->bpp);
+       RETVAL = newSVn (height * pr->bpp);
        gimp_pixel_rgn_get_col (pr, (guchar *)SvPV_nolen(RETVAL), x, y, height);
        OUTPUT:
        RETVAL
@@ -2047,7 +2047,7 @@ gimp_pixel_rgn_get_rect2(pr, x, y, width, height)
        int     width
        int     height
        CODE:
-        RETVAL = newSVn (width * height * pr->bpp);
+       RETVAL = newSVn (width * height * pr->bpp);
        gimp_pixel_rgn_get_rect (pr, (guchar *)SvPV_nolen(RETVAL), x, y, width, height);
        OUTPUT:
        RETVAL
@@ -2058,10 +2058,10 @@ gimp_pixel_rgn_set_rect2(pr, data, x, y, w=pr->w)
        SV *    data
        int     x
        int     y
-        int    w
+       int     w
        CODE:
 {
-        STRLEN dlen; guchar *dta = (guchar *)SvPV (data, dlen);
+       STRLEN dlen; guchar *dta = (guchar *)SvPV (data, dlen);
        gimp_pixel_rgn_set_rect (pr, dta, x, y, w, dlen / (w*pr->bpp));
 }
 
@@ -2074,7 +2074,7 @@ gimp_drawable_get_tile(gdrawable, shadow, row, col)
        gint    row
        gint    col
        CODE:
-        need_pdl ();
+       need_pdl ();
        RETVAL = new_tile (gimp_drawable_get_tile (old_gdrawable (gdrawable), shadow, row, col), gdrawable);
        OUTPUT:
        RETVAL
@@ -2086,7 +2086,7 @@ gimp_drawable_get_tile2(gdrawable, shadow, x, y)
        gint    x
        gint    y
        CODE:
-        need_pdl ();
+       need_pdl ();
        RETVAL = new_tile (gimp_drawable_get_tile2 (old_gdrawable (gdrawable), shadow, x, y), gdrawable);
        OUTPUT:
        RETVAL
@@ -2097,7 +2097,7 @@ gimp_pixel_rgn_get_pixel(pr, x, y)
        int     x
        int     y
        CODE:
-        RETVAL = new_pdl (0, 0, pr->bpp);
+       RETVAL = new_pdl (0, 0, pr->bpp);
        gimp_pixel_rgn_get_pixel (pr, RETVAL->data, x, y);
        OUTPUT:
        RETVAL
@@ -2109,7 +2109,7 @@ gimp_pixel_rgn_get_row(pr, x, y, width)
        int     y
        int     width
        CODE:
-        RETVAL = new_pdl (0, width, pr->bpp);
+       RETVAL = new_pdl (0, width, pr->bpp);
        gimp_pixel_rgn_get_row (pr, RETVAL->data, x, y, width);
        OUTPUT:
        RETVAL
@@ -2121,7 +2121,7 @@ gimp_pixel_rgn_get_col(pr, x, y, height)
        int     y
        int     height
        CODE:
-        RETVAL = new_pdl (height, 0, pr->bpp);
+       RETVAL = new_pdl (height, 0, pr->bpp);
        gimp_pixel_rgn_get_col (pr, RETVAL->data, x, y, height);
        OUTPUT:
        RETVAL
@@ -2134,7 +2134,7 @@ gimp_pixel_rgn_get_rect(pr, x, y, width, height)
        int     width
        int     height
        CODE:
-        RETVAL = new_pdl (height, width, pr->bpp);
+       RETVAL = new_pdl (height, width, pr->bpp);
        gimp_pixel_rgn_get_rect (pr, RETVAL->data, x, y, width, height);
        OUTPUT:
        RETVAL
@@ -2146,7 +2146,7 @@ gimp_pixel_rgn_set_pixel(pr, pdl, x, y)
        int     x
        int     y
        CODE:
-        old_pdl (&pdl, 0, pr->bpp);
+       old_pdl (&pdl, 0, pr->bpp);
        gimp_pixel_rgn_set_pixel (pr, pdl->data, x, y);
 
 void
@@ -2156,7 +2156,7 @@ gimp_pixel_rgn_set_row(pr, pdl, x, y)
        int     x
        int     y
        CODE:
-        old_pdl (&pdl, 1, pr->bpp);
+       old_pdl (&pdl, 1, pr->bpp);
        gimp_pixel_rgn_set_row (pr, pdl->data, x, y, pdl->dims[pdl->ndims-1]);
 
 void
@@ -2166,7 +2166,7 @@ gimp_pixel_rgn_set_col(pr, pdl, x, y)
        int     x
        int     y
        CODE:
-        old_pdl (&pdl, 1, pr->bpp);
+       old_pdl (&pdl, 1, pr->bpp);
        gimp_pixel_rgn_set_col (pr, pdl->data, x, y, pdl->dims[pdl->ndims-1]);
 
 void
@@ -2176,53 +2176,53 @@ gimp_pixel_rgn_set_rect(pr, pdl, x, y)
        int     x
        int     y
        CODE:
-        old_pdl (&pdl, 2, pr->bpp);
+       old_pdl (&pdl, 2, pr->bpp);
        gimp_pixel_rgn_set_rect (pr, pdl->data, x, y, pdl->dims[pdl->ndims-2], pdl->dims[pdl->ndims-1]);
 
 pdl *
 gimp_pixel_rgn_data(pr,newdata=0)
        GimpPixelRgn_PDL *      pr
-        pdl * newdata
+       pdl * newdata
        CODE:
-        if (newdata)
+       if (newdata)
          {
-            guchar *src;
-            guchar *dst;
-            int y, stride;
-
-            old_pdl (&newdata, 2, pr->bpp);
-            stride = pr->bpp * newdata->dims[newdata->ndims-2];
-
-            if ((int)pr->h != newdata->dims[newdata->ndims-1])
-              croak (__("pdl height != region height"));
-
-            for (y   = 0, src = newdata->data, dst = pr->data;
-                 y < (int)pr->h;
-                 y++    , src += stride      , dst += pr->rowstride)
-              Copy (src, dst, stride, char);
-
-            RETVAL = newdata;
-          }
-        else
-          {
-            pdl *p = PDL->new();
-            PDL_Indx dims[3];
-
-            dims[0] = pr->bpp;
-            dims[1] = pr->rowstride / pr->bpp;
-            dims[2] = pr->h;
-
-            PDL->setdims (p, dims, 3);
-            p->datatype = PDL_B;
-            p->data = pr->data;
-            p->state |= PDL_DONTTOUCHDATA | PDL_ALLOCATED;
-            PDL->add_deletedata_magic(p, pixel_rgn_pdl_delete_data, 0);
-
-            if ((int)pr->w != dims[1])
-              p = redim_pdl (p, 1, pr->w);
-
-            RETVAL = p;
-          }
+           guchar *src;
+           guchar *dst;
+           int y, stride;
+
+           old_pdl (&newdata, 2, pr->bpp);
+           stride = pr->bpp * newdata->dims[newdata->ndims-2];
+
+           if ((int)pr->h != newdata->dims[newdata->ndims-1])
+             croak (__("pdl height != region height"));
+
+           for (y   = 0, src = newdata->data, dst = pr->data;
+                y < (int)pr->h;
+                y++    , src += stride      , dst += pr->rowstride)
+             Copy (src, dst, stride, char);
+
+           RETVAL = newdata;
+         }
+       else
+         {
+           pdl *p = PDL->new();
+           PDL_Indx dims[3];
+
+           dims[0] = pr->bpp;
+           dims[1] = pr->rowstride / pr->bpp;
+           dims[2] = pr->h;
+
+           PDL->setdims (p, dims, 3);
+           p->datatype = PDL_B;
+           p->data = pr->data;
+           p->state |= PDL_DONTTOUCHDATA | PDL_ALLOCATED;
+           PDL->add_deletedata_magic(p, pixel_rgn_pdl_delete_data, 0);
+
+           if ((int)pr->w != dims[1])
+             p = redim_pdl (p, 1, pr->w);
+
+           RETVAL = p;
+         }
        OUTPUT:
        RETVAL
 
@@ -2233,8 +2233,8 @@ SV *
 gimp_tile_get_data(tile)
        GimpTile *      tile
        CODE:
-        need_pdl ();
-        croak (__("gimp_tile_get_data is not yet implemented\n"));
+       need_pdl ();
+       croak (__("gimp_tile_get_data is not yet implemented\n"));
        gimp_tile_ref (tile);
        gimp_tile_unref (tile, 0);
        OUTPUT:
@@ -2246,7 +2246,7 @@ gimp_tile_set_data(tile,data)
        SV *    data
        CODE:
        data = data; // to suppress "unused var" warning
-        croak (__("gimp_tile_set_data is not yet implemented\n")); /*(void *)data;*/
+       croak (__("gimp_tile_set_data is not yet implemented\n")); /*(void *)data;*/
        gimp_tile_ref_zero (tile);
        gimp_tile_unref (tile, 1);
 
@@ -2255,20 +2255,20 @@ gimp_tile_set_data(tile,data)
 void
 gimp_pixel_rgn_data(...)
        ALIAS:
-          gimp_drawable_get_tile       = 1
-          gimp_drawable_get_tile2      = 2
-          gimp_pixel_rgn_get_pixel     = 3
-          gimp_pixel_rgn_get_row       = 4
-          gimp_pixel_rgn_get_col       = 5
-          gimp_pixel_rgn_get_rect      = 6
-          gimp_pixel_rgn_set_pixel     = 7
-          gimp_pixel_rgn_set_row       = 8
-          gimp_pixel_rgn_set_col       = 9
-          gimp_pixel_rgn_set_rect      = 10
-          gimp_tile_get_data           = 11
-          gimp_tile_set_data           = 12
+         gimp_drawable_get_tile        = 1
+         gimp_drawable_get_tile2       = 2
+         gimp_pixel_rgn_get_pixel      = 3
+         gimp_pixel_rgn_get_row        = 4
+         gimp_pixel_rgn_get_col        = 5
+         gimp_pixel_rgn_get_rect       = 6
+         gimp_pixel_rgn_set_pixel      = 7
+         gimp_pixel_rgn_set_row        = 8
+         gimp_pixel_rgn_set_col        = 9
+         gimp_pixel_rgn_set_rect       = 10
+         gimp_tile_get_data            = 11
+         gimp_tile_set_data            = 12
        CODE:
-        croak (__("This module was built without support for PDL."));
+       croak (__("This module was built without support for PDL."));
 
 #endif
 
@@ -2297,9 +2297,9 @@ gimp_patterns_get_pattern_data(name)
                int nreturn_vals;
 
                return_vals = gimp_run_procedure ("gimp_patterns_get_pattern_data",
-                                                 &nreturn_vals,
-                                                 GIMP_PDB_STRING, SvPV_nolen (name),
-                                                 GIMP_PDB_END);
+                                                 &nreturn_vals,
+                                                 GIMP_PDB_STRING, SvPV_nolen (name),
+                                                 GIMP_PDB_END);
 
                if (nreturn_vals == 7
                    && return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
@@ -2319,8 +2319,8 @@ gimp_patterns_get_pattern_data(name)
 void
 _gimp_progress_init (message)
        utf8_str        message
-        CODE:
-        gimp_progress_init (message);
+       CODE:
+       gimp_progress_init (message);
 
 DISPLAY
 gimp_default_display()
diff --git a/Gimp/Util.pm b/Gimp/Util.pm
index 00d5dd5..d1ca2c2 100644
--- a/Gimp/Util.pm
+++ b/Gimp/Util.pm
@@ -42,8 +42,8 @@ package      Gimp::Util;
 require      Exporter;
 @ISA       = qw(Exporter);
 @EXPORT    = qw(
-                layer_create 
-                text_draw 
+                layer_create
+                text_draw
                 image_create_text
                 layer_add_layer_as_mask
                );
@@ -109,7 +109,7 @@ sub layer_create {
   Gimp->drawable_fill ($layer,BACKGROUND_FILL);
   Gimp->image_add_layer($image, $layer, $pos);
   Gimp->palette_set_background ($tcol); # reset
-  $layer;  
+  $layer;
   }
 
 ##############################################################################
@@ -136,8 +136,8 @@ sub text_draw {
   Gimp->palette_set_foreground ($fgcolor);
   # Create a layer for the text.
   $text_layer = Gimp->text($image,-1,0,0,$text,10,1,$size,
-                           PIXELS,"*",$font,"*","*","*","*"); 
-    
+                           PIXELS,"*",$font,"*","*","*","*");
+
   # Do the fun stuff with the text.
   Gimp->layer_set_preserve_trans($text_layer, FALSE);
 
@@ -151,16 +151,16 @@ sub text_draw {
   else
     {
     }
-                                         
+
   # add text to image
   Gimp->image_add_layer($image, $text_layer, $pos);
   # merge white and text
   Gimp->image_merge_visible_layers ($image,1);
-  # cleanup the left over layer (!) 
+  # cleanup the left over layer (!)
   Gimp->layer_delete($text_layer);
   $layer;
 }
-    
+
 ##############################################################################
 =pod
 
@@ -186,14 +186,14 @@ sub image_create_text {
   # create an image. We'll just set whatever size here because we want
   # to resize the image when we figure out how big the text is.
   $image = Gimp->image_new(64,64,RGB); # don't waste too much  resources ;-/
-    
+
   $tcol = Gimp->palette_get_foreground ();
   Gimp->palette_set_foreground ($fgcolor);
   # Create a layer for the text.
   $text_layer = Gimp->text($image,-1,0,0,$text,10,1,$size,
-                          PIXELS,"*",$font,"*","*","*","*","*","*"); 
+                          PIXELS,"*",$font,"*","*","*","*","*","*");
   Gimp->palette_set_foreground ($tcol);
-    
+
   Gimp->layer_set_preserve_trans($text_layer, FALSE);
 
   # Resize the image based on size of text.
@@ -222,9 +222,9 @@ sub layer_add_layer_as_mask {
   my ($image,$layer,$layer_mask) = @_;
   my $mask;
 
-  Gimp->selection_all ($image);  
-  $layer_mask->edit_copy ();  
-  Gimp->layer_add_alpha ($layer); 
+  Gimp->selection_all ($image);
+  $layer_mask->edit_copy ();
+  Gimp->layer_add_alpha ($layer);
   $mask = Gimp->layer_create_mask ($layer,0);
   $mask->edit_paste (0);
   Gimp->floating_sel_anchor(Gimp->image_floating_selection($image));
diff --git a/Makefile.PL b/Makefile.PL
index 4dfbb09..b5b73db 100644
--- a/Makefile.PL
+++ b/Makefile.PL
@@ -24,58 +24,58 @@ if ($ARGV[0] ne "--writemakefile") {
 }
 
 @otherdeps = qw(
-); 
+);
 
 # list of plugins using gtk directly (Gtk absolutely required)
 @gtk_pins =
    qw(
-     dataurl 
-     colorhtml 
+     dataurl
+     colorhtml
      fade-alpha
    );
 
 # list of standard plugins
 @pins =
    qw(
-      animate_cells 
-      blended2 blowinout bricks burst  
-      centerguide  
-      ditherize dots dust 
-      frame_filter frame_reshuffle 
+      animate_cells
+      blended2 blowinout bricks burst
+      centerguide
+      ditherize dots dust
+      frame_filter frame_reshuffle
       glowing_steel goldenmean guidegrid guides_to_selection
-      image_tile innerbevel  
-      layerfuncs mirrorsplit 
-      perlotine prep4gif 
-      repdup roundsel 
-      scratches sethspin stamps 
-      tex-to-float translogo 
-      randomart1 randomblends 
+      image_tile innerbevel
+      layerfuncs mirrorsplit
+      perlotine prep4gif
+      repdup roundsel
+      scratches sethspin stamps
+      tex-to-float translogo
+      randomart1 randomblends
       selective_sharpen
-      warp-sharp webify windify 
+      warp-sharp webify windify
       xachlego xachshadow xachvision
-      yinyang 
+      yinyang
    );
 # list of plugins using PDL
 
 @pdl_pins =
    qw(
-      gouge 
+      gouge
       redeye
-      pixelmap 
-      view3d 
-   );  
+      pixelmap
+      view3d
+   );
 
-# plugins that are useful code examples, but not even arguably useful 
+# plugins that are useful code examples, but not even arguably useful
 # gimp plugins due to silliness or duplication
 
- uninstalled_pins = 
+ uninstalled_pins =
   qw(
      example-fu
      example-net
-     map_to_gradient 
+     map_to_gradient
   );
 
-# GTK isn't absolutely required, but for most people it is highly 
+# GTK isn't absolutely required, but for most people it is highly
 # desirable, so make a nice big notice saying so.
 
 eval "use Gtk2;"; $GTK = $@ eq "";
@@ -84,8 +84,8 @@ $GTK or print <<EOF;
 NOTICE:  unable to use the Perl-Gtk2 interface. Many features (like
          Gimp::Fu) rely on this extension. You can build without it (and
          many scripts will be disabled or run with reduced functionality
-         only), but it's better to install it.  If you do install it, 
-        version 1.0 or higher is required; you can get it from 
+         only), but it's better to install it.  If you do install it,
+        version 1.0 or higher is required; you can get it from
         http://gtk2-perl.sourceforge.net/ or any CPAN mirror.
 
 EOF
@@ -125,7 +125,7 @@ install ::
 
 install-po:
        cd po && \$(MAKE) install
-        
+
 ".$install;
 }
 
@@ -233,9 +233,9 @@ WriteMakefile(
                    SUFFIX      => '.gz',
                   },
     'PREREQ_PM'        => {
-                   Gtk2                => 1.0,
-                    PDL                        => 0,
-                   Data::Dumper        => 2.0,
+                   Gtk2                => 1.0,
+                   PDL                 => 0,
+                   Data::Dumper        => 2.0,
                    IO::All             => 0,
                   },
     META_MERGE => {
diff --git a/Net/Makefile.PL b/Net/Makefile.PL
index 1a7f04b..f7a6e2a 100644
--- a/Net/Makefile.PL
+++ b/Net/Makefile.PL
@@ -13,7 +13,4 @@ WriteMakefile(
     'TYPEMAPS' => ["$topdir/typemap",@pdl_typemaps],
     #dynamic_lib       => { OTHERLDFLAGS => "$LDFLAGS $LIBS $cfg{GLIB_LIBS}" },
     dynamic_lib        => { OTHERLDFLAGS => "$LDFLAGS $LIBS" },
-    'PM'       => {
-                   'Net.pm'    => '$(INST_LIBDIR)/Net.pm',
-                  },
 );
diff --git a/Net/Net.pm b/Net/Net.pm
index 1641971..f87f630 100644
--- a/Net/Net.pm
+++ b/Net/Net.pm
@@ -230,16 +230,16 @@ sub gimp_init {
    }
    defined $server_fh or croak __"could not connect to the gimp server (make sure Perl-Server is running)";
    { my $fh = select $server_fh; $|=1; select $fh }
-   
+
    my @r = response;
-   
+
    die __"expected perl-server at other end of socket, got @r\n"
       unless $r[0] eq "PERL-SERVER";
    shift @r;
    die __"expected protocol version $PROTOCOL_VERSION, but server uses $r[0]\n"
       unless $r[0] eq $PROTOCOL_VERSION;
    shift @r;
-   
+
    for(@r) {
       if($_ eq "AUTH") {
          die __"server requests authorization, but no authorization available\n"
@@ -445,7 +445,7 @@ sub extension_perl_server {
 
   slog __"server version $Gimp::VERSION started".($auth ? __", authorization required" : "");
 
-  $SIG{PIPE}='IGNORE'; # may not work, since libgimp (eech) overwrites it.        
+  $SIG{PIPE}='IGNORE'; # may not work, since libgimp (eech) overwrites it.
   my($unix_path)=$DEFAULT_UNIX_DIR.$DEFAULT_UNIX_SOCK;
 
   if ($host ne "") {
@@ -583,12 +583,12 @@ and spawn/ for a private gimp instance. Examples are:
  yahoo.com:11100             # non-standard port
  tcp/yahoo.com               # make sure it uses tcp
  authorize tcp/yahoo.com:123 # full-fledged specification
- 
+
  unix/tmp/unx                # use unix domain socket
  password unix/tmp/test      # additionally use a password
- 
+
  authorize@                  # specify authorization only
- 
+
  spawn/                      # use a private gimp instance
  spawn/nodata                # pass --no-data switch
  spawn/gui                   # don't pass -n switch
diff --git a/Net/Net.xs b/Net/Net.xs
index 8be0a01..483a56c 100644
--- a/Net/Net.xs
+++ b/Net/Net.xs
@@ -81,11 +81,11 @@ static void sv2net (int deobjectify, SV *s, SV *sv)
 
               SvREFCNT_inc(sv);
               (void)hv_store (object_cache, (char *)&object_id, sizeof(object_id), sv, 0);
-              
+
               sv_catpvf (s, "i%d:", object_id);
               return; /* well... */
             }
-        } 
+        }
       else
         sv_catpvn (s, "r", 1);
 
@@ -152,7 +152,7 @@ static SV *net2sv (int objectify, char **_s)
       case 'r':
         sv = newRV_noinc (net2sv (objectify, &s));
         break;
-        
+
       case 'b':
         sscanf (s, "%x:%n", &ui, &n); s += n;
         if (ui >= sizeof str)
@@ -222,7 +222,7 @@ args2net(deobjectify,...)
 
 void
 net2args(objectify,s)
-       int     objectify
+       int     objectify
        char *  s
         PPCODE:
 
diff --git a/README b/README
index e99a92b..b5ec0d7 100644
--- a/README
+++ b/README
@@ -9,7 +9,7 @@ WARNING
 
        Current limitations:
 
-       Please report all problems       
+       Please report all problems
 
 SYNOPSIS
 
@@ -18,17 +18,17 @@ SYNOPSIS
        $img->add_layer($bg, 1);
        $img->edit_fill($bg);
        $img->display_new;
-       
+
        A complete & documented example script can be found at the end of
        this document (search for EXAMPLE).
 
 DOCUMENTATION
 
        Online documentation is largely outdated.  Much of the documentation at
-       http://www.goof.com/pcg/marc/gimp.html still applies.  The POD 
+       http://www.goof.com/pcg/marc/gimp.html still applies.  The POD
        information embedded in the modules is the latest available, though
        it isn't very updated either.
-       
+
 PREREQUISITES
 
        To install/use this perl extension, you need to have the following
@@ -63,7 +63,7 @@ PREREQUISITES
           manipulate pixel data (or to be able to run the example plug-ins
           that do pixel manipulation). PDL is available at any CPAN
           mirror, version 2.4 or higher is recommended. Without PDL,
-          some plug-ins do not work (they will not be installed), 
+          some plug-ins do not work (they will not be installed),
          and accessing raw image data is impossible.
 
 INSTALLATION
@@ -72,11 +72,11 @@ INSTALLATION
        test && make install. To get a listing of configuration options, enter:
 
        perl ./Makefile.PL --help
-       
+
        Simply using "perl Makefile.PL" should do the job on most systems,
        but watch out for warnings. If everything went fine, enter "make",
-       "make test, (su to appropriate level if you are installing system-wide), 
-       "make install".  
+       "make test, (su to appropriate level if you are installing system-wide),
+       "make install".
 
        After installation, these perl plug-ins should be visible from
        within the Gimp (and many, many more):
@@ -85,7 +85,7 @@ INSTALLATION
        <Image>/Filters/Artistic/Windify
        <Image>/Filters/Misc/Prepare for GIF
        <Image>/Filters/Misc/Webify
-       
+
 OVERWRITING INSTALL LOCATIONS (PREFIX)
 
        In the rare case that you want to install the gimp-perl modules
@@ -107,7 +107,7 @@ OVERWRITING INSTALL LOCATIONS (PREFIX)
 
           make prefix=`pwd`/debian/tmp/usr PREFIX=`pwd`/debian/tmp/usr \
                install
-       
+
        The lowercase prefix is used by the Gimp, the uppercase PREFIX is
        used by perl.  Rarely you also want to specifiy manpage directories
        etc.. you can also overwrite these (see "man ExtUtils::MakeMaker")
@@ -120,33 +120,33 @@ OVERWRITING INSTALL LOCATIONS (PREFIX)
 
 SUPPORT/MAILING LISTS/MORE INFO
 
-       The gimp-user and gimp-developer lists (see  
-       http://www.gimp.org/mail_lists.html) are currently the suggested 
+       The gimp-user and gimp-developer lists (see
+       http://www.gimp.org/mail_lists.html) are currently the suggested
        mailing lists.
 
        New releases will be announced to gimp-announce.
-       
+
        You can also upload your scripts to the gimp registry at
-       http://registry.gimp.org/.  
-       
-       If you think your script is of general intrest, please let 
-       <sjburges gimp org> know and it will be considered for 
-       inclusion in future Gimp module releases.  If you just want 
+       http://registry.gimp.org/.
+
+       If you think your script is of general intrest, please let
+       <sjburges gimp org> know and it will be considered for
+       inclusion in future Gimp module releases.  If you just want
        a link to your gimp-perl project, please mail <sjburges gimp org>
        also.
 
 BLURB
 
-       gimp-perl is an effort to make a usable, debuggable, and flexible 
+       gimp-perl is an effort to make a usable, debuggable, and flexible
        interface to GIMP through use of Perl.
 
 LICENSE
 
-       The gimp-perl module is available under the GNU Public License 
+       The gimp-perl module is available under the GNU Public License
        (see COPYING.GPL for details) and the Artistic License (see
        COPYING.Artistic for details). Many of the scripts in the example
        section follow these rules, but some of them have a different
-       licensing approach.  Each should have a licensing statement; please 
+       licensing approach.  Each should have a licensing statement; please
        consult individual plugin sources/POD for more info.
 
        (c)1998,1999 Marc Lehmann <pcg goof com>
@@ -174,7 +174,7 @@ register "gimp_fu_example_script",                      # fill in a function nam
          "20000321",                                    # the date this script was written (YYYYMMDD)
          N_"<Toolbox>/Xtns/Gimp::Fu Example...",        # the menu path - the 'N_' is for 
internationalization
          "RGB*, GRAYA",                                 # image types to accept (RGB, RGAB amnd GRAYA)
-         [ # one of each type of parameter here 
+         [ # one of each type of parameter here
          # argument type, switch name   , a short description           , default value, extra arguments
           [PF_SLIDER    , "width"       , "The image width"             , 360, [300, 500]],
           [PF_SPINNER   , "height"      , "The image height"            , 100, [100, 200]],
diff --git a/TODO b/TODO
index edec0c3..4710cd6 100644
--- a/TODO
+++ b/TODO
@@ -51,7 +51,7 @@ Remove unused(?) extra.[ch]
 this is mostly my personal worksheet and notepad, which may not be
 up-to-date and may not even be readable ;)
 
-Put module under LGPL? 
+Put module under LGPL?
 
 /usr/app/lib/perl5/Gtk.pm:107 (method call -> goto)
 
@@ -90,7 +90,7 @@ bugs
   * gimp-piddle must be written back automatically on destroy, if changed
   * gimp-tile set dirty automatically(!)
   * create gimpstyle.pod
-  
+
 important issues
 
   * gimp_default_display -> undef when not available.
@@ -119,4 +119,4 @@ long term issues and ideas
   * rewrite interact() in pure C, gets rid of most gtk dependencies.
   * default function parameters (with hash %defaults?)
   * gimp_text(text => "hallo", family => "engraver", size => 20);
- 
+
diff --git a/UI/UI.pm b/UI/UI.pm
index 8261fde..b0f01ee 100644
--- a/UI/UI.pm
+++ b/UI/UI.pm
@@ -27,7 +27,7 @@ of the API has been converted.
  $option_menu = new Gimp::UI::LayerMenu
  $option_menu = new Gimp::UI::ChannelMenu
  $option_menu = new Gimp::UI::DrawableMenu (constraint_func, active_element, \var);
- 
+
  $button = new Gimp::UI::PatternSelect;
  $button = new Gimp::UI::BrushSelect;
  $button = new Gimp::UI::GradientSelect;
@@ -124,9 +124,9 @@ sub new($$$$) {
 package Gimp::UI::PreviewSelect;
 
 # Parent widget that handles a generic preview selection.
-# 
-# pure virtual methods (must be implemented by child): 
-#                  ->get_list 
+#
+# pure virtual methods (must be implemented by child):
+#                  ->get_list
 #                  ->get_title
 #                  ->get_pixbuf
 #TODO: Add preview (or portion of preview) directly to button
@@ -184,7 +184,7 @@ sub preview_dialog {
    (my $h=new Gtk2::HBox 0,0)->show;
    $w->vbox->pack_start($h,1,1,0);
 
-   (my $s=new Gtk2::ScrolledWindow undef,undef)->show; 
+   (my $s=new Gtk2::ScrolledWindow undef,undef)->show;
    $s->set_policy(-automatic, -automatic);
    $s->set_size_request(200,300);
    $h->pack_start($s,1,1,0);
@@ -210,7 +210,7 @@ sub preview_dialog {
    $hbbox->set_spacing(2);
    $w->action_area->pack_end($hbbox,0,0,0);
    show $hbbox;
- 
+
    $button = new Gtk2::Button->new_from_stock('gtk-cancel');
    signal_connect $button clicked => sub {hide $w};
    $hbbox->pack_start($button,0,0,0);
@@ -221,11 +221,11 @@ sub preview_dialog {
    signal_connect $button clicked => sub {
      @sel = $datalist->get_selected_indices;
      @row =  $datalist->{data}[$sel[0]];
-     
+
      # this no longer works, so use a scalar instead (muppet's suggestion)
-     # $self->set( 'active', $row[0][0] );   
+     # $self->set( 'active', $row[0][0] );
 
-     $self->set( active => scalar($row[0][0]) );   
+     $self->set( active => scalar($row[0][0]) );
      hide $w;
      };
    $hbbox->pack_start($button,0,0,0);
@@ -254,12 +254,12 @@ sub get_list { Gimp->patterns_get_list("") }
 sub new_pixbuf {
    my ($w,$h,$bpp,$mask)=Pattern->get_pixels ($_);
    my $has_alpha = ($bpp==2 || $bpp==4);
-    
+
    if ($bpp==1)
      {
         my @graydat = unpack "C*", $mask;
         my @rgbdat;
-        
+
         foreach (@graydat)
           {
              push @rgbdat, $_; push @rgbdat, $_; push @rgbdat, $_;
@@ -271,7 +271,7 @@ sub new_pixbuf {
      {
        $mask = pack "C*", @{$mask};
      }
-   elsif($bpp == 4) 
+   elsif($bpp == 4)
     {
        $mask = pack "C*", @{$mask}[0..2];
       print "BPP = $bpp; not supported! \n"
@@ -279,9 +279,9 @@ sub new_pixbuf {
 
    print "...\n";
 
-   # TODO: Add code/test for handling GRAYA; don't have any GRAYA to test 
+   # TODO: Add code/test for handling GRAYA; don't have any GRAYA to test
    # with currently though.
-        
+
    $pb = Gtk2::Gdk::Pixbuf->new_from_data($mask,'rgb',
                                           $has_alpha?1:0,
                                           8,$w,$h,
@@ -304,7 +304,7 @@ Glib::Type->register (
 sub get_title { __"Brush Selection Dialog" }
 sub get_list { Gimp->brushes_get_list("") }
 
-sub new_pixbuf { 
+sub new_pixbuf {
    my ($w,$h,$mask_bpp,$mask,$color_bpp,$color_data) = Brush->get_pixels($_);
 
    my @rgbdat;
@@ -347,13 +347,13 @@ sub get_list { Gimp->gradients_get_list("") }
 
 sub new_pixbuf {
    use POSIX;
-   my @grad_row = map { $_ = abs(ceil($_*255 - 0.5)) } 
+   my @grad_row = map { $_ = abs(ceil($_*255 - 0.5)) }
                    Gradient->get_uniform_samples ($_,100,0);
 
 # make it 16 tall; there's bound to be a better way to do this? (its slow)
-   push @grad_row, @grad_row, @grad_row, @grad_row, 
-        @grad_row, @grad_row, @grad_row, @grad_row, 
-        @grad_row, @grad_row, @grad_row, @grad_row, 
+   push @grad_row, @grad_row, @grad_row, @grad_row,
+        @grad_row, @grad_row, @grad_row, @grad_row,
+        @grad_row, @grad_row, @grad_row, @grad_row,
         @grad_row, @grad_row, @grad_row, @grad_row;
 
    $mask = pack "C*", @grad_row;
@@ -371,7 +371,7 @@ sub _new_adjustment {
    $adj[2] ||= ($adj[1] - $adj[0]) * 0.01;
    $adj[3] ||= ($adj[1] - $adj[0]) * 0.01;
    $adj[4] ||= 0;
-   
+
    new Gtk2::Adjustment $_[0], @adj;
 }
 
@@ -405,7 +405,7 @@ sub help_window(\$$$) {
       my $button = Gtk2::Button->new_from_stock('gtk-ok');
       signal_connect $button clicked => sub { hide $$helpwin };
       $$helpwin->action_area->add ($button);
-      
+
       $$helpwin->signal_connect (destroy => sub { undef $$helpwin });
 
       require Gimp::Pod;
@@ -415,7 +415,7 @@ sub help_window(\$$$) {
          $b->insert ($b->get_end_iter, __"\n\nEMBEDDED POD DOCUMENTATION:\n\n");
          $b->insert ($b->get_end_iter, $text);
        }
-      
+
    }
 
    $$helpwin->show_all;
@@ -474,7 +474,7 @@ sub interact($$$$@) {
      signal_connect $aboutbutton clicked => sub { help_window ($helpwin, $blurb, $help) };
      can_default $aboutbutton 1;
      $helpaboutbox->pack_start($aboutbutton,1,1,5);
- 
+
      $w->vbox->pack_start($helpaboutbox,1,1,0);
 
      $g = new Gtk2::Table scalar types,2,0;
@@ -485,7 +485,7 @@ sub interact($$$$@) {
         my ($label,$a);
         my ($type,$name,$desc,$default,$extra)= $_;
         my ($value)=shift;
-        
+
         local *new_PF_STRING = sub {
            my $e = new Gtk2::Entry;
            push @setvals, sub { set_text $e defined $_[0] ? $_[0] : "" };
@@ -500,14 +500,14 @@ sub interact($$$$@) {
            $type = pop(@x) ? PF_SPINNER : PF_SLIDER;
            $extra=[ x];
         }
-        
+
         $value=$default unless defined $value;
         # massage label text a small bit (works only for english)
         $label="$name: ";
         $label =~ y/_/ /; $label =~ s/^(\w)/\U$1/g;
-       
+
 #TODO: While mapping all to one is nifty programming, it makes for a lousy
-# interface.  Sure would be nice to have dialog elements that reflected 
+# interface.  Sure would be nice to have dialog elements that reflected
 # the type a bit better (spinbuttons/range checking for integral for instance).
 
         if ($type == PF_INT8           # perl just maps
@@ -516,7 +516,7 @@ sub interact($$$$@) {
         || $type == PF_FLOAT           # domain.
         || $type == PF_STRING) {       # I love it
            &new_PF_STRING;
-           
+
         } elsif ($type == PF_FONT) {
            $a = new Gtk2::HBox 0,5;
            $default = 'Arial' unless defined $default;
@@ -564,7 +564,7 @@ if (0) {
            $a->set_digits (_find_digits $adj);
            push @setvals, sub { $adj->set_value($_[0]) };
            push @getvals, sub { $adj->get_value };
-           
+
         } elsif ($type == PF_SLIDER) {
 #TODO: add a gimp_scale_entry or reimplemented equivalent
            my $adj = _new_adjustment ($value, $extra);
@@ -573,7 +573,7 @@ if (0) {
           $a->set_size_request(120,-1);
            push @setvals, sub { $adj->set_value($_[0]) };
            push @getvals, sub { $adj->get_value };
-           
+
         } elsif ($type == PF_COLOR) {
            $a = new Gtk2::HBox 0,5;
            $default = [0.8,0.6,0.1] unless defined $default;
@@ -584,27 +584,27 @@ if (0) {
            push @getvals, sub { $b->get_color };
            set_tip $t $b,$desc;
           _instrument($b);
-           
+
 #           my $c = new Gtk2::Button __"FG";
 #           signal_connect $c clicked => sub {
 #             $b->set_color (Gimp::Palette->get_foreground);
 #           };
 #           set_tip $t $c,__"get current foreground colour from the gimp";
 #           $a->pack_start ($c,1,1,0);
-#           
+#
 #           my $d = new Gtk2::Button __"BG";
 #           signal_connect $d clicked => sub {
 #             $b->set_color (Gimp::Palette->get_background);
 #           };
 #           set_tip $t $d,__"get current background colour from the gimp";
 #           $a->pack_start ($d,1,1,0);
-           
+
         } elsif ($type == PF_TOGGLE) {
            $a = new Gtk2::CheckButton $desc;
 
            push @setvals, sub{ $a->set (active => $_[0] ? 1 : 0)};
            push @getvals, sub{ $a->get("active") };
-           
+
         } elsif ($type == PF_RADIO) {
            my $b = new Gtk2::HBox 0,5;
            my ($r,$prev);
@@ -624,7 +624,7 @@ if (0) {
            $a->add($b);
            push @setvals, $prev_sub;
            push @getvals, sub { $r };
-           
+
         } elsif ($type == PF_IMAGE) {
            my $res;
            $a=new Gtk2::HBox (0,5);
@@ -634,58 +634,58 @@ if (0) {
            push @setvals, sub { };
            push @getvals, sub { $res };
            set_tip $t $b,$desc;
-           
+
 #           my $c = new Gtk2::Button "Load";
 #           signal_connect $c "clicked", sub {$res = 2; main_quit Gtk2};
 ##           $g->attach($c,1,2,$res,$res+1,{},{},4,2);
 #           $a->pack_start ($c,1,1,0);
 #           set_tip $t $c,"Load an image into the Gimp";
-           
+
         } elsif ($type == PF_LAYER) {
            my $res;
            $a=new Gtk2::OptionMenu;
            $a->set_menu(new Gimp::UI::LayerMenu(sub {1},-1,\$res));
            push @setvals, sub { };
            push @getvals, sub { $res };
-           
+
         } elsif ($type == PF_CHANNEL) {
            my $res;
            $a=new Gtk2::OptionMenu;
            $a->set_menu(new Gimp::UI::ChannelMenu(sub {1},-1,\$res));
            push @setvals, sub { };
            push @getvals, sub { $res };
-           
+
         } elsif ($type == PF_DRAWABLE) {
            my $res=13;
            $a=new Gtk2::OptionMenu;
            $a->set_menu(new Gimp::UI::DrawableMenu(sub {1},-1,\$res));
            push @setvals, sub {};
            push @getvals, sub { $res };
-           
+
         } elsif ($type == PF_PATTERN) {
            $a=new Gimp::UI::PatternSelect;
-           push @setvals, sub { $a->set('active', 
+           push @setvals, sub { $a->set('active',
               defined $value ? $value : (Context->get_pattern)[0]) };
            push @getvals, sub { $a->get('active') };
-           
+
         } elsif ($type == PF_BRUSH) {
            $a=new Gimp::UI::BrushSelect;
            push @setvals, sub{ $a->set('active',
              defined $value ? $value : (Context->get_brush)[0]) };
            push @getvals, sub{ $a->get('active') };
-           
+
         } elsif ($type == PF_GRADIENT) {
            $a=new Gimp::UI::GradientSelect;
            push @setvals, sub { $a->set('active',
               defined $value ? $value : (Gimp->gradients_get_list(""))[0]) };
            push @getvals, sub { $a->get('active') };
-           
+
         } elsif ($type == PF_CUSTOM) {
            my (@widget)=&$extra;
            $a=&{$widget[0]};
            push @setvals, $widget[1];
            push @getvals, $widget[2];
-           
+
         } elsif ($type == PF_FILE) {
            &new_PF_STRING;
            my $s = $a;
@@ -697,7 +697,7 @@ if (0) {
            $b->signal_connect (clicked => sub { $f->set_filename ($s->get_text); $f->show_all });
            $f->ok_button    ->signal_connect (clicked => sub { $f->hide; $s->set_text ($f->get_filename) });
            $f->cancel_button->signal_connect (clicked => sub { $f->hide });
-           
+
         } elsif ($type == PF_TEXT) {
            $a = new Gtk2::Frame;
            my $h = new Gtk2::VBox 0,5;
@@ -712,7 +712,7 @@ if (0) {
            my %e;
            %e = $$extra if ref $extra eq "HASH";
 
-           my $sv = sub { 
+           my $sv = sub {
               $b->set_text ($_[0]);
            };
            my $gv = sub {
@@ -724,7 +724,7 @@ if (0) {
            my $buttons = new Gtk2::HBox 1,5;
            $h->add ($buttons);
 
-           my $load = Gtk2::Button->new_from_stock('gtk-open'); 
+           my $load = Gtk2::Button->new_from_stock('gtk-open');
            my $save = Gtk2::Button->new_from_stock('gtk-save');
            my $edit = Gtk2::Button->new_from_stock('gimp-edit');
 
@@ -750,7 +750,7 @@ if (0) {
            });
 
            my $filename = ($e{prefix} || eval { Gimp->directory } || ".") . "/";
-           
+
            my $f = new Gtk2::FileSelection sprintf __"Fileselector for %s", $name;
            $f->set_filename ($filename);
            $f->cancel_button->signal_connect (clicked => sub { $f->hide });
@@ -800,7 +800,7 @@ if (0) {
         push @lastvals, $value;
         push @defaults, $default;
         $setvals[-1]->($value);
-        
+
         $label = new Gtk2::Label $label;
         $label->set_alignment (1.0,0.5);
         $g->attach ($label, 0, 1, $res, $res+1, ["expand","fill"], ["expand","fill"], 4, 2);
@@ -813,15 +813,15 @@ if (0) {
         };
         $res++;
      }
-     
+
      my $v = new Gtk2::HBox 0,4;
      $w->vbox->pack_start ($v, 0, 0, 4);
 
      my $hbbox = new Gtk2::HButtonBox;
      $hbbox->set_spacing (4);
      $v->pack_end ($hbbox, 0, 0, 2);
-     
-    
+
+
 #     $button = new Gtk2::Button __"Previous";
 #     signal_connect $button clicked => sub {
 #       for my $i (0..$#lastvals) {
@@ -830,14 +830,14 @@ if (0) {
 #     };
 #     $hbbox->pack_start($button,0,0,0);
 #     set_tip $t $button,__"Restore values to the previous ones";
-     
+
 
 #     $helpbox = new Gtk2::HButtonBox;
 #     $helpbox->set_spacing (2);
 #     $w->action_area->pack_start ($helpbox, 0, 0, 0);
 #     show $helpbox;
 #
-    
+
      $hbbox = new Gtk2::HButtonBox;
      $w->action_area->pack_end ($hbbox, 0, 0, 0);
 
@@ -850,12 +850,12 @@ if (0) {
 
      $hbbox->pack_start ($button, 0, 0, 0);
      #  set_tip $t $button,__"Reset all values to their default";
-     
+
      $button = new Gtk2::Button->new_from_stock('gtk-cancel');
      signal_connect $button clicked => sub { hide $w; main_quit Gtk2 };
      $hbbox->pack_start ($button, 0, 0, 0);
      can_default $button 1;
-     
+
      $button = new Gtk2::Button->new_from_stock('gtk-ok');
      signal_connect $button clicked => sub { $res = 1; hide $w; main_quit Gtk2 };
      $hbbox->pack_start ($button, 0, 0, 0);
@@ -863,10 +863,10 @@ if (0) {
      grab_default $button;
 
      $res=0;
-     
+
      show_all $w;
      main Gtk2;
-     
+
      if ($res == 0) {
         @res = ();
         last;
diff --git a/UI/UI.xs b/UI/UI.xs
index 1728682..b5896a4 100644
--- a/UI/UI.xs
+++ b/UI/UI.xs
@@ -50,7 +50,7 @@ export_image(image_ID, drawable_ID, format_name, capabilities)
         gchar *        format_name
         gint   capabilities
         PREINIT:
-          gint32 image;       
+          gint32 image;
           gint32 drawable;
         CODE:
           image = SvIV (SvRV (image_ID));
@@ -179,7 +179,7 @@ GimpColorScale_own * gimp_color_scale_new (SV *unused_class, GtkOrientation orie
        C_ARGS: orientation, channel
 
 void gimp_color_scale_set_channel (GimpColorScale *scale, GimpColorSelectorChannel channel)
-  
+
 void gimp_color_scale_set_color (GimpColorScale *scale, GimpRGB &rgb, GimpHSV &hsv)
 
 MODULE = Gimp::UI      PACKAGE = Gimp::UI::ColorSelect PREFIX = gimp_color_select_
@@ -375,7 +375,7 @@ void gimp_size_entry_set_unit (GimpSizeEntry *gse, GimpUnit unit)
 
 void gimp_size_entry_grab_focus (GimpSizeEntry *gse)
 
-MODULE = Gimp::UI      PACKAGE = Gimp::UI::Stock       PREFIX = gimp_stock_
+MODULE = Gimp::UI      PACKAGE = Gimp::UI::Stock       PREFIX = gimp_stock_
 
 BOOT:
        gimp_stock_init();
diff --git a/examples/README b/examples/README
index 96d370c..4d5d765 100644
--- a/examples/README
+++ b/examples/README
@@ -1,23 +1,23 @@
-This file describes a few of the many scripts in the examples/ directory. 
+This file describes a few of the many scripts in the examples/ directory.
 
 Some links of interest have been added to the bottom as well.
 
 If you want to be added, drop me a note at <sjburges gimp org>.
 
 Each script will contain a licensing statement in it, describing how it may
-be distributed.  A handful are believed to be GPL, but the author hasn't 
+be distributed.  A handful are believed to be GPL, but the author hasn't
 been able to be contacted.
 
 Also, most scripts in the examples directory are not described or
 documented here. See their source for more info.
 
 example-fu.pl
-        An example Gimp::Fu script. This shows every widget Gimp::Fu 
+        An example Gimp::Fu script. This shows every widget Gimp::Fu
        offers, but doesn't do much useful otherwise.
 
 example-oo.pl
        A small nonsense extension just showing the object-oriented
-       pdb syntax. 
+       pdb syntax.
 
 example-net.pl
        a small nonsense extension showing a bare-bones networked script.
@@ -26,7 +26,7 @@ webify.pl
        a small plugin that flattens an image, makes the background
        transparent, converts it to indexed and then crops it
        to the right size. Useful to save small & transparent gifs
-       from a higher-quality source. It also features several 
+       from a higher-quality source. It also features several
        Gimp::Fu UI-elements.
 
 windify.pl
@@ -42,7 +42,7 @@ gimp-make-img-map
        images in order to create an index image."
 
 http://www.ualberta.ca/~cwant/gimp/postprocess.html
-       Using Gimp-Perl for animation post-processing; some very neat effects 
+       Using Gimp-Perl for animation post-processing; some very neat effects
        produced here.
 
 http://bbgallery.sourceforge.net/
diff --git a/examples/billboard b/examples/billboard
index 6883452..3d2c273 100755
--- a/examples/billboard
+++ b/examples/billboard
@@ -1,16 +1,16 @@
-#!/usr/bin/perl 
+#!/usr/bin/perl
 
 #TODO: figure out why adding a -w gives a bunch of "
-# Use of uninitialized value in subroutine entry at /usr/lib/perl/5.8/Gimp.pm 
+# Use of uninitialized value in subroutine entry at /usr/lib/perl/5.8/Gimp.pm
 # line 627." messages and fix it.
 
 # I'm hacking this on top of my sethspin script, so this is doing even more
 # stuff it wasn't really designed to do.  Hence if you thought sethspin was
-# a bit ugly, look at this one...       
+# a bit ugly, look at this one...
 
-# I think it was tigert that suggested this.  It turned out to be less 
+# I think it was tigert that suggested this.  It turned out to be less
 # complex than I orginally thought so I figured I'd give it a spin.
- 
+
 # Seth Burgess
 # <sjburges gimp org>
 
@@ -27,22 +27,22 @@ sub saw {  # a sawtooth function on PI
                return ($val/3.14159) ;
                }
        elsif ($val < 3.14159) {
-               return (-1+$val/3.14159); 
+               return (-1+$val/3.14159);
                }
        elsif ($val < 3.14159+3.14159/2.0) {
                return ($val/3.14159) ;
                }
        else {
-               return (-1+$val/3.14159); 
+               return (-1+$val/3.14159);
                }
-       } 
+       }
 
 sub spin_layer { # the function for actually spinning the layer
        my ($img, $spin, $dest, $numframes, $prp, $blinds) = @_;
     # Now lets spin it!
-       $stepsize = 3.14159/$numframes; # in radians 
+       $stepsize = 3.14159/$numframes; # in radians
        for ($i=0; $i<=3.14159; $i+=$stepsize) {
-               Gimp->progress_update ($i/3.14159);
+               Gimp->progress_update ($i/3.14159);
                # create a new layer for spinning
                $framelay = ($i < 3.14159/2.0) ?  $spin->copy(1) : $dest->copy(1);
                $img->add_layer($framelay, 0);
@@ -54,17 +54,17 @@ sub spin_layer { # the function for actually spinning the layer
                        $img->rect_select(0, $j*$blindheight, $img->width, $blindheight, 2, 0, 0.13);
                        @x = $img->selection_bounds();
                        # x[1],x[2]                  x[3],x[2]
-               # x[1],x[4]                  x[3],x[4]
+               # x[1],x[4]                  x[3],x[4]
                        $framelay->transform_perspective_default(
-               $x[1]+saw($i)*$prp*$framelay->width,$x[2]+$blindheight *sin($i)/2,  
+               $x[1]+saw($i)*$prp*$framelay->width,$x[2]+$blindheight *sin($i)/2,
                $x[3]-saw($i)*$prp*$framelay->width,$x[2]+$blindheight *sin($i)/2,
-               $x[1]-saw($i)*$prp*$framelay->width,$x[4]-$blindheight *sin($i)/2,  
+               $x[1]-saw($i)*$prp*$framelay->width,$x[4]-$blindheight *sin($i)/2,
                $x[3]+saw($i)*$prp*$framelay->width,$x[4]-$blindheight *sin($i)/2,
-                1, 1);  
+               1, 1);
 
-# Gimp Perspective Functionality has changed.  It used to create a floating 
+# Gimp Perspective Functionality has changed.  It used to create a floating
 # selection if there was a selection active already.  Now it only does that
-# in interactive - PDB makes it a new layer.  Fine by me, wish the docs had 
+# in interactive - PDB makes it a new layer.  Fine by me, wish the docs had
 # changed though.
 #                      $floater->floating_sel_anchor;
 
@@ -73,7 +73,7 @@ sub spin_layer { # the function for actually spinning the layer
                # I need to create another layer beind this spun one now
                $backlayer = $framelay->layer_copy(0);
                $img->add_layer($backlayer, 1);
-               $backlayer->fill(1); # BG-IMAGE-FILL 
+               $backlayer->fill(1); # BG-IMAGE-FILL
        }
        for ($i=0; $i<$numframes; $i++) {
                @all_layers = $img->get_layers();
@@ -84,42 +84,42 @@ sub spin_layer { # the function for actually spinning the layer
        $destfram = $all_layers[$numframes]->copy(0);
        $img->add_layer($destfram,0);
 
-       # clean up my temporary layers  
+       # clean up my temporary layers
        $img->remove_layer($all_layers[$numframes]);
        $img->remove_layer($all_layers[$numframes+1]);
 }
 
 register "billboard",
-         "Billboard",
-         "Take one image.  Spin it about the horizontal axis, and end up with another image.  I made it for 
easy web buttons, mostly because somebody suggested to me.",
-         "Seth Burgess",
-         "Seth Burgess <sjburges\ gimp org>",
-         "1.3",
-         N_"<Image>/Filters/Animation/Billboard...",
-         "*",
-         [
-          [PF_DRAWABLE, "source", "What drawable to spin from?"],
-          [PF_DRAWABLE, "destination","What drawable to spin to?"],
+        "Billboard",
+        "Take one image.  Spin it about the horizontal axis, and end up with another image.  I made it for 
easy web buttons, mostly because somebody suggested to me.",
+        "Seth Burgess",
+        "Seth Burgess <sjburges\ gimp org>",
+        "1.3",
+        N_"<Image>/Filters/Animation/Billboard...",
+        "*",
+        [
+         [PF_DRAWABLE, "source", "What drawable to spin from?"],
+         [PF_DRAWABLE, "destination","What drawable to spin to?"],
                  [PF_INT8, "frames", "How many frames to use?", 16],
                  [PF_COLOR, "background", "What color to use for background if not transparent", [0,0,0]],
                  [PF_SLIDER, "perspective", "How much perspective effect to get", 40, [0,255,5]],
                  [PF_TOGGLE, "spin_back", "Also spin back?" , 0],
-          [PF_TOGGLE, "convert_indexed", "Convert to indexed?", 1],
+         [PF_TOGGLE, "convert_indexed", "Convert to indexed?", 1],
                  [PF_SPINNER, "billboard_slats", "Number of shades", 3, [1,50,1]],
-         ],
-         [],
-         ['gimp-1.1'],
-         sub {
+        ],
+        [],
+        ['gimp-1.1'],
+        sub {
    my($in_img,$src,$dest,$frames,$color,$psp,$spinback,$indexed, $shadenum) = _;
        $maxwide = ($src->width > $dest->width) ? $src->width : $dest->width;
        $maxhigh = ($src->height > $dest->height) ? $src->height: $dest->height;
        $img = gimp_image_new($maxwide, $maxhigh, RGB);
 
 
-       $tmpimglayer = $img->add_new_layer(0,3,1); 
+       $tmpimglayer = $img->add_new_layer(0,3,1);
        $img->display_new;
-        Gimp->progress_init("Billboard...",-1);
-        Context->push();
+       Gimp->progress_init("Billboard...",-1);
+       Context->push();
        Context->set_background($color);
        $src->edit_copy();
        $spinlayer = $tmpimglayer->edit_paste(1);
@@ -143,41 +143,41 @@ register "billboard",
                }
 
        spin_layer($img, $spinlayer, $destlayer, $spinback ? $frames/2 : $frames-1, $psp, $shadenum);
-        $img->set_visible($img->add_new_layer(1),($img->get_layers)[0]); 
+        $img->set_visible($img->add_new_layer(1),($img->get_layers)[0]);
         $img->merge_visible_layers(0);
-       
-       if ($spinback) { 
+
+       if ($spinback) {
                @layerlist = $img->get_layers();
                $img->add_layer($layerlist[$frames/2]->copy(0),0);
                @layerlist = $img->get_layers();
                spin_layer($img, $layerlist[1], $layerlist[0], $frames/2, $psp, $shadenum);
                $img->remove_layer(($img->get_layers)[0]);
-               }       
-       
+               }
+
        # unhide and name layers
        @all_layers = $img->get_layers;
        $img->set_visible(@all_layers);
        for ($i=1; $i<=$frames ; $i++) {
                $all_layers[$i-1]->set_name("Spin Layer $i (50ms)");
                }
-       $all_layers[$frames-1]->set_name("Spin Layer SRC (250ms)");  
-       
+       $all_layers[$frames-1]->set_name("Spin Layer SRC (250ms)");
+
        if ($spinback) {
-               $all_layers[$frames/2-1]->set_name("Spin Layer DEST (250ms)"); 
+               $all_layers[$frames/2-1]->set_name("Spin Layer DEST (250ms)");
                }
        else { $all_layers[0]->set_name("Spin Layer DEST (250ms)")}
-       
+
 
        # indexed conversion wants a display for some reason
-       if ($indexed) { 
-           $img->convert_indexed(1,            # dither type = fs
-                                 MAKE_PALETTE, # palette type
-                                 255,          # number of colors 
-                                 0,            # don't dither transparency
-                                 1,            # (ignored)
-                                 "Custom"      # custom palette name 
-                                 );
-           } 
+       if ($indexed) {
+          $img->convert_indexed(1,            # dither type = fs
+                                MAKE_PALETTE, # palette type
+                                255,          # number of colors
+                                0,            # don't dither transparency
+                                1,            # (ignored)
+                                "Custom"      # custom palette name
+                                );
+          }
 
        Context->pop();
        gimp_displays_flush();
@@ -188,7 +188,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 
 Distrubted under the same terms as Gimp-Perl.
 
diff --git a/examples/blended2 b/examples/blended2
index 47d96d7..502193c 100755
--- a/examples/blended2
+++ b/examples/blended2
@@ -8,22 +8,22 @@ use Gimp::Util;
 
 sub my_innerbevel {
        my ($image, $drawable, $bg_col, $bl1, $bl2, $elev, $depth, $rad_tog) = @_;
-       # if you specify RGBA as your type, this die is only there for 
+       # if you specify RGBA as your type, this die is only there for
        # running it non-interactively
        $drawable->has_alpha or die "You can't run this script without an ALPHA CHANNEL!!";
 
-        # get release of gimp, so we can be compatible between versions
-        my $gimpversion = Gimp->version;
-        $gimpversion =~ m/^(\d)\.(\d)\.\d/;
-        my $gimpmajor = $1;
-        my $gimpminor = $2;
-        my $api22 = 0; my $api23 = 0;
-  
-        if ($gimpmajor == 2 && $gimpminor == 2) { $api22 = 1; }
-        elsif ($gimpmajor == 2 && $gimpminor >= 3) { $api23 = 1; }
-        else {die "Don't know how to handle gimp version $gimpversion with this plugin!\n"};
+       # get release of gimp, so we can be compatible between versions
+       my $gimpversion = Gimp->version;
+       $gimpversion =~ m/^(\d)\.(\d)\.\d/;
+       my $gimpmajor = $1;
+       my $gimpminor = $2;
+       my $api22 = 0; my $api23 = 0;
 
-        Context->push();
+       if ($gimpmajor == 2 && $gimpminor == 2) { $api22 = 1; }
+       elsif ($gimpmajor == 2 && $gimpminor >= 3) { $api23 = 1; }
+       else {die "Don't know how to handle gimp version $gimpversion with this plugin!\n"};
+
+       Context->push();
 
        my $img = gimp_image_new (256, 100, RGB_IMAGE);
        $drawable->get_image->selection_all;
@@ -36,29 +36,29 @@ sub my_innerbevel {
                $bg_layer->drawable_fill(BACKGROUND_FILL);
                $img->add_layer($bg_layer,0);
        }
-        $img->resize($drawable->width,$drawable->height, 0, 0);
+       $img->resize($drawable->width,$drawable->height, 0, 0);
        my $text1_lay;
        $text1_lay=$img->layer_new($drawable->width,$drawable->height,$image->layertype(1), "Text -1-", 100, 
NORMAL_MODE);
        $img->add_layer($text1_lay,-1);
        gimp_edit_clear ($text1_lay);
        $text1_lay->edit_paste(0)->floating_sel_anchor;
-        if ($api22) {
+       if ($api22) {
          $text1_lay->set_preserve_trans(1);
-        }
-        elsif ($api23) {
+       }
+       elsif ($api23) {
          $text1_lay->set_lock_alpha(1);
-        }
+       }
        Context->set_foreground ($bl1);
        Context->set_background ($bl2);
        @start = ($text1_lay->width / 2 - 5, 0);
        @end = ($text1_lay->width / 2 + 5, $text1_lay->height);
-       gimp_edit_blend ($text1_lay, 
-                        FG_BG_RGB_MODE, 
-                        NORMAL_MODE, 
-                        GRADIENT_LINEAR, 
-                        100, 
-                        FALSE, 
-                        REPEAT_NONE, 
+       gimp_edit_blend ($text1_lay,
+                        FG_BG_RGB_MODE,
+                        NORMAL_MODE,
+                        GRADIENT_LINEAR,
+                        100,
+                        FALSE,
+                        REPEAT_NONE,
                         FALSE, # reverse
                         FALSE, # supersampling
                         2, # recursion levels
@@ -71,14 +71,14 @@ sub my_innerbevel {
        $img->add_layer($text2_lay, -1);
        Context->set_background ([255, 255, 255]);
        $text2_lay->edit_fill(BACKGROUND_FILL);
-        if ($api22) {
+       if ($api22) {
          $text1_lay->set_preserve_trans(0);
          $text2_lay->set_preserve_trans(0);
-        }
-        elsif ($api23) {
+       }
+       elsif ($api23) {
          $text1_lay->set_lock_alpha(0);
          $text2_lay->set_lock_alpha(0);
-        }
+       }
        plug_in_gauss_rle ($text2_lay, 6, 1, 1);
        plug_in_bump_map ($img, $text1_lay, $text2_lay, 110.0, $elev, $depth, 0, 0, 0, 0, 0, 0, 0);
        $text2_lay->invert;
@@ -88,12 +88,12 @@ sub my_innerbevel {
        if ($rad_tog == 1) {
                $img->flatten;
                gimp_image_convert_indexed ($img, 0, MAKE_PALETTE, 256, 0, 0, "");
-               my $new = gimp_image_active_drawable ($img);
-               gimp_layer_add_alpha ($new);
-               gimp_by_color_select ($new, [255, 255, 255], 55, CHANNEL_OP_ADD, 0, 0, 0.0, 0);
-               gimp_edit_clear ($new);
-               gimp_selection_none ($img);
-        } else {
+               my $new = gimp_image_active_drawable ($img);
+               gimp_layer_add_alpha ($new);
+               gimp_by_color_select ($new, [255, 255, 255], 55, CHANNEL_OP_ADD, 0, 0, 0.0, 0);
+               gimp_edit_clear ($new);
+               gimp_selection_none ($img);
+       } else {
                $img->flatten;
        }
 #      gimp_display_new ($img);
@@ -108,22 +108,22 @@ It uses a techinque quite similar to that in the Inner Bevel Logo.
 EOF
 
 register "make_bevel_logos",
-         "A script to get blended beveled logos",
-         $help,
-         "Michele Gherlone <mikem\ enet it>",
-         "(c) 2000 M. Gherlone",
-         "20000130",
-         N_"<Image>/Filters/Render/Blended Logo...",
-         "RGBA",
-         [
-           [PF_COLOUR  , 'choose_bg_colour', "Choose the background colour", [255, 255, 255]],
-           [PF_COLOUR  , 'blend_start',  "Choose the 1st blend colour", [247, 231, 9]],
-           [PF_COLOUR  , 'blend_stop',   "Choose the 2nd blend colour", [255, 0, 0]],
-           [PF_SLIDER  , 'strength_of_bevel', "Strength of bevel", 45.00, [0.00, 60.00, 0.50]],
-           [PF_SLIDER  , 'depth_of_bevel', "Depth of bevel", 4, [0, 60, 1]],
-           [PF_RADIO   , 'user_choice', "The user's choice", 0, [Background => 0, Transparent => 1]],
-         ],
-         \&my_innerbevel;
+        "A script to get blended beveled logos",
+        $help,
+        "Michele Gherlone <mikem\ enet it>",
+        "(c) 2000 M. Gherlone",
+        "20000130",
+        N_"<Image>/Filters/Render/Blended Logo...",
+        "RGBA",
+        [
+          [PF_COLOUR   , 'choose_bg_colour', "Choose the background colour", [255, 255, 255]],
+          [PF_COLOUR   , 'blend_start',  "Choose the 1st blend colour", [247, 231, 9]],
+          [PF_COLOUR   , 'blend_stop',   "Choose the 2nd blend colour", [255, 0, 0]],
+          [PF_SLIDER   , 'strength_of_bevel', "Strength of bevel", 45.00, [0.00, 60.00, 0.50]],
+          [PF_SLIDER   , 'depth_of_bevel', "Depth of bevel", 4, [0, 60, 1]],
+          [PF_RADIO    , 'user_choice', "The user's choice", 0, [Background => 0, Transparent => 1]],
+        ],
+        \&my_innerbevel;
 exit main;
 
 =head1 LICENSE
diff --git a/examples/bricks b/examples/bricks
index d5a321a..d5bbcb4 100755
--- a/examples/bricks
+++ b/examples/bricks
@@ -1,22 +1,22 @@
 #!/usr/bin/perl
 
-# [10/27/1999] v0.0.1 First version. 
- 
+# [10/27/1999] v0.0.1 First version.
+
 # (c) Copyright by Tels www.bloodgate.com 1999.
 
 # generate a brick texture for using in 3d games
 #
 # params: brick width/height, brick pattern, random light skew, border color
 #
-# 12/5/03: <sjburges gimp org> updated to use gimp_image_get_floating_sel, 
+# 12/5/03: <sjburges gimp org> updated to use gimp_image_get_floating_sel,
 # rather than gimp_image_floating_sel, gimp_undo_push/gimp_image_undo_push
 #
-# 25/2/04: <sjbkurges gimp org> changed color specifiers.  Reordered so that 
-# pasting happens after layer mask is attached to image.  Removed harmful 
-# gimp_layer_delete() calls. s/gimp_channel_ops_offset/gimp_drawable_offset/.  
+# 25/2/04: <sjbkurges gimp org> changed color specifiers.  Reordered so that
+# pasting happens after layer mask is attached to image.  Removed harmful
+# gimp_layer_delete() calls. s/gimp_channel_ops_offset/gimp_drawable_offset/.
 #
-# The plug-in is certainly incomplete, with unused parameters, artficial limiation 
-# on max/min size (which silently moves it to 256?). Doesn't save/restore current 
+# The plug-in is certainly incomplete, with unused parameters, artficial limiation
+# on max/min size (which silently moves it to 256?). Doesn't save/restore current
 # gimp pattern/colors before setting them.  Otherwise, it seems to work OK now :)
 
 use Gimp qw(:auto N_);
@@ -37,9 +37,9 @@ sub do_bricks {
     $layerpat = gimp_image_add_new_layer($image,0,0,0);
     gimp_selection_all($image);
     gimp_edit_bucket_fill($layerpat,2,0,100,0,0,1,1);
-    
+
     # make border lines
-    gimp_context_set_foreground ([1,1,1]); 
+    gimp_context_set_foreground ([1,1,1]);
     $layer = gimp_image_add_new_layer($image,0,0,0);
     gimp_drawable_fill($layer,3);
     my $w = 1; my $h = 1; my $j = 0; my $wo = 0;
@@ -64,7 +64,7 @@ sub do_bricks {
     gimp_image_undo_group_end($image);
     # make a copy of it for bump mapping
     gimp_selection_all($image);
-    $layer->edit_copy(); 
+    $layer->edit_copy();
     $border = gimp_image_add_new_layer($image,0,0,0);
     #print "$border\n";
     $border->edit_paste(0);
@@ -90,8 +90,8 @@ sub do_bricks {
         $r = int(rand ($skew) - ($skew / 1));
         if ($r != 0)
           {
-          gimp_context_set_foreground ("#ffffff") if ($r > 0); 
-          gimp_context_set_foreground ("#000000") if ($r < 0); 
+          gimp_context_set_foreground ("#ffffff") if ($r > 0);
+          gimp_context_set_foreground ("#000000") if ($r < 0);
           gimp_rect_select($image,$w+$wo+$bp,$h+$bp,$brickw,$brickh,2,0,0);
           gimp_edit_bucket_fill($layerpat,0,0,4*abs($r),0,0,1,1);
           # halves
@@ -110,10 +110,10 @@ sub do_bricks {
     gimp_context_set_background ($clr);
     $layerb = gimp_image_add_new_layer($image,1,BACKGROUND_FILL,0);
     gimp_selection_all($image);
-    if ($bp ne "") 
+    if ($bp ne "")
       {
       gimp_context_set_pattern($bp);
-      gimp_edit_bucket_fill($layerb,2,0,100,0,0,1,1); 
+      gimp_edit_bucket_fill($layerb,2,0,100,0,0,1,1);
       }
     $border->edit_copy();
     gimp_layer_add_alpha($layerb);
@@ -122,8 +122,8 @@ sub do_bricks {
     $mask->edit_paste(0);
     gimp_floating_sel_anchor(gimp_image_get_floating_sel($image));
     gimp_selection_none($image);
-    gimp_image_remove_layer ($border); 
-    gimp_image_remove_layer ($layer); 
+    gimp_image_remove_layer ($border);
+    gimp_image_remove_layer ($layer);
     gimp_layer_remove_mask ($layerb,0);
     gimp_drawable_offset ($layerpat,1,0,-1,-1);
     gimp_drawable_offset ($layerb,1,0,-1,-1);
@@ -133,15 +133,15 @@ sub do_bricks {
 }
 
 register
-        "do_bricks", 
+        "do_bricks",
         "Generate brick texture",
-        "Try it out", 
-        "Tels", 
-        "http://bloodgate.com";, 
+        "Try it out",
+        "Tels",
+        "http://bloodgate.com";,
         "10/26/1999a",
-        N_"<Image>/Filters/Render/Bricks...", 
+        N_"<Image>/Filters/Render/Bricks...",
         undef,
-        [ 
+        [
          [PF_PATTERN,  "background", "Brick pattern", "Leather"],
          [PF_STRING,  "highlight", "Second brick pattern for some highlightin (unused)", "unused yet"],
          [PF_STRING,  "borderpattern", "Border pattern (empty for none)", ""],
@@ -160,7 +160,7 @@ exit main();
 
 =head1 LICENSE
 
-Copyright Tels.  
+Copyright Tels.
 
 Licenced under the GNU Public License.
 
diff --git a/examples/burst b/examples/burst
index 56a6cb8..bc0104c 100755
--- a/examples/burst
+++ b/examples/burst
@@ -6,14 +6,14 @@ eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
 eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
     if 0; # not running under some shell
 
-# <sjburges gimp org> 
+# <sjburges gimp org>
 #
 use Gimp;
 use Gimp::Fu;
 use Gimp::Util;
 
 # This script was requested by jimmac, and I thought it sounded moderately
-# useful.  I could have just made a couple selection masks and made it 
+# useful.  I could have just made a couple selection masks and made it
 # moderately useful, but instead I redid all the math myself to make it
 # intresting and have a really nice effect on the end points (rather than
 # chopping off odd-shaped brushes when the ellipse ends).
@@ -27,10 +27,10 @@ use Gimp::Util;
 #  Changed second angle to be a sweep measurement, not an absolute angle (I
 #  found that I was calculating a lot more by hand than I should be when
 #  using it)
-#  
+#
 #  Also fixed up a bug that I'd covered up, and did a decent for loop for
 #  a change.  Fixed up rectangle to not mess up on corner areas.
-# 
+#
 #  Lastly, I added a special case for 360 degrees - don't redraw the last
 #  line for a full circle; instead re-adjust end point.  I'm not entirely
 #  happy with this solution, but its close to what I expect to happen.  I
@@ -41,12 +41,12 @@ use Gimp::Util;
 ####-----
 # Revision 08/10/2003
 #  Changed PF_SLIDER to PF_SPINNER, since they're a whole lot nicer to work with
-#  for this type of operation - getting it "close" is pretty annoying with 
+#  for this type of operation - getting it "close" is pretty annoying with
 #  sliders.
 
 # Gimp::set_trace(TRACE_ALL);
 
-# find an equivalent polar value in the range of 0 to 2 pi 
+# find an equivalent polar value in the range of 0 to 2 pi
 sub find_in_2pi
 {
   my ($ang) = @_;
@@ -61,10 +61,10 @@ sub find_in_2pi
 
 register "burst",
   "Bursts from a central location\n",
-  "Creates a Burst of various sizes from the center of the currently 
+  "Creates a Burst of various sizes from the center of the currently
 selected areas.  Can create either an elliptical burst, or some portion
 of said burst.  Also, you can specify how much (in pixels) to leave blank on
-the inside and the outside of the burst.  This uses whatever the current 
+the inside and the outside of the burst.  This uses whatever the current
 brush settings are, and lets you control which direction to have it draw the
 fades from if you have Fade set\n",
   "Seth Burgess",
@@ -77,41 +77,41 @@ fades from if you have Fade set\n",
    [PF_RADIO, "fade_dir", "Fade Direction (if fade is set)", 0,  [In => 1, Out => 0]],
    [PF_VALUE, 'spokes', "How many spokes", 16],
    [PF_VALUE, 'inside_pixels', "Inside Pixels", 10],
-   [PF_VALUE, 'outside_pixels', "Outside Pixels", 10], 
+   [PF_VALUE, 'outside_pixels', "Outside Pixels", 10],
    [PF_SPINNER, 'start_angle', "Angle to start at, with 0 being left, and sweeping counter-clockwise.", 0, 
[-360, 360, 1]],
    [PF_SPINNER, 'arc_angle', "How many degrees to arc through.", 360, [-360, 360, 1]]
   ],
   [],
   [],
   sub {
-    my($img,$layer, $shape, $fade_dir, $points, 
+    my($img,$layer, $shape, $fade_dir, $points,
        $inside_pixels, $outside_pixels, $start_angle, $arc_angle) = _;
-    
+
     $pi = 3.1415927;
-    
+
     # Special case 360
-    if (abs($arc_angle) == 360) 
+    if (abs($arc_angle) == 360)
       {
         $end_angle = $start_angle + $arc_angle - abs ($arc_angle/$points);
       }
-    else 
+    else
       {
         $end_angle = $start_angle + $arc_angle;
       }
-      
+
     eval { $img->undo_group_start };
 
-    Gimp->progress_init("Burst");    
+    Gimp->progress_init("Burst");
     $progress_increment = 1/$points;
     $progress = 0;
 
     my $dumb;
     ($dumb, $x1, $y1, $x2, $y2) = $img->selection_bounds;
     # $img->selection_none;
-    
+
     $width = $x2 - $x1;
     $height = $y2 - $y1;
-    
+
 #    print "X1 = $x1, X2 = $x2, Y1 = $y1, Y2 = $y2\n";
     $center_x = $x1 + $width/2;
     $center_y = $y1 + $height/2;
@@ -123,22 +123,22 @@ fades from if you have Fade set\n",
         $start_angle = $angle;
       }
 
-    if ($shape == 0) 
+    if ($shape == 0)
       { #ellipse
         # do $points worth
         for ($i = 0;
              $i < $points;
-            #$angle <$end_angle*$pi/180-0.01; 
+            #$angle <$end_angle*$pi/180-0.01;
              $i++ )
           {
             $angle = $i * abs($start_angle-$end_angle)*$pi/($points-1)/180;
             $angle += $start_angle*$pi/180;
-        
+
             # use the major/minor axis description of an ellipse:
             # x^2   y^2
             # --- + --- = 1
             # a^2   b^2
-            # 
+            #
             # where a is the x axis, b is the y axis, and the equation of
             # a line passing through 0 (y=mb).  Solve for x&y, and pick the
             # correct one for the angle.
@@ -155,8 +155,8 @@ fades from if you have Fade set\n",
             if ($m ==0) { $m = 0.000000000001; } #avoid div by 0
             if ($c ==0) { $c = 0.000000000001; } #avoid div by 0
             if ($d ==0) { $d = 0.000000000001; } #avoid div by 0
-        
-            # find the positive solution of the quadratic for the endpoints 
+
+            # find the positive solution of the quadratic for the endpoints
             $x = sqrt(1/((1/$a/$a)+($m*$m/$b/$b)));
             $y = sqrt(1/((1/($m*$m*$a*$a))+(1/$b/$b)));
 
@@ -165,15 +165,15 @@ fades from if you have Fade set\n",
             $y_start = sqrt(1/((1/($m*$m*$c*$c))+(1/$d/$d)));
 
             # pick the right solution of the quadratic
-            if ((find_in_2pi($angle) < $pi/2) || 
-                (find_in_2pi($angle) > 3*$pi/2)) 
-              { 
-                $x = -$x; 
+            if ((find_in_2pi($angle) < $pi/2) ||
+                (find_in_2pi($angle) > 3*$pi/2))
+              {
+                $x = -$x;
                 $x_start = -$x_start;
               }
-            if (find_in_2pi($angle) > $pi) 
+            if (find_in_2pi($angle) > $pi)
               {
-                $y = -$y; 
+                $y = -$y;
                 $y_start = -$y_start;
               }
             # do translations to center stuff
@@ -182,8 +182,8 @@ fades from if you have Fade set\n",
             $x_start = $x_start + $center_x;
             $y_start = $y_start + $center_y;
 
-            if ($fade_dir == 1) 
-              {        
+            if ($fade_dir == 1)
+              {
                 $layer->paintbrush_default(4, [$x, $y, $x_start, $y_start]);
               }
             else
@@ -194,13 +194,13 @@ fades from if you have Fade set\n",
             Gimp->progress_update($progress);
          }
       }
-    else 
+    else
       { #rectangle
         # The idea here is to see where the line intersects with the
-        # rightmost line.  If the abs of that is higer than the height, 
+        # rightmost line.  If the abs of that is higer than the height,
         # see where it intersects the top instead.
 
-        #print "width = $width, height = $height\n";        
+        #print "width = $width, height = $height\n";
 
         for ($i = 0;
              $i < $points;
@@ -208,11 +208,11 @@ fades from if you have Fade set\n",
           {
             $angle = $i * abs($start_angle-$end_angle)*$pi/($points-1)/180;
             $angle += $start_angle*$pi/180;
-        
+
             # get the slope
             $m = sin($angle)/cos($angle);
             if (abs($m*$width/2) < $height/2)
-              { # draw on the right/left borders        
+              { # draw on the right/left borders
                 $x = $width/2-$outside_pixels;
                 $y = $m*($width/2-$outside_pixels);
                 $x_start = ($width>$height)
@@ -225,20 +225,20 @@ fades from if you have Fade set\n",
            else
              { # draw on the top/bottom borders
                 $y = $height/2-$outside_pixels;
-                $x = ($height/2-$outside_pixels)/$m;        
+                $x = ($height/2-$outside_pixels)/$m;
                 $y_start = ($width>$height)
                         ?($inside_pixels*$height/$width)
                         :($inside_pixels);
                 $x_start = ($width>$height)
                         ?($inside_pixels*$height/$width/$m)
                         :($inside_pixels/$m);
-             } 
+             }
           # the method of finding points by lines like above makes picking right
-          # values kinda icky, as shown by these if statements. 
-          if ((find_in_2pi($angle) <= $pi/2) || 
-             (find_in_2pi($angle) > 3*$pi/2)) 
-            { 
-                $x = -abs($x); 
+          # values kinda icky, as shown by these if statements.
+          if ((find_in_2pi($angle) <= $pi/2) ||
+             (find_in_2pi($angle) > 3*$pi/2))
+            {
+                $x = -abs($x);
                 $x_start = -abs($x_start);
             }
           else
@@ -247,14 +247,14 @@ fades from if you have Fade set\n",
                 $x_start = abs($x_start);
             }
 
-          if (find_in_2pi($angle) > $pi) 
+          if (find_in_2pi($angle) > $pi)
             {
-              $y = -abs($y); 
+              $y = -abs($y);
               $y_start = -abs($y_start);
             }
-          else 
+          else
             {
-              $y = abs($y); 
+              $y = abs($y);
               $y_start = abs($y_start);
             }
           # do translations to center stuff
@@ -262,8 +262,8 @@ fades from if you have Fade set\n",
           $y = $y + $center_y;
           $x_start = $x_start + $center_x;
           $y_start = $y_start + $center_y;
-          if ($fade_dir == 1) 
-            {        
+          if ($fade_dir == 1)
+            {
               $layer->paintbrush_default(4, [$x, $y, $x_start, $y_start]);
             }
           else
@@ -273,7 +273,7 @@ fades from if you have Fade set\n",
           $progress += $progress_increment;
           Gimp->progress_update($progress);
         }
-    } 
+    }
   eval { $img->undo_group_end };
   return();
 };
@@ -282,7 +282,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/centerguide b/examples/centerguide
index 93fb1c9..817eb58 100755
--- a/examples/centerguide
+++ b/examples/centerguide
@@ -47,6 +47,6 @@ exit main;
 =head1 LICENSE
 
 Copyright Claes G Lindblad.
-Distributed under the terms of the GNU Public License. 
+Distributed under the terms of the GNU Public License.
 
 =cut
diff --git a/examples/colorhtml b/examples/colorhtml
index 76bc329..42a50f4 100755
--- a/examples/colorhtml
+++ b/examples/colorhtml
@@ -18,28 +18,28 @@ sub read_text {
 }
 
 register "file_colorhtml_save",
-         "Saves the image as coloured html text",
-         "=pod",
-         "Marc Lehmann",
-         "Marc Lehmann <pcg\ goof com>",
-         "1999-11-22",
-         "<Save>/COLORHTML",
-         "*",
-         [
-          [PF_RADIO,   "character_source", "where to take the characters from", 0,
-                       [sourcecode => 0, textfile => 1, filename => 2]],
-          [PF_FILE,    "characters",     "the filename to read or the characters to use", ""],
-          [PF_STRING,   "font_size",      "the html font size (1..7 or -7 .. +7)", 2],
-          [PF_BOOL,     "use_css",        "use CSS?", 1],
-          [PF_BOOL,    "compatible",     "html-4.0 compliancy?", 1],
-          [PF_BOOL,    "closetag",       "add closing tag?", 1],
-         ],
-         sub {
+        "Saves the image as coloured html text",
+        "=pod",
+        "Marc Lehmann",
+        "Marc Lehmann <pcg\ goof com>",
+        "1999-11-22",
+        "<Save>/COLORHTML",
+        "*",
+        [
+         [PF_RADIO,    "character_source", "where to take the characters from", 0,
+                       [sourcecode => 0, textfile => 1, filename => 2]],
+         [PF_FILE,     "characters",     "the filename to read or the characters to use", ""],
+         [PF_STRING,   "font_size",      "the html font size (1..7 or -7 .. +7)", 2],
+         [PF_BOOL,     "use_css",        "use CSS?", 1],
+         [PF_BOOL,     "compatible",     "html-4.0 compliancy?", 1],
+         [PF_BOOL,     "closetag",       "add closing tag?", 1],
+        ],
+        sub {
    my($img,$drawable,$filename,$filename2,$source,$text,$size,$css,$html40,$closetag) = @_;
    my($new_img,$new_drawable);
    my $max;
    my $export = Gimp::UI::export_image ($new_img=$img, $new_drawable=$drawable, "COLORHTML",
-                                        EXPORT_CAN_HANDLE_RGB);
+                                       EXPORT_CAN_HANDLE_RGB);
    die __"export failed" if $export == EXPORT_CANCEL;
    my ($w,$h) = ($new_drawable->width, $new_drawable->height);
    Gimp->tile_cache_ntiles($w / Gimp->tile_width + 1);
@@ -47,11 +47,11 @@ register "file_colorhtml_save",
    my $cssfile;
    if ($css) {
       if ($filename =~ /(.*)\.[^.]+$/) {
-         $cssfile = "$1.css"
+        $cssfile = "$1.css"
       } elsif ($filename =~ /\.$/) {
-         $cssfile = "${filename}css"
+        $cssfile = "${filename}css"
       } else {
-         $cssfile = "$filename.css"
+        $cssfile = "$filename.css"
       }
       sysopen CSS,$cssfile,O_CREAT|O_TRUNC|O_WRONLY or die __"Unable to open '$cssfile' for writing: $!\n";
    }
@@ -108,24 +108,24 @@ HEADER
       my $pel = $region->get_row2 (0, $y, $w);
       push @chars,@data while @chars < $w;
       if ($css) {
-         $pel =~ s{(...)}{
-            "<span class=\"N".unpack("H*",$1)."\">".shift(@chars)."</span>"
-         }ges;
-         while ($pel =~ /"N([0-9a-fA-F]{6})"/g) {
-             my $color = $1;
-             print CSS "span.N$color { color: #$color; background-color: #000000; }\n" unless exists 
$colors{$color};
-             $colors{$color}++;
-         }
+        $pel =~ s{(...)}{
+           "<span class=\"N".unpack("H*",$1)."\">".shift(@chars)."</span>"
+        }ges;
+        while ($pel =~ /"N([0-9a-fA-F]{6})"/g) {
+            my $color = $1;
+            print CSS "span.N$color { color: #$color; background-color: #000000; }\n" unless exists 
$colors{$color};
+            $colors{$color}++;
+        }
       } elsif ($html40) {
-         $pel =~ s{(...)}{
-            "<font color=\"#".unpack("H*",$1)."\">".shift(@chars).$closetag;
-         }ges;
+        $pel =~ s{(...)}{
+           "<font color=\"#".unpack("H*",$1)."\">".shift(@chars).$closetag;
+        }ges;
       } else {
-         $pel =~ s{(...)}{
-            "<font color=".unpack("H*",$1).">".shift(@chars).$closetag;
-         }ges;
+        $pel =~ s{(...)}{
+           "<font color=".unpack("H*",$1).">".shift(@chars).$closetag;
+        }ges;
       }
-      
+
       print FILE $pel,"\n";
       update Progress $y/$h;
    }
diff --git a/examples/dataurl b/examples/dataurl
index 1e3b0cc..045a747 100755
--- a/examples/dataurl
+++ b/examples/dataurl
@@ -38,7 +38,7 @@ register "file_dataurl_save",
    my($new_img,$new_drawable);
    my $max;
    my $export = Gimp::UI::export_image ($new_img=$img, $new_drawable=$drawable, "DATAURL",
-                                        $type==0 ? EXPORT_CAN_HANDLE_INDEXED|EXPORT_CAN_HANDLE_ALPHA 
+                                        $type==0 ? EXPORT_CAN_HANDLE_INDEXED|EXPORT_CAN_HANDLE_ALPHA
                                       : $type==1 ? EXPORT_CAN_HANDLE_RGB|EXPORT_CAN_HANDLE_GRAY
                                       : $type==2 ? 
EXPORT_CAN_HANDLE_RGB|EXPORT_CAN_HANDLE_GRAY|EXPORT_CAN_HANDLE_INDEXED
                                       :            0 );
@@ -125,7 +125,7 @@ Browser compatibility list (send more results to pcg goof com ;)
   Netscape 3.x displays broken image icons
   Netscape 4.x works on some configurations (communicator!),
                 not on others (navigator!)
-  Lynx                 displays the base64 code as text :(
+  Lynx         displays the base64 code as text :(
   MSIE 4       thousands of error messages in dialog boxes ;->
   MSIE 5       shows broken image icon
 
diff --git a/examples/ditherize b/examples/ditherize
index 9428dcb..0e16103 100755
--- a/examples/ditherize
+++ b/examples/ditherize
@@ -22,19 +22,19 @@ my %imagetype2layertype = (
 );
 
 register "plug_in_ditherize",
-         "dithers current selection",
-         "This script takes the current selection and dithers it just like convert to indexed",
-         "Marc Lehmann",
-         "Marc Lehmann",
-         "1.2",
-         N_"<Image>/Filters/Noise/Ditherize...",
-         "RGB*, GRAY*",
-         [
-          [PF_RADIO,           "dither_type",  "The dither type (see gimp_image_convert_indexed)", 1,
-                                               [none => 0, fs => 1, "fs/low-bleed" => 2, ordered => 3]],
-          [PF_SLIDER,          "colours",      "The number of colours to dither to", 10, [0, 256, 1, 1]],
-         ],
-         sub {
+        "dithers current selection",
+        "This script takes the current selection and dithers it just like convert to indexed",
+        "Marc Lehmann",
+        "Marc Lehmann",
+        "1.2",
+        N_"<Image>/Filters/Noise/Ditherize...",
+        "RGB*, GRAY*",
+        [
+         [PF_RADIO,            "dither_type",  "The dither type (see gimp_image_convert_indexed)", 1,
+                                               [none => 0, fs => 1, "fs/low-bleed" => 2, ordered => 3]],
+         [PF_SLIDER,           "colours",      "The number of colours to dither to", 10, [0, 256, 1, 1]],
+        ],
+        sub {
    my($image,$drawable,$dither,$colours)= _;
 
 #   Gimp::set_trace(-1);
@@ -58,8 +58,8 @@ register "plug_in_ditherize",
    my $copy = new Gimp::Image($w, $h, $image->base_type);
    $copy->undo_disable;
    my $draw = new Gimp::Layer($copy, $w, $h,
-                        $imagetype2layertype{$image->base_type},
-                        "temporary layer", 100, NORMAL_MODE);
+                       $imagetype2layertype{$image->base_type},
+                       "temporary layer", 100, NORMAL_MODE);
    $copy->add_layer ($draw, 1);
    $draw->edit_paste(0)->anchor;
    $copy->convert_indexed ($dither, MAKE_PALETTE, $colours, 1, 1, "");
diff --git a/examples/dots b/examples/dots
index 02db57e..55e9615 100755
--- a/examples/dots
+++ b/examples/dots
@@ -1,7 +1,7 @@
-#!/usr/bin/perl 
+#!/usr/bin/perl
 
 # <sjburges gimp org>
-# Generate dots within a selection. 
+# Generate dots within a selection.
 
 use Gimp qw(:auto __ N_);
 use Gimp::Fu;
@@ -9,22 +9,22 @@ use Gimp::Util;
 
 # Gimp::set_trace(TRACE_ALL);
 
-register "dots", 
-         "Dots", 
+register "dots",
+         "Dots",
          "Create evenly spaced dots on a layer, within a selection.",
-         "Seth Burgess", 
-         "Seth Burgess <sjburges\ gimp org>", 
+         "Seth Burgess",
+         "Seth Burgess <sjburges\ gimp org>",
          "2003-09-20",
-         N_"<Image>/Filters/Render/Pattern/Dots...", 
-         "RGB*, GRAY*", 
-         [ 
-           [PF_SPINNER, "size", "Diameter of dots", 4, [1,255,1]], 
+         N_"<Image>/Filters/Render/Pattern/Dots...",
+         "RGB*, GRAY*",
+         [
+           [PF_SPINNER, "size", "Diameter of dots", 4, [1,255,1]],
           [PF_COLOR, "dotcolor", "Color of the dots", [0,0,255]],
           [PF_SLIDER, "opacity", "Opacity of dots", 100, [0,100,1]],
-           [PF_SPINNER, "xspacing", "Spacing of dots in X dimension", 16, [1,255,1]], 
-           [PF_SPINNER, "yspacing", "Spacing of dots in Y dimension", 16, [1,255,1]], 
-           [PF_SPINNER, "xoffset", "Offset of dots in X dimension", 0, [0,255,1]], 
-           [PF_SPINNER, "yoffset", "Offset of dots in y dimension", 0, [0,255,1]], 
+           [PF_SPINNER, "xspacing", "Spacing of dots in X dimension", 16, [1,255,1]],
+           [PF_SPINNER, "yspacing", "Spacing of dots in Y dimension", 16, [1,255,1]],
+           [PF_SPINNER, "xoffset", "Offset of dots in X dimension", 0, [0,255,1]],
+           [PF_SPINNER, "yoffset", "Offset of dots in y dimension", 0, [0,255,1]],
             ],
          [],
          ['gimp-1.3'],
@@ -32,11 +32,11 @@ register "dots",
     my($img,$layer,$size,$dotcolor,$opacity,$xspacing,$yspacing,$xoffset,$yoffset) = _;
     my $has_noselection;
     $layer->is_layer || die "A layer is required for this plugin";
-     
+
     $yoffset = $yoffset % $yspacing;
     $xoffset = $xoffset % $xspacing;
 
-    $img->undo_group_start;  
+    $img->undo_group_start;
 
 # Get/save current selection info
     @bounds = $img->selection_bounds;
@@ -47,7 +47,7 @@ register "dots",
       }
     $selchannel = $img->selection_save;
 
-# Generate selection mask of dots on entire image  
+# Generate selection mask of dots on entire image
     $img->selection_none;
     for ($x=$xoffset-$xspacing;
          $x<$img->width+$size+$xspacing;
@@ -61,8 +61,8 @@ register "dots",
                                  $size,$size,CHANNEL_OP_ADD,1,0,0.0);
            }
       }
-   
-# Set opacity of dots via selection mask 
+
+# Set opacity of dots via selection mask
     Context->push();
 
     $opc = gimp_channel_new($img,$img->width,$img->height,"OPC", 50, [0,0,0]);
@@ -71,13 +71,13 @@ register "dots",
     $opc->fill(FOREGROUND_FILL);
     $opc->selection_combine(CHANNEL_OP_INTERSECT);
 
-# And mask off with original selection 
+# And mask off with original selection
     $selchannel->selection_combine(CHANNEL_OP_INTERSECT);
 
 # Make the dots
     Context->set_foreground($dotcolor);
     $layer->edit_fill(FOREGROUND_FILL);
-   
+
 # Cleanup to state before plugin was called
     if ($has_noselection)
       {
@@ -86,13 +86,13 @@ register "dots",
     else
       {
         $selchannel->selection_combine(CHANNEL_OP_REPLACE);
-      }         
+      }
 
     $img->remove_channel($selchannel);
     $img->remove_channel($opc);
 
     Context->pop();
-    
+
     $img->undo_group_end;
     $layer->set_active_layer;
 
@@ -102,7 +102,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/dust b/examples/dust
index 12ba325..13be6b4 100755
--- a/examples/dust
+++ b/examples/dust
@@ -79,13 +79,13 @@ register "dust",
    my ($w, $h) = ($image->width, $image->height);
 
    $image->undo_group_start;
-   
+
    Context->push();
    Context->set_foreground("white");
    Context->set_brush("Circle (01)");
    Context->set_opacity(50);
    # This will cause a PDB failure as of 9/7/05 CVS - can't set
-   # spacing on non-editable brush via PDB.  We should probably 
+   # spacing on non-editable brush via PDB.  We should probably
    # let this happen, so we can do via script what we can via the UI.
    # Brushes->set_spacing(Context->get_brush, 100);
    warn "Unable to set spacing due to missing PDB functionailty\n";
@@ -95,7 +95,7 @@ register "dust",
       $layer = $image->add_new_layer (0, TRANSPARENT_FILL, 1);
       $layer->set_mode (DIFFERENCE_MODE);
    }
-   
+
    for (1..($w*$h*$density)) {
       my ($x, $y) = (rand $w, rand $h);
       my $l = int($len + rand $len);
@@ -105,7 +105,7 @@ register "dust",
          push @c, $b += 5*(gen_rand-0.5);
          push @c, $b += 5*(gen_rand-0.5);
       }
-      
+
       $layer->paintbrush_default([map { $x+$c[$_], $y+$c[$_+$l] } 0..$l-1]);
    }
 
diff --git a/examples/example-fu b/examples/example-fu
index 8651799..11dad1b 100755
--- a/examples/example-fu
+++ b/examples/example-fu
@@ -15,7 +15,7 @@ register "gimp_fu_example_script",                    # fill in a function name
          "20000321",                                   # the date this script was written (YYYYMMDD)
          N_"<Toolbox>/Xtns/Gimp::Fu Example...",       # the menu path - the 'N_' is for internationalization
          "",                                           # image types to accept (RGB, RGAB and GRAYA)
-         [ # one of each type of parameter here 
+         [ # one of each type of parameter here
          # argument type, switch name  , a short description           , default value, extra arguments
           [PF_SLIDER   , "width"       , "The image width"             , 360, [300, 500]],
           [PF_SPINNER  , "height"      , "The image height"            , 100, [100, 200]],
@@ -40,7 +40,7 @@ register "gimp_fu_example_script",                    # fill in a function name
 
    # set tracing, disable this to get rid of the debugging output
    Gimp::set_trace(TRACE_CALL);
-   
+
    # store current context, so that present settings aren't affected
    Context->push();
 
@@ -66,7 +66,7 @@ register "gimp_fu_example_script",                    # fill in a function name
 
    # close the undo push group
    $img->undo_group_end;
-   
+
    # restore original context
    Context->pop();
 
diff --git a/examples/example-oo b/examples/example-oo
index 6b6362a..1d1ec3a 100755
--- a/examples/example-oo
+++ b/examples/example-oo
@@ -9,7 +9,7 @@ use Gimp qw(:auto);
 # the extension that's called.
 sub plug_in_example_oo {
 
-# we use syntax tricks to make it seem like we're generating a new 
+# we use syntax tricks to make it seem like we're generating a new
 # object by calling 'new'.  This is fairly standard PERL OO magic.
 
 # instead of my $img=gimp_image_new(300,200,RGB)
@@ -21,23 +21,23 @@ sub plug_in_example_oo {
 # instead of gimp_display_new($img);
   new Gimp::Display($img);
 
-# For any of Image, Drawable, Layer, Palette, Edit, Gradients, Patterns, 
+# For any of Image, Drawable, Layer, Palette, Edit, Gradients, Patterns,
 # Progress, Channel, Selection, Display, Plugin, you can use a syntax
-# like Objtype->function, and it will be translated into 
+# like Objtype->function, and it will be translated into
 # gimp_objtype_function
 
 # instead of gimp_context_set_background() you can use
   Palette->set_background([200,200,100]);
 
 # Next, we have 2 examples of using the drawable or image as an object when
-# its the first parameter to the PDB call.  
+# its the first parameter to the PDB call.
 
 # image_add_layer($img,$bg,1);
   $img->add_layer($bg,1);
 #  gimp_drawable_fill ($bg,BACKGROUND_FILL);
   $bg->fill(BACKGROUND_FILL);
 
-# Finally, we have a plugin example.  Note that though the PDB defintion 
+# Finally, we have a plugin example.  Note that though the PDB defintion
 # specifies a run mode, image and drawable, we only specify a drawable.
 
 #  plug_in_blur(1,$img,$bg);
@@ -59,7 +59,7 @@ Gimp::on_query {
                                "<Toolbox>/Xtns/Perl Example Plug-in", # Menu
                               undef, # Image types"
                               PLUGIN, # Type
-      [ 
+      [
         [PDB_INT32, "run_mode", "Interactive, [non-interactive]"]
       ], # Params
       []); # Return values
diff --git a/examples/examples.TODO b/examples/examples.TODO
index 2409d15..87b34c9 100644
--- a/examples/examples.TODO
+++ b/examples/examples.TODO
@@ -4,7 +4,7 @@ Problem scripts right now are:
 
 Scripts that require more than 1 layer - haven't implemented tests yet.
 TeX-to-float - just hangs when called.  Unknown why (works ok interactively)
-image_tile: I don't have a suffient gallery to test this with; anyone have a 
+image_tile: I don't have a suffient gallery to test this with; anyone have a
 few thousand pics to throw at this and let me know if it works?
 
 =============
diff --git a/examples/fade-alpha b/examples/fade-alpha
index addf8fe..9a4e0d9 100755
--- a/examples/fade-alpha
+++ b/examples/fade-alpha
@@ -18,7 +18,7 @@ use strict 'vars';
 my ($direction, $cancelFlag);
 my ($plugin) = "plug_in_alpha_fade";
 
-# XPM's that I removed the $ and the @'s from (they get intrepreted in 
+# XPM's that I removed the $ and the @'s from (they get intrepreted in
 # strings, which makes for nasty problems).
 
 my @arr = (
@@ -784,26 +784,26 @@ my @arr = (
 ]);
 
 ###
-# Subroutines 
+# Subroutines
 ###
 sub do_fade
 {
   my ($image, $drawable) = @_;
   my (@bounds, $mask, $prevBack, $prevFore);
-  
+
   if (!$drawable->is_layer)
     {
       die "$plugin: Cannot operate on anything other than layers; Check that you don't have a channel or 
floating selection currently selected.";
     }
-    
+
   $image->undo_group_start;
   @bounds = $image->selection_bounds;
- 
+
   if (!$drawable->has_alpha)
     {
       $drawable->add_alpha;
     }
- 
+
   if ($drawable->get_mask)
     {
       $mask = $drawable->get_mask;
@@ -813,9 +813,9 @@ sub do_fade
       $mask = $drawable->create_mask(ADD_ALPHA_MASK);
       $drawable->add_mask($mask);
     }
-  
+
   Context->push();
-  
+
   Context->set_background([0.0,0.0,0.0,1.0]);
   Context->set_foreground([1.0,1.0,1.0,1.0]);
 
@@ -827,16 +827,16 @@ sub do_fade
   # Bounds Map
   # (1,2) (3,2)
   # (1,4) (3,4)
-  
+
   if ($direction==0)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, 
-                   NORMAL_MODE, 
-                  GRADIENT_LINEAR, 
+      $mask->edit_blend(FG_BG_RGB_MODE,
+                   NORMAL_MODE,
+                  GRADIENT_LINEAR,
                   100.0,             # opacity
                   0.0,               # offset
-                   REPEAT_NONE, 
-                  0,                 # reverse 
+                   REPEAT_NONE,
+                  0,                 # reverse
                   0,                 # supersample
                   1,                 # recursion levels
                   0.1,               # supersample threshold
@@ -846,61 +846,61 @@ sub do_fade
     }
   elsif ($direction==1)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
                    REPEAT_NONE, 0, 0, 0, 1, 0,
                   $bounds[3], ($bounds[2]+$bounds[4])/2,
                   $bounds[1], ($bounds[2]+$bounds[4])/2);
-    
+
     }
   elsif ($direction==2)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
                   $bounds[3], $bounds[2],
                   $bounds[1], $bounds[4]);
 
     }
   elsif ($direction==3)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
                    REPEAT_NONE, 0, 0, 0, 1, 0,
                   ($bounds[3]+$bounds[1])/2, $bounds[4],
                   ($bounds[3]+$bounds[1])/2, $bounds[2]);
     }
   elsif ($direction==4)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_RADIAL, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
-                  ($bounds[1]+$bounds[3])/2, 
-                  ($bounds[2]+$bounds[4])/2, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_RADIAL, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
+                  ($bounds[1]+$bounds[3])/2,
+                  ($bounds[2]+$bounds[4])/2,
                   ($bounds[3]+$bounds[1])/2, $bounds[4]);
 
     }
   elsif ($direction==5)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
                   ($bounds[3]+$bounds[1])/2, $bounds[2],
                   ($bounds[3]+$bounds[1])/2, $bounds[4]);
     }
   elsif ($direction==6)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
                   $bounds[1], $bounds[4],
                   $bounds[3], $bounds[2]);
     }
   elsif ($direction==7)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
                   $bounds[1], ($bounds[2]+$bounds[4])/2,
                   $bounds[3], ($bounds[2]+$bounds[4])/2);
     }
   elsif ($direction==8)
     {
-      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0, 
-                   REPEAT_NONE, 0, 0, 0, 1, 0, 
+      $mask->edit_blend(FG_BG_RGB_MODE, DARKEN_ONLY_MODE, GRADIENT_LINEAR, 100.0, 0.0,
+                   REPEAT_NONE, 0, 0, 0, 1, 0,
                   $bounds[1], $bounds[2],
                   $bounds[3], $bounds[4]);
     }
@@ -908,12 +908,12 @@ sub do_fade
     {
       $drawable->remove_mask(MASK_APPLY);
     }
- 
-  Context->pop(); 
+
+  Context->pop();
   $image->undo_group_end;
 }
 
-sub btn_pressed 
+sub btn_pressed
 {
   my ($widget, $btnIndex) = @_;
   $direction = $btnIndex;
@@ -925,10 +925,10 @@ sub add_pixmap
   my @tar = @{$arr[$num]};
   my ($pixmap, $mask) = Gtk2::Gdk::Pixmap->colormap_create_from_xpm_d(undef,
                         $but->get_colormap,
-                        $but->style->bg('normal'), 
+                        $but->style->bg('normal'),
                        @{$arr[$num]});
   my ($pixmapId) = new_from_pixmap Gtk2::Image($pixmap, $mask);
-  
+
   $pixmapId->show;
   $but->add($pixmapId);
 }
@@ -937,16 +937,16 @@ sub okCbk
 {
   $cancelFlag = 0;
   Gtk2->main_quit;
-} 
+}
 
 sub create_window
-{ 
+{
   my ($window, $frm, $box1, $hbox, $hsep, $btnTable, $i, $j, $btn);
 
   $window = new Gtk2::Window('toplevel');
   $window->set_name("Alpha Fader");
   $window->set_wmclass("Gimp", "AlphaFader");
-  
+
   $window->signal_connect("destroy" => \&Gtk2::main_quit);
   $window->signal_connect("delete_event" => \&Gtk2::false);
 
@@ -962,7 +962,7 @@ sub create_window
   $btnTable = new Gtk2::Table(3,3,1);
   $btnTable->set_border_width(6);
   $frm->add($btnTable);
-  
+
   $btn = new Gtk2::RadioButton;
 
   for ($i=0;$i<3;$i++)
@@ -973,9 +973,9 @@ sub create_window
            $btn->set_mode(0);
           $btn->signal_connect("clicked", \&btn_pressed, $i*3+$j);
           $btn->show;
-          $btnTable->attach_defaults($btn, $i, $i+1, $j, $j+1); 
+          $btnTable->attach_defaults($btn, $i, $i+1, $j, $j+1);
           add_pixmap($window, $btn, $i*3+$j);
-          
+
           if (Gimp->get_data($plugin) ne "")
             { # if run before, get last data
               if (Gimp->get_data($plugin) == $i*3+$j)
@@ -983,7 +983,7 @@ sub create_window
                   $btn->clicked;
                 }
             }
-          else 
+          else
             { # first run of plug-in, set first button
               if ($i==0 && $j==0)
                 {
@@ -996,13 +996,13 @@ sub create_window
   $hsep = new Gtk2::HSeparator;
   $box1->pack_start($hsep, 0, 0, 0);
   $hsep->show;
- 
+
   $hbox = new Gtk2::HButtonBox;
   $hbox->set_border_width(2);
   $hbox->set_spacing(4);
   $box1->pack_start($hbox, 0, 0, 0);
   $hbox->show;
- 
+
   $btn = new Gtk2::Button "OK";
   $btn->can_default(1);
   $btn->signal_connect("clicked" => \&okCbk);
@@ -1015,25 +1015,25 @@ sub create_window
   $btn->signal_connect("clicked" => \&Gtk2::main_quit);
   $btn->show;
   $hbox->pack_start($btn, 0, 0, 0);
-  
+
   $btnTable->show;
   $box1->show;
   $window->show;
 }
 
-Gimp::on_run 
+Gimp::on_run
 {
   my ($interactive, $img, $drw);
   ($interactive, $img, $drw, $direction) = @_;
 
   $cancelFlag = 1;
   if ($interactive==1)
-    { 
+    {
        $cancelFlag = 0;
     }
   elsif ($interactive==2)
     {
-       $direction = Gimp->get_data($plugin); 
+       $direction = Gimp->get_data($plugin);
        $cancelFlag = 0;
     }
   else
@@ -1042,7 +1042,7 @@ Gimp::on_run
       create_window;
       main Gtk2;
     }
-    
+
   # Do the gimply stuff on it
   if (!$cancelFlag)
     {
@@ -1054,21 +1054,21 @@ Gimp::on_run
 
 Gimp::on_query {
 gimp_install_procedure(
-$plugin, 
-"Fade the alpha channel of a layer from one side to another", 
-"This was written as a slightly useful exercise,  
-mostly to learn Gtk's excellent perl interface.  It was  
-inspired by a mailing list question that asked how to do 
-exactly what this does, which is fade the alpha from one 
-side to another.", 
-"Seth Burgess", 
-"Seth Burgess", 
-"2000", 
-"<Image>/Layer/Transparency/Fade...", 
-"*", 
-PLUGIN,  
+$plugin,
+"Fade the alpha channel of a layer from one side to another",
+"This was written as a slightly useful exercise,
+mostly to learn Gtk's excellent perl interface.  It was
+inspired by a mailing list question that asked how to do
+exactly what this does, which is fade the alpha from one
+side to another.",
+"Seth Burgess",
+"Seth Burgess",
+"2000",
+"<Image>/Layer/Transparency/Fade...",
+"*",
+PLUGIN,
 [
- [PDB_INT32, "run_mode", "Interactive, [non-interactive"],  
+ [PDB_INT32, "run_mode", "Interactive, [non-interactive"],
  [PDB_IMAGE, "image", "Input image (unused)"],
  [PDB_DRAWABLE, "drawable", "Input drawable"],
  [PDB_INT32, "direction", "Direction to fade(0-8)"]
@@ -1080,7 +1080,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/feedback b/examples/feedback
index 8f26701..8bf3025 100755
--- a/examples/feedback
+++ b/examples/feedback
@@ -2,7 +2,7 @@
 
 # Revision 1.0: Released it
 #          1.1: Marc Lehman added undo capability! <pcg goof com>
-#          1.2: Added my email, and put it in "Noise" where it belongs 
+#          1.2: Added my email, and put it in "Noise" where it belongs
 #                <sjburges gimp org>
 #          1.3: changed undo grouping to be 1.3.24+ compatible
 
@@ -11,27 +11,27 @@ use Gimp;
 use Gimp::Fu;
 
 register "feedback",
-         "Take an image and feed it back onto itself multiple times",
-         "This plug-in simulates video feedback.  It makes for kinda a neat desktop if you're into that sort 
of thing",
-         "Seth Burgess",
-         "Seth Burgess <sjburges\ gimp org>",
-         "2-15-99",
-         N_"<Image>/Filters/Noise/Feedback...",
-         "RGB, GRAY",
-         [
-          [PF_SLIDER,  "offset",       "the amount the frames will offset", 3, [0, 255, 1]],
-          [PF_SLIDER,  "repeat",       "the number of times to repeat the illusion", 3, [0, 100, 1]],
-         ],
-         sub {
+        "Take an image and feed it back onto itself multiple times",
+        "This plug-in simulates video feedback.  It makes for kinda a neat desktop if you're into that sort 
of thing",
+        "Seth Burgess",
+        "Seth Burgess <sjburges\ gimp org>",
+        "2-15-99",
+        N_"<Image>/Filters/Noise/Feedback...",
+        "RGB, GRAY",
+        [
+         [PF_SLIDER,   "offset",       "the amount the frames will offset", 3, [0, 255, 1]],
+         [PF_SLIDER,   "repeat",       "the number of times to repeat the illusion", 3, [0, 100, 1]],
+        ],
+        sub {
    my($img,$drawable,$offset,$repeat)= _;
-   
+
    eval { $img->undo_group_start };
-   
-   for (; $repeat>0; $repeat--) { 
-        $drawable = $img->flatten;
-        $copylayer = $drawable->copy(1);
+
+   for (; $repeat>0; $repeat--) {
+        $drawable = $img->flatten;
+        $copylayer = $drawable->copy(1);
         $img->add_layer($copylayer,0);
-        $copylayer->scale($img->width - $offset, $img->height - $offset, 0);   
+        $copylayer->scale($img->width - $offset, $img->height - $offset, 0);
        }
        $img->flatten;
    eval { $img->undo_group_end };
@@ -42,7 +42,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/gallery b/examples/gallery
index 382069d..80ab0c8 100755
--- a/examples/gallery
+++ b/examples/gallery
@@ -5,7 +5,7 @@
 #
 # 2004-03-28 (Dov)
 #       - Fixed for Gimp-2.0
-# 
+#
 # 17/07/2001 (Fab)
 # V2.0
 #      -Adding Html instance per picture + Header
@@ -19,7 +19,7 @@
 #      -Adding global progression bar
 #      -Preserving Gimp cache (progressive image_delete)
 #      -Adding trailing / to path
-#      -Plugin crashed when no label was given 
+#      -Plugin crashed when no label was given
 # 25/5/2001 (Fab)
 # V1.2 -Bug in rotation parameter : OK
 #      -Adding color for label(Parasite editor helped here :) ).
@@ -50,10 +50,10 @@ use Gimp::Util;
 sub printHeader {
        my ($rf,$gf,$bf,$r,$g,$b, $htmlFile,$gallerytitle)= _;
        printf $htmlFile "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\">";
-        printf $htmlFile "<body bgcolor='#%x%x%x'>\n",$r,$g,$b;
-        printf $htmlFile "<center><font face=\"verdana,arial\" size=\"5\" color=\"#%x%x%x\">",$rf,$gf,$bf;
+       printf $htmlFile "<body bgcolor='#%x%x%x'>\n",$r,$g,$b;
+       printf $htmlFile "<center><font face=\"verdana,arial\" size=\"5\" color=\"#%x%x%x\">",$rf,$gf,$bf;
        printf $htmlFile "$gallerytitle\n";
-        printf $htmlFile "<table><tr>\n";
+       printf $htmlFile "<table><tr>\n";
 }
 
 
@@ -66,24 +66,24 @@ sub printFooter {
 
 sub galleryMaker {
    my ($path, $label, $labelcolor, $labelpos, $font, $bright, $contrast, $rotate, $scalefix, $fixed, 
$gallerytitle, $color, $foregroundcolor, $galleryfile,$columns,$parentURL) = @_;
- 
+
    $oldforeground=gimp_context_get_foreground();
    $path=$path.'/';
    if ($path eq ""){
-        Gimp->message(__"All fields were not completed, sorry.");
+       Gimp->message(__"All fields were not completed, sorry.");
        exit main;
-   }   
+   }
    if ($fixed == 0){
        Gimp->message(__"Scale factor has not to be 0");
-       exit main;      
-   }   
+       exit main;
+   }
 
    $countTotal=`ls $path*.jpg | wc -l`+`ls $path*.JPG | wc -l`;
-   $gallerytitle=~s/ /_/g;     
+   $gallerytitle=~s/ /_/g;
    opendir(CPATH, $path) or die ("Unable to open destination path");
    $sysval=system("mkdir $path$gallerytitle");
    if ($sysval != 0){
-       Gimp->message(__"Make sure you've got write access to selected path ...\nMaybe the target path 
already exist in which case you can simply change the Gallery title and launch again");
+       Gimp->message(__"Make sure you've got write access to selected path ...\nMaybe the target path 
already exist in which case you can simply change the Gallery title and launch again");
        exit main;
    }
    my $dpath="$path$gallerytitle/";
@@ -98,46 +98,46 @@ sub galleryMaker {
    my $twidthEval=0;
    my $txtwidth=0;
    my $txtheight=0;
-   my $ycorrection=0;                                     
+   my $ycorrection=0;
    my $xcorrection=0;
 
    Gimp->progress_init("Releasing the gallery");
-   while (defined($cfile=readdir(CPATH))) {    
+   while (defined($cfile=readdir(CPATH))) {
           if (( $cfile =~ /.jpg/ ) || ($cfile =~ /.JPG/)) {
                   my $img=gimp_file_load("$path$cfile", "$path$cfile");
                   my $clayer=gimp_image_get_active_layer($img);
                   if ($rotate != 0){
                        #plug_in_rotate manages both global 90-180-270 - reshape $img
                        plug_in_rotate(RUN_NONINTERACTIVE,$img,-1,$rotate,1);
-                  }    
+                  }
 
                   my $width=gimp_image_width($img);
-                  my $height=gimp_image_height($img);          
+                  my $height=gimp_image_height($img);
                   gimp_brightness_contrast($clayer, $bright, $contrast);
-                  if ( $label ne "" ){ 
+                  if ( $label ne "" ){
                           my $newlayer=gimp_layer_new($img, 200, 100, RGB_IMAGE, "newlayer", 100, 
NORMAL_MODE);
                           gimp_context_set_foreground($labelcolor);
-                          my $txtlayer=gimp_text_fontname($img, -1, 1, 1, $label, 0, 0, 16, 0, $font); 
-                          if ($twidthEval == 0) {      
-                               $txtwidth=gimp_drawable_width($txtlayer);
+                          my $txtlayer=gimp_text_fontname($img, -1, 1, 1, $label, 0, 0, 16, 0, $font);
+                          if ($twidthEval == 0) {
+                               $txtwidth=gimp_drawable_width($txtlayer);
                                $txtheight=gimp_drawable_height($txtlayer);
-                               $twidthEval=1;
-                          }    
+                               $twidthEval=1;
+                          }
                           $ycorrection=$height-$txtheight if (($labelpos == 2) || ($labelpos == 3));
                           $xcorrection=$width-$txtwidth if (($labelpos == 1) || ($labelpos == 3));
                           gimp_layer_translate($txtlayer, $xcorrection, $ycorrection);
                           gimp_image_merge_visible_layers($img,0);
-                  }    
+                  }
                   my $cvname="$dpath$cfile";
-                  #$cvname=~s/ /c/g;   
+                  #$cvname=~s/ /c/g;
                   ($img->get_layers)[0]->file_jpeg_save("$cvname", "$cvname",0.7,0,1,0,"",0,1,0,0);
-               
-                  #Processing Thumbnail        
+
+                  #Processing Thumbnail
                   my $tbheight=1;
-                  my $tbwidth=1;       
+                  my $tbwidth=1;
                   if ($scalefix == 1){
                                    my $scalefactor=$width/$fixed;
-                                   $tbheight=$height/$scalefactor;     
+                                   $tbheight=$height/$scalefactor;
                                    $tbwidth=$fixed;
                          }else{
                                    if ($scalefix == 2) {
@@ -147,41 +147,41 @@ sub galleryMaker {
                                           $tbheight=$fixed;
                                    }else {
                                           # scalefix 0 => both scaled by factor (value_factor)
-                                          $tbwidth=$width/$fixed;                  
+                                          $tbwidth=$width/$fixed;
                                           $tbheight=$height/$fixed;
-                                   }   
+                                   }
                   }
                   my $tbfname="$dpath $cfile";
-                  $tbfname=~s/ /m/g;   
+                  $tbfname=~s/ /m/g;
                   system("cp $cvname $tbfname");
-                  gimp_image_delete($img);     
+                  gimp_image_delete($img);
                   $img=gimp_file_load("$tbfname", "$tbfname");
                   $clayer=gimp_image_get_active_layer($img);
                   gimp_image_scale($img, $tbwidth, $tbheight);
 
-                  #Processing detail HTML              
+                  #Processing detail HTML
                   my $htmlDetail=$cfile;
-                  $htmlDetail=~s/.jpg/.html/g; 
-                  $htmlDetail=~s/.JPG/.html/g; 
+                  $htmlDetail=~s/.jpg/.html/g;
+                  $htmlDetail=~s/.JPG/.html/g;
                   open (fhtmlDetail, "> $dpath$htmlDetail") or die ("Unable to process HTML File.");
-                  printHeader($rf,$gf,$bf,$r,$g,$b,*fhtmlDetail,$gallerytitle);
-                  print fhtmlDetail "<img src=\"$cfile\"></img>";      
+                  printHeader($rf,$gf,$bf,$r,$g,$b,*fhtmlDetail,$gallerytitle);
+                  print fhtmlDetail "<img src=\"$cfile\"></img>";
                   printFooter($rf,$gf,$bf,"$galleryfile.html", *fhtmlDetail);
                   close fhtmlDetail;
                   file_jpeg_save(($img->get_layers)[0],"$tbfname", "$tbfname",0.7,0,1,0,"",0,1,0,0);
                   print htmlFile "             <td><a href='$htmlDetail'><img src='m$cfile' 
border='0'></a></td>\n";
                   if ($entries >= $columns){
-                               print htmlFile "</tr><tr>";
+                               print htmlFile "</tr><tr>";
                                $entries=1;
                            }else{
                                $entries=$entries+1;
                   }
-          $totalentries=$totalentries+1;
+         $totalentries=$totalentries+1;
          Gimp->progress_update ($totalentries/$countTotal);
-         gimp_image_delete($img);      
-         }     
+         gimp_image_delete($img);
+         }
     }
-    Gimp->progress_update(1);  
+    Gimp->progress_update(1);
     print htmlFile "</table>\n";
     printFooter($rf,$gf,$bf,$parentURL, *htmlFile);
     close htmlFile;
@@ -196,33 +196,33 @@ This script will hopefully help you creating an html gallery of a path full of J
 EOF
 
 register("gallerymaker",
-         "Generate your gallery in HTML format + some picture improvements", 
-         $help,
-         "Fabian Frederick <Fabian Frederick\ gmx fr>",
-         "(c) 2001 Fabian Frederick",
-         "20010601",
-         N_"<Toolbox>/Xtns/Render/Gallery Maker",
-         undef,
-         [
-          [PF_FILE,   "path", "Destination path .... "],
-          [PF_STRING, "label", "Text to add at the top of each picture"],
+        "Generate your gallery in HTML format + some picture improvements",
+        $help,
+        "Fabian Frederick <Fabian Frederick\ gmx fr>",
+        "(c) 2001 Fabian Frederick",
+        "20010601",
+        N_"<Toolbox>/Xtns/Render/Gallery Maker",
+        undef,
+        [
+         [PF_FILE,   "path", "Destination path .... "],
+         [PF_STRING, "label", "Text to add at the top of each picture"],
          [PF_COLOR,  "label_color", "Color of the label to be displayed on each picture", [255,255,255]],
-         [PF_RADIO,  "label_position", "Position of your text label...", 0, [ UpLeft => 0, UpRight => 1, 
DownLeft => 2, DownRight => 3 ]],     
+         [PF_RADIO,  "label_position", "Position of your text label...", 0, [ UpLeft => 0, UpRight => 1, 
DownLeft => 2, DownRight => 3 ]],
          [PF_FONT,   "displayfont", "Select font", undef ],
          [PF_SLIDER, "brightness", "Brightness correction", 0, [ -127, 127]],
          [PF_SLIDER, "contrast", "Contrast correction", 0, [-127,127]],
          [PF_RADIO,  "rotate", "Rotation angle", 0, [ None => 0, Rotate90CCW => 3, Rotate90 => 1]],
-         [PF_RADIO,  "scalefix", "Scale fixing for thumbnails", 1 ,[ both_by_factor => 0, X => 1, Y => 2 ]], 
  
+         [PF_RADIO,  "scalefix", "Scale fixing for thumbnails", 1 ,[ both_by_factor => 0, X => 1, Y => 2 ]],
          [PF_INT32,  "value_factor", "value or factor", 150],
-         [PF_STRING, "gallery_title", "Gallery's Title" ],     
+         [PF_STRING, "gallery_title", "Gallery's Title" ],
          [PF_COLOR,  "background_color","Gallery background color", [100,100,100]],
          [PF_COLOR,  "foreground_color","Gallery background color", [255,255,255]],
-         [PF_STRING, "gallery_file", "HTML file generated" ],  
+         [PF_STRING, "gallery_file", "HTML file generated" ],
          [PF_INT32,  "columns", "Gallery columns number", 2],
          [PF_STRING, "parent_file", "Gallery's parent URL" ]
-         ],
+        ],
         \&galleryMaker);
-exit main; 
+exit main;
 
 __END__
 
diff --git a/examples/gimp-make-img-map b/examples/gimp-make-img-map
index 53beea1..bf42c5e 100755
--- a/examples/gimp-make-img-map
+++ b/examples/gimp-make-img-map
@@ -32,7 +32,7 @@
 #  Bugs:
 #    -  -padx px means at least px and not exactly px. This should
 #       be fixed.
-#  
+#
 #  Changes:
 #    0.13  * Replaced call to gimp_image_get_layers() with call to
 #            gimp_image_get_active_layer(), as the former was broken
@@ -81,15 +81,15 @@ Options:
     -index if        Create an index file mapping filename to bounding box
                     coordinates in output image, where if is the name of
                     the index file. The index file may e.g. be translated by
-                    a subsequent program into a html index file. 
+                    a subsequent program into a html index file.
     -layoutwidth lw  Set total width of layout. (Default $layout_width)
     -flatten         Flatten the final image.
     -bgcolor         Set bg color.
     -bgpattern       Set bg pattern. Overrides the bgcolor.
     -padx px         Extra space around all images in x-direction. (Default $pad_x)
     -pady py         Extra space around all images in y-direction. (Default $pad_y)
-    -gutterx gx      Space between images in x-direction. (Default $gutter_x) 
-    -gutterx gy      Space between images in y-direction. (Default $gutter_y) 
+    -gutterx gx      Space between images in x-direction. (Default $gutter_x)
+    -gutterx gy      Space between images in y-direction. (Default $gutter_y)
     -darkcomp        Compensate for darkening when bumpmapping.
     -decoration alg  Choose algorithm for drawing the decoration in the layout.
                     Known algorithms are:
@@ -151,7 +151,7 @@ sub hbox_vbox_add_row {
        $row_height = $h if $h > $row_height;
     }
     $row_width -= $gutter_x;
-    
+
     # Do the layout
     my $xpos = ($layout_width-$row_width)/2;
     for $i ($row_start_idx..$row_end_idx) {
@@ -187,10 +187,10 @@ sub hbox_vbox_create_layout {
                                   $row_start_idx, $row_end_idx,
                                   $ypos, $gutter_x));
            $total_width = $row_width if $row_width > $total_width;
-           
+
            # Move to next row
            $ypos+= $gutter_y + $row_height;
-           
+
            # Zero out various things
            $row_start_idx = $row_end_idx+1;
            $row_end_idx = $row_start_idx;
@@ -199,7 +199,7 @@ sub hbox_vbox_create_layout {
                $row_width = $imgs->[$row_start_idx]->width;
                $row_height = $imgs->[$row_start_idx]->height;
                $xpos = 0;
-           } 
+           }
        }
        else {
            $row_width += $gutter_x + $w;
@@ -214,10 +214,10 @@ sub hbox_vbox_create_layout {
                               $row_start_idx, $row_end_idx,
                               $ypos, $gutter_x));
        $total_width = $row_width if $row_width > $total_width;
-       
+
        $ypos+= $row_height;
     }
-    
+
     $total_width = $layout_width;
     $total_height = $ypos + $pad_y;
     return ($total_width, $total_height, \ layout);
@@ -231,7 +231,7 @@ sub decoration_drop_shadow {
     my($layout) = shift;
     $shadow_xoffs = 7;
     $shadow_yoffs = 7;
-    
+
     # Put them on a row
     $tiled_img = gimp_image_new($total_width, $total_height, RGB);
     $tiled_drw = gimp_layer_new($tiled_img, $total_width, $total_height,
@@ -240,23 +240,23 @@ sub decoration_drop_shadow {
                                   RGB_IMAGE, "Shadow", 50, NORMAL_MODE);
     $tiled_background = gimp_layer_new($tiled_img, $total_width, $total_height,
                                       RGB_IMAGE, "Background", 100, NORMAL_MODE);
-    
+
     # Create masks
     $tiled_drw_msk = $tiled_drw->create_mask(1);
     $tiled_shadow_msk = $tiled_shadow->create_mask(1);
-    
+
     # Make sure respective images have alpha channels
     $tiled_drw->layer_add_alpha();
     $tiled_shadow->layer_add_alpha();
-    
+
     # Connect masks to respective layers
     $tiled_img->add_layer_mask($tiled_drw, $tiled_drw_msk);
     $tiled_img->add_layer_mask($tiled_shadow, $tiled_shadow_msk);
-    
+
     # Fill all the layers with some contents
-    gimp_context_set_background([128,128,128]); 
+    gimp_context_set_background([128,128,128]);
     $tiled_drw->edit_fill(BACKGROUND_FILL);
-    
+
     gimp_context_set_background($bgcolor);
     $tiled_background->edit_fill(BACKGROUND_FILL);
     if ($bgpattern) {
@@ -267,15 +267,15 @@ sub decoration_drop_shadow {
     }
     gimp_context_set_background([0, 0, 0]);  # Shadow color
     $tiled_shadow->edit_fill(BACKGROUND_FILL);
-    
+
     # Add all the layers to the image
     $tiled_img->add_layer($tiled_background,-1);
     $tiled_img->add_layer($tiled_shadow,-1);
     $tiled_img->add_layer($tiled_drw,-1);
     gimp_display_new($tiled_img);
-    
+
     my $xpos = 0;
-    
+
     # Set color for drawing in mask
     gimp_context_set_background([255, 255, 255]);
     for $ly_idx (0   $layout-1) {
@@ -288,24 +288,24 @@ sub decoration_drop_shadow {
        $tiled_img->rect_select($xpos, $ypos, $w, $h, 0, 0, 0);
        $tiled_drw->edit_paste(0)
            ->floating_sel_anchor;
-       
+
        # why is the selection cleared?
        $tiled_img->rect_select($xpos, $ypos, $w, $h, 0, 0, 0);
        $tiled_drw_msk->edit_fill(BACKGROUND_FILL);
-       
+
        # why is the selection cleared?
        $tiled_img->rect_select($xpos+$shadow_xoffs,
                                $ypos+$shadow_yoffs, $w, $h, 0, 0, 0);
        $tiled_shadow_msk->edit_fill(BACKGROUND_FILL);
-       
+
        $tiled_img->selection_none();
-       
+
     }
-    
+
     # Blur the shadow
 #    plug_in_gauss_rle(1, $tiled_img, $tiled_shadow_msk, 7, 1, 1);
     plug_in_gauss_rle(1, $tiled_shadow_msk, 7, 1, 1);
-    
+
     # Apply the shadow mask
     $tiled_shadow->remove_mask(MASK_APPLY);
 }
@@ -314,7 +314,7 @@ sub decoration_sunken_windows {
     my($layout) = shift;
     $shadow_xoffs = 7;
     $shadow_yoffs = 7;
-    
+
     # Create needed image and layers
     $tiled_img = gimp_image_new($total_width, $total_height, RGB);
     $tiled_drw = gimp_layer_new($tiled_img, $total_width, $total_height,
@@ -325,17 +325,17 @@ sub decoration_sunken_windows {
                                RGB_IMAGE, "Punch mask", 100, NORMAL_MODE);
     # Create masks
     $tiled_punch_mask = $tiled_punch_layer->create_mask(0);
-    
+
     # Make sure respective images have alpha channels
     $tiled_punch_layer->layer_add_alpha();
-    
+
     # Connect masks to respective layers
     $tiled_punch_layer->add_layer_mask($tiled_punch_mask);
-    
+
     # Fill all the layers with some contents
-    gimp_context_set_background([128,128,128]); 
+    gimp_context_set_background([128,128,128]);
     $tiled_drw->edit_fill(BACKGROUND_FILL);
-    
+
     gimp_context_set_background($bgcolor);
     $tiled_punch_layer->edit_fill(BACKGROUND_FILL);
     if ($bgpattern) {
@@ -346,15 +346,15 @@ sub decoration_sunken_windows {
     }
     gimp_context_set_background([255, 255, 255]);  # Punch stencil
     $tiled_punch_stencil->edit_fill(BACKGROUND_FILL);
-    
+
     # Add all the layers to the image
     $tiled_img->add_layer($tiled_punch_stencil,-1);
     $tiled_img->add_layer($tiled_drw,-1);
     $tiled_img->add_layer($tiled_punch_layer,-1);
     gimp_display_new($tiled_img);
-    
+
     my $xpos = 0;
-    
+
     # Set color for drawing in mask
     gimp_context_set_background([0, 0, 0]);
     for $ly_idx (0   $layout-1) {
@@ -367,21 +367,21 @@ sub decoration_sunken_windows {
        $tiled_img->rect_select($xpos, $ypos, $w, $h, 0, 0, 0);
        $tiled_drw->edit_paste(0)
            ->floating_sel_anchor;
-       
+
        # why is the selection cleared?
        $bw = 3;
        $tiled_img->rect_select($xpos-$bw,
                                $ypos-$bw, $w+2*$bw, $h+2*$bw, 0, 0, 0);
        $tiled_punch_stencil->edit_fill(BACKGROUND_FILL);
-       
+
        # why is the selection cleared?
        $tiled_img->selection_none();
        $tiled_img->rect_select($xpos, $ypos, $w, $h, 0, 0, 0);
        $tiled_punch_layer->edit_cut();
-       
+
        $tiled_img->selection_none();
     }
-    
+
     # Blur the punch stencil
     plug_in_gauss_rle($tiled_punch_stencil, 7, 1, 1);
 
@@ -424,13 +424,13 @@ Gimp::on_net sub {
        print "Nothing to do. Expected list of image file names!\n";
        return;
     }
-       
+
     # Now create a layout of the images. The layout algorithm
     # should really be parameterized.
     my ($total_width, $total_height, $layout) = hbox_vbox_create_layout(\ imgs);
 
     print "total_size = ($total_width $total_height)\n";
-    
+
     # This is an example decoration. Others will be created in the future
     if ($decoration eq "drop-shadow") {
        decoration_drop_shadow($layout);
@@ -450,7 +450,7 @@ Gimp::on_net sub {
        for $idx (0   filenames-1) {
            my ($img, $xpos, $ypos) = @{$layout->[$idx]};
            my($w,$h) = ($img->width, $img->height);
-           
+
            printf INDEX "%s %.0f %.0f %.0f %.0f %s\n",
                 $filenames[$idx], $xpos, $ypos, $xpos+$w, $ypos+$h, $descr;
            printf "%s %.0f %.0f %.0f %.0f %s\n",
@@ -466,7 +466,7 @@ Gimp::on_net sub {
 while($_ = $ARGV[0], /^-/) {
     shift;
     /^-help/ and do { print $HELP; exit; };
-                    
+
     /^-max_height/  and do { $max_height = shift; next; };
     /^-index/       and do { $index_file = shift; next; };
     /^-layoutwidth/ and do { $layout_width = shift; next; };
diff --git a/examples/glowing_steel b/examples/glowing_steel
index 3e1b1b1..b0ae3b8 100755
--- a/examples/glowing_steel
+++ b/examples/glowing_steel
@@ -1,4 +1,4 @@
-#!/usr/bin/perl 
+#!/usr/bin/perl
 
 eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
     if 0; # not running under some shell
@@ -63,8 +63,8 @@ sub perl_fu_glowing_steel {
   gimp_image_add_layer($image, $backlayer, 1);
 
   if (gimp_version() gt "2.3")  # make work for 2.2 or 2.3
-    { gimp_layer_set_lock_alpha($textlayer, 1); } 
-  else 
+    { gimp_layer_set_lock_alpha($textlayer, 1); }
+  else
     { gimp_layer_set_lock_alpha($textlayer,1); }
 
   perl_fu_brushed_metal($image, $textlayer, 25, 135);
@@ -190,7 +190,7 @@ sub perl_fu_brushed_metal {
   gimp_layer_set_offsets($templ, $x1+$length, $y1+$length);
   my $target_select = gimp_selection_save($image);
   gimp_selection_none($image);
-  
+
   # Render the actual effect into our temporary layer
   plug_in_solid_noise($image, $templ, 0, 0, time(), 1, 1.5, 2.5);
 
@@ -338,7 +338,7 @@ register
        "film \"Lost In Space\".",
   "Aaron Sherman", "Aaron Sherman (c)", "1999-06-14",
   N_"<Image>/Filters/Render/Logos/Glowing Steel",
-  
+
   undef,
   [
    [PF_STRING, "string", "string", "GET LOST"],
diff --git a/examples/gouge b/examples/gouge
index c307433..7e3c2b7 100755
--- a/examples/gouge
+++ b/examples/gouge
@@ -49,7 +49,7 @@ register "blur_2x2",
          "Marc Lehmann <pcg\ goof com>",
          "19990725",
        N_"<Image>/Filters/Blur/2x2 Blur",
-         "RGB*, GRAY*",        
+         "RGB*, GRAY*",
          [],
          sub {
    my($image,$drawable)= _;
@@ -71,7 +71,7 @@ register "contrast_enhance_2x2",
          "Marc Lehmann <pcg\ goof com>",
          "19990725",
          N_"<Image>/Filters/Enhance/2x2 Contrast Enhance",
-         "RGB*, GRAY*",        
+         "RGB*, GRAY*",
          [],
          sub {
    my($image,$drawable)= _;
@@ -93,7 +93,7 @@ register "edge_detect_2x2",
          "Marc Lehmann <pcg\ goof com>",
          "19990725",
          N_"<Image>/Filters/Edge-Detect/2x2 Edge Detect",
-         "RGB*, GRAY*",        
+         "RGB*, GRAY*",
          [],
          sub {
    my($image,$drawable)= _;
diff --git a/examples/guidegrid b/examples/guidegrid
index 100f80c..953a528 100755
--- a/examples/guidegrid
+++ b/examples/guidegrid
@@ -44,13 +44,13 @@ register "guide_grid",
 
     #
     # Remove all existing guides (this is optional)
-    #    
+    #
     if($remove_old_guides) {
       $i=$img->find_next_guide(0);
       while ($i != 0) {
         $img->delete_guide($i);
         $i=$img->find_next_guide(0);
-      }         
+      }
     }
 
     #
@@ -61,7 +61,7 @@ register "guide_grid",
        $img->add_vguide($i);
       }
     }
-    
+
     #
     # Add horizontal guides to the image
     #
@@ -70,9 +70,9 @@ register "guide_grid",
        $img->add_hguide($i);
       }
     }
-    
-    # 
-    # I fixed this in Gimp C code (it wasn't flushing guides properly) 
+
+    #
+    # I fixed this in Gimp C code (it wasn't flushing guides properly)
     # Seth Burgess <sjburges gimp org>
     #
 
@@ -91,7 +91,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/guides_to_selection b/examples/guides_to_selection
index ee18b8b..0435868 100755
--- a/examples/guides_to_selection
+++ b/examples/guides_to_selection
@@ -10,7 +10,7 @@ eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
 use Gimp;
 use Gimp::Fu;
 use Gimp::Util;
- 
+
 register "guide_to_selection",
          "Puts a selection mask around the guides",
          "Selects the area under the guides (1px wide)",
@@ -42,14 +42,14 @@ register "guide_to_selection",
       }
       $img->rect_select($x,$y,$w,$h,$operation,$feather,$radius);
       $operation = CHANNEL_OP_ADD if $operation == CHANNEL_OP_REPLACE;
-      
+
       $i = $img->find_next_guide($i);
-    }         
+    }
 
     ();
 };
 
-exit main;                                        
+exit main;
 
 =head1 LICENSE
 
diff --git a/examples/iland b/examples/iland
index ecbdfe2..2d3051d 100755
--- a/examples/iland
+++ b/examples/iland
@@ -19,7 +19,7 @@ use PDL::LiteF;
 sub landscape {
 
        my ($image, $drawable, $floor,$component, $delta,$elevation, $camerapos) = @_;
-       
+
        #gimp_tile_cache_size(20000);
        gimp_selection_none($image);
        plug_in_rotate(RUN_NONINTERACTIVE, $image, -1, $camerapos, 1) if ($camerapos != 0);
@@ -36,7 +36,7 @@ sub landscape {
        my $dest = new Gimp::PixelRgn ($newdrawable, 0,0,$width, $height,1,1);
        Gimp->progress_init("Rendering...");
        my $relord=$src->w/255;
-       
+
        gimp_drawable_fill($newdrawable, 0);
        $delta=1 if ($delta<1);
        for (my $y=0; $y<$src->h; $y++){
@@ -44,12 +44,12 @@ sub landscape {
                my $drow=$row&0;
                $red=$row->slice($component);
                $dred=$drow->slice(0);
-               $dgreen=$drow->slice(1);        
+               $dgreen=$drow->slice(1);
                $dblue=$drow->slice(2);
                for(my $x=0;$x<$src->w;$x++){
                        $r=at($red,0,$x);
                        if ($r>$floor){
-                               my $remain=$r;  
+                               my $remain=$r;
                                my $currentx=$width-$r*$relord+($x/$elevation);
                                #Apply elevation following the x offset in original picture
                                while ($remain>0 && $currentx<$src->w){
@@ -69,7 +69,7 @@ sub landscape {
                                                set ($dblue,0,$currentx,$remain+200);
                                        }
                                        $remain-=$delta;
-                                       $currentx++;    
+                                       $currentx++;
                                }
                        }
                }
@@ -100,18 +100,18 @@ sub landscape {
 register "intensitylandscape",
         "Generate an intensity based landscape",
         "Generate an alpha landscape based on intensity",
-        "Fabian Frederick", 
+        "Fabian Frederick",
         "(c) 2001 Fabian Frederick",
-        "20010601", 
-        N_"<Image>/Filters/Render/Intensity Landscape", 
+        "20010601",
+        N_"<Image>/Filters/Render/Intensity Landscape",
         "*",
         [
                [PF_SLIDER, "floor", "Floor", 100, [0, 255]],
                [PF_RADIO, "active_component", "Active Component", 0, [ Red => 0, Green => 1, Blue => 2]],
                [PF_SLIDER, "delta", "delta color", 6, [0, 100]],
                [PF_FLOAT, "elevation", "elevation argument should be 2 or 3", 2],
-               [PF_RADIO, "camera", "camera position", 0, [ Right => 0, Bottom => 3, Left => 2, Top => 1]] 
-               
+               [PF_RADIO, "camera", "camera position", 0, [ Right => 0, Bottom => 3, Left => 2, Top => 1]]
+
         ],
         \&landscape;
 exit main;
diff --git a/examples/image_tile b/examples/image_tile
index abcf0a7..54236e9 100755
--- a/examples/image_tile
+++ b/examples/image_tile
@@ -33,7 +33,7 @@ use Gimp::Fu;
 use Fcntl qw(O_RDWR O_CREAT O_TRUNC);
 use Gimp::Feature;
 BEGIN { eval "use DB_File";
-           $@ and Gimp::Feature::missing('Berkeley DB interface module') }
+          $@ and Gimp::Feature::missing('Berkeley DB interface module') }
 # use strict;
 # use vars qw($DO_HSV $debug);
 
@@ -146,7 +146,7 @@ sub perl_fu_image_tile {
          if ($subtype != $type) {
            if ($type == RGB_IMAGE) {
              gimp_image_convert_rgb($img);
-            } elsif ($type == GRAY_IMAGE) {
+           } elsif ($type == GRAY_IMAGE) {
              gimp_image_convert_grayscale($img);
            } elsif ($type == INDEXED_IMAGE) {
              gimp_image_convert_indexed($img,1,256);
@@ -238,7 +238,7 @@ sub perl_fu_image_tile {
          # Cell samples are stored as packed 3-byte values
          my($o1,$o2,$o3) = unpack 'CCC', $ocells[$xcell][$ycell];
          my($n1,$n2,$n3) = unpack 'CCC',
-               substr($tile_cache{$subfile},($xcell*$ycells+$ycell)*3,3);
+               substr($tile_cache{$subfile},($xcell*$ycells+$ycell)*3,3);
          # 2 methods of comparing: by RGB and by HSV. HSV seems to
          # give a more accurate map, as it stresses the matching of light
          # and darkness. We do some weighting of the HSV match so that
diff --git a/examples/innerbevel b/examples/innerbevel
index d842bd7..a482436 100755
--- a/examples/innerbevel
+++ b/examples/innerbevel
@@ -1,11 +1,11 @@
-#!/usr/bin/perl 
+#!/usr/bin/perl
 
 # Effect taken from http://tigert.gimp.org/gimp/tutorials/beveled_text/
 # perl-ified by Seth Burgess <sjburges gimp org>
 
-# Programatically, this script is about as dull as they come.  The only 
+# Programatically, this script is about as dull as they come.  The only
 # exceptions are those of the neat util functions (that aren't all quite
-# working btw).  You can follow step by step with the website at 
+# working btw).  You can follow step by step with the website at
 # http://tigert.gimp.org/gimp/tutorials/beveled_text/
 
 use Gimp qw(:auto __ N_);
@@ -33,18 +33,18 @@ sub gimp20_text_wh{
    ($text, $fn) = ($_[0], $_[1]);
    Gimp->text_get_extents_fontname($text,(split(/ /,$fn))[-1],PIXELS,$fn)
    }
-   
+
 
 register $regname, $shortdesc, $longdesc, $authorname, $author, $date, $path, $imgtypes,
-  [ 
+  [
    [PF_FONT, "font", "Font Name","URW Bookman L, Bold 80"],
    [PF_STRING, "text", "Enter your text to be beveled", "INNERBEVEL"],
    [PF_COLOR, "top_color", "Blend to this color", $defaultcolor2],
    [PF_COLOR, "bottom_color", "Blend from this color", $defaultcolor1],
    [PF_SLIDER, "azimuth", "Direction of the shine", 132, [0,255,5]],
    [PF_SLIDER, "shinyness", "How shiny the final image will be",30, [0,90,5]],
-   [PF_SLIDER, "depth_shape", "Determines the final shape", 7 , [0,64,32]], 
-   [PF_RADIO, "map", "The type of Map to use(0=Linear,1=Spherical,2=Sinusoidal)", 2, [Linear => 0, Spherical 
=> 1, Sinusoidal => 2] ], 
+   [PF_SLIDER, "depth_shape", "Determines the final shape", 7 , [0,64,32]],
+   [PF_RADIO, "map", "The type of Map to use(0=Linear,1=Spherical,2=Sinusoidal)", 2, [Linear => 0, Spherical 
=> 1, Sinusoidal => 2] ],
   ],[],
   [
    'gimp-1.1',
@@ -61,7 +61,7 @@ if ($gimpmajor == 2 && $gimpminor == 2) { $api22 = 1; }
 elsif ($gimpmajor == 2 && $gimpminor >= 3) { $api23 = 1; }
 else {die "Don't know how to handle gimp version $gimpversion with this plugin!\n"};
 
-# -- step 1 -- 
+# -- step 1 --
 Context->push();
 
 Context->set_background($color1);
@@ -71,7 +71,7 @@ Context->set_foreground($color2);
 
 $img = gimp_image_new($dims[0]+30, $dims[1]+10, RGB);
 
-# none of the macro's did quite what I was looking for here.  
+# none of the macro's did quite what I was looking for here.
 # i.e. create a text layer on transparent only...
 
 # -- step 2 --
@@ -84,20 +84,20 @@ $layer = $img->merge_visible_layers(EXPAND_AS_NECESSARY);
 # -- step 3 --
 if ($api22) { $layer->set_preserve_trans(1); }
 elsif ($api23) { $layer->set_lock_alpha(1); }
-$layer->edit_blend(FG_BG_RGB_MODE, NORMAL_MODE, GRADIENT_LINEAR, 100, 0, REPEAT_NONE, 0, 0, 0, 3, 0.20, 
@pt1, @pt2); 
-# -- step 4 -- 
+$layer->edit_blend(FG_BG_RGB_MODE, NORMAL_MODE, GRADIENT_LINEAR, 100, 0, REPEAT_NONE, 0, 0, 0, 3, 0.20, 
@pt1, @pt2);
+# -- step 4 --
 $layer2 = $layer->copy(0);     # Can you override these to have a default? (would be nice)
 $img->add_layer($layer2, 0);
-# -- step 5 -- 
+# -- step 5 --
 if ($api22) { $layer2->set_preserve_trans(1); }
 elsif ($api23) { $layer2->set_lock_alpha(1); }
 $img->selection_all;
 Context->set_background([1.0,1.0,1.0]);
 $layer2->edit_fill(BACKGROUND_FILL);
-# -- step 6 -- 
+# -- step 6 --
 if ($api22) { $layer2->set_preserve_trans(0); }
 elsif ($api23) { $layer2->set_lock_alpha(0); }
-$layer2->gauss_rle(6,1,1);     
+$layer2->gauss_rle(6,1,1);
 # -- step 7 --
 $layer->plug_in_bump_map($layer2, $azimuth, $elevation, $depth, 0,0,0,0,1,0,$maptype);
 # -- step 8 --
@@ -114,11 +114,11 @@ Context->pop();
 return();
 };
 
-exit main;  # <-- This lil' bugger caused me much grief.  
+exit main;  # <-- This lil' bugger caused me much grief.
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/layerfuncs b/examples/layerfuncs
index 4c3d9fb..084e125 100755
--- a/examples/layerfuncs
+++ b/examples/layerfuncs
@@ -25,12 +25,12 @@ use Gimp::Util;
 #   return();
 #};
 
-register "center_layer", "Center Layer", 
-         "Centers the current layer on the image", 
-         "Seth Burgess", "Seth Burgess <sjburges\ gimp org>", 
+register "center_layer", "Center Layer",
+         "Centers the current layer on the image",
+         "Seth Burgess", "Seth Burgess <sjburges\ gimp org>",
          "1.0", N_"<Image>/Layer/Center Layer", "*", [], sub {
        ($img, $layer) = @_;
-       $layer->set_offsets(($img->width  - $layer->width )/2, 
+       $layer->set_offsets(($img->width  - $layer->width )/2,
                         ($img->height - $layer->height)/2);
        return();
 };
@@ -39,7 +39,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/map_to_gradient b/examples/map_to_gradient
index 4d163cb..6fd77ae 100755
--- a/examples/map_to_gradient
+++ b/examples/map_to_gradient
@@ -21,7 +21,7 @@ register "map_to_gradient",
          "Marc Lehmann <pcg\ goof com>",
          "19990802",
          N_"<Image>/Filters/Colors/Map/Map To Gradient...",
-         "RGB*, GRAY", 
+         "RGB*, GRAY",
          [
           [PF_GRADIENT,        "gradient",     "The gradient to map to"],
          ],
diff --git a/examples/mirrorsplit b/examples/mirrorsplit
index 7bc5431..dcbc030 100755
--- a/examples/mirrorsplit
+++ b/examples/mirrorsplit
@@ -5,10 +5,10 @@ use Gimp::Fu;
 use Gimp::Util;
 use strict;
 #      Gimp::set_trace(TRACE_ALL);
-# 
-# <sjburges gimp org> 2/25/04: changed specifiers to explictly reference 
+#
+# <sjburges gimp org> 2/25/04: changed specifiers to explictly reference
 # the GIMP namespace, s/undo_push/undo/, now have to add layer to image in
-# order to flip it, or you get a PDB error.  So added, flipped, used, then 
+# order to flip it, or you get a PDB error.  So added, flipped, used, then
 # removed.
 
 register       "mirror_split",
diff --git a/examples/perlotine b/examples/perlotine
index 74e4cc8..a68e109 100755
--- a/examples/perlotine
+++ b/examples/perlotine
@@ -6,7 +6,7 @@
 # put up a demo image.
 
 # Since updated a couple times by others, and intgrated by me:
-# 
+#
 # Bruce Miller                              (fixed to accomdate 1.1.x changes)
 # Brendon and Wendy Humphrey <brendy swipnet se> (progress bar, nice comments)
 #
@@ -16,16 +16,16 @@
 # GUIDE_VERTICAL to VERTICAL and horizontal, respectively.  Should
 # work now). Also convert to indexed parameters changed, fixed them too.
 #
-# <sjburges gimp org> 
+# <sjburges gimp org>
 # Added changes to make progess bar work for images with only horizontal
 # or vertical guides.  This was fixed at one time, I forget who did that.
 # Somehow it got broke again ;(
 #
 # Added File::Path; for making the directory if it doesn't already exist.
 #
-# 12/13/03: fixed tigert's fix to use ORIENTATION_VERTICAL rather 
+# 12/13/03: fixed tigert's fix to use ORIENTATION_VERTICAL rather
 #           than VERTICAL
-# 
+#
 # If you have more additions, etc please don't hesitate to send them in!
 
 use File::Path;
@@ -40,8 +40,8 @@ use Gimp::Util;
 #
 # Generates an ordered list of all existing vertical guides.
 #
- 
-sub get_vguides {  
+
+sub get_vguides {
     my ($img)= _;
     $i=0;
     my @vguides;
@@ -62,7 +62,7 @@ sub get_vguides {
 # Generates an ordered list of all existing horizontal guides.
 #
 
-sub get_hguides { 
+sub get_hguides {
     my ($img)= _;
     $i=0;
     my @hguides;
@@ -83,7 +83,7 @@ sub get_hguides {
 # Duplicate, crop and save the image fragment.
 #
 
-sub dosel { 
+sub dosel {
     ($img, $savepath, $imgpath, $imgbasename, $extension, $l,$r,$t,$b, $i,$j) = @_;
 #    $filename =~ m/^(.*)\.[^\.]*$/ ;
     $imgname = "$imgbasename-$i-$j.$extension";
@@ -91,8 +91,8 @@ sub dosel {
     # print "Cropping from $l to $r, $t to $b\n";
     $tmpimg->crop($r-$l, $b-$t, $l, $t);
     # Make sure that gif and jpg are of proper type before proceeding.
-    # I could move this outside the dosel for performance improvement, 
-    # but then it would end up changing the user's image, which may 
+    # I could move this outside the dosel for performance improvement,
+    # but then it would end up changing the user's image, which may
     # not be desired/expected.
     if ($extension eq "gif")
       {
@@ -121,7 +121,7 @@ sub dosel {
 
 sub html_table_start {
     ($fn,$cellpadding,$cellspacing,$border,$capatalize) = @_;
-    $str = $capatalize ? 
+    $str = $capatalize ?
 "<TABLE CELLSPACING=$cellspacing CELLPADDING=$cellpadding BORDER=$border>\n" :
 "<table cellspacing=$cellspacing cellpadding=$cellpadding border=$border>\n" ;
     print $fn $str;
@@ -135,7 +135,7 @@ sub html_table_row_start {
 
 sub html_table_entry {
     ($fn, $imgname, $width, $height, $capatalize) = @_;
-    $str = $capatalize ? 
+    $str = $capatalize ?
 "\t\t<TD><IMG ALT=\" \" SRC=\"$imgname\" WIDTH=\"$width\" HEIGHT=\"$height\"></TD>\n" :
 "\t\t<td><img alt=\" \" src=\"$imgname\" width=\"$width\" height=\"$height\"></td>\n";
     print $fn $str;
@@ -190,14 +190,14 @@ register "perlotine",
         die __"No horizontal or vertical guides found. Aborted.";
         }
 
-   # 
+   #
    # Progress Bar
-   # 
+   #
 
    Gimp->progress_init("Perl-o-Tine");
    $progress_increment = 1/( (scalar(@horz)+1) * (scalar(@vert)+1) );
    $progress = 0.0;
-   
+
    # (Debugging info for the guide functions)
 
    # print @vert, " LEN = ", scalar(@vert), "\n";
@@ -208,7 +208,7 @@ register "perlotine",
 
   #
   # Correctly format paths and filenames
-  # 
+  #
   if (!($savepath=~ m,/$,)) {  # add a trailing slash if its not on there
       $savepath = $savepath . "/";
    }
@@ -222,7 +222,7 @@ register "perlotine",
     mkpath($savepath);
     mkpath($savepath . $imgpath);
 
-    # open HTML file for writing 
+    # open HTML file for writing
     open FILE, ">$savepath$htmlname" or die "Couldn't open $savepath$htmlname: $!\n";
 
     $top=0;
@@ -234,12 +234,12 @@ register "perlotine",
         for ($j=0; $j<=scalar(@vert); $j++) {
             $right = ($j>$#vert) ? $img->width : $img->get_guide_position($vert[$j]);
            # protect against 0 width/height guide selections
-           if ($left!=$right && $top!=$bot) 
+           if ($left!=$right && $top!=$bot)
              {
                # perform cropping, table entry
                $imgname = dosel($img, $savepath, $imgpath, $imgbasename, $extension, $left, $right, $top, 
$bot, $i, $j);
-                html_table_entry(\*FILE, $imgname, $right-$left, $bot-$top, $capatalize);  
-             } 
+                html_table_entry(\*FILE, $imgname, $right-$left, $bot-$top, $capatalize);
+             }
             $left = $right + $cellspacing;
 
             # Increment the progress bar
@@ -256,7 +256,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/pixelmap b/examples/pixelmap
index a32ee5d..4161ec9 100755
--- a/examples/pixelmap
+++ b/examples/pixelmap
@@ -12,7 +12,7 @@ sub pixelmap {                                        # es folgt das eigentliche Skript...
    my($image,$drawable,$_expr)= _;
 
    Gimp->progress_init ("Mapping pixels...");
-   
+
    my $init="";
 
    $_expr =~ /\$p/   and $init.='$p = $src->data;';
@@ -38,10 +38,10 @@ sub pixelmap {                                      # es folgt das eigentliche Skript...
       my $_area = 0;
 
       do {
-         ($w,$h)=($src->w,$src->h);
-         $_area += $w*$h/($_bounds[2]*$_bounds[3]);
-         $_dst->data(&$_expr);
-         Gimp->progress_update ($_area);
+        ($w,$h)=($src->w,$src->h);
+        $_area += $w*$h/($_bounds[2]*$_bounds[3]);
+        $_dst->data(&$_expr);
+        Gimp->progress_update ($_area);
       } while (Gimp->pixel_rgns_process ($_iter));
    }
 
@@ -52,36 +52,36 @@ sub pixelmap {                                      # es folgt das eigentliche Skript...
 }
 
 register "pixelmap",
-         "Maps Pixel values and coordinates through general Perl expressions",
-         undef,
-         "Marc Lehmann",
-         "Marc Lehmann <pcg\ goof com>",
-         "19991115",
-         N_"<Image>/Filters/Generic/Pixelmap...",
-         "*",  
-         [
-           [PF_TEXT,           "expression"    , "The perl expression to use", 
'($x*$y*0.01)'."\n".'->slice("*$bpp")']
-         ],
-         \&pixelmap;
+        "Maps Pixel values and coordinates through general Perl expressions",
+        undef,
+        "Marc Lehmann",
+        "Marc Lehmann <pcg\ goof com>",
+        "19991115",
+        N_"<Image>/Filters/Generic/Pixelmap...",
+        "*",
+        [
+          [PF_TEXT,            "expression"    , "The perl expression to use", 
'($x*$y*0.01)'."\n".'->slice("*$bpp")']
+        ],
+        \&pixelmap;
 
 register "pixelgen",
-         "Generate the pixels of an image by expressions (in PDL)",
-         undef,
-         "Marc Lehmann",
-         "Marc Lehmann <pcg\ goof com>",
-         "19991115",
-         N_"<Image>/Filters/Render/Pixelgenerator...",
-         undef,
-         [
-           [PF_SPINNER,                "width"         , "The width of the new image to generate",     512, 
[1, 4096, 1]],
-           [PF_SPINNER,                "height"        , "The height of the new image to generate",    512, 
[1, 4096, 1]],
-           [PF_RADIO,          "type"          , "The type of the layer to create (same as 
gimp_layer_new.type)",
-                               RGB_IMAGE       , [RGB => RGB_IMAGE, RGBA => RGBA_IMAGE, GRAY => GRAY_IMAGE,
-                                                  GRAYA => GRAYA_IMAGE, INDEXED => INDEXED_IMAGE, INDEXEDA 
=> INDEXEDA_IMAGE]],
-           [PF_TEXT,           "expression"    , "The perl expression to use", 
"(\$x*\$y*0.01)\n->slice(\"*\$bpp\")"]
-         ],
-         [PF_IMAGE],
-         sub {
+        "Generate the pixels of an image by expressions (in PDL)",
+        undef,
+        "Marc Lehmann",
+        "Marc Lehmann <pcg\ goof com>",
+        "19991115",
+        N_"<Image>/Filters/Render/Pixelgenerator...",
+        undef,
+        [
+          [PF_SPINNER,         "width"         , "The width of the new image to generate",     512, [1, 
4096, 1]],
+          [PF_SPINNER,         "height"        , "The height of the new image to generate",    512, [1, 
4096, 1]],
+          [PF_RADIO,           "type"          , "The type of the layer to create (same as 
gimp_layer_new.type)",
+                               RGB_IMAGE       , [RGB => RGB_IMAGE, RGBA => RGBA_IMAGE, GRAY => GRAY_IMAGE,
+                                                  GRAYA => GRAYA_IMAGE, INDEXED => INDEXED_IMAGE, INDEXEDA 
=> INDEXEDA_IMAGE]],
+          [PF_TEXT,            "expression"    , "The perl expression to use", 
"(\$x*\$y*0.01)\n->slice(\"*\$bpp\")"]
+        ],
+        [PF_IMAGE],
+        sub {
    my($w,$h,$type,$expr)= _;
    my $image = new Gimp::Image $w, $h, Gimp->layer2imagetype($type);
    my $layername = $expr;
diff --git a/examples/prep4gif b/examples/prep4gif
index 330d938..7669008 100755
--- a/examples/prep4gif
+++ b/examples/prep4gif
@@ -115,7 +115,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/randomart1 b/examples/randomart1
index ae59c41..d06aac8 100755
--- a/examples/randomart1
+++ b/examples/randomart1
@@ -3,8 +3,8 @@
 eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
     if 0; # not running under some shell
 
-# <sjburges gimp org> 12/13/03: adjusted number of blend arguments to 
-#                               be 1.3.23 compatible 
+# <sjburges gimp org> 12/13/03: adjusted number of blend arguments to
+#                               be 1.3.23 compatible
 #                               Removed channel_ops_ from channel_ops_offset    #                            
   Adjusted colors to be 1.3.x compatible
 
 use Gimp;
@@ -14,27 +14,27 @@ use Gimp::Fu;
 use constant PIx2 => 8 * atan2 1,1;
 
 register "random_art_1",                       # Funktionsname
-         "Create a Random Tile",               # Kurzhilfe
-         "Create a tileable image by repeatedly drawing colourful polygons",
-                                               # Hilfetext
-         "Marc Lehmann",                       # Autor
-         "Marc Lehmann <pcg\ goof com",                # Copyright
-         "0.4",                                # Version/Datum
-         N_"<Image>/Filters/Render/Random Art #1...",  # Men�pfad
-         "",                                   # Bildtypen
-         # Eingabeparameter
-         # Typ         Name            Beschreibung            Wert
-         [
-          [PF_INT32,   'width',        'Image Width',          300],
-          [PF_INT32,   'height',       'Image Height',         300],
-          [PF_SLIDER,  'num_poly',     'Number of Polygons',   20, [5,100,1]],
-          [PF_SLIDER,  'edges',        'Number of Edges',      10, [3, 30, 1]],
-          [PF_SLIDER,  'revolutions',  'Number of Revolutions',1, [1, 3, 1]],
-          [PF_SLIDER,  'feather',      'Feather Radius',       30, [1, 100]],
-          [PF_BOOL,    'supersample',  'Adaptive Supersampling?', 0],
-         ],
-         [PF_IMAGE],
-         sub {                                 # Perl-Code
+        "Create a Random Tile",                # Kurzhilfe
+        "Create a tileable image by repeatedly drawing colourful polygons",
+                                               # Hilfetext
+        "Marc Lehmann",                        # Autor
+        "Marc Lehmann <pcg\ goof com",         # Copyright
+        "0.4",                                 # Version/Datum
+        N_"<Image>/Filters/Render/Random Art #1...",   # Men�pfad
+        "",                                    # Bildtypen
+        # Eingabeparameter
+        # Typ          Name            Beschreibung            Wert
+        [
+         [PF_INT32,    'width',        'Image Width',          300],
+         [PF_INT32,    'height',       'Image Height',         300],
+         [PF_SLIDER,   'num_poly',     'Number of Polygons',   20, [5,100,1]],
+         [PF_SLIDER,   'edges',        'Number of Edges',      10, [3, 30, 1]],
+         [PF_SLIDER,   'revolutions',  'Number of Revolutions',1, [1, 3, 1]],
+         [PF_SLIDER,   'feather',      'Feather Radius',       30, [1, 100]],
+         [PF_BOOL,     'supersample',  'Adaptive Supersampling?', 0],
+        ],
+        [PF_IMAGE],
+        sub {                                  # Perl-Code
    # Die Parameter werden ganz "normal" �bergeben:
    my ($w,$h,$num_poly,$edges,$revolutions,$feather,$super)= _;
    Context->push();
@@ -45,7 +45,7 @@ register "random_art_1",                      # Funktionsname
 
    # Erzeuge die erste Ebene f�r das Bild
    my $layer = $image->layer_new($w,$h,RGB_IMAGE,
-                   "Random Art #1",100,NORMAL_MODE);
+                  "Random Art #1",100,NORMAL_MODE);
 
    # F�ge sie in das Bild ein
    $image->add_layer($layer,0);
@@ -65,9 +65,9 @@ register "random_art_1",                      # Funktionsname
    for (1..$num_poly) {
       my @ecken;
       for (1..$edges*$revolutions) {
-         my $r = rand(0.4)+0.1;
-         push(@ecken, $w/2+sin($_*PIx2/$edges)*$r*$w,
-                      $h/2+cos($_*PIx2/$edges)*$r*$h);
+        my $r = rand(0.4)+0.1;
+        push(@ecken, $w/2+sin($_*PIx2/$edges)*$r*$w,
+                     $h/2+cos($_*PIx2/$edges)*$r*$h);
       }
 
       # Selektiere die Region
@@ -76,24 +76,24 @@ register "random_art_1",                    # Funktionsname
       # W�hle zuf�llig zwei Farben aus
       Context->set_foreground([rand(256)/256.0,rand(256)/256.0,rand(256)/256.0]);
       Context->set_background([rand(256)/256.0,rand(256)/256.0,rand(256)/256.0]);
-      
+
       # Und erzeuge einen Farbverlauf �ber das Bild
-      $layer->edit_blend (FG_BG_HSV_MODE,      
-                     DIFFERENCE_MODE, 
+      $layer->edit_blend (FG_BG_HSV_MODE,
+                    DIFFERENCE_MODE,
                     GRADIENT_LINEAR,         # gradient type
                     100,                     # opacity
-                     0,                       # offset
+                    0,                       # offset
                     REPEAT_TRIANGULAR,       # repeat
                     0,                       # reverse
                     $super,                  # supersampling
-                    2,                       
-                    3, 
+                    2,
+                    3,
                     0,                       # no dithering
-                     $w/2,                    # x1
+                    $w/2,                    # x1
                     $h/2,                    # y1
-                     rand($w),                # x2
+                    rand($w),                # x2
                     rand($h));               # y2
-      
+
       # Und dann verschiebe das Bild etwas
       $layer->offset (1,0,(rand(0.8)+0.1)*$w,(rand(0.8)+0.1)*$h);
    }
diff --git a/examples/randomblends b/examples/randomblends
index b724bf2..d4a519f 100755
--- a/examples/randomblends
+++ b/examples/randomblends
@@ -13,35 +13,35 @@ use Gimp::Util;
 sub randint {
     my ($int) = @_;
     return int(rand()*$int +0.5);
-    }    
+    }
 
-register "random_blends", 
-         "Random Blends - Perform N random blends", 
+register "random_blends",
+         "Random Blends - Perform N random blends",
          "A random approach to art, using the blend tool with DIFFERENCE_MODE.  Alpha is not affected; best 
used on opaque background.  Just try it. It might be good.",
-         "Seth Burgess", 
-         "Seth Burgess <sjburges\ gimp org>", 
+         "Seth Burgess",
+         "Seth Burgess <sjburges\ gimp org>",
          "1999-03-18",
-         N_"<Image>/Filters/Render/Random Blends...", 
-         "RGB*, GRAY*", 
-         [ 
-           [PF_SPINNER, "number", "How many gradients to apply", 7, [1,255,1]], 
+         N_"<Image>/Filters/Render/Random Blends...",
+         "RGB*, GRAY*",
+         [
+           [PF_SPINNER, "number", "How many gradients to apply", 7, [1,255,1]],
             ],
          [],
          ['gimp-1.1'],
          sub {
     my($img,$layer,$numgradients) = _;
-    eval { $img->undo_group_start };  
+    eval { $img->undo_group_start };
     Context->push();
     my $sel;
     ($sel,$x1,$y1,$x2,$y2) = $img->gimp_selection_bounds;
     srand();
 
-    @gradientlist = gimp_gradients_get_list("");  
-   
+    @gradientlist = gimp_gradients_get_list("");
+
     Gimp->progress_init("Random blends...");
     for ($i=0; $i<$numgradients; $i++) {
         Context->set_gradient(@gradientlist[randint($#gradientlist)]);
-       $layer->edit_blend(CUSTOM_MODE,  
+       $layer->edit_blend(CUSTOM_MODE,
                        DIFFERENCE_MODE,
                        randint(10),      # gradient type
                        randint(100),     # opacity
@@ -50,14 +50,14 @@ register "random_blends",
                       0,                # reverse
                        0,                # disable supersampling..
                       1,
-                      0.1,              
+                      0.1,
                       0,                # no dithering
                        randint($x2-$x1)+$x1, # x1
                        randint($y2-$y1)+$y1, # y1
                        randint($x2-$x1)+$x1, # x2
                        randint($y2-$y1)+$y1, # y2
                        );
-        Gimp->progress_update($i/(1.0*$numgradients));            
+        Gimp->progress_update($i/(1.0*$numgradients));
         }
     eval { $img->undo_group_end };
     Context->pop();
@@ -67,7 +67,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/repdup b/examples/repdup
index d6a8831..d8f5664 100755
--- a/examples/repdup
+++ b/examples/repdup
@@ -49,6 +49,6 @@ exit main;
 =head1 LICENSE
 
 Copyright Claes G. Lindblad.
-Distributed under the terms of the GNU Public License, v2 or higher. 
+Distributed under the terms of the GNU Public License, v2 or higher.
 
 =cut
diff --git a/examples/roundsel b/examples/roundsel
index fd72b78..1139fc1 100755
--- a/examples/roundsel
+++ b/examples/roundsel
@@ -8,21 +8,21 @@ use Gimp::Util;
 
 # Gimp::set_trace(TRACE_ALL);
 
-register "round_sel", 
+register "round_sel",
          "Rounds a selection.",
          "Rounds a selection.",
-         "Uri Zarfaty", 
-         "Uri Zarfaty <udz20\ cam ac uk>", 
+         "Uri Zarfaty",
+         "Uri Zarfaty <udz20\ cam ac uk>",
          "1999-03-25",
-         N_"<Image>/Select/Round...", 
-         "*", 
-         [ 
-           [PF_SPINNER, "roundness", "How much to round, in pixels", 16, [1,1000,1]], 
+         N_"<Image>/Select/Round...",
+         "*",
+         [
+           [PF_SPINNER, "roundness", "How much to round, in pixels", 16, [1,1000,1]],
          ], sub {
     my($img,$drawable,$round) = @_;
 
     eval { $img->undo_group_start };
-    
+
     my $channel = gimp_selection_save($img);
     gimp_selection_none($img);
     plug_in_gauss_iir($img, $channel, $round, 1, 1);
@@ -30,7 +30,7 @@ register "round_sel",
     gimp_selection_load($channel);
     gimp_image_remove_channel($img, $channel);
     # gimp_channel_delete($channel);
-    
+
     eval { $img->undo_group_end };
 
     ();
diff --git a/examples/selective_sharpen b/examples/selective_sharpen
index 5ead696..51712ed 100755
--- a/examples/selective_sharpen
+++ b/examples/selective_sharpen
@@ -1,32 +1,32 @@
-#!/usr/bin/perl 
+#!/usr/bin/perl
 
 use Gimp ":auto";
 use Gimp::Fu;
 
-sub SOBEL()        {0} 
-sub PREWITT()      {1} 
-sub GRADIENT()     {2} 
+sub SOBEL()        {0}
+sub PREWITT()      {1}
+sub GRADIENT()     {2}
 sub ROBERTS()      {3}
 sub DIFFERENTIAL() {4}
 sub LAPLACE()      {5}
 
-# Gimp::set_trace(TRACE_ALL); 
+# Gimp::set_trace(TRACE_ALL);
 
-sub my_code { 
+sub my_code {
     my ($img,$original_layer,$sharpen_radius,$sharpen_amt,$sharpen_threshold) = @_;
     my $edge_layer;
     my $saved_selection;
     my @selbounds;
 
-    # sanity stuff 
+    # sanity stuff
     $original_layer->is_layer || die "Can only operate on layers";
     $img->undo_group_start;
-  
+
     @selbounds = $img->selection_bounds;
-    if ($selbounds[0] == 0) # if empty   
+    if ($selbounds[0] == 0) # if empty
       {
-        $img->selection_all;
-      }     
+       $img->selection_all;
+      }
 
     $saved_selection = $img->selection_save;
     $img->selection_none;
@@ -45,16 +45,16 @@ sub my_code {
     $edge_layer->gauss_iir2(3.0, 3.0);
 
     # 5) boost contrast (I can give you a specific curve or such)
-    $edge_layer->curves_spline(HISTOGRAM_VALUE, 
-                              [0,0,
-                               45,20,
-                               160,225,
-                               255,255]
-                              );
+    $edge_layer->curves_spline(HISTOGRAM_VALUE,
+                             [0,0,
+                              45,20,
+                              160,225,
+                              255,255]
+                             );
 
     # 6) then make the boosted, gray edge-detection into a selection mask
-    my $selchan = $img->channel_new($img->width, $img->height, "sharpen_mask", 
-                      100.0, [1.0,0,0]);
+    my $selchan = $img->channel_new($img->width, $img->height, "sharpen_mask",
+                     100.0, [1.0,0,0]);
 
     $img->add_channel($selchan, -1);
     $edge_layer->edit_copy;
@@ -63,33 +63,33 @@ sub my_code {
     $selchan->combine_masks($saved_selection, CHANNEL_OP_INTERSECT, 0, 0);
     $selchan->selection_load;
 
-    # 7) then use unsharp mask to that selection (scratch the gray layer)  
+    # 7) then use unsharp mask to that selection (scratch the gray layer)
     $original_layer->unsharp_mask($sharpen_radius, $sharpen_amt, $sharpen_threshold);
-    
+
     # cleanup
     selection_load($saved_selection);
     $img->remove_channel($saved_selection);
     $img->remove_channel($selchan);
     $img->remove_layer($edge_layer);
-   
-    $img->undo_group_end;    
+
+    $img->undo_group_end;
     undef;
 }
 
 register "selective_sharpen",
-         "Selective Sharpen - A method used by tigert to sharpen edges",
+        "Selective Sharpen - A method used by tigert to sharpen edges",
         "",
         "Seth Burgess <sjburges\ gimp org>",
-         "(c) Seth Burgess 2004",
+        "(c) Seth Burgess 2004",
         "2004/14/04",
-        N_"<Image>/Filters/Enhance/Selective Sharpen...", 
+        N_"<Image>/Filters/Enhance/Selective Sharpen...",
         "RGB*", [
-         [ PF_SPINNER, "sharpen_radius", "Radius of unsharp", 5.0, [0.1,120,0.1]],
-         [ PF_SPINNER, "sharpen_amt", "Amount to unsharp", 1.0, [0.0,4.0,0.1]], 
-         [ PF_SPINNER, "threshold", "What delta to decide to sharp on", 20, [0,255,1]],
-        ],  
+        [ PF_SPINNER, "sharpen_radius", "Radius of unsharp", 5.0, [0.1,120,0.1]],
+        [ PF_SPINNER, "sharpen_amt", "Amount to unsharp", 1.0, [0.0,4.0,0.1]],
+        [ PF_SPINNER, "threshold", "What delta to decide to sharp on", 20, [0,255,1]],
+        ],
         \&my_code;
-       
+
 exit main;
 
 =head1 LICENSE
@@ -100,28 +100,28 @@ Taken from an IRC log:
 
 02:00 <@         tigert> selective sharpening
 02:00 <@         tigert> UnNamed: 1) take the original photo, duplicate the
-                         layer
+                        layer
 02:01 <@         tigert> UnNamed: 2) convert the copy to grayscale
 02:01 <@         tigert> 3) run edge detect to the gray layer
 02:01 <@         tigert> 4) blur it slightly
 02:01 <@         tigert> 5) boost contrast (I can give you a specific curve or
-                         such)
+                        such)
 02:01 <        sjburges> tigert: on 3, what edge detect?
 02:01 <@         tigert> sjburges: default works
 02:01 <@         tigert> sjburges: size: 3 or 2 (default)
 02:02 <@         tigert> sjburges: then make the boosted, gray edge-detection
-                         into a selection mask
+                        into a selection mask
 02:02 <@         tigert> sjburges: then use unsharp mask to that selection
-                         (scratch the gray layer)
+                        (scratch the gray layer)
 02:03 <@         tigert> sjburges: sjburges now, one could do two versions
 02:03 <@         tigert> sjburges: so one version could just be "Select edges"
 02:04 <@         tigert> sjburges: another could ask for unsharp mask
-                         parameters as well and sharpen
+                        parameters as well and sharpen
 02:04 <@         tigert> sjburges: the idea for the script is to sharpen it
-                         without sharpening the noise on flat areas
+                        without sharpening the noise on flat areas
 02:04 <        sjburges> tigert: could you fire me an email, and I can try to
-                         get to it tonight/tomorrow?  It sounds simple enough.
-                         I need to head to a party for work shortly here
+                        get to it tonight/tomorrow?  It sounds simple enough.
+                        I need to head to a party for work shortly here
 02:04 <@         tigert> sjburges: ok
 
 =cut
diff --git a/examples/sethspin b/examples/sethspin
index b065a5d..de08d9c 100755
--- a/examples/sethspin
+++ b/examples/sethspin
@@ -9,9 +9,9 @@ eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
 #       - Steinar H. Gunderson <sgunderson bigfoot com>
 
 
-# This one's all mine.  Well, its GPL/Artistic but I'm the author and creator. 
+# This one's all mine.  Well, its GPL/Artistic but I'm the author and creator.
 # You need gimp 1.1 or better for this; too much has changed, and I don't think
-# 1.0.x had a perspective PDB function anyway 
+# 1.0.x had a perspective PDB function anyway
 
 # Here's the working theory on this:
 #  There's a function called spinlayer which will spin from a spinlayer to a
@@ -20,11 +20,11 @@ eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
 #
 #  If the user wants to spin back, it will take 1/2 the layers otherwise required
 #  per call to the spin_layer, so that the number of total layers comes out the
-#  same.  
+#  same.
 #
 #  The main function makes a new image, copies the source and destination onto it
 #  with appropriate offsets, and passes this image with the bottom 2 layers to
-#  spin_layer.  At the end, remove the original 2 layers, since they won't be 
+#  spin_layer.  At the end, remove the original 2 layers, since they won't be
 #  needed, and add in some Layer comments for timing your gif.
 #
 ################################################################################
@@ -44,14 +44,14 @@ eval 'exec /usr/bin/perl  -S $0 ${1+"$@"}'
 # 1.1 - Second (still ugly) release: Made the perspective setting actually do
 #       something
 # 1.2 - Used some of the convienence functions, and made things a little eaiser
-#       from the user's standpoint too.  Also moved it from the 
-#       Filters->Animations-> menu to Xtns->Animations.  I think its 
+#       from the user's standpoint too.  Also moved it from the
+#       Filters->Animations-> menu to Xtns->Animations.  I think its
 #       clearer whats going on this way.  It also works w/ any 2 layers now.
 # 1.5 - Some debugging by Steinar and myself to make it work again.
 # 1.6 - Moved some renaming into the main loop, more cleanups.
 # 1.7 - Fixed up set_name to drawable_set_name
 #
-# TODO: Clean it up; allow for other effects (skewing, ripples?) while spinning;        
+# TODO: Clean it up; allow for other effects (skewing, ripples?) while spinning;
 
 # Seth Burgess
 # <sjburges gimp org>
@@ -67,13 +67,13 @@ sub saw {  # a sawtooth function on PI
     if ($val < 3.14159/2.0) {
         return ($val/3.14159);
     } elsif ($val < 3.14159) {
-        return (-1+$val/3.14159); 
+        return (-1+$val/3.14159);
     } elsif ($val < 3.14159+3.14159/2.0) {
         return ($val/3.14159);
     } else {
-        return (-1+$val/3.14159); 
+        return (-1+$val/3.14159);
     }
-} 
+}
 
 sub spin_layer { # the function for actually spinning the layer
     my ($img, $spin, $dest, $numframes, $prp) = @_;
@@ -83,7 +83,7 @@ sub spin_layer { # the function for actually spinning the layer
        $frameno);  # The current frame
 
     # Now let's spin it!
-    $stepsize = 3.14159/$numframes; # in radians 
+    $stepsize = 3.14159/$numframes; # in radians
     $frameno = 0;
     for ($i=0; $i<=3.14159; $i+=$stepsize) {
         Gimp->progress_update ($i/3.14159);
@@ -98,7 +98,7 @@ sub spin_layer { # the function for actually spinning the layer
         $img->selection_all();
         @x = $img->selection_bounds();
         $img->selection_none();
- 
+
         # x[1],x[2]                  x[3],x[2]
         # x[1],x[4]                  x[3],x[4]
         my($y1, $y3);
@@ -108,10 +108,10 @@ sub spin_layer { # the function for actually spinning the layer
        # height must be != 0
         $y3++ if ($y1 == $y3);
 
-        $floater = Gimp->gimp_drawable_transform_perspective_default($floater, 
-                       $x[1]+saw($i)*$prp*$framelay->width,$y1,  
+        $floater = Gimp->gimp_drawable_transform_perspective_default($floater,
+                       $x[1]+saw($i)*$prp*$framelay->width,$y1,
                        $x[3]-saw($i)*$prp*$framelay->width,$y1,
-                       $x[1]-saw($i)*$prp*$framelay->width,$y3,  
+                       $x[1]-saw($i)*$prp*$framelay->width,$y3,
                        $x[3]+saw($i)*$prp*$framelay->width,$y3,
                        0,1);
         $framelay->fill(1); # BG-IMAGE-FILL
@@ -146,7 +146,7 @@ register "seth_spin",
          ['gimp-1.1'],
          sub {
     my($src,$dest,$frames,$color,$perspective,$spinback,$indexed) = @_;
-    
+
     $oldbackground = Gimp->context_get_background();
     Gimp->context_set_background($color);
 
@@ -155,7 +155,7 @@ register "seth_spin",
     Gimp->progress_init(__"Seth Spin...");
 
     # Copy souce and destination to new image
-    
+
     $maxwide = ($src->width > $dest->width) ? $src->width : $dest->width;
     $maxhigh = ($src->height > $dest->height) ? $src->height: $dest->height;
 
@@ -184,13 +184,13 @@ register "seth_spin",
     }
 
     spin_layer($img, $spinlayer, $destlayer, $spinback ? $frames/2 : $frames, $perspective);
-   
-    # go back from destination to spinlayer if spinning back 
-    if ($spinback) { 
+
+    # go back from destination to spinlayer if spinning back
+    if ($spinback) {
 #        @layerlist = $img->get_layers();
         spin_layer($img, $destlayer, $spinlayer, $frames/2, $perspective);
-    }    
- 
+    }
+
     # remove the original 2 pasted layers
     $img->remove_layer($destlayer);
     $img->remove_layer($spinlayer);
@@ -203,12 +203,12 @@ register "seth_spin",
     if ($spinback) {
         $all_layers[$frames/2-1]->drawable_set_name(__"Spin Layer DEST (250ms)");
     }
-    $all_layers[$frames-1]->drawable_set_name(__"Spin Layer SRC (250ms)");  
+    $all_layers[$frames-1]->drawable_set_name(__"Spin Layer SRC (250ms)");
 
     # indexed conversion wants a display for some reason
-    if ($indexed) { 
-        $img->convert_indexed(1,MAKE_PALETTE,255,0,1,"buffy" ); 
-    } 
+    if ($indexed) {
+        $img->convert_indexed(1,MAKE_PALETTE,255,0,1,"buffy" );
+    }
 
     Gimp->context_set_background($oldbackground);
     return();
@@ -218,7 +218,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/testall b/examples/testall
index a20ca59..a5ba6e0 100755
--- a/examples/testall
+++ b/examples/testall
@@ -9,7 +9,7 @@ Gimp::on_net {
 # properites that matter for running these things:
 #  layers required      (0 = makes new image)
 #  requires alpha        REQ_ALPHA = 0x1
-#  requires selection    REQ_SEL   = 0x2 
+#  requires selection    REQ_SEL   = 0x2
 #  requires guide        REQ_GUIDE = 0x4
 #  parameters            array of params
 
@@ -59,7 +59,7 @@ $testimage = "/home/seth/cvs/gimp-perl/examples/testimg1.JPG";
 ["mirror_split"           , 1, $REQ_NONE , [0] ],
 ["perlotine"              , 1, $REQ_GUIDE|$REQ_DIR, ['"DIR"','"foo.html"','"t"','"png"',0,'""',1,0] ],
 ["pixelgen"               , 0, $REQ_NONE , [$width,$height,RGB_IMAGE,q|'($x*$y*0.01)->slice("*$bpp")'|] ],
-["pixelmap"               , 1, $REQ_NONE , [q|'($x*$y*0.01)->slice("*$bpp")'|] ], 
+["pixelmap"               , 1, $REQ_NONE , [q|'($x*$y*0.01)->slice("*$bpp")'|] ],
 ["prep4gif"               , 2, $REQ_ALPHA, [64,1,0,1,255] ],
 ["random_art_1"           , 0, $REQ_NONE , [$width,$height,20,10,1,30,0] ],
 ["random_blends"          , 1, $REQ_NONE , [7] ],
@@ -78,7 +78,7 @@ $testimage = "/home/seth/cvs/gimp-perl/examples/testimg1.JPG";
 ["xach_shadows"           , 1, $REQ_NONE , [10] ],
 ["xachvision"             , 1, $REQ_NONE , [$color1,25] ],
 ["yinyang"                , 0, $REQ_NONE , [$width,$height,1,0,q|""|,q|""|,1] ],
-); 
+);
 
 foreach $test (@testbench)
 {
@@ -90,21 +90,21 @@ foreach $test (@testbench)
      $isfirstelem = 1;
      foreach $param (@{$test->[3]})
        {
-        if ($isfirstelem) 
+        if ($isfirstelem)
           { # for some reason I'm having to be explicit here...
              $isfirstelem = 0;
              $cmd = $cmd . "RUN_NONINTERACTIVE, ";
           }
-        else 
+        else
           { # insert a comma between list items
             $cmd = $cmd . ", ";
           }
         $cmd = $cmd . " " . $param;
-       }  
+       }
      $cmd = $cmd . ")\n";
      print $cmd;
      $img = eval $cmd;
-     # FIXME: returning an image is broken!  
+     # FIXME: returning an image is broken!
      warn $@ if $@;
     }
   elsif ($numlays == 1)
@@ -112,7 +112,7 @@ foreach $test (@testbench)
      $img = Gimp::file_load(RUN_NONINTERACTIVE, $testimage, $testimage);
      $drw = $img->get_active_drawable;
      Gimp::display_new($img);
-    
+
      if ($test->[2] & $REQ_ALPHA)
        {
           $drw->add_alpha;
@@ -120,8 +120,8 @@ foreach $test (@testbench)
           Gimp::gimp_selection_invert($img);
           Gimp::gimp_edit_cut($drw);
           Gimp::gimp_selection_none($img);
-       } 
-     if ($test->[2] & $REQ_SEL) 
+       }
+     if ($test->[2] & $REQ_SEL)
        {
           Gimp::gimp_rect_select($img, 0.2*$height,0.2*$width,0.6*$height,0.6*$width,CHANNEL_OP_REPLACE,0,0);
        }
@@ -141,17 +141,17 @@ foreach $test (@testbench)
        { $cmd = $cmd . "RUN_NONINTERACTIVE, \$img, \$drw"; }
      foreach $param (@{$test->[3]})
        {
-        if ($isfirstelem) 
-          { 
+        if ($isfirstelem)
+          {
              $isfirstelem = 0;
              $cmd = $cmd . "RUN_NONINTERACTIVE, \$img, \$drw, ";
           }
-        else 
+        else
           { # insert a comma between list items
             $cmd = $cmd . ", ";
           }
         $cmd = $cmd . " " . $param;
-       }  
+       }
      $cmd = $cmd . ")\n";
      print $cmd;
      eval $cmd;
diff --git a/examples/translogo b/examples/translogo
index eb47109..9eb7a8c 100755
--- a/examples/translogo
+++ b/examples/translogo
@@ -9,8 +9,8 @@ use Gimp::Util;
 # s/gimp_convert/gimp_image_convert/
 
 sub my_code {
-        my ($image, $drawable, $rad_tog, $pattern, $txt_col) = @_;
-        Context->push();
+       my ($image, $drawable, $rad_tog, $pattern, $txt_col) = @_;
+       Context->push();
        $drawable->has_alpha or die __"You can't run this script without an ALPHA CHANNEL!!";
        my $test = 0;
        $test = $drawable->type_with_alpha;
@@ -35,63 +35,63 @@ sub my_code {
        gimp_edit_fill ($layer, BACKGROUND_FILL);
        gimp_selection_none ($img);
        gimp_invert ($layer);
-       plug_in_gauss_rle ($layer, 2.0, 1, 1);  
+       plug_in_gauss_rle ($layer, 2.0, 1, 1);
        my $bump_lay;
-        $bump_lay = $img->layer_new($img->width,$img->height, RGBA_IMAGE, __"Bumpmap", 100, NORMAL_MODE);
-        $bump_lay->drawable_fill(BACKGROUND_FILL);
-        $img->add_layer($bump_lay,0);
-        if ($rad_tog == 1) {
-               Context->set_pattern ($pattern);
-               gimp_bucket_fill ($bump_lay, PATTERN_BUCKET_FILL, NORMAL_MODE, 100, 0, 0, 0, 0);
-        } else {
-               Context->set_background ($txt_col);
-               gimp_edit_fill ($bump_lay, BACKGROUND_FILL);
-        }
-        plug_in_bump_map ($img, $bump_lay, $layer, 110.0, 45.0, 4, 0, 0, 0, 0, 1, 0, 0);
-        $pattern_mask = gimp_layer_create_mask ($bump_lay, ADD_ALPHA_MASK);
-        $bump_lay->add_mask($pattern_mask);
-        gimp_selection_all ($img);
-        gimp_edit_copy ($layer);
-        $float = gimp_edit_paste ($pattern_mask, 0);
-        gimp_floating_sel_anchor ($float);
-        gimp_levels ($pattern_mask, 0, 0, 77, 0.91, 0, 255);
-        $bump_lay->remove_mask (MASK_APPLY);
-        gimp_invert ($layer);
-        gimp_image_flatten ($img);
-        gimp_image_convert_indexed ($img, 0, MAKE_PALETTE, 256, 0, 0, "");
-        my $new = gimp_image_get_active_drawable ($img);
-        gimp_layer_add_alpha ($new);
-        gimp_by_color_select ($new, [255, 255, 255], 55, CHANNEL_OP_ADD, 0, 0, 0.0, 0);
-        gimp_edit_clear ($new);
-        gimp_selection_none ($img);
-        return ($img);
+       $bump_lay = $img->layer_new($img->width,$img->height, RGBA_IMAGE, __"Bumpmap", 100, NORMAL_MODE);
+       $bump_lay->drawable_fill(BACKGROUND_FILL);
+       $img->add_layer($bump_lay,0);
+       if ($rad_tog == 1) {
+               Context->set_pattern ($pattern);
+               gimp_bucket_fill ($bump_lay, PATTERN_BUCKET_FILL, NORMAL_MODE, 100, 0, 0, 0, 0);
+       } else {
+               Context->set_background ($txt_col);
+               gimp_edit_fill ($bump_lay, BACKGROUND_FILL);
+       }
+       plug_in_bump_map ($img, $bump_lay, $layer, 110.0, 45.0, 4, 0, 0, 0, 0, 1, 0, 0);
+       $pattern_mask = gimp_layer_create_mask ($bump_lay, ADD_ALPHA_MASK);
+       $bump_lay->add_mask($pattern_mask);
+       gimp_selection_all ($img);
+       gimp_edit_copy ($layer);
+       $float = gimp_edit_paste ($pattern_mask, 0);
+       gimp_floating_sel_anchor ($float);
+       gimp_levels ($pattern_mask, 0, 0, 77, 0.91, 0, 255);
+       $bump_lay->remove_mask (MASK_APPLY);
+       gimp_invert ($layer);
+       gimp_image_flatten ($img);
+       gimp_image_convert_indexed ($img, 0, MAKE_PALETTE, 256, 0, 0, "");
+       my $new = gimp_image_get_active_drawable ($img);
+       gimp_layer_add_alpha ($new);
+       gimp_by_color_select ($new, [255, 255, 255], 55, CHANNEL_OP_ADD, 0, 0, 0.0, 0);
+       gimp_edit_clear ($new);
+       gimp_selection_none ($img);
+       return ($img);
 }
 $help=<<EOF.$help;
 This script aims to produce a transparent logo in an indexed image
 which is ready to be saved in .gif format. If you need a transparent
 image containing a logo for your web page, just apply this script over
-a drawable with an alpha channel in RGB or GRAY mode. 
+a drawable with an alpha channel in RGB or GRAY mode.
 
-You can choose between colour and pattern fill of your text. 
+You can choose between colour and pattern fill of your text.
 
-As an input, you need to have an image that has an alpha channel, and isn't 100% opaque - its really 
designed to work with a text layer.  It will then make a "logo" out of your non-white sections of the image 
and index it.  The original image is untouched. 
+As an input, you need to have an image that has an alpha channel, and isn't 100% opaque - its really 
designed to work with a text layer.  It will then make a "logo" out of your non-white sections of the image 
and index it.  The original image is untouched.
 
 EOF
 
 register "make_trans_logos",
-         "A script to get transparent beveled logos",
-         "$help",
-         "Michele Gherlone <mikem\ enet it>",
-         "(c) 2000 M. Gherlone",
-         "20000123",
-         N_"<Image>/Filters/Web/Transparent Logo...",
-         "*",
-         [
-           [PF_RADIO   , 'use_a_colour_or_a_pattern_for_text', "The user's choice", 0, [Colour => 0, Pattern 
=> 1]],
-           [PF_PATTERN , 'choose_a_pattern', "Choose the text Pattern", "Wood #1"],
-           [PF_COLOUR  , 'choose_a_colour',  "Choose the text Color", [69, 88, 211]],
-         ],
-         \&my_code;
+        "A script to get transparent beveled logos",
+        "$help",
+        "Michele Gherlone <mikem\ enet it>",
+        "(c) 2000 M. Gherlone",
+        "20000123",
+        N_"<Image>/Filters/Web/Transparent Logo...",
+        "*",
+        [
+          [PF_RADIO    , 'use_a_colour_or_a_pattern_for_text', "The user's choice", 0, [Colour => 0, Pattern 
=> 1]],
+          [PF_PATTERN  , 'choose_a_pattern', "Choose the text Pattern", "Wood #1"],
+          [PF_COLOUR   , 'choose_a_colour',  "Choose the text Color", [69, 88, 211]],
+        ],
+        \&my_code;
 exit main;
 
 =head1 LICENSE
diff --git a/examples/warp-sharp b/examples/warp-sharp
index 3b0cc5b..727871f 100755
--- a/examples/warp-sharp
+++ b/examples/warp-sharp
@@ -67,7 +67,7 @@ sub warp_sharp  {
     $img->remove_layer($edge_layer);
     $img->remove_layer($x_displace_layer);
     $img->remove_layer($y_displace_layer);
-    $img->undo_group_end; 
+    $img->undo_group_end;
     gimp_displays_flush();
     return undef;
 }
diff --git a/examples/xachlego b/examples/xachlego
index 6f27d5e..dd3ff9b 100755
--- a/examples/xachlego
+++ b/examples/xachlego
@@ -6,24 +6,24 @@
 # or Artistic liscence, whichever makes you happier.
 #
 # <Xach> sjburges: 1. pixelize the photo  2. in a new white layer, render a grid
-#           at the same resolution as the pixelize, then blur it. threshold the 
+#           at the same resolution as the pixelize, then blur it. threshold the
 #           grid until you get a roundish blob in the center of each square (you
 #           may need to repeat a few times).
-# <Xach> sjburges: meanwhile, back at the pixelized image, bumpmap it with 
-#           itself and a depth of about 5. do this twice. then bumpmap it with 
+# <Xach> sjburges: meanwhile, back at the pixelized image, bumpmap it with
+#           itself and a depth of about 5. do this twice. then bumpmap it with
 #           the round blobby layer.
 # <Xach> then create a new, clean grid, and bumpmap the pixelized layer with it
 #
 
 # (To get a decent blobby grid)
-# <Xach> <Xach> render a grid at 10x10, gaussian blur at 7, then set levels to 
-#           196 1.00 234                                                    
+# <Xach> <Xach> render a grid at 10x10, gaussian blur at 7, then set levels to
+#           196 1.00 234
 
-# Revision - 1.1:      added a gimp_displays_flush() for 1.0.x users
-#                      stopped deleting the layers after removal - it was
+# Revision - 1.1:      added a gimp_displays_flush() for 1.0.x users
+#                      stopped deleting the layers after removal - it was
 #                   causing bad things to happen with refcounts.  I hope
 #                   gimp is cleaning up this memory on its own...
-#            1.2:   Fixed buggy selection handling - oops ;)  
+#            1.2:   Fixed buggy selection handling - oops ;)
 #            1.3:   Added undo capability by Marc Lehman <pcg goof com>
 #            1.4:   Marc Lehman <pcg goof com>, changed function name
 #            1.5:   Seth Burgess <sjburges gimp org> added my email, put it
@@ -49,22 +49,22 @@ register "xach_blocks",
          ],
          sub {
    my($img,$drawable,$blocksize, $knobfactor)= _;
-       $selection_flag = 0;
+       $selection_flag = 0;
         eval { $img->undo_group_start };
        if (!$drawable->has_alpha) {
                $drawable->add_alpha;
-               }; 
+               };
        if ($img->selection_is_empty) {
                $img->selection_all;
                $selection_flag = 1;
                }
         Context->push();
-# Now the fun begins :) 
+# Now the fun begins :)
 
        $selection = $img->selection_save;
-  
+
 #1. Pixelize the photo
-       $drawable->plug_in_pixelize($blocksize); 
+       $drawable->plug_in_pixelize($blocksize);
 # 2. in a new white layer, render a grid
 #           at the same resolution as the pixelize, then blur it.
        $gridlayer = $img->layer_new($img->width, $img->height, RGBA_IMAGE, "Grid 1", 100, 0);
@@ -76,29 +76,29 @@ register "xach_blocks",
        $gridlayer->plug_in_grid(1, $blocksize, 0, [0,0,0], 255, 1, $blocksize, 0, [0,0,0], 255, 0, 0, 0, 
[0,0,0], 0);
        $gridlayer->plug_in_gauss_iir(0.7*$blocksize, 1, 1);
 
-#      threshold the 
+#      threshold the
 #   grid until you get a roundish blob in the center of each square (you
-#   may need to repeat a few times).   
+#   may need to repeat a few times).
 
        $gridlayer->levels(0, 196, 234, $knobfactor/100.0 , 0, 255);
 
-# <Xach> sjburges: meanwhile, back at the pixelized image, bumpmap it with 
-#           itself and a depth of about 5. do this twice.  
+# <Xach> sjburges: meanwhile, back at the pixelized image, bumpmap it with
+#           itself and a depth of about 5. do this twice.
        gimp_selection_load($selection);
        $drawable->plug_in_bump_map($drawable, 135, 45, 5, 0, 0, 0, 0, 1, 0, 0);
        $drawable->plug_in_bump_map($drawable, 135, 45, 5, 0, 0, 0, 0, 1, 0, 0);
        $drawable->plug_in_bump_map($gridlayer, 135, 45, 5, 0, 0, 0, 0, 1, 0, 0);
- 
+
 # <Xach> then create a new, clean grid, and bumpmap the pixelized layer with it
-       $img->selection_all;    
-       $cleangrid = $img->layer_new($img->width, $img->height, 
+       $img->selection_all;
+       $cleangrid = $img->layer_new($img->width, $img->height,
                                  RGBA_IMAGE, "Grid 2", 100, 0);
        $img->add_layer($cleangrid,0);
        gimp_edit_fill($cleangrid, BACKGROUND_FILL);
        $cleangrid->plug_in_grid(1, $blocksize, 0, [0,0,0], 255, 1, $blocksize, 0, [0,0,0], 255, 0, 0, 0, 
[0,0,0], 0);
        gimp_selection_load($selection);
        $drawable->plug_in_bump_map($cleangrid, 135, 45, 3, 0, 0, 0, 0, 1, 0, 0);
-       $img->selection_all;    
+       $img->selection_all;
 
 # Clean up stuff
 
@@ -117,7 +117,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/xachshadow b/examples/xachshadow
index 8ea8ab0..6c0bdba 100755
--- a/examples/xachshadow
+++ b/examples/xachshadow
@@ -5,11 +5,11 @@
 #[Xach] start off with an image, then pixelize it
 #[Xach] then add alpha->add layer mask                                   [20:21]
 #[Xach] render a checkerboard into the layer mask
-#[Xach] duplicate the image. fill the original with black, then blur the layer 
-#           mask (i used 30% of pixelize size) and offset it by some value (i 
+#[Xach] duplicate the image. fill the original with black, then blur the layer
+#           mask (i used 30% of pixelize size) and offset it by some value (i
 #           chose 20% of the pixelize size)
 #[Xach] duplicate the duplicate, remove the layer mask, move it below everything
-#[Xach] then add a new white layer on top, set the mode to multiply, and render 
+#[Xach] then add a new white layer on top, set the mode to multiply, and render
 #           a grid into it at pixelize size
 #[Xach] that's a bit roundabout, but it's also in the xcf
 #
@@ -18,7 +18,7 @@
 
 # Revision 1.1: Marc Lehman <pcg goof com> added undo capability
 # Revision 1.2: Marc Lehman <pcg goof com>, changed function name
-# Revision 1.3: Seth Burgess <sjburges gimp org>, changed location and 
+# Revision 1.3: Seth Burgess <sjburges gimp org>, changed location and
 #                 added my email address
 # Revision 1.4: Seth Burgess <sjburges gimp org> removed deprecated stuff
 #
@@ -47,12 +47,12 @@ register "xach_shadows",
                $drawable->add_alpha;
                };
         Context->set_foreground('white');
-        Context->set_background('black'); 
-# This only can be applied to an entire image right now..      
+        Context->set_background('black');
+# This only can be applied to an entire image right now..
 #      $selection = $img->selection_save;
     $img->selection_all;
-# Now the fun begins :) 
-       $drawable->plug_in_pixelize($blocksize); 
+# Now the fun begins :)
+       $drawable->plug_in_pixelize($blocksize);
        $shadowlayer = $drawable->layer_copy(0);
        $img->add_layer($shadowlayer,0);
        $checkmask = $shadowlayer->create_mask(ADD_WHITE_MASK);
@@ -62,7 +62,7 @@ register "xach_shadows",
        $frontlayer = $shadowlayer->layer_copy(0);
        $img->add_layer($frontlayer,0);
        Context->set_background([0,0,0]);
-       $shadowlayer->fill(BACKGROUND_FILL);    
+       $shadowlayer->fill(BACKGROUND_FILL);
        $checkmask->plug_in_gauss_iir(0.3*$blocksize, 1, 1);
        $checkmask->offset (1, 0, 0.2*$blocksize, 0.2*$blocksize);
 
@@ -77,7 +77,7 @@ register "xach_shadows",
 
        gimp_layer_set_mode($gridlayer, 3);
 # Clean up stuff
-        Context->pop();        
+        Context->pop();
         $img->selection_none;
         eval { $img->undo_group_end };
        gimp_displays_flush();
@@ -88,7 +88,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/xachvision b/examples/xachvision
index c92305c..c68a493 100755
--- a/examples/xachvision
+++ b/examples/xachvision
@@ -33,7 +33,7 @@ register "xachvision",
        Context->set_background($color);
        $toplayer->edit_fill(BACKGROUND_FILL);
        $toplayer->set_mode(COLOR_MODE);
-       
+
        Context->set_background([0,0,0]);
        $drawable->edit_fill(BACKGROUND_FILL);
 
@@ -42,7 +42,7 @@ register "xachvision",
        $midmask = $midlayer->create_mask(0);
        $midlayer->add_mask($midmask);
        $midmask->plug_in_grid(1,3,0,[0,0,0],255,
-                              1,$img->height * 3,0,[0,0,0],255, 
+                              1,$img->height * 3,0,[0,0,0],255,
                               0,0,0,[0,0,0],255 );
        $midmask->plug_in_gauss_iir(1.01, 1, 1);
 
@@ -56,7 +56,7 @@ exit main;
 
 =head1 LICENSE
 
-Copyright Seth Burgess.  
+Copyright Seth Burgess.
 Distributed under the same terms as Gimp-Perl.
 
 =cut
diff --git a/examples/yinyang b/examples/yinyang
index a835ec9..ee70499 100755
--- a/examples/yinyang
+++ b/examples/yinyang
@@ -105,14 +105,14 @@ sub insert_eye {
 }
 
 # Register with The Gimp
-register("yinyang", 
+register("yinyang",
          "Render a stand-alone Yin/Yang image",
        "Renders a black-and-white Yin/Yang symbol optionally
        with \"eyes\" that may optionally be images.",
-       "Aaron Sherman", 
+       "Aaron Sherman",
        "(c) 1998, Aaron Sherman",
-       "1999b", 
-       N_"<Image>/Filters/Render/Yin-Yang...", 
+       "1999b",
+       N_"<Image>/Filters/Render/Yin-Yang...",
        undef,
        [
                [PF_INT32, "width", "Width", 256],
diff --git a/po/ChangeLog b/po/ChangeLog
index f1c5981..3ef2cb1 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -220,7 +220,7 @@ Wed May 31 13:38:18 CEST 2000  Stanislav Brabec  <utx penguin cz>
 2000-05-23  Kjartan Maraas  <kmaraas gnu org>
 
        * no.po: Updated Norwegian translation.
-       
+
 2000-05-23  Sven Neumann  <sven gimp org>
 
        * de.po: updated german translation
@@ -234,7 +234,7 @@ Mon May 22 11:54:43 CEST 2000  Stanislav Brabec  <utx penguin cz>
        * cs.po: Updated translation.
 
 Fri May  5 21:49:29 CEST 2000  Marc Lehmann <pcg goof com>
-       
+
         * $alltarget was never set (have to have a look at the logs).
         Probably was responsible for the "gmo's don't build" problem.
 
@@ -283,7 +283,7 @@ Thu Mar 30 07:11:26 CEST 2000  Marc Lehmann <pcg goof com>
 
 Wed Mar  8 22:51:30 CET 2000  Sven Neumann <sven gimp org>
 
-       * fr.po: s/<Images>/<Image>/   
+       * fr.po: s/<Images>/<Image>/
                 s/<Boite a utils>/<Toolbox>/
 
 2000-03-09  Shirasaki Yasuhiro  <yasuhiro gnome gr jp>
@@ -366,7 +366,7 @@ Tue Jan 11 21:00:11 CET 2000  Stanislav Brabec  <utx penguin cz>
        * cs.po: Updated translation.
 
 2000-01-08
-       * ru.po: Added Russian translation from 
+       * ru.po: Added Russian translation from
        Valek Filippov <frob df ru>
 
 Fri Jan  7 19:26:06 CET 2000  Stanislav Brabec  <utx penguin cz>
@@ -376,7 +376,7 @@ Fri Jan  7 19:26:06 CET 2000  Stanislav Brabec  <utx penguin cz>
 1999-12-08  Kjartan Maraas  <kmaraas online no>
 
        * no.po: Added Norwegian translation.
-       
+
 Tue Dec  7 15:16:03 CET 1999  Stanislav Brabec  <utx penguin cz>
 
        * cs.po: Updated translation.
diff --git a/po/pxgettext b/po/pxgettext
index bbd610d..1575aba 100755
--- a/po/pxgettext
+++ b/po/pxgettext
@@ -4,7 +4,7 @@
 # no line numbers, yet
 
 # 5.005_02 in particular seems to have a BIG BUG
-# resulting in an endless loop and a memory leak in the 
+# resulting in an endless loop and a memory leak in the
 # regex machinery :(
 exit 0 unless ( $] >= 5.005_03 || $] <= 5.005 );
 
@@ -59,5 +59,3 @@ foreach $e (sort keys %entry) {
     print $e;
     print "\n";
 }
-
-
diff --git a/pxgettext b/pxgettext
index 41ad65a..fec288a 100755
--- a/pxgettext
+++ b/pxgettext
@@ -4,7 +4,7 @@
 # line line numbers, yet
 
 # 5.005_02 in particular seems to have a BIG BUG
-# resulting in an endless loop and a memory leak in the 
+# resulting in an endless loop and a memory leak in the
 # regex machinery :(
 exit 0 unless ( $] >= 5.005_03 || $] <= 5.005 );
 
diff --git a/t/run.t b/t/run.t
index a8892a3..d26e48d 100644
--- a/t/run.t
+++ b/t/run.t
@@ -18,7 +18,7 @@ ok(
 ok(!Gimp->image_insert_layer($l,0,0), 'Yet another OO syntax');
 is($l->get_name, "new layer", 'layer name');
 ok(
-  !$l->paintbrush(50,[1,1,2,2,5,3,7,4,2,8],PAINT_CONSTANT,0), 
+  !$l->paintbrush(50,[1,1,2,2,5,3,7,4,2,8],PAINT_CONSTANT,0),
   'some painting with variable length arrays, default value',
 );
 ok(
diff --git a/utils/embedxpm b/utils/embedxpm
index 53622eb..972050f 100755
--- a/utils/embedxpm
+++ b/utils/embedxpm
@@ -22,7 +22,7 @@ To only insert the xpm data, use this form:
  #%XPM%<what to attach to the end of the data>
 
 Here is an example (taken from the Gimp/PDB program):
- 
+
  C<# create the logo pixmap for the given widget
  sub create_logo($) {
     new Gtk::Pixmap(Gtk::Gdk::Pixmap->create_from_xpm_d(
@@ -108,6 +108,3 @@ $patch=~s/^(\s*)(#%XPM:$id%\n).*?(^\s*#%XPM%)(.*?)$/"$1$2".stringify($1,@xpm)."$
 write_file("$file~",$patch);
 chmod((stat($file))[2],"$file~") or die;
 rename "$file~",$file or die;
-
-
-
diff --git a/utils/gimpdoc b/utils/gimpdoc
index 0feaa6d..7043ab3 100755
--- a/utils/gimpdoc
+++ b/utils/gimpdoc
@@ -177,7 +177,7 @@ $author
 EOF
    *escape = sub {};
    *table_line = sub {
-      join("   ",$_[0]." ",$_[1]." ","T{\n".$_[2]."\nT}")."\n"; 
+      join("   ",$_[0]." ",$_[1]." ","T{\n".$_[2]."\nT}")."\n";
    }
 }
 
@@ -237,7 +237,7 @@ sub weight {
    }
    $w;
 }
-    
+
 sub gen_alternatives(\ $\@) {
    my @vals = @{+shift};
    my $name = shift;
@@ -257,7 +257,7 @@ sub gen_alternatives(\ $\@) {
             for my $class (qw(
                   Gimp Layer Image Drawable Selection Channel Display
                   Palette Plugin Gradients Edit Progress Region Tile
-                  PixelRgn GImpDrawable Patterns GimpParasite
+                  PixelRgn GimpDrawable Patterns GimpParasite Item Vectors
                )) {
                my @pre = @{$class."::PREFIXES"};
                prefix:
@@ -315,7 +315,7 @@ sub gen_desc {
    my @args = map [Gimp->procedural_db_proc_arg ($name, $_)],0..($nargs-1);
    my @vals = map [Gimp->procedural_db_proc_val ($name, $_)],0..($nvals-1);
    my $r;
-   
+
    my($vals,$args)=gen_va(@vals,@args);
 
    my($menu_path, $accelerator, $path, $image_types, $mtime) = @{$plugin_info{$name}};
diff --git a/utils/scm2perl b/utils/scm2perl
index 7d13245..074ba34 100755
--- a/utils/scm2perl
+++ b/utils/scm2perl
@@ -75,7 +75,7 @@ $parser = new Parse::RecDescent <<'EOA';
 {
 #   use re 'eval';
    $Parse::RecDescent::tokensep = '(?:\s*(?:(;[^\n]*\n))?)*';
-   
+
    my $indent = 0;
    my %sf2pf = (
       'SF-IMAGE'       => 'PF_IMAGE,     ',
@@ -97,12 +97,12 @@ $parser = new Parse::RecDescent <<'EOA';
       FALSE            0
       #t               1
       #f               0
-      
+
       RGB              RGB_IMAGE
       RGBA             RGBA_IMAGE
 
       LINEAR           LINEAR_INTERPOLATION
-      
+
       NORMAL           NORMAL_MODE
       ADDITION         ADDITION_MODE
       MULTIPLY         MULTIPLY_MODE
@@ -122,7 +122,7 @@ $parser = new Parse::RecDescent <<'EOA';
       ALPHA_MASK       ADD_ALPHA_MASK
       BLACK_MASK       ADD_BLACK_MASK
       WHITE_MASK       ADD_WHITE_MASK
-      
+
       *pi*             3.14159265
    );
    my $constants = join("|",map {quotemeta} sort {length($b) <=> length($a)} keys %constant);
@@ -176,14 +176,14 @@ nth       => 'sub nth {
    my $xskip;
 
    my $compat_fun = join("|",map {quotemeta} sort {length($b) <=> length($a)} keys %compat_fun);
-   
+
    sub func2perl {
       my($name)= _;
       $name=~s/->/2/g;
       $name=~y/-*<>?!:\//_/;
       $name=~/^[A-Za-z_]/ ? $name : "_$name";
    }
-   
+
    sub sf2pf {
       my $name=lc $_[0];
       $name=~y/ -?!:<>\[]/__/d;
@@ -227,7 +227,7 @@ expr        : '(' e_if ')'
        | ...!')' <error:unrecognized expression>
 
 cp_expr        : /car\b/   '(' ...pdbfun e_call ')'
-       
+
        | e_begin
        | e_list
        | '=' expr 'TRUE'
@@ -247,9 +247,9 @@ cp_expr     : /car\b/   '(' ...pdbfun e_call ')'
        | 'number->string' expr ...')'
        | 'cons-array' gen["("] expr (gen[","] expr)(?) gen[",[])"]
        | 'symbol-bound?' string '(' ident ')' gen["0"]
-       
+
        | /aref\b/ expr gen["->["] expr gen["]"]
-       
+
        | /$compat_fun/ { $::add_funcs{$compat_fun{$item[1]}}++ } <reject>
        | /car\b/    gen["\ {"] expr gen["}[0]"]
        | /cadr\b/   gen["\ {"] expr gen["}[1]"]
@@ -257,7 +257,7 @@ cp_expr     : /car\b/   '(' ...pdbfun e_call ')'
        | /cadddr\b/ gen["\ {"] expr gen["}[3]"]
        | 'null?' gen["!\ {"] expr gen["}"]
        | /cons\b/  gen["["] expr gen[", "] expr gen["]"]
-       
+
        | ...')' gen["[]"]
        | '(' cp_expr ')'
        | constant
@@ -335,7 +335,7 @@ e_call      : ( /script-fu-[A-Za-z_*][A-Za-z0-9-_*]*/
          | ident gen["$item[-1] ("]
          )
          (...!')'
-               expr (...!')' gen[", "] expr)(s?)
+               expr (...!')' gen[", "] expr)(s?)
          )[ arg](?)
          gen[")"]
 
@@ -384,7 +384,7 @@ c_while     : 'while' <commit>
 e_cond : 'cond' <commit>
          cond
 
-cond   : '(' 
+cond   : '('
          ( /'?else\b/ expr ')'
          | expr gen[" ? "] expr incindent nl gen[": "] ')' decindent
            ( ...'(' cond | gen["die 'cond fell off the end'"] )
@@ -395,7 +395,7 @@ e_binop     : expr
             gen[" $arg[0] "]
             expr
          )[ arg](s?)
-       
+
 e_list : 'list' gen["["] (expr (...!')' gen[", "] expr)(s?))(?) gen["]"]
 
 ident  : /[A-Za-z0-9-#_*!?<>=\/]+/ <reject:$item[1]!~/[A-Za-z]/>
@@ -429,10 +429,10 @@ print STDERR "done\n" unless $quiet;
 
 sub convert {
    my($in,$out)= _;
-   
+
    open IN,"<$in\0"   or die "unable to open '$in' for reading: $!";
    open OUT,">$out\0" or die "unable to open '$out' for writing: $!";
-   
+
    print STDERR "header..." unless $quiet;
    print OUT <<EOA;
 #!/usr/bin/perl
@@ -455,7 +455,7 @@ EOA
 
 exit main;
 EOA
-   
+
    print STDERR "wrote($out)\n" unless $quiet;
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]