Commit Graph

210 Commits

Author SHA1 Message Date
Michael Natterer 103a7e4fc3 plug-ins: port script-fu to GimpPlugIn
This probably has some bugs, but worked flawlessly in my tests...
2019-08-12 20:49:08 +02:00
Michael Natterer 169f98f915 libgimpwidgets: add GDestroyNotify to gimp_int_combo_box_connect() 2019-08-08 00:22:15 +02:00
Michael Natterer c6bcb3114f libgimp: add GDestroyNotify for image and item combo box data 2019-08-07 23:16:25 +02:00
Ell 8954d1f386 libgimpwidgets, app, plug-ins: use GimpSpinButton everywhere
Replace all direct uses of GtkSpinButton with GimpSpinButton, so
that its modified behavior extends to all our spin buttons.
2019-03-09 07:28:52 -05:00
Michael Natterer 5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Michael Natterer 80997a8646 Remove most GTK_ADJUSTMENT() and (GtkAdjutment *) casts
they are obsolete in GTK+ 3.x because GtkAdjustment cannot be passed
around as GtkObject any longer, GtkObject is gone.
2018-06-24 18:15:16 +02:00
Simon Budig 7d64cf62c6 libgimpwidgets: rename the _grid()-Variants of gimp_scale_entry_*
Adjust all plugins to follow accordingly.

This concludes the GtkTable'ocide.
2018-05-20 21:06:35 +02:00
Michael Natterer 046fcac2dd plug-ins: undeprecate script-fu-interface.c 2018-05-20 21:06:34 +02:00
Michael Natterer bdbec7941c Use the new macros from the last commit in all files
...and gone are the annoying warnings.
2018-05-20 21:06:34 +02:00
Simon Budig fb5d463d78 script-fu: kill GtkTable 2018-05-20 21:06:33 +02:00
Michael Natterer 6918b4b773 plug-ins: set the GimpColorConfig on all script-fu color buttons 2017-05-28 16:43:00 +02:00
Michael Natterer 801bd8fb3f plug-ins: get rid of icons in dialog buttons (use labels not stock IDs) 2017-02-12 16:18:54 +01:00
Michael Natterer 66060e3307 app, libgimp*, plug-ins: replace enum GimpLayerModeEffects by GimpLayerMode
with proper value names. Mark most values as _BROKEN because they use
weird alpha compositing that has to die. Move GimpLayerModeEffects to
libgimpbase, deprecate it, and set it as compat enum for GimpLayerMode.
Add the GimpLayerModeEffects values as compat constants to script-fu
and pygimp.
2017-01-08 23:00:19 +01:00
Michael Natterer 4df9a1d568 Get rid of gtk_misc_set_alignment(label) and use gtk_label_set_x,yalign() 2016-09-08 19:11:20 +02:00
Massimo Valentini f44c77b4a2 Bug 761330: Gimp Drop Shadow window always opens...
...behind main window on windows

Windows requires that the process with the
foreground window explicitely allows long
lasting background processes showing their
windows as foreground/focused
2016-02-10 17:14:00 +01:00
Massimo Valentini 51d3498cd4 Bug 732072: Image windows created by script-fu plug-ins...
are opened behind the previously focused Image Window

libgimp/gimpui.c bypasses gtk in setting the transient_for
property and so it is not possible to call
gtk_set_transient_for (dialog, NULL), but it is necessary
to go directly to the gdk level.
2014-08-21 12:43:51 +02:00
Michael Natterer 08ffad9086 plug-ins: some gimp_spin_button_new() -> gtk_spin_button_new() 2014-06-22 00:26:59 +02:00
Kevin Cozens c953368164 Only TinyScheme should translate strings in script files. Fixes bug #696790. 2013-04-07 12:58:21 -04:00
Michael Natterer 83de53ee4d Bug 677776 - filter popup windows get hidden behind main image window
Apply modified patch from Simone Karin Lehmann which makes sure
script-fu gets properly hidden after the dialog is done.
2012-11-13 00:47:34 +01:00
Michael Natterer dcb4c6e34a plug-ins: use gtk_box_new() 2011-09-30 12:18:24 +02:00
Michael Natterer f660236a4f plug-ins: remove some -Wunused-but-set-variable 2011-05-05 12:49:38 +02:00
Michael Natterer 8c4d99f883 Bug 645456 - Inconsistent window (role) naming scheme
Applied patch from Christoph Kappel which adds a "gimp-" prefix to all
plug-in dialog window roles.
2011-04-08 20:31:34 +02:00
Michael Natterer 24ee3370b8 Depend on GTK+ >= 2.24.3, cairo >= 1.20.1, gdk-pixbuf >= 2.22.1
and completely separate configure and sanity checks for gdk-pixbuf
from GTK+, because it's now distributed as a separate package. Remove
all sorts of conditional compiling based on GDK_CHECK_VERSION() and
CAIRO_VERSION.
2011-04-06 19:58:24 +02:00
Michael Natterer bdf8d3d776 plug-ins: add some GTK_CHECK_VERSION(2,24,0) and use the new GtkComboBoxText 2011-03-17 14:31:39 +01:00
Michael Natterer 018e8b0d29 Build with GSEAL_ENABLE and #undef it where accessors are missing 2009-10-17 20:31:57 +02:00
Michael Natterer e805cb0cf4 Use gtk_dialog_get_content_area() instead of dialog->vbox 2009-07-15 18:57:12 +02:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Michael Natterer cb702ebd1e add new functions script_fu_script_get_title() and
2008-09-19  Michael Natterer  <mitch@gimp.org>

	* plug-ins/script-fu/script-fu-script.[ch]: add new functions
	script_fu_script_get_title() and script_fu_script_reset().

	* plug-ins/script-fu/script-fu-scripts.c (script_fu_add_script):
	don't set all default values *and* values when parsing the script,
	just set the defaults and call script_fu_script_reset() afterwards.

	* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
	use the new script_fu_script_get_title().

	(script_fu_reset): call script_fu_script_reset() and then update
	the UI from the current values, instead of doing slightly
	different things for each arg type.


svn path=/trunk/; revision=27009
2008-09-19 09:34:35 +00:00
Michael Natterer 3b2661bd2b add new functions script_fu_script_collect_standard_args(),
2008-09-18  Michael Natterer  <mitch@gimp.org>

	* plug-ins/script-fu/script-fu-script.[ch]: add new functions
	script_fu_script_collect_standard_args(),
	script_fu_script_get_command() and
	script_fu_script_get_command_from_params().

	* plug-ins/script-fu/script-fu-scripts.c: remove the resp. code
	here and use above functions instead.

	* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): changed
	loop over args to only copy all widget content into the script's
	values and then call script_fu_script_get_command().


svn path=/trunk/; revision=26993
2008-09-18 13:10:07 +00:00
Michael Natterer 03f0901de1 add struct SFArg which keeps all a script argument's type, label, value
2008-09-17  Michael Natterer  <mitch@gimp.org>

	* plug-ins/script-fu/script-fu-types.h: add struct SFArg which
	keeps all a script argument's type, label, value and default
	value.

	(struct SFScript): replace separate arrays of type, label etc. by
	one array of SFArg. Remove array of GimpParamDef because they are
	only needed while registering the temp proc.

	* plug-ins/script-fu/Makefile.am
	* plug-ins/script-fu/script-fu-script.[ch]: new files implementing
	script_fu_script_new(), script_fu_script_free(),
	script_fu_script_register_proc() and
	script_fu_script_unregister_proc().

	* plug-ins/script-fu/script-fu-scripts.c: remove lots of code now
	implemented in script-fu-script.c. Changed stuff according to the
	introduction of SFArg. Moved variables to local scopes. Most
	changes are in script_fu_add_script(), almost every line changed
	and it's hopefully more readable now. Lots of cleanup all over the
	place.

	* plug-ins/script-fu/script-fu-interface.c: changed stuff
	according to the introduction of SFArg


svn path=/trunk/; revision=26978
2008-09-17 21:39:44 +00:00
Sven Neumann 3fe2b1cb5a set the PDB error handler to GIMP_PDB_ERROR_HANDLER_PLUGIN while
2008-09-17  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c (script_fu_ok): set 
the
	PDB error handler to GIMP_PDB_ERROR_HANDLER_PLUGIN while
	interpreting the script.


svn path=/trunk/; revision=26967
2008-09-17 11:15:34 +00:00
Michael Natterer 23c141c8f9 fix indentation.
2008-09-17  Michael Natterer  <mitch@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
	fix indentation.


svn path=/trunk/; revision=26966
2008-09-17 08:46:25 +00:00
Michael Natterer 0765087a8f Change Script-Fu error handling to properly use the new error message
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-10 20:33:50 +00:00
Sven Neumann c908bfc3fc plug-ins/script-fu/script-fu-scripts.c changed to actually return a
2008-08-21  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-scripts.c
	* plug-ins/script-fu/script-fu-interface.[ch]: changed to 
actually
	return a meaningful return status when a script-fu procedure is 
run.


svn path=/trunk/; revision=26702
2008-08-21 17:35:52 +00:00
Sven Neumann 66fecb60e6 moved the new string escape function here and also it for the
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 11:59:55 +00:00
Sven Neumann 426eb27e7e don't use g_strescape() as it mangles UTF-8 strings. Introduced our own
2007-10-11  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c: don't use
	g_strescape() as it mangles UTF-8 strings. Introduced our own
	escape function instead. Fixes bug #485538.

svn path=/trunk/; revision=23801
2007-10-11 11:48:35 +00:00
Simon Budig 0928a32a21 plug-ins/script-fu/tinyscheme/scheme.[ch] small changes to tinyscheme -
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-30 00:21:20 +00:00
Sven Neumann 017ff2e06d plug-ins/script-fu/script-fu-scripts.c use GSlice to allocate structs.
2007-05-22  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-scripts.c
	* plug-ins/script-fu/script-fu-interface.c: use GSlice to allocate
	structs.

svn path=/trunk/; revision=22568
2007-05-22 14:20:08 +00:00
Michael Natterer 8de797e0fa app/widgets/gimpthumbbox.c libgimp/gimpprogressbar.c use Gtk functions to
2007-05-16  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpthumbbox.c
	* libgimp/gimpprogressbar.c
	* plug-ins/script-fu/script-fu-interface.c: use Gtk functions to
	manually iterate the main loop because they release the Gdk lock
	correctly around calling the GLib main loop functions.


svn path=/trunk/; revision=22516
2007-05-16 20:19:31 +00:00
Sven Neumann 8444fb1ecb readded (better) code to deal with full menu paths.
2007-05-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c 
(script_fu_interface):
	readded (better) code to deal with full menu paths.


svn path=/trunk/; revision=22515
2007-05-16 20:14:35 +00:00
Sven Neumann 8684b3267c removed code that used to deal with full menu paths. All our scripts use
2007-05-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
	removed code that used to deal with full menu paths. All our
	scripts use script-fu-menu-register now.

svn path=/trunk/; revision=22512
2007-05-16 16:34:48 +00:00
Sven Neumann 65f2809545 if a plug-in or script registered with a DISPLAY argument after the
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-04-12 15:56:57 +00:00
Michael Natterer 1a9cfa406e update the progress to avoid looking like the script hangs. Fixes bug
2007-03-16  Michael Natterer  <mitch@gimp.org>

	* plug-ins/script-fu/scripts/spyrogimp.scm: update the progress
	to avoid looking like the script hangs. Fixes bug #356677.

	* plug-ins/script-fu/script-fu-interface.c
	(script_fu_interface_report_cc): if the command starts with
	"gimp-progress-", the script is obviously showing a progress bar
	for itself, so clear the text instead of showing an endless number
	of "gimp-progress-update" messages. Also fixed manual main loop
	iteration.


svn path=/trunk/; revision=22132
2007-03-16 00:26:34 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Simon Budig 4255e608e6 plug-ins/script-fu/script-fu-enums.h plug-ins/script-fu/scheme-wrapper.c
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-16 01:29:49 +00:00
Sven Neumann a92d405849 don't load script-fu-compat.init here.
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 15:25:02 +00:00
Sven Neumann c97fc7a7a5 plug-ins/script-fu/script-fu-interface.[ch]
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 14:50:47 +00:00
Kevin Cozens 6239dddda3 With this commit we finally say goodbye to SIOD. This large set of changes
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-10-16 01:08:54 +00:00
Sven Neumann 0b74a671fc pack the main vbox expanding so that the progress bar sticks to the bottom
2006-08-11  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c: pack the main vbox
	expanding so that the progress bar sticks to the bottom of the
	dialog.

	* plug-ins/pygimp/gimpfu.py: moved blurb label to the top, use
	italic style for it. Add a progress bar unconditionally and use a
	GimpProgressBar for it. Commented out the progress label until it
	is actually used.
2006-08-11 08:36:45 +00:00
Sven Neumann 442c66484f added missing call to gimp_window_set_transient(). Fixes bug #348249.
2006-08-07  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
	added missing call to gimp_window_set_transient(). Fixes bug #348249.
2006-08-07 12:02:45 +00:00