2007-10-11 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.[ch]: moved the new string
escape function here and also it for the non-interactive case.
* plug-ins/script-fu/script-fu-interface.c: changed accordingly.
svn path=/trunk/; revision=23802
2007-10-11 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script):
use G_DIR_SEPARATOR instead of hardcoding the '\' under Windows.
svn path=/trunk/; revision=23800
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-09-07 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc):
applied patch from Kevin Cozens which implements RUN-WITH-LAST-VALS.
On top of that, factored out script_fu_collect_standard_args()
which collects DISPLAY,IMAGE,[DRAWABLE|LAYER|...] from the passed
parameters according to the new calling conventions (the old code
for INTERACTIVE was broken). Also cleaned up the function a bit.
Fixes bug #472493.
svn path=/trunk/; revision=23474
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/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-07 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_menu_map):
added more mappings from old to new Script-Fu menu locations.
svn path=/trunk/; revision=23128
2007-08-03 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_menu_map):
added a map from old to new Script-Fu submenus (to be extended).
svn path=/trunk/; revision=23111
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
2006-11-18 Simon Budig <simon@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: Properly handle PDB_LAYERs
and PDB_CHANNELs when passed by the menus in the resp. dialogs
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-10-19 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-interface.[ch]
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h: don't look at the menu path
to see if a script is image-based. Instead check the passed and the
expected parameter types.
* plug-ins/script-fu/scripts/tileblur.scm: global variables won't
work with tiny-scheme.
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-16 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-types.h (struct SFScript): renamed
member "help" to "blurb" since that's what it is being used for
when the script procedure is registered.
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c: changed accordingly.
2006-06-16 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script):
use a canonical name for the automatically added run-mode parameter.
Untabbified.
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.
2006-05-24 Sven Neumann <sven@gimp.org>
* plug-ins/common/raw.c (load_dialog): use a GtkFileChooserButton
instead of a GimpFileEntry widget.
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h: use GtkFileChooserButton
for SF_FILENAME and SF_DIRNAME parameters.
2006-05-16 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu.c: removed empty quit() method.
Only load scripts when extension-script-fu is started.
* plug-ins/script-fu/script-fu-scripts.c: minor cleanup.
2005-08-03 Michael Natterer <mitch@gimp.org>
* libgimp/gimpprocbrowserdialog.[ch]: removed all parameters from
gimp_proc_browser_dialog_new() and removed the "scheme_names"
stuff.
* plug-ins/dbbrowser/procedure-browser.c
* plug-ins/pygimp/procbrowser.c
* plug-ins/script-fu/script-fu-console.c: changed accordingly.
* plug-ins/script-fu/script-fu-interface.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-types.h
* plug-ins/script-fu/siod-wrapper.c: removed all sorts of
conversions between '-' and '_' for procedure names.
* plug-ins/script-fu/script-fu.c: use canonical names for
script-fu's procedures.
2005-03-26 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_find_scripts):
removed menu branch registering here (this function is called on
each refresh).
* plug-ins/script-fu/script-fu.c (script_fu_extension_init):
renamed from script_fu_auxillary_init(), this function is only
called once when the extension starts up. Register the menu
branches here.
2005-03-24 Michael Natterer <mitch@gimp.org>
Added API to explicitly register dynamic menu items hierarchies.
Fixes bug #170623.
* app/core/gimp.h: added "GSList *plug_in_menu_branches".
* app/plug-in/plug-in-types.h
* app/plug-in/plug-ins.[ch]: added API to register plug-in menu
branches, just as for locale and help domans. Cleaned up handling
of locale and help domains.
(plug_ins_exit): free the registered menu branches.
* app/actions/plug-in-actions.[ch] (plug_in_actions_add_branch):
new function to explicitly add a menu branch action.
(plug_in_actions_setup): add the registered menu branches to each
new action group.
(plug_in_actions_build_path): always strip the untranslated menu
path from underlines before using it as hash table key or action
name.
* app/menus/plug-in-menus.c (plug_in_menus_add_proc): changed
accordingly: strip underlines from untranslated menu paths before
passing them to plug_in_menus_build_path().
* app/core/gimp-gui.[ch]: added gimp_menus_create_branch() plus
vtable entry to access the new stuff from the core. Renamed the
functions desling with items from gimp_foo_entry() to
gimp_foo_item().
* app/gui/gui-vtable.c: implement create_branch() and add the
branch action to all existing "plug-in" action groups. Note that
we don't need to create any menus because that happens implicitly
when adding menu items.
* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_branch_register): new
PDB wrapper to access branch registering from plug-ins.
* app/pdb/internal_procs.c
* app/pdb/plug_in_cmds.c
* libgimp/gimpplugin_pdb.[ch]: regenerated.
* libgimp/gimp.def: changed accordingly.
* plug-ins/script-fu/script-fu-scripts.c (script_fu_find_scripts):
register the menu branches for all included scripts.
2005-03-04 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_find_scripts):
need to convert script-fu-path to filesystem encoding. Should fix
bug #165002.
2005-01-22 Sven Neumann <sven@gimp.org>
* 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
* plug-ins/script-fu/siod-wrapper.c: added new script-fu
parameter SF-ENUM that allows to easily create a combo-box to
choose values from registered enums. For this to work correctly,
another change is needed that I will commit separately.
* plug-ins/script-fu/scripts/perspective-shadow.scm
* plug-ins/script-fu/scripts/test-sphere.scm: use the new SF-ENUM
parameter.
2004-11-27 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc):
don't look at the menu path to determine if the script is
image-based. Instead look at the number of parameters we are being
called with.
2004-11-22 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: sort the SFMenu structs
by their menu_paths *and* the procedure's menu_labels. Fixes menu
item sorting after "Refresh".
2004-11-20 Kevin Cozens <kcozens@cvs.gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: Need to call gettext in
script-fu_menu_compare. Spotted by Sven. Removed obsolete #define's.
2004-11-20 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: renamed variable
"script_list" to "script_tree" because it's a GTree.
(script_fu_remove_script): g_list_free() the right list (don't
leak all lists of scripts at the tree leaves).
2004-11-19 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_menu_compare):
compare the menu paths, not the struct pointers.
2004-11-18 Michael Natterer <mitch@gimp.org>
The following fixes have no visible effect because nobody
uses gimp_plugin_menu_register() on temp_procs yet:
* app/actions/plug-in-actions.[ch]: added
plug_in_actions_add_path() which just adds the actions needed for
a given menu math, but not the procedure action itself.
* app/gui/gui-vtable.c (gui_menus_create_entry): create the
menu_path's actions using above function so adding of submenus to
existing ui managers works.
* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_register_invoker):
don't add a menu if "no_interface" is TRUE.
* app/pdb/plug_in_cmds.c: regenerated.
* plug-ins/script-fu/script-fu-scripts.c: pass untranslated
menu_paths to the core, not translated ones. Don't store the
scripts directly in the "script_list" tree but use a list of
scripts per key because there can be identical keys for different
scripts now. Fixed sorting of menu entries and menus.
2004-11-17 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.[ch]
* plug-ins/script-fu/siod-wrapper.c: appled patch from Kevin
Cozens which adds (script-fu-menu-register) and allows scripts to
register their menu_paths the same undeprecated way as plug-ins.
Fixes bug #158117.
* plug-ins/script-fu/scripts/test-sphere.scm: example how to use
the new API. Doesn't change strings because test-shpere.scm is an
untranslated example script.
2004-09-30 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-types.h (struct SFScript): renamed
member "decription" to "menu_path".
* plug-ins/script-fu/script-fu-interface.c: changed accordingly.
* plug-ins/script-fu/script-fu-scripts.c: ditto. Don't pass the
menu_path as "blurb" to gimp_install_temp_proc(). Instead,
pass "help" as "blurb" and nothing as "help".
* plug-ins/script-fu/scripts/test-sphere.scm: shortened overly
long and useless help text.
2004-09-23 Sven Neumann <sven@gimp.org>
* 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/siod-wrapper.c: applied a patch by Kevin
Cozens, based on a patch by Dov Grobgeld. Implements multi-line
text input in Script-Fu (bug #124394).
* plug-ins/script-fu/scripts/test-sphere.scm: test the new SF-TEXT
parameter.
2004-09-02 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-interface.c (script_fu_ok)
* plug-ins/script-fu/script-fu-scripts.c (script_fu_script_proc):
use a GString for assembling the commands string instead of
g_sprintf()ing into a buffer. Removes the need for a separate loop
over all args to determine the buffer's length and makes the
remaining code smaller and more readable.
2004-09-01 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-types.h (struct SFOptions): changed
"guint history" to "gint history".
* plug-ins/script-fu/script-fu-interface.c: added callbacks for
string entries and combo boxes and connect *all* widgets to callbacks.
(script_fu_ok): don't touch the widgets at all but get the values
directly now that the callbacks correctly write them to their
structs.
(script_fu_reset): don't copy the default values manually but
simply set the default values on the widgets; their callbacks will
do the rest.
* plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script):
added some line breaks and spaces to make it more readable.
2004-08-31 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.[ch]: removed the GUI code...
Also did some minor cleanups.
* plug-ins/script-fu/script-fu-interface.[ch]: ...and added it here.
* plug-ins/script-fu/script-fu-types.h: new file keeping the
various struct defs needed by both the above files.
* plug-ins/script-fu/Makefile.am
* plug-ins/script-fu/siod-wrapper.c: changed accordingly.
2004-08-31 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c: removed the script title
label and moved the "About" button to the action_area. Minor
cleanups.
2004-08-30 Michael Natterer <mitch@gimp.org>
Brought the PDB progress into a working state. Fixes bug #6010,
addressed bugs #97266 and #135185 and unfortunately reopens bug
#150194 (will fix that later).
* libgimpbase/gimpbaseenums.h: added enum GimpProgressCommand.
* app/core/gimppdbprogress.c
* libgimp/gimpprogress.c: use the enum instead of integer
constants for the different progress commands. Cleanup.
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-run.c
* app/plug-in/plug-in.c: switch bach to real refcouting for
plug_in->progress (reopens bug #150194) and enabled the PDB
progress code.
* plug-ins/script-fu/script-fu-scripts.c: cleaned up the
progress stuff and the script-fu interface a bit.
* plug-ins/pygimp/gimpenums.py
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
2004-08-29 Michael Natterer <mitch@gimp.org>
Added an API to allow plug-ins to embed the progress for the
actions they trigger into their own GUI (attention: half-done and
broken code ahead...)
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimppdbprogress.[ch]: new object implementing dispatching
progress calls to a temporary PDB procedure in a plug-in.
* app/Makefile.am: force to link gimppdbprogress.o, bah!
* app/plug-in/plug-in-progress.[ch]: added API to install,
uninstall and cancel a PDB progress for this plug-in, but disabled
the implementation because it doesn't work yet.
* tools/pdbgen/pdb/progress.pdb: added pdb wrappers for the new
install, uninstall and cancel functions.
* libgimp/Makefile.am
* libgimp/gimp.h
* libgimp/gimpprogress.[ch]: added an API around the PDB progress
stuff.
* app/pdb/internal_procs.c
* app/pdb/progress_cmds.c
* libgimp/gimpprogress_pdb.[ch]: regenerated.
* plug-ins/script-fu/script-fu-scripts.c: use the new API to show
the progress in the script-fu dialog.
2004-07-29 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/script-fu-scripts.c (script_fu_free_script):
applied patch by Kevin Cozens that moves a g_free() to the right
place (bug #148729).
2004-07-27 Michael Natterer <mitch@gimp.org>
* libgimp/Makefile.am
* libgimp/gimp.h
* libgimp/gimpui.h
* libgimp/gimppalettemenu.[ch]
* libgimp/gimppaletteselect.[ch]: added palette select wrapper and
widget (straight copy & string replace of the font select stuff).
Fixes bug #136130.
* plug-ins/script-fu/script-fu-enums.h
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/siod-wrapper.c: added SF_PALETTE so it can
be used in scripts.
* plug-ins/script-fu/scripts/test-sphere.scm: added a palette
parameter to the test script.