Commit Graph

779 Commits

Author SHA1 Message Date
Sven Neumann 868fdcf99f app: remove min-colors and install-colormap properties from gimprc 2010-10-19 10:13:01 +02:00
Michael Natterer bdc2d4520b app: make sure to always show error messages returned by plug-ins
gimp_plug_in_handle_proc_return(): if there is no plug-in main loop
running (the plugin was running asynchronously from a menu), show the
plug-in's error message here, because nobody else will show it
otherwise.
2010-09-07 16:21:40 +02:00
Michael Natterer 2066545b91 app: add GimpPDBContext which holds more state available to procedures
Initially contains antialias, feather and feather radius for the
upcoming gimp-item-to-selection preocedure. Keeping states in the
context reduces the number of parameters of procedures, and both the
state API and the API using the states can be changed/deprecated
independently. Make sure that all procedures and all plug-ins get
GimpPDBContexts instead of plain GimpContexts passed.
2010-09-04 22:17:01 +02:00
Michael Natterer 2d6f808ff8 pdb: add a new PDB group "item" and move lots of functions to it
The item groups has all the duplicated functionality from drawable
and vectors (name, visible, linked etc).

Hijack the unused GIMP_PDB_REGION and turn it into GIMP_PDB_ITEM;
change all protocol aware files accordingly and bump the protocol
version number. Change script-fu to handle the new type.
2010-07-09 09:34:44 +02:00
Sven Neumann 9de1d97fb3 Bug 615071 - invalid menu path crashes GIMP
Check that gimp-plugin-menu-register is only used with procedures
that have registered with a label.
2010-04-07 21:27:51 +02:00
Michael Natterer 9a4bf10d30 Bug 609026 - leaks shared memory
Move calling gimp_plug_in_shm_free() from gimp_plug_in_manager_finalize()
to gimp_plug_in_manager_exit() so it's also called in stable GIMP
releases which simply call exit() at some point instead of taking the
time to shut down everything completely.
2010-02-10 19:37:46 +01:00
Michael Natterer 74c01d7a10 app: add log output when attaching/detaching shared memory
Also put the call to shmdt() out of the IPC_RMID_DEFERRED_RELEASE ifdef.
2010-02-10 19:24:40 +01:00
Michael Natterer 09c897262e Move all undo-related members to GimpImagePrivate
Also add some new API to access them.
2010-02-04 20:06:49 +01:00
Michael Natterer 1735f86d25 Kill plug-ins that write to tiles of locked drawables or group layers
Yes this is pretty lame, but we must prevent write access to these
items under all circumstances, and we have no other way but killing
the plug-in (it should not write to the drawable directly anyway)
2009-09-02 19:48:46 +02:00
Michael Natterer a3558e3cb8 Remove GIMP_OBJECT() casts when calling gimp_object_get_name() 2009-08-31 22:47:18 +02:00
Martin Nordholts 957cf2cfa9 app: Always use gimp_object_get_name()
Begin to consider GimpObject::name as private and always use
gimp_object_get_name(). Change gimp_object_get_name() to take an
untyped pointer so we don't have to do so awfully many casts. There is
a runtime check for the type inside the function anyway.
2009-08-29 12:41:29 +02:00
Michael Natterer b141bcdb60 Minor plug-in sensitivity refactoring
* app/plug-in/gimppluginprocedure.[ch]
  (gimp_plug_in_procedure_get_sensitive): change GimpImageType
  parameter to GimpDrawable and do the type check internally.

* app/actions/plug-in-actions.c (plug_in_actions_update): pass the
  active drawable instead of its type.
2009-08-22 11:03:05 +02:00
Martin Nordholts 51cd8c2981 app: Only show 'File->Overwrite' if the source URI has an exporter 2009-08-21 21:40:32 +02:00
Martin Nordholts acef48602c app: Separate save procs from export procs
In gimp_plug_in_manager_register_save_handler(), separate save procs
from export procs.
2009-05-16 09:48:12 +02:00
Martin Nordholts 58eda13548 app: Add GimpPlugInManager::export_procs member
Add GimpPlugInManager::export_procs member that will later contain all
the export procedures.
2009-05-16 09:48:11 +02:00
Martin Nordholts 4d7a6b10d1 Added .gitignore files generated with git svn create-ignore.
svn path=/trunk/; revision=27972
2009-01-31 11:37:44 +00: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
Sven Neumann c61f677536 use the GIMP_PLUG_IN_ERROR domain.
2008-11-12  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in-icc-profile.c: use the GIMP_PLUG_IN_ERROR
	domain.


svn path=/trunk/; revision=27627
2008-11-12 10:25:43 +00:00
Sven Neumann 33eb18a479 app/pdb/gimppdberror.h added generic error codes.
2008-11-12  Sven Neumann  <sven@gimp.org>

	* app/pdb/gimppdberror.h
	* app/plug-in/gimppluginerror.h: added generic error codes.

	* app/pdb/gimpprocedure.c
	* app/plug-in/gimppluginprocedure.c: use the GIMP_PDB_ERROR and
	GIMP_PLUG_IN_ERROR domains.


svn path=/trunk/; revision=27626
2008-11-12 10:06:07 +00:00
Sven Neumann 02817081ff use NC_() to mark enum values for translation. Use a lower-case short form
2008-11-06  Sven Neumann  <sven@gimp.org>

	* tools/gimp-mkenums: use NC_() to mark enum values for 
translation.
	Use a lower-case short form of the type name as translation 
context.

	* libgimp/libgimp-intl.h: define the NC_() macro as noop.

	* libgimpbase/gimpbasetypes.[ch]
	* libgimpbase/gimpbase.def: added new functions to set and
	get a translation context on an enum type.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am:
	* libgimpconfig/Makefile.am
	* libgimpthumb/Makefile.am
	* libgimpwidgets/Makefile.am: register the translation context
	with the enum types.

	* app/display/display-enums.h
	* libgimpbase/gimpbaseenums.h
	* libgimpconfig/gimpcolorconfig-enums.h: removed old-style 
explicit
	translation context.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/plug-in/plug-in-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c
	* libgimpbase/gimpbaseenums.c
	* libgimpconfig/gimpcolorconfig-enums.c
	* libgimpwidgets/gimpwidgetsenums.c: regenerated.


svn path=/trunk/; revision=27562
2008-11-06 08:28:28 +00:00
Sven Neumann 4762b73403 bumped minimum required version of GLib to 2.18.0.
2008-11-04  Sven Neumann  <sven@sven>

	* configure.in: bumped minimum required version of GLib to 
2.18.0.

	* INSTALL: document the updated dependency.

	* app/core/gimp.[ch]: introduced gimp_message_literal(), a 
variant
	of gimp_message() that takes a literal string.

	* app/errors.[ch]: removed format arguments from 
gimp_fatal_error()
	and gimp_terminate() and let them take a literal string instead.

	* app/tools/gimptool.[ch]: introduced 
gimp_tool_message_literal(),
	a variant of gimp_tool_message() that takes a literal string.

	* app/actions/documents-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/gradients-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/config/gimprc.c
	* app/core/gimp-modules.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpchannel.c
	* app/core/gimpcontainer-filter.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/dialogs.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/dialogs/quit-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/file/file-procedure.c
	* app/file/file-save.c
	* app/file/file-utils.c
	* app/gegl/gimpcurvesconfig.c
	* app/gegl/gimplevelsconfig.c
	* app/gui/gui-message.c
	* app/gui/gui.c
	* app/gui/session.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpheal.c
	* app/paint/gimpperspectiveclone.c
	* app/paint/gimpsourcecore.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-restore.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdesaturatetool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpgegltool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool-settings.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsourcetool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpsettingsbox.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/floating_sel.pdb
	* tools/pdbgen/pdb/image.pdb: use the _literal variants for
	g_set_error(), gimp_message() and gimp_tool_message().

	* app/pdb/convert-cmds.c
	* app/pdb/edit-cmds.c
	* app/pdb/floating-sel-cmds.c
	* app/pdb/image-cmds.c: regenerated.


svn path=/trunk/; revision=27548
2008-11-04 12:33:09 +00:00
Sven Neumann fe520925b7 app/base/Makefile.am app/core/Makefile.am app/display/Makefile.am
2008-11-03  Sven Neumann  <sven@gimp.org>

	
	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am: 
	* libgimpconfig/Makefile.am
	* libgimpthumb/Makefile.am
	* libgimpwidgets/Makefile.am: micro-optimization in the 
generated
	enum registration code.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/plug-in/plug-in-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c
	* libgimpbase/gimpbaseenums.c
	* libgimpconfig/gimpcolorconfig-enums.c
	* libgimpwidgets/gimpwidgetsenums.c: regenerated.


svn path=/trunk/; revision=27538
2008-11-03 21:38:13 +00:00
Michael Natterer d3d9724ee1 set proc_frame->procedure to NULL *after* calling gimp_plug_in_cleanup().
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): set proc_frame->procedure to
	NULL *after* calling gimp_plug_in_cleanup(). Fixes the crash on
	windows in bug #557061 (but not the bug).


svn path=/trunk/; revision=27376
2008-10-23 17:13:19 +00:00
Sven Neumann b6ae85b74c app/core/gimpimagefile.c formatting.
2008-10-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.c
	* app/plug-in/gimpplugin-progress.c: formatting.


svn path=/trunk/; revision=27357
2008-10-22 06:00:06 +00:00
Michael Natterer 5503e6a055 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h had a
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
	had a GEGL dependency (they will have in the next commit, but I
	wanted to keep the commit separate).

	* app/dialogs/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/menus/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/vectors/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am: add GEGL_CFLAGS.

	* app/actions/*.c
	* app/core/*.c
	* app/dialogs/*.c
	* app/display/*.c
	* app/file/*.c
	* app/gui/*.c
	* app/menus/*.c
	* app/paint/*.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/*.c
	* app/text/*.c
	* app/tools/*.c
	* app/vectors/*.c
	* app/widgets/*.c
	* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
	to all files which include a drawable subclass or gimpimage.h

	* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
	in all generated files.

	* app/pdb/*-cmds.c: regenerated.

	* data/images/gimp-splash.png: the goat is still sleeping.
	By Aurore Derriennic.


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
Michael Natterer 62e7dcc640 reorder sections consistently. Remove redundant CFLAGS.
2008-10-07  Michael Natterer  <mitch@gimp.org>

	* app/*/Makefile.am: reorder sections consistently. Remove
	redundant CFLAGS.


svn path=/trunk/; revision=27163
2008-10-07 11:58:14 +00:00
Michael Natterer 6f1b06e065 add a fallback mapping from <Toolbox> to <Image> so we catch really
2008-10-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): add a
	fallback mapping from <Toolbox> to <Image> so we catch really
	everything that wants to go to <Toolbox>.


svn path=/trunk/; revision=27147
2008-10-06 20:35:41 +00:00
Michael Natterer 14aad7c222 app/plug-in/gimpplugin-cleanup.c #include <glib-object.h>, not
2008-10-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c
	* app/vectors/gimpanchor.c: #include <glib-object.h>, not
	"glib-object.h".


svn path=/trunk/; revision=27137
2008-10-05 20:06:16 +00:00
Michael Natterer 184fe0a30b keep a reference to the proc_frame's procedure. We can't asume it's always
2008-10-02  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c: keep a reference to the
	proc_frame's procedure. We can't asume it's always there since it
	could be a temporary one and its plug-in might die during
	procedure execution, taking the temp_proc with it.


svn path=/trunk/; revision=27112
2008-10-02 17:13:58 +00:00
Tor Lillqvist 0eb68211f3 Don't #define _GNU_SOURCE on Windows as it confuses newest mingw headers.
2008-10-01  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpplugin.c: Don't #define _GNU_SOURCE on Windows
	as it confuses newest mingw headers.


svn path=/trunk/; revision=27096
2008-10-01 12:27:32 +00:00
Sven Neumann c7af52b846 renamed "file-new-menu" to "file-create-menu" and changed the menu label
2008-09-19  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c: renamed "file-new-menu" to
	"file-create-menu" and changed the menu label from "New" to 
"Create".

	* app/plug-in/plug-in-menu-path.c
	* menus/image-menu.xml.in
	* plug-ins/common/screenshot.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/script-fu/scripts/*.scm
	* plug-ins/twain/twain.c
	* plug-ins/win-snap/winsnap.c: changed accordingly.


svn path=/trunk/; revision=27013
2008-09-19 12:01:12 +00:00
Sven Neumann 1a8859805c app/plug-in/gimppluginprocedure.c minor cleanups.
2008-09-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	* libgimp/gimp.c: minor cleanups.


svn path=/trunk/; revision=26999
2008-09-18 16:25:39 +00:00
Tor Lillqvist 25ecbc063d Use INVALID_HANDLE_VALUE instead of INVALID_FILE_HANDLE which was an
2008-09-18  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimppluginshm.c: Use INVALID_HANDLE_VALUE instead of
	INVALID_FILE_HANDLE which was an misunderstanding.


svn path=/trunk/; revision=26989
2008-09-18 09:35:00 +00:00
Michael Natterer a270381096 made the "args" parameter const.
2008-09-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugindebug.[ch] (gimp_plug_in_debug_argv): made
	the "args" parameter const.

	* app/plug-in/gimpplugin.c (gimp_plug_in_open): made some strings
	const.


svn path=/trunk/; revision=26877
2008-09-05 15:46:00 +00:00
Sven Neumann 2552aa2b37 if INVALID_FILE_HANDLE is undefined, define it as the constant that we
2008-09-02  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginshm.c: if INVALID_FILE_HANDLE is 
undefined,
	define it as the constant that we used to use here.


svn path=/trunk/; revision=26839
2008-09-02 20:52:25 +00:00
Sven Neumann 5ed7a372ee use the constant INVALID_FILE_HANDLE instead of 0xFFFFFFFF. Fixes shared
2008-09-01  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginshm.c (gimp_plug_in_shm_new): use the
	constant INVALID_FILE_HANDLE instead of 0xFFFFFFFF. Fixes shared
	memory tile transport on 64bit Windows systems.


svn path=/trunk/; revision=26827
2008-09-01 20:55:31 +00:00
Sven Neumann 2b1bf9b77a app/plug-in/gimppluginprocedure.[ch] moved error handling for asynchronous
2008-08-21  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.[ch]
	* app/plug-in/gimptemporaryprocedure.c: moved error handling for
	asynchronous procedure calls to a central place. Use the plug-in
	label instead of the procedure name for the error message.


svn path=/trunk/; revision=26703
2008-08-21 18:09:41 +00:00
Sven Neumann 5e95e896b1 app/plug-in/gimppluginprocedure.c don't just free the return values when
2008-08-21  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	* app/plug-in/gimptemporaryprocedure.c: don't just free the 
return
	values when running procedures asynchronously. Instead examine
	them and display the error message if there's one.

	* app/plug-in/gimppluginmanager-call.c
	(gimp_plug_in_manager_call_run_temp): return NULL if
	procedure->plug_in is not set.

	* app/plug-in/gimpplugin-message.c: comment.


svn path=/trunk/; revision=26700
2008-08-21 16:27:06 +00:00
Michael Natterer 960b30cd9e app/plug-in/gimpplugin.[ch] (struct GimpPlugIn) move the error_handler
2008-08-19  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.[ch] (struct GimpPlugIn)
	* app/plug-in/gimppluginprocframe.[ch] (struct GimpPlugInProcFrame):
	move the error_handler from the plug-in to the proc-frame.

	* app/plug-in/gimppluginprocframe.c
	* app/plug-in/gimpplugin-message.c: changed accordingly.


svn path=/trunk/; revision=26661
2008-08-19 08:24:48 +00:00
Sven Neumann 369d991fd2 Complements the fix for bug #344818:
2008-08-19  Sven Neumann  <sven@gimp.org>

	Complements the fix for bug #344818:

	* libgimpbase/gimpbaseenums.[ch]: added new enum 
GimpPDBErrorHandler.

	* tools/pdbgen/enums.pl: regenerated.

	* app/plug-in/gimpplugin.[ch]: added error_handler to 
GimpPlugIn.

	* app/plug-in/gimpplugin-message.c 
(gimp_plug_in_handle_proc_run):
	only display an error message for a failed procedure call if the
	plug-in's error-handler is set to 
GIMP_PDB_ERROR_HANDLER_INTERNAL.
	
	* tools/pdbgen/pdb/plug_in.pdb: added PDB getter and setter for
	the plug-in's error-handler.

	* app/pdb/plug-in-cmds.c
	* app/pdb/internal-procs.c
	* libgimp/gimpenums.c.tail
	* libgimp/gimpplugin_pdb.[ch]: regenerated.

	* plug-ins/common/file-compressor.c
	* plug-ins/file-uri/uri.c: set the error-handler to
	GIMP_PDB_ERROR_HANDLER_PLUGIN as these plug-ins are forwarding 
the
	error with their return values.


svn path=/trunk/; revision=26656
2008-08-18 22:54:26 +00:00
Sven Neumann 04539e92ed renamed gimp_plug_in_proc_frame_get_return_vals() to
2008-08-17  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocframe.[ch]: renamed
	gimp_plug_in_proc_frame_get_return_vals() to
	gimp_plug_in_proc_frame_get_return_values().

	* app/plug-in/gimppluginmanager-call.c: changed accordingly.

svn path=/trunk/; revision=26619
2008-08-17 12:08:52 +00:00
Sven Neumann 51d56e3a43 introduced a utility function to reduce code duplication.
2008-08-17  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-progress.c
	(gimp_plug_in_progress_cancel_callback): introduced a utility
	function to reduce code duplication.

	* app/pdb/gimppdb.c (gimp_pdb_execute_procedure_by_name): 
changed
	to use g_error_new_literal().


svn path=/trunk/; revision=26616
2008-08-17 11:00:41 +00:00
Sven Neumann c4f3f05df4 removed the term 'PDB' from the user-visible error messages.
2008-08-16  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-message.c 
(gimp_plug_in_handle_proc_run):
	removed the term 'PDB' from the user-visible error messages.


svn path=/trunk/; revision=26601
2008-08-16 17:11:22 +00:00
Sven Neumann f84608d539 If a procedure call fails, pass a string describing the error as the
2008-08-16  Sven Neumann  <sven@gimp.org>

	If a procedure call fails, pass a string describing the error as
	the second return value. First step towars fixing bug #344818.

	* app/pdb/gimpprocedure.[ch] (gimp_procedure_get_return_values):
	added a GError parameter. If it is set, pass the error message 
to
	the return values.

	* app/pdb/gimppdberror.h: added some more error codes.

	* app/pdb/gimppdb.c
	* app/xcf/xcf.c: pass errors to 
gimp_procedure_get_return_values().

	* app/plug-in/gimpplugin-message.c 
(gimp_plug_in_handle_proc_run):
	show a different error message for execution vs. calling errors.

	* app/plug-in/gimpplugin-progress.c
	(gimp_plug_in_progress_cancel_callback): pass the error
	GIMP_PDB_CANCELLED to gimp_procedure_get_return_values().

	* app/plug-in/gimppluginmanager-call.[ch]
	(gimp_plug_in_manager_call_run): removed the 
'destroy_return_vals'
	parameter.

	* app/plug-in/gimppluginprocedure.c: destroy the return values 
here.

	* app/plug-in/gimppluginprocframe.c: pass an error to
	gimp_procedure_get_return_values().

	* tools/pdbgen/app.pl
	* tools/pdbgen/pdb/fileops.pdb: generate code that passes the
	error to gimp_procedure_get_return_values().

	* app/pdb/*-cmds.c: regenerated.
	
	* plug-ins/pygimp/pygimp-pdb.c: extract the error message from 
the
	return values and pass it to the exception that is thrown.


svn path=/trunk/; revision=26593
2008-08-16 13:57:57 +00:00
Sven Neumann ada401fe48 use G_STRFUNC in another error message that I missed earlier.
2008-08-14  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-message.c 
(gimp_plug_in_handle_proc_run):
	use G_STRFUNC in another error message that I missed earlier.


svn path=/trunk/; revision=26570
2008-08-14 21:57:39 +00:00
Sven Neumann 9884974e53 use G_STRFUNC to get the proper function name in the error message.
2008-08-14  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-message.c 
(gimp_plug_in_handle_tile_get):
	use G_STRFUNC to get the proper function name in the error 
message.


svn path=/trunk/; revision=26564
2008-08-14 19:59:47 +00:00
Sven Neumann 81131c0bb4 Add new PDB data type PDB_COLORARRAY for using arrays of GimpRGB colors as
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
2008-07-14 14:09:16 +00:00
Michael Natterer 044a4a00ae also map <Toolbox>/File/Acquire to <Image>/File/New/Acquire.
2008-06-12  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): also map
	<Toolbox>/File/Acquire to <Image>/File/New/Acquire.


svn path=/trunk/; revision=25935
2008-06-12 15:11:07 +00:00
Sven Neumann 6554c3e397 app/plug-in/gimpplugin.c app/plug-in/gimppluginmanager-call.c formatting.
2008-06-10  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-call.c
	* app/widgets/gimphelp.c: formatting.

svn path=/trunk/; revision=25907
2008-06-10 09:16:48 +00:00
Michael Natterer a37bce0d31 add SHADOW_TILES log domain.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/gimp-log.[ch]: add SHADOW_TILES log domain.

	* app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item):
	turn commented-out g_printerr() into a GIMP_LOG()


svn path=/trunk/; revision=25605
2008-05-10 10:15:49 +00:00
Sven Neumann bfa9eb956e commented out debug message.
2008-05-07  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item):
	commented out debug message.

svn path=/trunk/; revision=25580
2008-05-07 08:05:00 +00:00
Michael Natterer c1b372f9ca split gimp_plug_in_handle_tile_request() into two functions:
2008-05-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c: split
	gimp_plug_in_handle_tile_request() into two functions:
	gimp_plug_in_handle_tile_put() and gimp_plug_in_handle_tile_get().


svn path=/trunk/; revision=25578
2008-05-06 20:30:51 +00:00
Michael Natterer 7d81b3041c show an error message instead of crashing when a plug-in registers a
2008-05-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c
	(gimp_plug_in_handle_proc_install): show an error message instead
	of crashing when a plug-in registers a prodecure with a NULL
	argument or return value name. Also introduce two macros which
	make the utf-8 validation of all strings much more readable.


svn path=/trunk/; revision=25577
2008-05-06 20:15:12 +00:00
Michael Natterer b9ba5072d5 do the actual cleanup in utility functions and reduce
2008-04-21  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c: do the actual cleanup in
	utility functions and reduce gimp_plug_in_cleanup() to merely
	iterating the cleanup lists.


svn path=/trunk/; revision=25511
2008-04-21 19:53:10 +00:00
Michael Natterer e5be5664ed Move the shadow tiles from the image to the drawable. Fixes bug #100469.
2008-04-21  Michael Natterer  <mitch@gimp.org>

	Move the shadow tiles from the image to the drawable.
	Fixes bug #100469.

	* app/core/Makefile.am
	* app/core/gimpdrawable-shadow.[ch]: new files implementing
	the shadow tiles.

	* app/core/gimpimage.[ch]: remove the shadow tile manager from the
	GimpImage struct. Remove gimp_image_get_shadow_tiles() and
	_free_shadow_tiles().

	* app/core/gimpdrawable.[ch]: add the shadow tile manager
	here. Remove get_shadow_tiles() and merge_shadow(). Free the
	shadow tiles in finalize and when the drawable gets removed from
	the image.

	* app/core/gimpdrawable-brightness-contrast.c
	* app/core/gimpdrawable-color-balance.c
	* app/core/gimpdrawable-colorize.c
	* app/core/gimpdrawable-curves.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-hue-saturation.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-levels.c
	* app/core/gimpdrawable-operation.c
	* app/core/gimpdrawable-posterize.c
	* app/core/gimpdrawable-threshold.c
	* app/core/gimpimagemap.c: changed accordingly. Free the shadow tiles
	after using them.

	* app/plug-in/gimpplugin-cleanup.[ch]: add
	gimp_plug_in_cleanup_add_shadow() and _remove_shadow() which keep
	track of whether shadow tiles were created on behalf of a plug-in
	procedure.

	(gimp_plug_in_cleanup): free shadow tiles which were created but
	not destroyed by a plug-in procedure.

	* app/plug-in/gimpplugin-message.c (plug_in_handle_tile_request):
	call gimp_plug_in_cleanup_add_shadow() whenever a plug-in requests
	shadow tiles.

	* tools/pdbgen/pdb/drawable.pdb: use the new drawable shadow
	API. Add new procedure gimp-drawable-free-shadow. Call
	gimp_plug_in_cleaup_remove_shadow() when it gets called.

	* tools/pdbgen/pdb/image.pdb: deprecate gimp-image-free-shadow.
	Calling it has no effect any longer.

	* app/pdb/drawable-cmds.c
	* app/pdb/image-cmds.c
	* app/pdb/internal-procs.c
	* libgimp/gimpimage_pdb.[ch]
	* libgimp/gimpdrawable_pdb.[ch]: regenerated.


svn path=/trunk/; revision=25510
2008-04-21 17:20:51 +00:00
Michael Natterer 7aa177fa01 Add some infrastructure that will be used soon:
2008-04-17  Michael Natterer  <mitch@gimp.org>

	Add some infrastructure that will be used soon:

	* app/plug-in/gimppluginprocframe.[ch]: replace "cleanup" list
	by two lists "image_cleanups" and "item_cleanups" and call
	gimp_plug_in_cleanup() if any of them is non-NULL.

	* app/plug-in/gimpplugin-cleanup.c: add private new() and free()
	functions for GimpPlugInCleanupImage structs and add the same
	infrastructure for GimpPlugInCleanupItem structs which are
	currently unused.


svn path=/trunk/; revision=25497
2008-04-17 17:55:04 +00:00
Sven Neumann 9d51e64525 renamed gimp_plug_in_handle_tile_req() to
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-message.c: renamed
	gimp_plug_in_handle_tile_req() to 
gimp_plug_in_handle_tile_request().


svn path=/trunk/; revision=25488
2008-04-14 17:50:25 +00:00
Michael Natterer 07708f74bd made messages about killed plug-ins due to invalid tile requests more
2008-04-14  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_req):
	made messages about killed plug-ins due to invalid tile requests
	more verbose. They are good for debugging only and not translated,
	so more info can't hurt. Also fail (kill the plug-in) if a tile is
	requested that lives on the undo stack.


svn path=/trunk/; revision=25487
2008-04-14 15:01:23 +00:00
Sven Neumann 48c864acfb removed function name from debug output.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): 
removed
	function name from debug output.


svn path=/trunk/; revision=25443
2008-04-09 17:10:01 +00:00
Michael Natterer 63e9148785 enable and improve debug output for mapped menu paths.
2008-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): enable
	and improve debug output for mapped menu paths.


svn path=/trunk/; revision=25437
2008-04-09 15:37:45 +00:00
Michael Natterer e188e22fa7 Really map everything else in "Xtns" to "Filters/Extensions".
svn path=/trunk/; revision=25428
2008-04-09 10:56:56 +00:00
Michael Natterer e173c6facb add "File/New" submenu and an "Acquire" placeholder inside it. Removed
2008-04-09  Michael Natterer  <mitch@gimp.org>

	* menus/image-menu.xml.in: add "File/New" submenu and an "Acquire"
	placeholder inside it. Removed "File/Acquire". Removed the "Xtns"
	menu.

	* app/plug-in/plug-in-menu-path.[ch] (plug_in_menu_path_map):
	add "menu_label" parameter and add support for mapping around
	individual menu items while preserving their translation and
	mnemonics. Add mappings for the known menus from "Xtns" and map
	them to "File/New".

	Map everything else in "Xtns" to "Filters/Extensions".

	* app/plug-in/gimppluginmanager-menu-branch.c
	(gimp_plug_in_manager_add_menu_branch): pass the menu_label so
	menu branches can be mapped with their translation.

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): pass NULL because mapping
	menu items which have no submenu makes no sense and is redundant.

	* app/actions/image-actions.c: remove the "Xtns" menu action.

	* app/actions/file-actions.c: add action for the "File/New" menu
	and removed the "File/Acquire" action.

	* app/actions/edit-actions.c: rename "Paste as New" to
	"From Clipboard".

	* menus/image-menu.xml.in: add the "From Clipboard" action to the
	"File/New" menu.


svn path=/trunk/; revision=25427
2008-04-09 10:48:01 +00:00
Michael Natterer 5015460bc8 add placeholder "Help/Programming"
2008-04-08  Michael Natterer  <mitch@gimp.org>

	* menus/image-menu.xml.in: add placeholder "Help/Programming"

	* plug-ins/common/plugin-browser.c
	* plug-ins/common/procedure-browser.c: move the plug-in and
	procedure browsers there.

	* menus/image-menu.xml.in: moved the (now by default empty)
	"Extensions" placeholder from "Xtns" to "Filters". Let's see what
	cruft shows up there.

	* app/plug-in/plug-in-menu-path.c: map "Xtns/Extensions" to
	"Filters/Extensions".


svn path=/trunk/; revision=25415
2008-04-08 18:31:56 +00:00
Michael Natterer 3aa63a431f Start getting rid of the "Xtns" menu:
2008-04-08  Michael Natterer  <mitch@gimp.org>

	Start getting rid of the "Xtns" menu:

	* app/actions/dialogs-actions.c (dialogs_toplevel_actions):
	renamed "Module Manager" to "Modules".

	* menus/image-menu.xml.in: move it to "Edit/Preferences" for the
	time being so it doesn't block the removal of the "Xtns" menu.

	Move "Languages" placeholder from "Xtns" to "Filters".

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): map
	"Xtns/Languages" to "Filters/Languages".


svn path=/trunk/; revision=25414
2008-04-08 18:18:59 +00:00
Mukund Sivaraman 0708ffea76 Fixes for some Sparse reported issues in app/
2008-03-28  Mukund Sivaraman  <muks@mukund.org>

        Fixes for some Sparse reported issues in app/

        * app/core/gimpdrawable-operation.c: Added prototype for            
        gegl_node_add_child().

        * app/core/gimpcurve.c: Remove C99 code       
                                
        * app/tools/gimpcurvestool.c 
        * app/tools/gimpperspectiveclonetool.c 
        * app/vectors/gimpstroke.c: Mark functions as static.

        * app/base/siox.c: state is a pointer.

        * app/plug-in/gimppluginprocframe.c: values is a pointer.

        * app/plug-in/plug-in-rc.c: plug_in_rc_parse() returns a pointer.

        * app/plug-in/gimpinterpreterdb.c: Check program[0] for '\0'
        instead of the pointer program itself.


svn path=/trunk/; revision=25292
2008-03-28 23:18:19 +00:00
Sven Neumann 26d1021e77 Properly pass the focus from the core to plug-in dialogs:
2008-03-27  Sven Neumann  <sven@gimp.org>

	Properly pass the focus from the core to plug-in dialogs:

	* libgimpbase/gimpprotocol.[ch]: added a user_time member to the
	GimpConfig struct. Bumped the protocol version to 0x0012.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: added gimp_get_user_time() to get the
	timestamp of the last user interaction.

	* app/plug-in/gimppluginmanager-call.c
	(gimp_plug_in_manager_call_run): pass the timestamp to in the
	GimpConfig message.

	* libgimp/gimp.[ch]:
	* libgimp/gimp.def: added method to access the timestamp as set
	in the config message.

	* libgimp/gimpui.c (gimp_ui_init): construct a fake startup ID and
	set the DESKTOP_STARTUP_ID environment variable.

svn path=/trunk/; revision=25263
2008-03-27 16:30:29 +00:00
Michael Natterer f63a7153ef Remove the toolbox menu:
2008-03-21  Michael Natterer  <mitch@gimp.org>

	Remove the toolbox menu:

	* configure.in: remove --enable-toolbox-menu option.

	* menus/Makefile.am
	* menus/toolbox-menu.xml.in: removed.

	* menus/image-menu.xml.in: add the debug menu here.

	* menus/menus.xsl: remove transformations depending on whether
	there is a toolbox menu or not.

	* app/menus/Makefile.am
	* app/menus/toolbox-menu.[ch]: removed.

	* app/menus/menus.c: remove the toolbox menu but keep the
	<Toolbox> UI manager around so we can configure its actions
	separate from normal docks.

	* app/actions/image-actions.c (image_actions): remove the action
	for the toolbox menubar.

	* app/widgets/gimptoolbox.c: remove all menu code.

	* app/plug-in/plug-in-menu-path.c: map plug-in registered toolbox
	menu items to their new location in the image menu
	unconditionally.

	* plug-ins/common/screenshot.c
	* plug-ins/common/uniteditor.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/script-fu/scripts/web-browser.scm
	* plug-ins/twain/twain.c
	* plug-ins/winsnap/winsnap.c: remove menu registrations under
	<Toolbox>/File and change <Toolbox>/Help to <Image>/Help. Leave
	<Toolbox>/Xtns untouched until its final location and name are
	decided.


svn path=/trunk/; revision=25156
2008-03-21 17:55:32 +00:00
Sven Neumann 68947c0430 don't allow "file:" to be registered as prefix. This seems to happen with
2008-03-20  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_set_file_proc): don't allow "file:" to be
	registered as prefix. This seems to happen with the uri-gio plug-in
	when no gvfs backends are installed.


svn path=/trunk/; revision=25139
2008-03-20 11:56:13 +00:00
Michael Natterer 3a66deae00 add get_pid() which returns getpid().
2008-02-07  Michael Natterer  <mitch@gimp.org>

	* app/base/base-utils.[ch]: add get_pid() which returns getpid().

	* app/base/base.c
	* app/base/tile-swap.c
	* app/core/gimp-utils.c
	* app/plug-in/gimppluginshm.c
	* app/widgets/gimpselectiondata.c
	* tools/pdbgen/pdb/misc.pdb: use it instead of getpid() and remove
	all the #ifdef'ed includes getpid() needs.

	* tools/pdbgen/app.pl: remove support for these includes. Also
	remove some perl cruft in the include handling which is not needed
	any longer.

	* app/pdb/misc_cmds.c: regenerated.


svn path=/trunk/; revision=24827
2008-02-07 13:19:15 +00:00
Sven Neumann 7909c0bcbd added accessor for the list of menu branches.
2007-12-20  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager-menu-branch.[ch]: added accessor
	for the list of menu branches.

	* app/actions/plug-in-actions.c (plug_in_actions_setup): use it.


svn path=/trunk/; revision=24417
2007-12-20 21:48:18 +00:00
Sven Neumann cc44a68902 made the code more robust against errors on the wire protocol level.
2007-12-11  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpprotocol.c: made the code more robust against
	errors on the wire protocol level.

	* app/plug-in/gimpplugin-message.c: added sanity checks to message
	handlers. This doesn't keep us from crashing on invalid input, but
	we will at least get some warnings before that happens.

svn path=/trunk/; revision=24317
2007-12-11 09:40:10 +00:00
Hans Breuer 6f5bbfe0bd updated and removed -GD to let msvc9 complain less
2007-12-09  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated and removed -GD to let msvc9 complain less


svn path=/trunk/; revision=24305
2007-12-09 14:11:09 +00:00
Sven Neumann 915ac64ad5 use GError for error reporting in PDB invoker methods.
2007-12-02  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/app.pl: use GError for error reporting in PDB
	invoker methods.

	* tools/pdbgen/pdb/vectors.pdb: use the GError for the 
procedures
	introduced for bug #497159.

	* tools/pdbgen/pdb/fileops.pdb: use the GError from file-load 
and
	file-save procedures.

	* app/pdb/*_cmds.c: regenerated.

	* app/pdb/Makefile.am

	* app/pdb/gimppdberror.[ch]: new file introducing the
	GIMP_PDB_ERROR domain.

	* app/actions/plug-in-commands.c
	* app/actions/vectors-commands.c
	* app/batch.c
	* app/core/gimpimagefile.c
	* app/core/gimppdbprogress.c
	* app/file/file-open.[ch]
	* app/file/file-save.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimppluginmanager-restore.c
	* app/plug-in/gimppluginprocedure.c
	* app/plug-in/gimptemporaryprocedure.c
	* app/plug-in/plug-in-icc-profile.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpfontselect.c
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimphelp.c
	* app/widgets/gimppaletteselect.c
	* app/widgets/gimppatternselect.c
	* app/widgets/gimppdbdialog.[ch]: changed accordingly.


svn path=/trunk/; revision=24255
2007-12-02 18:05:54 +00:00
Michael Natterer 036085fd9e app/base/temp-buf.c app/base/tile-manager.c accept NULL in all
2007-11-16  Michael Natterer  <mitch@gimp.org>

	* app/base/temp-buf.c
	* app/base/tile-manager.c
	* app/core/gimpobject.c: accept NULL in all get_memsize() functions.

	* app/core/gimp-utils.[ch]: ditto. Added gimp_string_get_memsize().

	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpcontainer.c
	* app/core/gimpcontext.c
	* app/core/gimpdata.c
	* app/core/gimpdrawable.c
	* app/core/gimpdrawablemodundo.c
	* app/core/gimpdrawableundo.c
	* app/core/gimpimage.c
	* app/core/gimpitempropundo.c
	* app/core/gimplayer.c
	* app/core/gimpmaskundo.c
	* app/core/gimppalette.c
	* app/core/gimpparasitelist.c
	* app/core/gimppattern.c
	* app/core/gimppreviewcache.c
	* app/core/gimpundo.c
	* app/core/gimpundostack.c
	* app/core/gimpviewable.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugindef.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptext.c
	* app/text/gimptextlayer.c
	* app/text/gimptextundo.c
	* app/vectors/gimpvectorsmodundo.c: simplify
	GimpObject::get_memsize() implementations accordingly.

	* app/core/gimpimageundo.c: ditto. Always keep around colormaps in
	chunks of GIMP_IMAGE_COLORMAP_SIZE to be coonsistent with the
	other colormap handling code.


svn path=/trunk/; revision=24174
2007-11-16 18:19:30 +00:00
Manish Singh a8fb4f0c03 app/core/gimpcontainer-filter.c app/pdb/gimppdb-query.c replace usage of
2007-11-01  Manish Singh  <yosh@gimp.org>

        * app/core/gimpcontainer-filter.c
        * app/pdb/gimppdb-query.c
        * app/plug-in/gimppluginmanager-query.c: replace usage of POSIX
        regex API with GRegex.

        * configure.in: remove check for regex support in glibc.

        * app/Makefile.am
        * plug-ins/script-fu/Makefile.am: remove REGEXREPL references.

        * tools/pdbgen/app.pl: remove code that references HAVE_GLIBC_REGEX.

        * regexrepl/*
        * makefile.msc
        * Makefile.am: remove regexrepl directory.

svn path=/trunk/; revision=24024
2007-11-01 08:15:38 +00:00
Hans Breuer c17fbf8c14 updated msvc build add ENABLE_TOOLBOX_MENU, it should only vanish on Mac
2007-10-27  Hans Breuer  <hans@breuer.org>

	* app/base/makefile.msc app/file/makefile.msc app/gimpcore.def
	  app/gui/makefile.msc app/plug-in/makefile.msc
	  libgimpwidgets/makefile.msc : updated msvc build
	* config.h.win32 : add ENABLE_TOOLBOX_MENU, it should only
	vanish on Mac OSX (Quartz build)


svn path=/trunk/; revision=23964
2007-10-27 12:41:43 +00:00
Sven Neumann f8a56311ce set the procedure name before parsing the image types. Fixes bug #490055.
2007-10-25  Sven Neumann  <sven@gimp.org>

        * app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_install):
        set the procedure name before parsing the image types.
        Fixes bug #490055.

svn path=/trunk/; revision=23943
2007-10-25 09:59:45 +00:00
Sven Neumann 74f55887bb changed message about missing executable and only output it if gimp is
2007-10-09  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager-restore.c
	(gimp_plug_in_manager_add_from_rc): changed message about 
missing
	executable and only output it if gimp is verbose.


svn path=/trunk/; revision=23785
2007-10-09 18:17:33 +00:00
Sven Neumann cee862f744 rewritten array handling to make the IRIX MIPSpro compiler happy (bug
2007-10-05  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map):
	rewritten array handling to make the IRIX MIPSpro compiler happy
	(bug #483619).

svn path=/trunk/; revision=23730
2007-10-05 08:29:47 +00:00
Michael Natterer 26e11d5fc3 replaced HAVE_GDK_QUARTZ conditional by --disable-toolbox-menu configure
2007-09-18  Michael Natterer  <mitch@gimp.org>

	* configure.in: replaced HAVE_GDK_QUARTZ conditional by
	--disable-toolbox-menu configure switch which defaults to "yes"
	normally and to "no" on quartz.

	* app/widgets/gimptoolbox.c: changed #ifdef accordingly.

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-menu-path.[ch]: new generic machanism to map
	around menu locations. If ENABLE_TOOLBOX_MENU is false, map
	"Xtns" and "Help" from <Toolbox> to <Image>.

	* app/plug-in/gimppluginmanager-menu-branch.c
	* app/plug-in/gimppluginprocedure.c: run all menu paths through the
	new mapping function.

	* menus/Makefile.am
	* menus/menus.xsl
	* menus/image-menu.xml.in: add both the "Xtns" and "Help" menus to
	the image menubar if TOOLBOX_MENU is false.


svn path=/trunk/; revision=23581
2007-09-18 14:39:52 +00:00
Hans Breuer aface5c12a updated msvc build include <io.h> for get_osfhandle() prototype
2007-08-26  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated msvc build
	* app/main.c : include <io.h> for get_osfhandle()
	* plug-ins/jpeg/jpeg-settings.h : prototype
	jpeg_swap_original_settings


svn path=/trunk/; revision=23377
2007-08-26 18:59:34 +00:00
Michael Natterer da32f5a002 remove GimpPlugInDebug typedef.
2007-08-15  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: remove GimpPlugInDebug typedef.

	* app/plug-in/plug-in-types.h: added it here instead.

	* app/core/gimpchannel-combine.h
	* app/widgets/gimppropwidgets.[ch]: match parameter names
	in .c, .h and API docs to make gtk-doc happy.


svn path=/trunk/; revision=23275
2007-08-15 16:40:39 +00:00
Michael Natterer cd164058b8 renamed files:
2007-08-11  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am: renamed files:

	* app/plug-in/plug-in-error.[ch]: old names
	* app/plug-in/gimppluginerror.[ch]: new names

	* app/plug-in/plug-in-icc-profile.c
	* app/file/file-open.c: changed accordingly.


svn path=/trunk/; revision=23217
2007-08-11 19:36:08 +00:00
Sven Neumann 35425c7028 app/plug-in/Makefile.am new files defining the GimpPlugIn error domain.
2007-08-07  Sven Neumann  <sven@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-error.[ch]: new files defining the
	GimpPlugIn error domain.

	* app/plug-in/plug-in-icc-profile.c (plug_in_icc_profile_apply_rgb):
	set an error code.

	* app/file/file-open.c (file_open_profile_apply_rgb): only do the
	profile conversion if color management is enabled. If the plug-in
	is missing, show a warning and disable color management.
	Fixes bug #434205.

	* modules/cdisplay_lcms.c (cdisplay_lcms_get_rgb_profile): check
	if we actually got a profile before checking its color space.

	* libgimpwidgets/gimpwidgetstypes.h: removed leftover typedef
	for GimpResolutionEntry.


svn path=/trunk/; revision=23130
2007-08-07 09:26:28 +00:00
Hans Breuer 024ef60a49 updated msvc build
2007-08-05  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated msvc build


svn path=/trunk/; revision=23118
2007-08-05 15:16:02 +00:00
Sven Neumann 36e8e6989a don't call gp_quit_write() on a plug-in with a broken pipe. Fixes bug
2007-07-30  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.[ch]: don't call gp_quit_write() on a
	plug-in with a broken pipe. Fixes bug #460878.

svn path=/trunk/; revision=23076
2007-07-30 16:24:14 +00:00
Sven Neumann 143c5f9173 app/file/file-open.c minor cleanups.
2007-07-29  Sven Neumann  <sven@gimp.org>

	* app/file/file-open.c
	* app/plug-in/plug-in-icc-profile.c: minor cleanups.


svn path=/trunk/; revision=23063
2007-07-29 17:20:29 +00:00
Sven Neumann de7d46d6e2 plugged tiny memory leak.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_set_file_proc): plugged tiny memory 
leak.

	* libgimpcolor/gimprgb.c (gimp_rgb_min) (gimp_rgb_max): 
formatting.


svn path=/trunk/; revision=22940
2007-07-17 07:22:20 +00:00
Sven Neumann 09578ea070 removed extra check for gthread and fold it into the GLIB and GTK checks.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* configure.in: removed extra check for gthread and fold it into
	the GLIB and GTK checks.

	* */Makefile.am: changed accordingly.

	* app/main.c (main): always call g_thread_init().

svn path=/trunk/; revision=22832
2007-06-25 12:41:59 +00:00
Tor Lillqvist bafefcd579 In GLib 2.13 pipe() is no longer defined as a macro in gwin32.h. Define it
2007-06-20  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpplugin.c: In GLib 2.13 pipe() is no longer
	defined as a macro in gwin32.h. Define it here in that case.


svn path=/trunk/; revision=22802
2007-06-20 09:22:34 +00:00
Sven Neumann f322854007 app/text/Makefile.am app/core/Makefile.am app/tools/Makefile.am
2007-06-07  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/core/Makefile.am
	* app/tools/Makefile.am
	* app/display/Makefile.am
	* app/widgets/Makefile.am
	* app/base/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* libgimp/Makefile.am
	* libgimpthumb/Makefile.am
	* tools/pdbgen/Makefile.am
	* libgimpwidgets/Makefile.am: applied the remaining parts of the
	patch from Daniel Richard G. to fix out-of-source-tree builds
	(bug #444960).

svn path=/trunk/; revision=22735
2007-06-07 13:19:44 +00:00
Mukund Sivaraman f67306c1d3 Added missing include.
2007-05-30  Mukund Sivaraman  <muks@mukund.org>

        * app/tools/gimpdrawtool.c: Added missing include.

        * app/tools/gimpbycolorselecttool.c: Removed unused variable.

        * app/plug-in/gimpenvirontable.c: Added cast for callback function.

        * plug-ins/script-fu/tinyscheme/scheme.c: Correctly cast pointer to
        an long integer type.


svn path=/trunk/; revision=22659
2007-05-30 11:49:14 +00:00
Sven Neumann c7bffbceaa app/dialogs/tips-parser.c app/display/gimpdisplayshell-autoscroll.c
2007-05-23  Sven Neumann  <sven@gimp.org>

	* app/dialogs/tips-parser.c
	* app/display/gimpdisplayshell-autoscroll.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimpenvirontable.c
	* app/plug-in/gimpinterpreterdb.c
	* app/plug-in/gimpplugindebug.c
	* app/plug-in/gimppluginshm.c
	* app/text/gimptextundo.c: allocate structs using GSlice

	* app/widgets/gimpselectiondata.c 
(gimp_selection_data_set_color):
	stack allocate tempory data.


svn path=/trunk/; revision=22588
2007-05-23 08:57:53 +00:00
Michael Natterer 460fab8fee free parasites using gimp_parasite_free()
2007-05-22  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-params.c (plug_in_args_to_params): free
	parasites using gimp_parasite_free()

	* libgimp/gimp.c (gimp_run_procedure2): free wire messages using
	gimp_wire_destroy().


svn path=/trunk/; revision=22563
2007-05-22 12:36:10 +00:00
Michael Natterer ada79e533a app/actions/data-commands.c app/base/boundary.c app/base/gimphistogram.c
2007-05-22  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/base/boundary.c
	* app/base/gimphistogram.c
	* app/base/gimplut.c
	* app/base/temp-buf.c
	* app/core/gimpcontainer.c
	* app/core/gimpgradient.c
	* app/core/gimpparamspecs.c
	* app/core/gimpundo.c
	* app/plug-in/gimpplugin-cleanup.c
	* app/plug-in/gimppluginmanager-data.c
	* app/plug-in/gimppluginmanager-help-domain.c
	* app/plug-in/gimppluginmanager-locale-domain.c
	* app/plug-in/gimppluginmanager-menu-branch.c
	* app/plug-in/gimppluginprocframe.c
	* app/vectors/gimpanchor.c
	* app/widgets/gimpsessioninfo.c: use GSlice instead of g_new/g_free
	for structs of fixed size.


svn path=/trunk/; revision=22558
2007-05-22 10:43:48 +00:00
Sven Neumann 2ecd48b944 removed debug output.
2007-05-04  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c: removed debug output.

svn path=/trunk/; revision=22410
2007-05-04 11:39:26 +00:00
Sven Neumann 5313214382 use GQuark for locale and help domains to avoid duplicating the same
2007-04-24  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.[ch]: use GQuark for locale and
	help domains to avoid duplicating the same strings many times.

	* app/plug-in/gimppluginmanager-restore.c: removed FIXME.


svn path=/trunk/; revision=22304
2007-04-24 10:28:28 +00:00
Michael Natterer 687fc2d415 set the default plug-in locale domain on all GimpPlugInDefs which don't
2007-04-24  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager-restore.c
	(gimp_plug_in_manager_restore): set the default plug-in locale
	domain on all GimpPlugInDefs which don't register a locale domain
	themselves. Fixes bug #430146.


svn path=/trunk/; revision=22303
2007-04-24 09:35:42 +00:00
Sven Neumann 44cefcc818 app/plug-in/Makefile.am app/plug-in/gimppluginmanager.[ch] moved
2007-04-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/gimppluginmanager.[ch]
	* app/plug-in/gimppluginmanager-restore.[ch]: moved
	gimp_plug_in_manager_restore() to it's own file.

	* app/core/gimp.c: changed accordingly.

	* app/Makefile.am (LDFLAGS): convince the linker to do its job.


svn path=/trunk/; revision=22286
2007-04-18 15:06:05 +00:00
Sven Neumann 91dc2e614e added another helper function to improve readability
svn path=/trunk/; revision=22284
2007-04-18 14:28:47 +00:00
Sven Neumann 76b1f3ca3f try to improve readability by moving code to helper functions.
2007-04-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	try to improve readability by moving code to helper functions.

svn path=/trunk/; revision=22283
2007-04-18 14:23:20 +00:00
Sven Neumann 3d5a8450da added a function that returns all file extensions registered in the
2007-04-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpinterpreterdb.[ch]: added a function that
	returns all file extensions registered in the interpreter db.

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	if the PATHEXT environment variable is set, append all registered
	file extensions to it. This way GIMP can recognize Python scripts
	as plug-ins on platforms where the executable bit is unknown.


svn path=/trunk/; revision=22282
2007-04-18 13:21:20 +00:00
Michael Natterer e198e7cba3 app/config/gimprc.c app/plug-in/gimppluginmanager.c
2007-04-17  Michael Natterer  <mitch@gimp.org>

	* app/config/gimprc.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimpplugin.c
	* app/gui/themes.c: don't translate --verbose or g_printerr()
	messages, they are debugging output that often end up in bugzilla
	and should not depend on the locale.


svn path=/trunk/; revision=22262
2007-04-17 14:25:09 +00:00
Michael Natterer 5ba99bdacd app/actions/plug-in-actions.c GimpPlugInProcedure has a boolean member
2007-03-19  Michael Natterer  <mitch@gimp.org>

	* app/actions/plug-in-actions.c
	* app/menus/plug-in-menus.c: GimpPlugInProcedure has a boolean
	member "file_proc" now, use it instead of checking prefixes,
	extensions and magics manually.

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_set_mime_type)
	(gimp_plug_in_procedure_set_thumb_loader): set
	plug_in_proc->file_proc to TRUE here too.

	* plug-ins/common/pnm.c: register "image/x-portable-anymap" as
	mime-type and "pnm" as extension for file-pnm-save so it's
	recognized as file procedure.


svn path=/trunk/; revision=22152
2007-03-20 10:41:35 +00:00
Michael Natterer cefff5f07f don't just g_free() the GValueArray after we memcpy()-stole its values
2007-03-16  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_get_return_vals): don't just g_free() the
	GValueArray after we memcpy()-stole its values because this both
	leaks the contained array of GValues and crashes with glib trunk
	where GValueArray is slice-allocated. Instead, free the array of
	GValues manually, set it to NULL and use g_value_array_free().


svn path=/trunk/; revision=22134
2007-03-16 14:24:02 +00:00
Michael Natterer dd4042df85 Fix stuck progress bars (bug #393832):
2007-03-16  Michael Natterer  <mitch@gimp.org>

	Fix stuck progress bars (bug #393832):

	* app/plug-in/gimpplugin-progress.[ch] (gimp_plug_in_progress_end):
	added PlugInProcFrame parameter instead of blindly using the topmost
	in the procedure stack...

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): ...because we call it from here,
	when the proc_frame is already removed from the procedure stack.

	Unrelated:

	* plug-ins/script-fu/scripts/difference-clouds.scm: use
	RUN-INTERACTVE instead of 0, added (gimp-displays-flush)

	* plug-ins/common/snoise.c (solid_noide): update the progress to
	1.0 after rendering.


svn path=/trunk/; revision=22131
2007-03-15 23:39:32 +00:00
Michael Natterer bb6530592f require either "procedure" or "prog" being non-NULL, not both of them at
2007-03-14  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.c (gimp_plug_in_new): require either
	"procedure" or "prog" being non-NULL, not both of them at the same
	time. Get the executable name from the procedure if the procedure
	was passed.

	* app/plug-in/gimppluginmanager-call.c
	(gimp_plug_in_manager_call_run): pass a NULL prog since we already
	pass the procedure.


svn path=/trunk/; revision=22122
2007-03-14 20:03:10 +00:00
Sven Neumann 4d44bacd74 deal with gimp_plug_in_procedure_get_label() returning NULL
svn path=/trunk/; revision=22104
2007-03-12 13:07:18 +00:00
Sven Neumann c63d0506ca gimp_plug_in_get_undo_desc() uses gimp_plug_in_procedure_get_label(). Made
2007-03-12  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.[ch]: gimp_plug_in_get_undo_desc() uses
	gimp_plug_in_procedure_get_label(). Made the return value const.

	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/undo.pdb: changed accordingly.

	* app/actions/plug-in-actions.c: cosmetics.

	* app/pdb/undo_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/drawable_cmds.c: regenerated.


svn path=/trunk/; revision=22103
2007-03-12 13:04:32 +00:00
Sven Neumann 8fd67e0e95 cache the result of gimp_plug_in_procedure_get_label() and made the return
2007-03-10  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.[ch]: cache the result of
	gimp_plug_in_procedure_get_label() and made the return value 
const.


	* app/actions/plug-in-actions.c
	* app/plug-in/gimpplugin-cleanup.c
	* app/plug-in/gimppluginmanager.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimpimagepropview.c: changed accordingly.

	* app/file/file-open.c
	* app/file/file-save.c: include the plug-in name (or actually 
the
	label) in the error messages.


svn path=/trunk/; revision=22095
2007-03-10 21:22:22 +00:00
Michael Natterer 395b06ad8b added typdef GimpMemsizeFunc.
2007-03-05  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: added typdef GimpMemsizeFunc.

	* app/core/gimp-utils.[ch]: added _foreach() variants of
	GHashTable, GList and GSList functions which take GimpMemsizeFunc
	callbacks. Added gimp_parasite_get_memsize(). Added "data_size"
	parameter to gimp_g_hash_table_get_memsize().

	* app/core/gimp.c
	* app/core/gimppalette.c
	* app/core/gimpparasitelist.c
	* app/pdb/gimppdb.c
	* app/plug-in/gimppluginmanager.c: use the new functions instead
	of itering manually or ignoring the containers' elements. Changed
	callers of gimp_g_hash_table_get_memsize().


svn path=/trunk/; revision=22046
2007-03-05 20:09:46 +00:00
Hans Breuer f8b13080e4 updated
2007-03-04  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated


svn path=/trunk/; revision=22041
2007-03-04 19:04:42 +00:00
Michael Natterer 4ed0eb238f app/plug-in/gimpplugin.c (gimp_plug_in_add_temp_proc) remove duplicate
2007-02-19  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.c (gimp_plug_in_add_temp_proc)
	* app/plug-in/gimpplugindef.c (gimp_plug_in_def_add_procedure):
	remove duplicate procedures before adding the new one.
	
	* app/plug-in/gimpplugin-message.c
	(gimp_plug_in_handle_proc_install): don't remove duplicates here.


svn path=/trunk/; revision=21945
2007-02-19 09:36:19 +00:00
Michael Natterer be5fbd643e app/plug-in/Makefile.am app/plug-in/plug-in-types.h removed...
2007-02-19  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-types.h
	* app/plug-in/plug-in-def.[ch]: removed...

	* app/plug-in/gimpplugindef.[ch]: ...and added as object. Merged
	locale and help domain setters into one function each.

	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.[ch]
	* app/plug-in/gimppluginmanager-call.[ch]
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/plug-in-rc.c
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/plug_in_cmds.c: regenerated.


svn path=/trunk/; revision=21944
2007-02-19 01:16:05 +00:00
Michael Natterer 36a955a5ef add "locale_domain" and "help_domain" members and APIs to get/set them.
2007-02-18  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocedure.[ch]: add "locale_domain" and
	"help_domain" members and APIs to get/set them. Removed locale and
	help domain parameters from all other functions.

	* app/plug-in/gimpplugin.c (gimp_plug_in_add_temp_proc)
	* app/plug-in/plug-in-def.c (plug_in_def_add_procedure)
	(plug_in_def_set_locale_domain_name)
	(plug_in_def_set_help_domain_name): make sure all plug-in procedures
	have locale and help domains.

	* app/plug-in/gimppluginmanager.[ch]: removed function
	gimp_plug_in_manager_get_label().

	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimpplugin-cleanup.c
	* app/actions/plug-in-actions.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimpimagepropview.c: changed (simplified) accordingly.


svn path=/trunk/; revision=21937
2007-02-18 14:25:34 +00:00
Sven Neumann ccafc8d3bd app/actions/plug-in-actions.c added utility function to retrieve the
2007-02-14  Sven Neumann  <sven@gimp.org>

	* app/actions/plug-in-actions.c
	* app/plug-in/gimppluginprocedure.[ch]: added utility function to
	retrieve the translated blurb of a plug-in procedure. Make sure
	that gettext isn't called with the empty string.


svn path=/trunk/; revision=21917
2007-02-14 13:38:09 +00:00
Michael Natterer f5f93181da renamed newly added functions to gimp_environ_table_str_hash() and
2007-02-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpenvirontable.c: renamed newly added functions to
	gimp_environ_table_str_hash() and gimp_environ_table_str_equal()
	and always use them. Move the #ifdef G_OS_WIN32 inside the
	functions.


svn path=/trunk/; revision=21884
2007-02-09 16:10:21 +00:00
Tor Lillqvist 822065c0b0 Win32-only case- insensitive hash and equality functions.
2007-02-09  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpenvirontable.c
	(gimp_environ_table_case_insensitive_hash)
	(gimp_environ_table_case_insensitive_equal): Win32-only case-
	insensitive hash and equality functions.
	(gimp_environ_table_load): On Win32, use the above functions for
	the vars hash table. This fixes the problem that occurs when the
	actual PATH environment variable is spelled Path (as it seems to
	often be), but the default.env file as set up by the installer
	provides PATH. They didn't match so both would be passed to the
	plug-in child process, and apparently which one then was used to
	look for DLLs was more or less random. If it was the original
	Path, it didn't contain the directories the installer put in PATH
	in default.env, and plug-ins didn't find the DLLs.


svn path=/trunk/; revision=21883
2007-02-09 11:45:00 +00:00
Tor Lillqvist 30d07eb162 On Win32 prevent plug-in from inheriting GIMP's ends of the pipes. Fixes
2007-01-25  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpplugin.c (gimp_plug_in_open): On Win32 prevent
	plug-in from inheriting GIMP's ends of the pipes. Fixes #363501.


svn path=/trunk/; revision=21779
2007-01-25 11:38:04 +00:00
Michael Natterer e0a86bdf05 fixed comment.
2007-01-16  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run):
	fixed comment.


svn path=/trunk/; revision=21721
2007-01-15 23:01:55 +00:00
Sven Neumann 930d6149da removed all .cvsignore files from SVN
svn path=/trunk/; revision=21612
2006-12-30 14:31:03 +00:00
Sven Neumann fd2b9ce3e9 app/plug-in/plug-in-icc-profile.[ch] removed run-mode argument from
2006-12-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in-icc-profile.[ch]
	* plug-ins/common/lcms.c: removed run-mode argument from
	plug-in-icc-profile-info. Added new procedure to obtain
information
	about a color profile on disk.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpprofilechooserdialog.[ch]: added a first draft
	of a file-chooser dialog for selecting a color profile.

	* app/dialogs/preferences-dialog.c: use it.
2006-12-18 08:15:56 +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
Michael Natterer aa5a8a92ad remove useless newlines from debugging output.
2006-11-23  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c: remove useless newlines from
	debugging output.
2006-11-23 20:38:17 +00:00
Michael Natterer 170901c5eb applied patch from Jernej Simoncic which enables environment variables and
2006-11-18  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-rc.c (plug_in_def_deserialize): applied
	patch from Jernej Simoncic which enables environment variables and
	${gimp_foo} variables in plug-in filename and converts them to
	filesystem encoding. Fixes bug #375349.

	(plug_in_rc_write): write UTF-8 filenames to pluginrc.
2006-11-18 16:19:47 +00:00
Michael Natterer 02de3076c9 Got rid of the word "editor" were it was good for nothing but exposing an
2006-11-17  Michael Natterer  <mitch@gimp.org>

	Got rid of the word "editor" were it was good for nothing but
	exposing an implementation detail in public API and installed
	files.  Fixes bug #345251:

	* app/actions/colormap-editor-actions.[ch]
	* app/actions/colormap-editor-commands.[ch]
	* app/actions/sample-point-editor-actions.[ch]
	* app/actions/sample-point-editor-commands.[ch]
	* menus/colormap-editor-menu.xml
	* menus/sample-point-editor-menu.xml
	* menus/selection-editor-menu.xml
	* menus/undo-editor-menu.xml: removed.

	* app/actions/colormap-actions.[ch]
	* app/actions/colormap-commands.[ch]
	* app/actions/sample-points-actions.[ch]
	* app/actions/sample-points-commands.[ch]
	* menus/colormap-menu.xml
	* menus/sample-points-menu.xml
	* menus/selection-menu.xml
	* menus/undo-menu.xml: added.

	* app/actions/Makefile.am
	* menus/Makefile.am
	* app/actions/actions.c
	* app/menus/menus.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimppluginprocedure.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpsamplepointeditor.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpundoeditor.c
	* plug-ins/common/colormap-remap.c: changed accordingly.
2006-11-17 22:07:07 +00:00
Simon Budig bacc2e29cf Fix the registration to properly test for the parameter types.
2006-11-17  Simon Budig  <simon@gimp.org>

	* app/plug-in/gimppluginprocedure.c: Fix the registration to
	properly test for the parameter types.
2006-11-17 18:35:44 +00:00
Michael Natterer 85cecec576 app/base/base.c app/core/gimp-user-install.c
2006-11-12  Michael Natterer  <mitch@gimp.org>

	* app/base/base.c
	* app/core/gimp-user-install.c
	* app/core/gimpbrushgenerated-load.c
	* app/core/gimpcontainer.c
	* app/core/gimpgradient-load.c
	* app/core/gimppalette-load.c
	* app/core/gimpparamspecs-desc.c
	* app/dialogs/tips-parser.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptext-parasite.c
	* app/tools/gimpforegroundselecttool.c
	* app/widgets/gimpselectiondata.c
	* app/xcf/xcf.c: use g_str_has_prefix() instead of strncmp().
2006-11-12 20:30:50 +00:00
Sven Neumann 0f0da9c766 added missing quotes in test for libcurl.
2006-11-09  Sven Neumann  <sven@gimp.org>

	* configure.in: added missing quotes in test for libcurl.

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): try not to crash on
	invalid menu paths and avoid a string copy for the common case.

	* app/composite/gimp-composite-mmx.c: commented out unused code.
2006-11-09 09:39:36 +00:00
Michael Natterer 96a6a007c1 Don't let each terminating plug-in procedure end its progress, because
2006-11-02  Michael Natterer  <mitch@gimp.org>

	Don't let each terminating plug-in procedure end its progress,
	because that progress may still be in use by another plug-in.

	* app/plug-in/gimpplugin-progress.[ch]
	(gimp_plug_in_progress_attach)
	(gimp_plug_in_progress_detach): new functions which maintain
	a simple attach count for a GimpProgress

	* app/plug-in/gimpplugin-progress.c
	* app/plug-in/gimppluginprocframe.c: call attach() when setting
	proc_frame->progress. Call detach() in gimp_plug_in_progress_end()
	and only call gimp_progress_end() if detaching lowered the attach
	count to 0.
2006-11-02 15:26:03 +00:00
Sven Neumann e9a778e0e3 removed debugging output 2006-11-01 01:43:05 +00:00
Sven Neumann 40425620f2 in interactive mode, return an extra boolean indicating the choide for the
2006-11-01  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/lcms.c: in interactive mode, return an extra
	boolean indicating the choide for the "Don't ask me again"
toggle.

	* app/plug-in/plug-in-icc-profile.c: look for the extra return
	value and update the "color-profile-policy" in gimprc.
2006-11-01 00:30:46 +00:00
Michael Natterer b443b138e8 no need to truncate the GValueArray if the plug-in returned too much
2006-11-01  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_get_return_vals): no need to truncate the
	GValueArray if the plug-in returned too much values, simply return
	all values instead.
2006-11-01 00:13:41 +00:00
Michael Natterer c18faa20fe app/actions/brush-editor-actions.c app/base/tile-manager-crop.c
2006-10-30  Michael Natterer  <mitch@gimp.org>

	* app/actions/brush-editor-actions.c
	* app/base/tile-manager-crop.c
	* app/config/gimpconfig-file.c
	* app/core/gimp-gradients.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-undo-push.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/gui-vtable.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintcore-undo.c
	* app/plug-in/plug-in-enums.h
	* app/vectors/gimpstroke-new.c
	* app/vectors/gimpvectors-warp.c
	* app/widgets/gimpviewablebox.c
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrenderer-utils.c
	* app/xcf/xcf-save.c
	* libgimpwidgets/gimpcontroller.c: all .c files should include
	their headers and all private functions should be static.
	(-Wmissing-declarations -Wmissing-prototypes rocks!)
2006-10-30 10:13:06 +00:00
Sven Neumann 655ac187a1 app/plug-in/plug-in-icc-profile.c the plug-in doesn't handle GRAY* images.
2006-10-29  Sven Neumann  <sven@gimp.org>

	*  app/plug-in/plug-in-icc-profile.c
	*  plug-ins/common/lcms.c: the plug-in doesn't handle GRAY*
images.
2006-10-29 17:53:12 +00:00
Hans Breuer 3551bbcca0 updated
2006-10-27  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated
2006-10-27 16:04:53 +00:00
Sven Neumann 63da8bb8ca libgimpconfig/gimpcolorconfig-enums.[ch] libgimpconfig/gimpcolorconfig.c
2006-10-27  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpcolorconfig-enums.[ch]
	* libgimpconfig/gimpcolorconfig.c
	* libgimpconfig/gimpconfig.def: removed unused enum
	GimpColorFileOpenBehaviour.

	* app/core/core-enums.[ch]: added enum GimpColorProfilePolicy.

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: added property
"color-profile-policy".

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-icc-profile.[ch]: new files that wrap
usage
	of the lcms plug-in.

	* app/file/file-open.c: implement the user-configured policy for
	embedded color profiles.

	* app/widgets/gimpimageprofileview.c: use the wrapper to call
the
	plug-in-icc-profile-info procedure.

	* app/widgets/gimptoolbox-dnd.c: pass TRUE for "attach_comment"
	parameter to gimp_create_image().

	* app/core/gimptemplate.c
	* app/file/Makefile.am: cosmetic changes.

	* app/Makefile.am: some resorting to make the beast link again.
2006-10-27 13:52:40 +00:00
Michael Natterer 2528519869 don't send a return value if executing the procedure closed the plug-in
2006-10-27  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run):
	don't send a return value if executing the procedure closed the
	plug-in (as is the case with gimp-quit). Fixes bug #332608.
2006-10-27 13:16:51 +00:00
Michael Natterer b6f9bf5d57 Added mechanism that should prevent undo corruption by broken plug-ins and
2006-10-25  Michael Natterer  <mitch@gimp.org>

	Added mechanism that should prevent undo corruption by
	broken plug-ins and scripts. Work in progress.

	* app/plug-in/Makefile.am
	* app/plug-in/gimpplugin-cleanup.[ch]: new files that (for now)
	keep track of the undo groups plug-in procedures open and close,
	and can fix an image's undo group state after a plug-in messed.

	* app/plug-in/gimppluginprocframe.h (struct GimpPlugInProcFrame):
	keep a list of plug-in cleanup structs.

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): call gimp_plug_in_cleanup() if
	the list is not empty.

	* tools/pdbgen/pdb/undo.pdb: keep track of undo groups using
	the new gimp_plug_in_cleanup_undo_group_start() and _end()
	functions. Fail if any of the functions returns FALSE.

	* app/pdb/undo_cmds.c: regenerated.
2006-10-25 09:41:05 +00:00
Michael Natterer 4ca51d55b7 if plug_in_rc_parse() returns an empty list it's not neccessarily an eror,
2006-10-23  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	if plug_in_rc_parse() returns an empty list it's not neccessarily
	an eror, so check the "error" variable before accessing it.
	Fixes bug #363345.
2006-10-23 19:19:22 +00:00
Sven Neumann 035f087e48 include the procedure name in the output on stderr.
2006-10-17  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_set_image_types): include the procedure
	name in the output on stderr.
2006-10-17 15:21:20 +00:00
Michael Natterer 1ed8dd4f53 app/actions/data-commands.c app/actions/documents-commands.c
2006-10-09  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/drawable-commands.c
	* app/actions/gradients-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimp-contexts.c
	* app/core/gimp-documents.c
	* app/core/gimp-edit.c
	* app/core/gimp-modules.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpchannel.c
	* app/core/gimpdatafactory.[ch]
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimppdbprogress.c
	* app/core/gimpselection.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/session.c
	* app/gui/themes.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager.c
	* app/text/gimptextlayer-xcf.c
	* app/text/gimptextlayer.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpuimanager.c
	* app/widgets/gimpvectorstreeview.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/palette.pdb: convert lots of g_message() to
	gimp_message(). Make sure we never pass unknown strings (like
	error->message) to printf-like functions directly; run them
	thorugh "%s" instead. Don't translate some messages which should
	never happen.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-10-09 18:49:15 +00:00
Michael Natterer f5afb754a5 Added message severities and make sure all messages are routed through a
2006-10-09  Michael Natterer  <mitch@gimp.org>

	Added message severities and make sure all messages are routed
	through a central function, so redirecting to the error console or
	stderr work again:

	* app/core/core-enums.[ch]: added enum GimpMessageSeverity { INFO,
	WARNING, ERROR }.

	* app/core/gimp.[ch] (gimp_message)
	(gimp_message_valist): added severity parameter. Changed
	"GimpProgress *progress" parameter to "GObject *handler", where
	"handler" can be either a GimpProgress, a GtkWidget or NULL.

	* app/core/gimp-gui.[ch] (gimp_show_message): ditto. Honor
	--console-messages again. Always dispatch to the GUI message
	handler first if it exists.

	* app/gui/gui-message.[ch]: pass severity parameters around.

	(gui_message_error_dialog): if "handler" is a progress, dispatch
	the message to it first. If it is a widget (and *not* a progress),
	use a GtkMessageDialog on top of that widget's toplevel. Fall
	back to the usual GimpErrorDialog otherwise.

	* app/core/gimpprogress.[ch] (gimp_progress_message): added
	severity parameter. Also added boolean return value to the virtual
	function so it can decide to fail if it can't handle the message.

	* app/display/gimpdisplay.c: implement GimpProgress::message() and
	redirect the message to GimpDisplayShell.

	* app/display/gimpdisplayshell-progress.c: implement
	GimpProgress::message() and redirect the message to GimpStatusbar
	if it is not an error and if the status bar is visible.

	* app/display/gimpstatusbar.[ch]: implement GimpProgress::message(),
	but fail on messages that contain a newline. Show the right icons
	for the message severities (work in progress).

	* app/display/gimpdisplayshell.[ch]: removed
	gimp_display_shell_message() and its _valist() variant.

	* app/widgets/gimperrorconsole.[ch]: show the right icons for the
	message severities.

	* app/widgets/gimpthumbbox.c (gimp_thumb_box_progress_message):
	return TRUE to swallow all messages.

	* app/widgets/gimpwidgets-utils.[ch]: removed
	gimp_show_message_dialog(). Added gimp_get_message_stock_id().

	* app/errors.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/select-commands.c
	* app/actions/text-editor-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/plug-in/gimpplugin.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimptool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/palette.pdb: added severity parameter to
	gimp_message() calls. Convert all calls to
	gimp_show_message_dialog() and gimp_display_shell_message() to
	gimp_message(). Also converted some more g_message() calls.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-10-09 08:17:22 +00:00
Michael Natterer 11abe64f58 if the plug-in is in a different process group than GIMP, kill the entire
2006-09-20  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.c (gimp_plug_in_close): if the plug-in is
	in a different process group than GIMP, kill the entire group so
	the plug-in's children are killed too.

	* plug-ins/uri/uri-backend-wget.c (uri_backend_load_image): open
	a process group so the wget process gets killed (bug #356643).
2006-09-20 10:31:22 +00:00
Michael Natterer db51ce3a49 Fix disabling of deprecated procedures (bug #345733):
2006-09-19  Michael Natterer  <mitch@gimp.org>

	Fix disabling of deprecated procedures (bug #345733):

	* app/pdb/gimppdb.c (gimp_pdb_register_procedure): silently drop
	deprecated procedures if they are disabled via --pdb-compat-mode.

	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_proc_run):
	remove code that handles deprecated procedures even when they are
	disabled, the change above makes this impossible.
	Call plug_in_params_to_args() also if we didn't find the
	procedure, so the PDB doesn't choke on NULL args.
2006-09-19 11:58:57 +00:00
Sven Neumann 290435c59c added a convenience function to retrieve the translated procedure label.
2006-09-11  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.[ch]: added a convenience function
	to retrieve the translated procedure label.

	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpimagepropview.c: use it.
2006-09-11 15:51:39 +00:00
Sven Neumann b57c52b3b3 corrected comment.
2006-09-11  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager-locale-domain.h: corrected comment.

	* app/widgets/gimpimagepropview.[ch]: added file related info to
	the Image Properties dialog as requested in bug #86276.
2006-09-11 15:27:21 +00:00
Sven Neumann e077975358 bail out early if the procedure is already at the start of the list.
2006-09-06  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager-history.c
	(gimp_plug_in_manager_history_add): bail out early if the
	procedure is already at the start of the list.
2006-09-06 19:50:08 +00:00
Sven Neumann 25c1dfe65f don't specialcase gimp->no_interface; it's a pointless optimization.
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	don't specialcase gimp->no_interface; it's a pointless optimization.
2006-09-05 10:03:49 +00:00
Sven Neumann 36666a5b49 sort the load and save procedures after adding them to the database,
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	sort the load and save procedures after adding them to the
	database, otherwise there is nothing to sort.
2006-09-05 09:45:48 +00:00
Sven Neumann 4d23fbfe60 use gimp_message() if a plug-in crashes.
2006-08-29  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.c (gimp_plug_in_recv_message): use
	gimp_message() if a plug-in crashes.
2006-08-29 11:08:31 +00:00
Sven Neumann 60fe7482cc improved debugging output.
2006-08-16  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.c: improved debugging output.

	* libgimp/gimppaletteselect.c: the palette callback gets passed
	the number of colors.
2006-08-16 13:11:12 +00:00
Hans Breuer 37e4b80204 updated
2006-08-15  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated

	* app/xcf/xcf-save.c(1464) : error C2036: 'void *' : unknown size
	pointer arithmetics on void a pointer looks like a GCC extension
	* app/tools/gimpbrightnesscontrasttool.c
	  app/tools/gimpcolorbalancetool.c
	  app/tools/gimphuesaturationtool.c
	  app/tools/gimpcolorizetool.c : #include "core/gimp.h" for gimp_message
	* app/tools/gimpiscissorstool.c : use RINT() rather than rint()
	* app/widgets/gimpcontrollerlist.c : #include "gimpwidgets-utils.h"
	for gimp_show_message_dialog
	* app/core/gimpprogress.c(229) : 'gimp_progress_message' must
	return a value
2006-08-15 15:13:08 +00:00
Michael Natterer 262fce4dc2 it's a bad idea to access an array before checking if it's long enough.
2006-08-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-params.c (plug_in_params_to_args): it's a
	bad idea to access an array before checking if it's long enough.
	Fixes bug #350555. Also added some comments, the logic here is
	really weird.
2006-08-09 21:22:50 +00:00
Sven Neumann 20b4f56b83 chain up.
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_dispose):
	chain up.

	* libgimp/gimpzoompreview.[ch]: added API to get a pointer to the
	GimpZoomModel used by the preview and added a constructor that
	allows to pass a model.

	* libgimp/gimpui.def: updated.
2006-08-09 10:30:01 +00:00
Sven Neumann e31e58335b remove the procedure from the history.
* app/plug-in/gimppluginmanager.c
	(gimp_plug_in_manager_remove_temp_proc): remove the procedure
from
	the history.
2006-08-08 16:34:22 +00:00
Sven Neumann a67657d84f app/plug-in/Makefile.am new files that deal with the history of plug-in
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/gimppluginmanager-history.[ch]: new files that
deal
	with the history of plug-in procedures.

	* app/actions/plug-in-actions.[ch]
	* app/plug-in/gimppluginmanager.[ch]: changed accordingly.
2006-08-08 16:14:13 +00:00
Sven Neumann b65fa0215d add all procedures that take an image paramter to the history of last-used
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/actions/plug-in-commands.c (plug_in_run_cmd_callback): add
	all procedures that take an image paramter to the history of
	last-used procedures. Fixes bug #348243.
	(plug_in_repeat_cmd_callback): use
plug_in_collect_drawable_args()
	to construct the procedure arguments.

	* app/actions/plug-in-actions.c
	* app/plug-in/gimppluginmanager.[ch]: renamed "last_plug_ins" to
	"history"; it's actually a list of procedures.
2006-08-08 15:36:16 +00:00
Michael Natterer 0005f0ff5d app/pdb/Makefile.am app/pdb/gimppluginprocedure.[ch] removed these
2006-08-05  Michael Natterer  <mitch@gimp.org>

	* app/pdb/Makefile.am
	* app/pdb/gimppluginprocedure.[ch]
	* app/pdb/gimptemporaryprocedure.[ch]: removed these files...

	* app/plug-in/Makefile.am
	* app/plug-in/gimppluginprocedure.[ch]
	* app/plug-in/gimptemporaryprocedure.[ch]: ...and added them here.

	* app/Makefile.am
	* app/config/Makefile.am: reordered stuff to make it link again.

	* app/pdb/gimppdb.c: removed gimp_pdb_eek() hack.

	* app/actions/plug-in-actions.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/file/file-utils.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin-progress.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-call.c
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager-query.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimppluginprocframe.c
	* app/plug-in/plug-in-def.c
	* app/plug-in/plug-in-rc.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimppluginaction.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/plug_in.pdb: changed includes accordingly.

	* app/pdb/plug_in_cmds.c: regenerated.
2006-08-05 21:21:01 +00:00
Michael Natterer 3f5c71cd97 don't #include "pdb/gimp-pdb-compat.h".
2006-08-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager-file.c: don't #include
	"pdb/gimp-pdb-compat.h".
2006-08-05 17:55:37 +00:00
Sven Neumann 6d922b21dc Make message dialogs transient for the progress window. Addresses bug
2006-07-19  Sven Neumann  <sven@gimp.org>

	Make message dialogs transient for the progress window.
Addresses
	bug #347214.

	* app/core/gimp-gui.[ch]: added a progress parameter to
	gimp_message().  Let gimp_message() deal with optionally
	delegating the message to gimp_progress_message().

	* app/errors.c: changed accordingly.

	* app/core/gimpprogress.[ch] (gimp_progress_message): return a
	boolean indicating whether the message was handled.

	* app/gui/Makefile.am
	* app/gui/gui-message.[ch]
	* app/gui/gui-vtable.c: moved message handling to a new file.
Only
	use the global error dialog for messages without a progress.
	Otherwise attach an error dialog to the progress and try to make
	it transient to the progress window.

	* tools/pdbgen/pdb/message.pdb:
	* app/plug-in/gimpplugin-progress.[ch]: don't delegate messages
to
	the progress interface, this is handled by gimp_message() now.

	* app/pdb/message_cmds.c: regenerated.

	* app/plug-in/gimpplugin.c
	* app/actions/documents-commands.c: formatting.
2006-07-19 06:50:34 +00:00
Sven Neumann e5603c965c app/actions/file-commands.c formatting.
2006-07-12  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c
	* app/pdb/gimppluginprocedure.c: formatting.
2006-07-12 06:10:52 +00:00
Manish Singh f1e54be89d app/plug-in/plug-in-params.c libgimp/gimp.[ch]
2006-06-25  Manish Singh  <yosh@gimp.org>

        * app/plug-in/plug-in-params.c
        * libgimp/gimp.[ch]
        * libgimpbase/gimpprotocol.[ch]
        * plug-ins/common/colormap-remap.c
        * plug-ins/common/curve_bend.c
        * plug-ins/common/grid.c
        * plug-ins/pygimp/pygimp-pdb.c
        * plug-ins/script-fu/siod-wrapper.c
        * tools/pdbgen/pdb.pl: turn d_int8 and d_int8array into guint8.
        Fixes bug #344431.
2006-06-25 23:30:15 +00:00
Michael Natterer 88dedcc424 Allow plug-ins to register in <Layers>, <Channels>, <Vectors> and
2006-06-16  Michael Natterer  <mitch@gimp.org>

	Allow plug-ins to register in <Layers>, <Channels>, <Vectors> and
	<ColormapEditor>:

	* app/pdb/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): added the argument type
	checks for the new locations. Factored out duplicated code.

	* app/menus/menus.c (menus_init): add the "plug-in" action
	group to the resp. UI managers.

	* app/menus/plug-in-menus.c (plug_in_menus_menu_path_added):
	support them here too.

	* app/widgets/gimpimageeditor.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added get_image() functions.

	* app/actions/plug-in-commands.c: added new utility functions
	which collect plug-in arguments from GimpImageEditor and
	GimpItemTreeView widgets.

	* menus/channels-menu.xml
	* menus/colormap-editor-menu.xml
	* menus/layers-menu.xml
	* menus/vectors-menu.xml: added separators.

	* menus/image-menu.xml.in: added a "Colormap" placeholder in
	Colors/Map

	* plug-ins/common/colormap-remap.c (query): register a menu
	entry in <ColormapEditor> and moved the existing one to the
	"Colormap" placeholder. Also register an icon to make this
	menu item clearly distinct from the others in that menu.

	Unrelated:

	* plug-ins/common/colormap-remap.c (run): cleaned up quite a
	bit. Fixed last-vals code and simplified map handling.

	(remap_swap): removed, folded into run().

	(remap_dialog): use the passed map to initialize the dialog so it
	starts with the last-vals. Tweaked layout to have 16 columns
	and simplified cell renderer creation.
2006-06-16 17:02:14 +00:00
Sven Neumann bee8fb744c when cutting away ellipsis, also look for U+2026 HORIZONTAL ELLIPSIS.
2006-06-16  Sven Neumann  <neumann@jpk.com>

	* app/pdb/gimppluginprocedure.c (gimp_plug_in_procedure_get_label):
	* plug-ins/script-fu/script-fu-interface.c (script_fu_interface):
	when cutting away ellipsis, also look for U+2026 HORIZONTAL ELLIPSIS.
2006-06-16 12:25:02 +00:00
Tor Lillqvist 4af35085a3 Free the string vector returned by g_listenv().
2006-06-13  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpenvirontable.c (gimp_environ_table_populate):
	Free the string vector returned by g_listenv().

	* libgimpwidgets/gimpwidgets.def: Remove deprecated
	gimp_prop_file_entry_new.
2006-06-13 18:06:07 +00:00
Tor Lillqvist 2e0f2b8dfc Use g_listenv() and g_getenv() instead of looking at environ directly.
2006-06-12  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpenvirontable.c (gimp_environ_table_populate):
	Use g_listenv() and g_getenv() instead of looking at environ
	directly. Fixes breakage on Win32 when any (!) environment
	variable has a non-ASCII value, as environ is in system codepage,
	while we want UTF-8.
2006-06-12 16:54:51 +00:00
Sven Neumann 6c25ae9374 Added basic framework for plug-ins to access the use_cpu_accel
2006-06-01  Sven Neumann  <sven@gimp.org>

	Added basic framework for plug-ins to access the use_cpu_accel
	configuration (bug #342860):

	* app/composite/gimp-composite.[ch]: added new function
	gimp_composite_use_cpu_accel().

	* libgimpbase/gimpprotocol.[ch]: added use_cpu_accel to the config
	message.

	* app/plug-in/gimppluginmanager-call.c: pass the return value of
	gimp_composite_use_cpu_accel() for config.use_cpu_accel.

	* libgimp/gimp.[ch]: make the config value accessible by means of
	a new function gimp_use_cpu_accel().

	* libgimp/gimp.def: updated.
2006-06-01 15:34:58 +00:00
Sven Neumann c14c5393cc indentation.
2006-05-16  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c (app_run): indentation.

	* app/core/gimp.c (gimp_real_initialize)
	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	moved a call to status_callback() to the plug-in manager.
2006-05-16 11:43:55 +00:00
Sven Neumann c357c470e3 removed debugging output.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.c: removed debugging output.
2006-05-15 10:31:04 +00:00
Sven Neumann 6ebcf700d1 removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/*/*.c:
	* lib*/*.c: removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15 09:46:31 +00:00
Hans Breuer 429d71e5e2 updated dont include "config/gimpbaseconfig.c", it gives an redefinition
2006-05-13  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated
	* app/core/gimp-util.c : dont include "config/gimpbaseconfig.c", it
	gives an redefinition error with msvc. Instead include
	config/gimpbaseconfig.h and libgimpconfig/gimpconfig-path.h

	* plug-ins/common/psd_save.c : fix c99isms (declarations only at the
	start of a block)
2006-05-13 17:05:15 +00:00
Michael Natterer cfe5e9b137 changed enum PlugInImageType to GimpPlugInImageType.
2006-05-08  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-enums.[ch]: changed enum PlugInImageType
	to GimpPlugInImageType.

	* app/pdb/gimppluginprocedure.[ch]: changed accordingly.
2006-05-08 13:18:02 +00:00
Michael Natterer 5a586ba672 changed parameter "gint display_ID" to "GimpObject *display".
2006-05-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager-call.[ch]
	(gimp_plug_in_manager_call_run): changed parameter "gint display_ID"
	to "GimpObject *display".

	* app/pdb/gimpprocedure.[ch]
	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c: changed
	GimpProcedure::execute_async() the same way.

	* app/plug-in/gimppluginmanager.c
	* app/actions/plug-in-commands.c
	* app/actions/vectors-commands.c
	* app/widgets/gimphelp.c: changed accordingly.
2006-05-05 08:29:33 +00:00
Michael Natterer 808b65cd31 added signals "plug-in-opened" and "plug-in-closed". Added functions
2006-05-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager.[ch]: added signals
	"plug-in-opened" and "plug-in-closed". Added functions
	gimp_plug_in_manager_add_open_plug_in() and _remove_open_plugin()
	which maintain the list of open plug-ins and emit the signals.

	* app/plug-in/gimpplugin.c (gimp_plug_in_open)
	(gimp_plug_in_close): don't touch manager->open_plug_ins and don't
	ref/unref the plug-in. Call above new functions instead. Don't
	call gimp_pdb_dialogs_check().

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: removed gimp_pdb_dialogs_check().

	* app/widgets/gimppdbdialog.[ch]: removed
	gimp_pdb_dialogs_check_callback() and connect to the
	plug-in-manager's "plug-in-closed" signal instead.
2006-05-04 22:51:21 +00:00
Michael Natterer d033ddda1b cleaned up a bit.
2006-05-04  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginshm.c: cleaned up a bit.

	(gimp_plug_in_shm_new): return NULL if anything goes wrong,
	instead of a GimpPlugInShm structure that contains no shm (we
	don't need multiple cases of "there is no shm"),

	* app/plug-in/gimppluginmanager.[ch]
	(gimp_plug_in_manager_get_shm_ID)
	(gimp_plug_in_manager_get_shm_addr): removed these functions.

	* app/plug-in/gimppluginmanager-call.c (gimp_plug_in_manager_call_run)
	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_req):
	get the shm ID and addr directly from manager->shm if it exists,
	use -1 and NULL otherwise.

	Unrelated:

	* app/plug-in/gimppluginmanager.c: move most stuff from
	gimp_plug_in_manager_exit() to gimp_plug_in_manager_finalize().
	Simplify plug-in killing in _exit().
2006-05-04 21:49:04 +00:00
Michael Natterer 2329ed9615 remove member "name" and unused cruft "ref_count". Reordered other members
2006-05-04  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.[ch] (struct GimpPlugIn): remove member
	"name" and unused cruft "ref_count". Reordered other members a bit.

	(gimp_plug_in_new): set GimpObject's name to
	g_filename_display_basename(path) instead.

	Use GimpObject's name instead of plug_in->name for error messages
	and pass the full path to gimp_plug_in_debug_argv()

	* app/plug-in/gimpplugindebug.c (gimp_plug_in_debug_argv): extract
	the path's basename ourselves.

	* app/plug-in/gimpplugin-message.c: GimpObject's name for
	error messages.
2006-05-04 11:58:10 +00:00
Michael Natterer 40012d8853 restore the strict checks on string arrays.
2006-05-04  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpparamspecs.c (gimp_string_array_new)
	(gimp_param_string_array_validate): restore the strict checks
	on string arrays.

	* app/plug-in/gimppluginmanager-help-domain.c
	(gimp_plug_in_manager_get_help_domains): return NULL string arrays
	when there are 0 help domains to fix the inconsistency at its root.
2006-05-04 10:03:53 +00:00
Michael Natterer 1fcd4c36a9 app/plug-in/gimpplugin.c use the right procedure types in calls to
2006-05-04  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-call.c: use the right procedure
	types in calls to gimp_plug_in_proc_frame_foo().
2006-05-04 08:23:20 +00:00
Michael Natterer 4b917ea28b Made an object out of the plug-in struct. Also change refcounting
2006-05-03  Michael Natterer  <mitch@gimp.org>

	Made an object out of the plug-in struct. Also change refcounting
	considerably:

	- gimp_plug_in_open() adds a reference that is only dropped by
	  gimp_plug_in_close().
	- temporarily ref the plug-in while handling messages.
	- remporarily ref the plug-in while a recursive main loop is
	  running.
	- each caller of gimp_plug_in_new() also unrefs the plug-in before
	  returning, the only reference that persists across functions
	  (that keeps the plug-in alive) is the one added by open().

	* app/plug-in/plug-in.[ch]
	* app/plug-in/plug-in-context.[ch]
	* app/plug-in/plug-in-message.[ch]
	* app/plug-in/plug-in-progress.[ch]: removed these files...

	* app/plug-in/gimpplugin.[ch]
	* app/plug-in/gimpplugin-context.[ch]
	* app/plug-in/gimpplugin-message.[ch]
	* app/plug-in/gimpplugin-progress.[ch]: ...and added here as GObject.

	* app/plug-in/plug-in-proc-frame.[ch]: removed...

	* app/plug-in/gimppluginprocframe.[ch]: ...and added with a namespace.

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-types.h
	* app/plug-in/gimppluginmanager-call.c
	* app/plug-in/gimppluginmanager-file.c
	* app/plug-in/gimppluginmanager.[ch]
	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c
	* app/pdb/gimptemporaryprocedure.h
	* tools/pdbgen/pdb/context.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/plug_in.pdb
	* tools/pdbgen/pdb/progress.pdb
	* tools/pdbgen/pdb/undo.pdb: changed accordingly.

	* app/pdb/context_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/help_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/plug_in_cmds.c
	* app/pdb/progress_cmds.c
	* app/pdb/undo_cmds.c: regenerated.
2006-05-03 18:05:06 +00:00
Michael Natterer 927cde4121 added enum GimpPlugInCallMode which can be one of { NONE, QUERY, INIT, RUN
2006-05-02  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-enums.[ch]: added enum GimpPlugInCallMode
	which can be one of { NONE, QUERY, INIT, RUN }.

	* app/plug-in/Makefile.am
	* app/plug-in/gimppluginmanager-run.[ch]: removed again...

	* app/plug-in/gimppluginmanager-call.[ch]: ...and added
	here. Added gimp_plug_in_manager_call_init() and
	gimp_plug_in_manager_call_query().

	* app/plug-in/plug-in.[ch]: removed plug_in_call_query() and
	plug_in_call_init().

	(struct PlugIn): removed members "init", "query" and "synchronous".

	(plug_in_open): added parameters "call_mode" and "synchronous".

	* app/plug-in/gimppluginmanager.c
	* app/plug-in/plug-in-message.c
	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/plug_in_cmds.c: regenerated.
2006-05-02 18:27:31 +00:00
Michael Natterer 38406b7202 removed plug_in_push() and plug_in_pop()...
2006-04-29  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in.[ch]: removed plug_in_push() and
	plug_in_pop()...

	* app/plug-in/gimppluginmanager.[ch]: ...and added them here as
	gimp_plug_in_manager_plug_in_push() and _pop()

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): changed
	accordingly.

	* app/plug-in/plug-in.c (plug_in_close): removed an unused
	variable, moved another one to a local scope.

	* app/plug-in/plug-in.h: indentation.
2006-04-29 19:03:44 +00:00
Michael Natterer 74a27a001a NULL-terminate string arrays here too, so they can be freed with
2006-04-29  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginmanager-locale-domain.c
	(gimp_plug_in_manager_get_locale_domains): NULL-terminate string
	arrays here too, so they can be freed with g_strfreev() (even
	though they currently aren't).

	* app/widgets/gimphelp.c: set the plug-in arguments
	correctly. Fixes warnings and makes help work again.
2006-04-29 17:55:42 +00:00
Tor Lillqvist f117a6252c NULL-terminate the locale_domains and locale_paths string vectors, as they
2006-04-29  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimppluginmanager-locale-domain.c
	(gimp_plug_in_manager_get_locale_domains): NULL-terminate the
	locale_domains and locale_paths string vectors, as they are freed
	with g_strfreev() in gimp_plug_in_manager_restore().
2006-04-28 23:45:51 +00:00
Tor Lillqvist 0530314017 Make it compile again on Win32. Use g_usleep() instead of select()/Sleep()
2006-04-29  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/plug-in.c (plug_in_close): Make it compile again on
	Win32. Use g_usleep() instead of select()/Sleep() Unix/Windows
	ifdef.
2006-04-28 23:23:19 +00:00
Michael Natterer b05baea60a app/plug-in/Makefile.am removed...
2006-04-29  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-run.[ch]: removed...

	* app/plug-in/gimppluginmanager-run.[ch]: ...and added as methods
	of GimpPlugInManager.

	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c: changed accordingly.
2006-04-28 23:13:23 +00:00
Michael Natterer f1c3e79a4b app/plug-in/Makefile.am app/plug-in/plug-in-types.h new object which keeps
2006-04-29  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-types.h
	* app/plug-in/gimppluginmanager.[ch]: new object which keeps all
	plug-in related stuff that was kept in the Gimp instance. Has
	"menu-branch-added" and "last-plug-in-changed" signals.

	* app/plug-in/plug-ins.[ch]: removed, all its functions are in
	GimpPlugInManager now.

	* app/core/gimpmarshal.list: new marshaller for the new object.

	* app/core/gimp.[ch]: removed all plug-in related stuff and keep a
	GimpPlugInManager around.

	* app/plug-in/plug-in-data.[ch]
	* app/plug-in/plug-in-file.[ch]
	* app/plug-in/plug-in-help-domain.[ch]
	* app/plug-in/plug-in-locale-domain.[ch]
	* app/plug-in/plug-in-menu-branch.[ch]
	* app/plug-in/plug-ins-query.[ch]: removed...

	* app/plug-in/gimppluginmanager-data.[ch]
	* app/plug-in/gimppluginmanager-file.[ch]
	* app/plug-in/gimppluginmanager-help-domain.[ch]
	* app/plug-in/gimppluginmanager-locale-domain.[ch]
	* app/plug-in/gimppluginmanager-menu-branch.[ch]
	* app/plug-in/gimppluginmanager-query.[ch]: ...and added as
	methods of GimpPlugInManager.

	* app/plug-in/plug-in-debug.[ch]
	* app/plug-in/plug-in-shm.[ch]: removed...

	* app/plug-in/gimpplugindebug.[ch]
	* app/plug-in/gimppluginshm.[ch]: ...and added as properly
	namespeced structs with constructors and destructors.

	* app/core/Makefile.am
	* app/core/gimpenvirontable.[ch]
	* app/core/gimpinterpreterdb.[ch]: removed...

	* app/plug-in/gimpenvirontable.[ch]
	* app/plug-in/gimpinterpreterdb.[ch]: ...and added here unchanged.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: remove gimp_menus_create_branch() and all
	related stuff.

	* app/actions/plug-in-actions.[ch]: connect to the
	plug-in-manager's "menu-path-added" signal and create menu branch
	actions accordingly.

	* app/plug-in/plug-in-context.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-progress.c
	* app/plug-in/plug-in-run.[ch]
	* app/plug-in/plug-in.[ch]
	* app/app_procs.c
	* app/actions/file-commands.c
	* app/actions/plug-in-commands.c
	* app/core/gimpimage.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/file/file-open.c
	* app/gui/gui.c
	* app/menus/plug-in-menus.c
	* app/pdb/gimppluginprocedure.c
	* app/pdb/gimptemporaryprocedure.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/context.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/message.pdb
	* tools/pdbgen/pdb/plug_in.pdb
	* tools/pdbgen/pdb/procedural_db.pdb
	* tools/pdbgen/pdb/progress.pdb
	* tools/pdbgen/pdb/undo.pdb: follow above refactoring.

	* app/pdb/context_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/fileops_cmds.c
	* app/pdb/help_cmds.c
	* app/pdb/message_cmds.c
	* app/pdb/plug_in_cmds.c
	* app/pdb/procedural_db_cmds.c
	* app/pdb/progress_cmds.c
	* app/pdb/undo_cmds.c: regenerated.
2006-04-28 22:26:51 +00:00
Michael Natterer 305ada6354 new function which returns string arrays of all registered locale domains
2006-04-27  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-locale-domain.[ch] (plug_in_locale_domains):
	new function which returns string arrays of all registered locale
	domains and paths.

	(plug_in_standard_locale_domain): removed this function. The
	standard plug-in domain is included in the domains returned by
	plug_in_locale_domains().

	* app/plug-in/plug-ins.c (plug_ins_init): simply bind the text
	domains here instead of calling gimp_menus_init(). Destroy
	gimp->plug_in_defs much earlier.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: removed gimp_menus_init().

	* app/menus/plug-in-menus.[ch]: removed plug_in_menus_init(),
	binding text domains is completely done in the core now.
2006-04-27 21:53:33 +00:00
Michael Natterer ee66f2f31d Added some signals inspired by Rockwalrus' libpdb:
2006-04-27  Michael Natterer  <mitch@gimp.org>

	Added some signals inspired by Rockwalrus' libpdb:

	* app/pdb/gimppdb.[ch]: added signals "register-procedure" and
	"unregister-procedure".

	* app/pdb/gimppluginprocedure.[ch]: added signal "menu-path-added".

	* app/actions/plug-in-actions.[ch]
	* app/menus/plug-in-menus.[ch]: connect to the new signals and
	create/destroy plug-in actions and menus accordingly. Made all
	needed functions private and merged some of them with the newly
	added signal callbacks.

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: removed gimp_menus_create_item() and
	gimp_menus_delete_item() and all related stuff.

	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c: removed calls to the removed functions.

	* app/plug-in/plug-ins.c (plug_ins_init): add the plug-in
	procedures to the PDB *after* calling gimp_menus_init() so their
	locale domains are properly initialized when the menus are
	created.
2006-04-27 19:36:13 +00:00
Michael Natterer f65bd53e58 app/pdb/Makefile.am app/pdb/pdb-types.h new object GimpPDB which keeps all
2006-04-26  Michael Natterer  <mitch@gimp.org>

	* app/pdb/Makefile.am
	* app/pdb/pdb-types.h
	* app/pdb/gimppdb.[ch]: new object GimpPDB which keeps all
	procedures and functions to register and run them. Renamed all
	functions and did some cleanups.

	* app/pdb/gimp-pdb.[ch]
	* app/core/gimp.[ch]: removed the same stuff here.

	* app/pdb/gimp-pdb-query.[ch]: removed these files...

	* app/pdb/gimppdb-query.[ch]: ...added here as members of GimpPDB.

	* app/pdb/gimp-pdb-compat.h: fix include guard.

	* app/batch.c
	* app/actions/vectors-commands.c
	* app/dialogs/about-dialog.c
	* app/file/file-open.c
	* app/file/file-save.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-ins.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimphelp.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/procedural_db.pdb: changed includes and function
	calls accordingly.

	* tools/pdbgen/app.pl: pass around GimpPDB instead of Gimp
	pointers to register the internal procedures with. Changed some
	newlines in the generated code.

	* app/pdb/*_cmds.c
	* app/pdb/internal_procs.[ch]: regenerated.

	* app/core/gimppdbprogress.[ch]
	* app/widgets/gimppdbdialog.[ch]: added "pdb" CONSTRUCT_ONLY
	properties.

	* app/plug-in/plug-in-progress.c
	* app/gui/gui-vtable.c: pass gimp->pdb when creating them.

	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpfontselect.c
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimppaletteselect.c
	* app/widgets/gimppatternselect.c: use the new local pdb pointers
	instead of some foo->bar->gimp->pdb overkill.
2006-04-26 09:13:47 +00:00
Michael Natterer 0855c2e12b added gimp_g_type_instance_get_memsize() and
2006-04-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-utils.[ch]: added
	gimp_g_type_instance_get_memsize() and
	gimp_g_param_spec_get_memsize().
	Changed gimp_g_object_get_memsize() to use
	gimp_g_type_instance_get_memsize().
	Handle more boxed types in gimp_g_value_get_memsize().

	* app/core/gimp.c (gimp_get_memsize): add the memsize of some
	members that are new or were forgotten.

	* app/pdb/gimpprocedure.c
	* app/pdb/gimppluginprocedure.c: implement GimpObject::get_memsize().
2006-04-15 15:15:33 +00:00
Manish Singh 3fb71be183 Some compilers don't handle "'" in #error directives well. Reword to not
2006-04-14  Manish Singh  <yosh@gimp.org>

        * app/plug-in/plug-in.h: Some compilers don't handle "'" in #error
        directives well. Reword to not use a contraction.
2006-04-14 09:44:34 +00:00
Sven Neumann 049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00
Michael Natterer 1dd6a8f01f don't iterate the list of plug-in procedures here, take a
2006-04-10  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.c (plug_ins_add_to_db): don't iterate the
	list of plug-in procedures here, take a GimpPlugInProcedure
	argument instead.

	(plug_ins_init): iterate the list here, just as all other lists
	too. Renamed local "filename" variable to "pluginrc". Moved
	"basename" to local scopes.

	* tools/pdbgen/pdb/procedural_db.pdb: minor cleanup.

	* app/pdb/procedural_db_cmds.c: regenerated.
2006-04-10 19:47:58 +00:00
Michael Natterer 755ac43a4b some cleanup.
2006-04-10  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-file.c: some cleanup.

	(plug_in_file_register_load_handler)
	(plug_in_file_register_save_handler): first check if we have the
	procedure, then check its arguments, not the other way around
	(using an additional lookup). Old weird code was needed because
	these functions were split between app/plug-in and app/pdb.

	* app/plug-in/plug-in-file.h: whitespace.
2006-04-10 11:12:06 +00:00
Michael Natterer 03eebd5358 removed the plug_ins_file_foo() functions.
2006-04-10  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.[ch]: removed the plug_ins_file_foo()
	functions.

	* tools/pdbgen/pdb/fileops.pdb: removed lots of load and save
	handler register code.

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-file.[ch]: added everything in these new
	files. Load and save handlers are installed with
	plug_in_file_register_load_handler() and _save_handler() which
	also check the passed file procedure's parameters.

	* app/pdb/fileops_cmds.c: regenerated.
2006-04-09 23:40:45 +00:00
Michael Natterer 1f8c1ae34e app/plug-in/Makefile.am app/plug-in/plug-ins-help.[ch] remove these files
2006-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-ins-help.[ch]
	* app/plug-in/plug-ins-locale.[ch]: remove these files again...

	* app/plug-in/plug-in-help-domain.[ch]
	* app/plug-in/plug-in-locale-domain.[ch]: ... and add them here
	with changed namespace.

	* app/plug-in/plug-in-menu-branch.[ch]: new files keeping menu
	branches registered by plug-ins.

	* app/plug-in/plug-ins.[ch]: removed the menu branch stuff here.

	* app/actions/plug-in-actions.c
	* app/menus/plug-in-menus.c
	* app/plug-in/plug-in.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimphelp.c
	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed accordingly.

	* app/pdb/help_cmds.c
	* app/pdb/plug_in_cmds.c: regenerated.
2006-04-09 21:04:37 +00:00
Michael Natterer 47d60f4803 remove plug_ins_add_internal() and made plug_ins_procedure_insert() public
2006-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-ins.[ch]: remove plug_ins_add_internal() and
	made plug_ins_procedure_insert() public as plug_ins_procedure_add().
	There's no reason internal plug-ins should be treated differently.

	* app/xcf/xcf.c: use plug_ins_procedure_add().

	* app/plug-in/plug-ins-help.c: fix comment.
2006-04-09 20:35:15 +00:00
Michael Natterer d411d1c0dd removed this function. We only have shallow GPParam arrays in the core
2006-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-params.[ch] (plug_in_params_destroy):
	removed this function. We only have shallow GPParam arrays in the
	core that can be freed with g_free(), and gp_params_destroy()
	could always be used for freeing deep copies.

	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-run.c: simply g_free() the GPParam arrays.
2006-04-09 17:19:58 +00:00
Michael Natterer 73a9abd337 removed function plug_in_proc_args_check().
2006-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-params.[ch]: removed function
	plug_in_proc_args_check().

	* app/pdb/gimppluginprocedure.[ch]: added new function
	gimp_plug_in_procedure_add_menu_path() which performs all menu
	path checks that were in the function above and adds the new
	menu_path to the procedure's list of menu_paths.

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_install)
	* app/plug-in/plug-in.c (plug_in_menu_register): use the new
	function and removed manual adding of the menu path to
	proc->menu_paths.
2006-04-09 17:08:56 +00:00