2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.[ch]: reordered and renamed
functions to be consistent. Got rid of file-global "register_scripts"
variable. Pass more "scheme *sc" pointers around to reduce usage
or the global variable.
* plug-ins/script-fu/script-fu-eval.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu.c: changed accordingly.
svn path=/trunk/; revision=26928
2008-09-11 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/re/*: removed....
* plug-ins/script-fu/script-fu-regex.[ch]: and replaced with a
few-liner using GRegex. Seems to have some issues that need to be
sorted out.
* plug-ins/script-fu/scheme-wrapper.c: changed accordingly.
svn path=/trunk/; revision=26921
2008-09-10 Michael Natterer <mitch@gimp.org>
Change Script-Fu error handling to properly use the new error
message passing in PDB return values:
* plug-ins/script-fu/script-fu-scripts.[ch]: remove function
script_fu_error_msg().
* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): output
errors of interactive script-fu dialogs directly here with
g_message().
* plug-ins/script-fu/script-fu-scripts.c (script_fu_run_command):
add GError and return the error message instead of displaying it.
(script_fu_load_script): show the returned error here (and make it
more specific than the former script_fu_error_msg() did).
(script_fu_script_proc): return error messages via the procedure's
return values.
* plug-ins/script-fu/scheme-wrapper.c
(script_fu_marshal_procedure_call): if an error message was
returned from the PDB call, pass it to foreign_error() so it ends
up where it should (consle, text console or error string).
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-text-console.c: set the error
handler to PLUGIN while interpreting scheme, we handle errors
from calling back into the PDB ourselves now.
svn path=/trunk/; revision=26920
2008-09-09 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c
(script_fu_marshal_procedure_call): remove debug arrays to map the
values of registered enums to strings. Look up the strings
registered with the type system instead.
svn path=/trunk/; revision=26911
2008-09-09 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c: fix formatting of prototypes.
(script_fu_marshal_procedure_call): move variables to local scopes
where possible. Make this function a bit readable by indenting the
debug code in DEBUG_MARSHAL normally.
svn path=/trunk/; revision=26910
2008-07-14 Sven Neumann <sven@gimp.org>
Add new PDB data type PDB_COLORARRAY for using arrays of GimpRGB
colors as argument or return value.
* libgimpbase/gimpbaseenums.[ch] (enum GimpPDBArgType): replaced
the unused GIMP_PDB_BOUNDARY with GIMP_PDB_COLORARRAY.
* libgimpbase/gimpprotocol.h: increased GIMP_PROTOCOL_VERSION.
(struct _GPParam): added d_colorarray entry to the union.
* libgimpbase/gimpprotocol.c
* libgimp/gimp.[ch]
* app/pdb/gimp-pdb-compat.c
* app/plug-in/plug-in-params.c
* app/plug-in/gimpplugin-message.c
* tools/pdbgen/pdb.pl: deal with the new data type.
* tools/pdbgen/enums.pl: regenerated.
* plug-ins/pygimp/pygimp-pdb.c
* plug-ins/script-fu/scheme-wrapper.c: handle the new data type.
svn path=/trunk/; revision=26189
2007-10-21 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c: Reverted changes in handling
of string arrays to stay backwards compatible (see bug #317634).
* plug-ins/script-fu/scripts/font-map.scm: Updated based on change
in handling of string arrays listed above.
svn path=/trunk/; revision=23897
2007-09-27 Kevin Cozens <kcozens@cvs.gnome.org>
Create SF-RUN-MODE constant for use in Script-Fu. Fixes bug #479893.
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/scheme-wrapper.h: Added set_run_mode_constant()
which creates a new constant called SF-RUN-MODE. This constant can
be used by Script-Fu scripts when calling a plug-in that needs to
know the current run mode.
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/script-fu-server.c: Added calls to create the
new SF-RUN-MODE constant.
* plug-ins/script-fu/scripts/difference-clouds.scm: Pass SF-RUN-MODE
to the solid noise plug-in instead of always using RUN-INTERACTIVE.
svn path=/trunk/; revision=23674
2007-08-31 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/tinyscheme/scheme.[ch]
* plug-ins/script-fu/tinyscheme/scheme-private.h: make it possible
for foreign functions to return an error.
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/scheme-wrapper.c: Make use of this.
Fixes bug #472026.
svn path=/trunk/; revision=23432
2007-08-30 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/tinyscheme/scheme.[ch]
* plug-ins/script-fu/scheme-wrapper.h: Shuffeled some
code around to have scheme.c not include scheme-wrapper.h.
svn path=/trunk/; revision=23411
2007-08-30 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/tinyscheme/scheme.[ch]
* plug-ins/script-fu/tinyscheme/scheme-private.h: small changes
to tinyscheme - mostly removing workarounds for message output.
* plug-ins/script-fu/scheme-wrapper.[ch]: try to channel the
output through a central function, have various output functions
to handle the messages. Remove some hacks.
* plug-ins/script-fu/script-fu-text-console.c
* plug-ins/script-fu/script-fu-scripts.[ch]
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu-console.[ch]: use the new
infrastructure. Remove more hacks.
* plug-ins/script-fu/servertest.py: small script to test the
communication with the script-fu-server.
svn path=/trunk/; revision=23400
2007-08-13 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c (ts_output_string): Use the
string length in bytes passed in instead of recalculating it.
* plug-ins/script-fu/tinyscheme/scheme.c: Added comment.
svn path=/trunk/; revision=23239
2007-06-20 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c (init_constants): hardcode
the built-in units. Dynamically constructing the constants using
gimp_unit_get_singular() doesn't work because it returns a
translated string.
svn path=/trunk/; revision=22804
2007-05-25 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/script-fu-text-console.c
* plug-ins/script-fu/script-fu.c
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/scheme-wrapper.h: Applied slightly modified
patch from Eric Lamarque that makes use of TinyScheme's interactive
mode for the text console in Script-Fu. Fixes bug #440674.
svn path=/trunk/; revision=22622
2007-05-25 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/Makefile.am: Missed commit of this file.
* plug-ins/script-fu/scheme-wrapper.h:
* plug-ins/script-fu/scheme-wrapper.c (ts_output_string): Updated
to expect a 'const char *' and an int but no file pointer.
* plug-ins/script-fu/tinyscheme/scheme.c:
* plug-ins/script-fu/tinyscheme/scheme.h: Changes due to use of
'const char *' for ts_output_routine.
svn path=/trunk/; revision=22620
2007-05-25 Kevin Cozens <kcozens@cvs.gnome.org>
This is the first part of fixing bugs #438997 and #440674.
* plug-ins/script-fu/scheme-wrapper.c: Removed ts_output_routine
declaration from here...
* plug-ins/script-fu/tinyscheme/scheme.h: and added it here.
* plug-ins/script-fu/tinyscheme/scheme.c (putchars): Updated to be
smarter about where it's output needs to be sent.
svn path=/trunk/; revision=22619
2007-05-15 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c (marshall_proc_db_call): Allow
any number type in a vector to be passed in PDB call as an INT*ARRAY.
Updated error messages accordingly. Fixes bug #435640.
svn path=/trunk/; revision=22495
2007-05-02 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scheme-wrapper.c (ts_get_error_msg): applied
patch from Eric Lamarque that fixes Script-Fu server output
(bug #431623).
svn path=/trunk/; revision=22378
2007-04-12 Sven Neumann <sven@gimp.org>
* app/actions/plug-in-commands.c: if a plug-in or script
registered with a DISPLAY argument after the run-mode argument,
then pass the ID of the active display to the script, optionally
followed by image and drawable IDs.
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h: added SF-DISPLAY parameter.
svn path=/trunk/; revision=22241
2007-01-14 Hans Breuer <hans@breuer.org>
* plug-ins/script-fu/tinyscheme/scheme.[ch] : to make it compile with
msvc redefine stricmp after including <string.h> and protect gccism
#warning with #ifdef __GNUC__, also some more exports
* plug-ins/script-fu/scheme-wrapper.c : simple 'extern' does not work
to get variables across modules boundaries for msvc, use SCHEME_EXPORT
Together fixes bug #396268
svn path=/trunk/; revision=21707
2006-11-23 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/tinyscheme/scheme-private.h
* plug-ins/script-fu/tinyscheme/scheme.[ch]: Changed tinyscheme
to provide a safe spot to protect intermediate values from the
garbage collector. Fixes some really ugly problems with arrays.
Most likely not the best solution, we need to discuss this with
the tinyscheme maintainers.
* plug-ins/script-fu/scheme-wrapper.c: changed accordingly, plus
reordering some stuff to protect it from the eager GC.
2006-11-18 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c (marshall_proc_db_call): Set
return_val before destroying values[] as it may still be needed.
2006-11-16 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/script-fu-types.h
* plug-ins/script-fu/script-fu-scripts.c: add a SF-VECTORS type for
script-fu.
* plug-ins/script-fu/script-fu-interface.c: use a vectors
combobox for the GUI.
* plug-ins/script-fu/scripts/test-sphere.scm: test it as well.
2006-11-09 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c (marshall_proc_db_call): Use
vectors instead of the non-standard array structure. Also made some
minor coding style changes in the file.
* plug-ins/script-fu/tinyscheme/opdefines.h
* plug-ins/script-fu/tinyscheme/scheme-private.h
* plug-ins/script-fu/tinyscheme/scheme.h
* plug-ins/script-fu/tinyscheme/scheme.c: Removed all code related
to the handling of the non-standard array structure. Added one small
change to scheme.c to fix problems compiling with MSVC in Windows.
* plug-ins/script-fu/scripts/script-fu-compat.init: Changed array
references to use vector references.
2006-11-01 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c: Added two missing deprecated
constants. Updated some comments and removed one obsolete comment.
* plug-ins/script-fu/scripts/test-sphere.scm: Fixed example of how
to use named constants in a list by using the 'list' function.
2006-10-24 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c: Reworded two error messages.
Break out of for loop before i gets updated when error was detected
to make sure error message reports correct parameter number.
2006-10-20 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/scheme-wrapper.c: Moved the MIN and MAX entries
for image size and resolution to script_constants structureas they
are not deprecated constants.
* plug-ins/script-fu/scripts/script-fu.init: Removed CR in line endings.
* plug-ins/script-fu/scripts/*.scm: Fixed a number of regressions that
snuck in during the last big update of the scripts. This update
reduces the number of differences to the original scripts (other than
formatting). Some additional formatting changes in a few scripts.
Updates to use colour names in register block where possible. Fixed a
bug in burn-in-anim.scm. Minor cleanup of font-map.scm. Simplified
the bug fix in tile-blur.scm.
2006-10-19 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scripts/script-fu.init: don't load
script-fu-compat.init here.
* plug-ins/script-fu/scheme-wrapper.c (tinyscheme_init): load it
here, from the same place where script-fu.init was found.
* plug-ins/script-fu/script-fu-interface.c: made the code more
robust against invalid adjustment types.
2006-10-19 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scheme-wrapper.[ch]: search script-fu.init in
the scripts search path instead of looking for it in a hardcoded
directory.
* plug-ins/script-fu/script-fu-scripts.[ch]
* plug-ins/script-fu/script-fu.c: changes needed for above change.
2006-10-15 Kevin Cozens <kcozens@cvs.gnome.org>
With this commit we finally say goodbye to SIOD. This large set of
changes updates the Script-Fu plug-in to use the TinyScheme Scheme
interpreter. These changes originated with changes originally made
to Script-Fu which created Tiny-Fu (aka. the gimp-tiny-fu module).
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-scripts.h
* plug-ins/script-fu/script-fu-server.c
* plug-ins/script-fu/script-fu-text-console.c
* plug-ins/script-fu/script-fu.c: Updated with the changes made to
these files as part of the work on the Tiny-Fu project.
* plug-ins/script-fu/scheme-wrapper.c
* plug-ins/script-fu/scheme-wrapper.h: Renamed from siod-wrapper.[ch]
and updated based on differences to ts-wrapper.[ch] from gimp-tiny-fu.
* plug-ins/script-fu/ftx/*
* plug-ins/script-fu/re/*
* plug-ins/script-fu/tinyscheme/*
* plug-ins/script-fu/scripts/script-fu.init
* plug-ins/script-fu/scripts/script-fu-compat.init
* plug-ins/script-fu/scripts/contactsheet.scm
* plug-ins/script-fu/scripts/script-fu-set-cmap.scm
* plug-ins/script-fu/scripts/script-fu-util-setpt.scm
* plug-ins/script-fu/scripts/ts-helloworld.scm: Added all of these
files and directories from Tiny-Fu. Updated the Makefile.am files
of ftx, re, and tinyscheme now they are in the GIMP source tree.
* plug-ins/script-fu/scripts/*.scm: All scripts have been updated as
needed to ensure they will work with the TinyScheme interpreter. Most
of the files have been reformatted making it easier to see the syntax
of Scheme and making them easier to read.
* plug-ins/script-fu/scripts/Makefile.am: Updated script file lists.
* plug-ins/script-fu/siod-wrapper.c
* plug-ins/script-fu/siod-wrapper.h
* plug-ins/script-fu/siod/*: Removed obsolete files.
* configure.in: Updated list of files in AC_CONFIG_FILES. Changed
--disable-script-fu to --without-script-fu which it should have
been when originally added.
* INSTALL: Updated to show change to --without-script-fu.
2006-06-12 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/siod-wrapper.c (marshall_proc_db_call):
removed check for success again; it is being checked in the for()
loop already.
2006-06-10 Kevin Cozens <kcozens@cvs.gnome.org>
* plug-ins/script-fu/siod-wrapper.c (marshall_proc_db_call):
Additional simplifications for return values by using the same
code for all INT32 PDB types. Wrong member name was being used
for INT16 and INT8 return types. Added back if statement that
was removed but is needed.
2006-06-08 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/siod-wrapper.c (marshall_proc_db_call):
simplified quite a bit by using the same code for all INT32 PDB
types.
2006-06-08 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-console.c (script_fu_eval_run):
in case of an error, output the SIOD error message to stderr.
* plug-ins/script-fu/siod-wrapper.c: minor cleanup.
2006-06-08 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/siod-wrapper.c: allow CSS color keywords to
be used in place of the '(r g b) color notation.
* plug-ins/script-fu/scripts/test-sphere.scm: documented this new
feature.
* plug-ins/script-fu/scripts/*.scm: replaced some colors with
color names.
2005-12-29 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpbaseenums.[ch] (enum GimpPDBArgType): renamed
GIMP_PDB_PATH to GIMP_PDB_VECTORS and add the former as an alias
for the latter.
* libgimp/gimp.h (union _GimpParamData): added back d_path member
to maintian source compatibility.
* tools/pdbgen/pdb.pl
* libgimp/gimp.c
* app/pdb/procedural_db.c
* app/plug-in/plug-in-params.c
* libgimpbase/gimpprotocol.[ch]
* plug-ins/pygimp/pygimp-pdb.c
* plug-ins/script-fu/siod-wrapper.c: s/GIMP_PDB_PATH/GIMP_PDB_VECTORS/
* app/pdb/image_cmds.c
* app/pdb/procedural_db_cmds.c
* app/pdb/vectors_cmds.c
* libgimp/gimpimage_pdb.c
* libgimp/gimpvectors_pdb.c
* tools/pdbgen/enums.pl: regenerated.
2005-10-05 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/siod-wrapper.c: reverted changes to handling
of string arrays to stay backward compatible (see bug #168290 and
bug #317634).
* plug-ins/script-fu/scripts/font-map.scm: reverted change that
was done to adapt to above changes (see bug #308681).