Commit Graph

30 Commits

Author SHA1 Message Date
Jehan 71ccaa21ee pdb, libgimp: remove double API generation from PDB.
All plug-ins got ported. Let's remove support for the old API with IDs
instead of objects.
2019-09-03 13:31:27 +02:00
Jehan c409829be5 libgimp, pdb: no need to create deprecated versions for private API. 2019-08-22 15:54:36 +02:00
Jehan 8c95499e14 pdb, libgimp: now make all ID types classes of their own.
No need of is_id_arg() anymore in pdb/lib.pl. Let's reuse the {id}
value. Also I had to add an additional trick for GimpDisplay which we
will now generate as such in libgimp PDB files, but still need to show
as GimpObject on app/pdb/.

As previously, only the new classes and the PDB generation for a first
step.
2019-08-22 15:54:36 +02:00
Jehan 79b319cf9d libgimp, pdb: add GimpItem > GimpDrawable > GimpLayer classes.
Only class and subclasses creation and PDB generation for this first
step.
I'll later do other types of items.
2019-08-22 15:54:36 +02:00
Jehan fec6034c7a pdb: keep both the old and new API alive.
By default the new API will be used. But if we build with
GIMP_DEPRECATED_REPLACE_NEW_API macro, then the same function names will
call the old API with ids.

This way, we don't have to update all our plug-ins at once (which I
tried and is very tedious work).

Note that bindings won't have access to the deprecated API at all.
2019-08-22 15:54:36 +02:00
Jehan 17a40b049f libgimp: generate functions both for old and new GimpImage APIs.
This way, it would still be possible to use the old API. WIP.
2019-08-22 15:54:36 +02:00
Jehan 4db8cda24e app, pdb, libgimp: add a new GimpImage class for plug-ins.
This means that all functions which were returning or taking as
parameter an image id (as gint32) are now taking a GimpImage object
instead.
The PDB is still passing around an id only over the wire. But we create
an object for plug-ins to work on.

This is quite a huge API break, but is probably the best bet for the
future quality. It will make nicer API instrospection (and nicer API in
binding), will fix the issues with pspec on GimpImageID in Python
bindings (which makes the current Python API unusable as soon as we need
to work on images, which is most of our plug-ins!), etc.
Also it will allow to use signals on images, which will be a great asset
when we will finally have bi-directionnal communications (i.e. plug-ins
would be able to connect to image changes, destructions, and whatnot).
2019-08-22 15:54:36 +02:00
Michael Natterer 5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Michael Natterer f180a171cd pdb: remove all deprecated procedures 2018-05-20 21:06:29 +02:00
Ell b52da8a17e pdb: Add gimp-selection-flood 2016-01-25 23:01:53 +01:00
Michael Natterer 86f53a3ceb libgimp: make pdbgen generate GIMP_DEPRECATED stuff
instead of GIMP_DISABLE_DEPRECATED.
2012-05-03 01:12:25 +02:00
Michael Natterer 856c89a845 libgimp: add guards that #error out if individual files are included 2011-04-28 19:59:52 +02:00
Michael Natterer e7475c1d52 pdb: add new procedure gimp-item-to-selection
and deprecate all old to-selection APIs. The new procedure uses the
newly added GimpPDBContext properties, so it only has an "operation"
parameter.
2010-09-05 22:38:07 +02:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

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

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

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


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Sven Neumann dcc6ebd1b0 HACKING tools/pdbgen/lib.pl fixed spelling of "auto-generated".
2007-01-09  Sven Neumann  <sven@gimp.org>

	* HACKING
	* tools/pdbgen/lib.pl
	* tools/pdbgen/app.pl: fixed spelling of "auto-generated".

	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/procedural_db.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient_select.pdb: improved wording and fixed
	spelling errors.
	
	* libgimp/gimp.c: fixed spelling errors.

	* app/pdb/*.h: 
	* libgimp/gimp*_pdb.[ch]: regenerated.


svn path=/trunk/; revision=21676
2007-01-09 10:52:47 +00:00
Sven Neumann 6264b28fe7 changed code generation rules to place G_GNUC_INTERNAL before the return
2006-08-22  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/lib.pl : changed code generation rules to place
	G_GNUC_INTERNAL before the return value (bug #352268).

	* libgimp/*_pdb.h: regenerated.
2006-08-22 12:58:36 +00:00
Sven Neumann 8824a9bc86 create code with spaces instead of tabs.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/lib.pl: create code with spaces instead of tabs.

	* libgimp/gimp*_pdb.[ch]: regenerated.
2006-04-12 10:27:31 +00:00
Michael Natterer dfc1fbde62 tools/pdbgen/pdb/buffer.pdb tools/pdbgen/pdb/color.pdb
2006-03-22  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/buffer.pdb
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/display.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/drawable_transform.pdb
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gimprc.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: more perl stuff flattened,
	cleanup, nitpickyness.

	* app/pdb/buffer_cmds.c
	* app/pdb/color_cmds.c
	* app/pdb/display_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/selection_cmds.c
	* libgimp/gimpselection_pdb.[ch]: regenerated.
2006-03-22 17:19:14 +00:00
Sven Neumann dc4757cedc add G_GNUC_INTERNAL to declaration of wrapped PDB functions.
2005-10-25  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/lib.pl: add G_GNUC_INTERNAL to declaration of
	wrapped PDB functions.

	* libgimp/gimpchannel_pdb.h
	* libgimp/gimpdrawable_pdb.h
	* libgimp/gimpgimprc_pdb.h
	* libgimp/gimpimage_pdb.h
	* libgimp/gimplayer_pdb.h
	* libgimp/gimpplugin_pdb.h
	* libgimp/gimpproceduraldb_pdb.h
	* libgimp/gimpprogress_pdb.h
	* libgimp/gimpselection_pdb.h
	* libgimp/gimpunit_pdb.h: regenerated.

	* libgimp/gimptile.h
	* libgimp/gimpunitcache.h
	* libgimpthumb/gimpthumb-utils.h
	* libgimpwidgets/gimpcolorarea.h
	* libgimpwidgets/gimphelpui.h: declare internal functions as such
	using G_GNUC_INTERNAL.
2005-10-25 12:08:32 +00:00
Michael Natterer 4caf20c229 tools/pdbgen/pdb/image.pdb entirely removed the deprecated functions
2004-11-16  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/selection.pdb: entirely removed the deprecated
	functions "selection_clear", "image_set_cmap" and "image_get_cmap".

	* app/pdb/procedural_db.c: and added them to the compat hash table
	because they have undeprecated replacements with identical
	signature.

	* libgimp/gimpselection.[ch]: added gimp_selection_clear() here
	instead because we need the symbol in libgimp.

	* app/pdb/image_cmds.c
	* app/pdb/internal_procs.c
	* app/pdb/selection_cmds.c
	* libgimp/gimpselection_pdb.[ch]: regenerated.
2004-11-16 14:34:34 +00:00
Sven Neumann ff654be7d6 deprecate gimp_selection_clear() in favor of gimp_selection_none(). Fixes
2004-11-13  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/selection.pdb: deprecate gimp_selection_clear()
	in favor of gimp_selection_none(). Fixes bug #156765.

	* app/pdb/selection_cmds.c
	* libgimp/gimpselection_pdb.[ch]: regenerated.
2004-11-13 21:01:12 +00:00
Manish Singh 122c006564 fix spelling of "quality" in comment
2003-07-03  Manish Singh  <yosh@gimp.org>

        * plug-ins/common/jpeg.c: fix spelling of "quality" in comment

        * tools/pdbgen/*.pl: update copyright strings to 2003

        * libgimp/gimpenums.h
        * libgimp/*_pdb.[ch]
        * app/pdb/*_cmds.[ch]
        * app/pdb/internal_procs.[ch]
        * plug-ins/pygimp/gimpenums.py
        * plug-ins/script-fu/script-fu-constants.c: regenerated
2003-07-03 00:47:26 +00:00
Sven Neumann 757017a8e2 bumped version number to 1.3.1. Require Glib/GTK+-1.3.11 and Pango-0.22.
2001-11-23  Sven Neumann  <sven@gimp.org>

	* configure.in: bumped version number to 1.3.1.
	Require Glib/GTK+-1.3.11 and Pango-0.22. Removed GDK_DISABLE_COMPAT_H
	and GTK_DISABLE_COMPAT_H from our default CFLAGS since they don't
	exist any longer.

	* RELEASE-TO-CVS.patch: removed since the glib/gtk+ API is supposed to
	be frozen now.

	* HACKING: removed reference to RELEASE-TO-CVS.patch

	* app/gui/menus.c
	* app/tools/gimptexttool.c: applied RELEASE-TO-CVS.patch to conform
	to the new GTK+/Pango API.

	* app/core/Makefile.am: generate marshallers with gimp_marshal prefix.

	* app/core/gimpmarshal.list: added all marshallers we use.

	* app/core/gimpmarshal.[ch]: regenerated.

	* app/[lots of .c files]: use gimp_marshal_* for all marshallers.

	* data/images/
	* app/app_procs.c
	* app/gui/splash.c:

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimputils.[ch]: removed since they are no longer needed.

	* app/gimprc.c
	* plug-ins/common/ps.c
	* plug-ins/gdyntext/gdyntext.c
	* plug-ins/gdyntext/gdyntextcompat.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/script-fu/script-fu-scripts.c: use glib functions instead
	of gimp_strescape() and gimpstrcompress().

	* cleaned up all header files: use G_BEGIN_DECLS/G_END_DECLS, declared
	all _get_type function as G_GNUC_CONST.

	* tools/pdbgen/enumcode.pl
	* tools/pdbgen/lib.pl: make them generate header files using
	G_BEGIN_DECLS/G_END_DECLS.

	* pixmaps/Makefile.am
	* pixmaps/wilber3.xpm: removed ...
	* data/images/tips_wilber.png: ... and added here as PNG

	* app/gui/tips-dialog.c: load the Wilber on demand using GdkPixbuf.

	* data/images/gimp_splash.ppm: removed ...
	* data/images/gimp_splash.png: ... and added as PNG

	* app/app_procs.c
	* app/gui/splash.[ch]: load the splash image using GdkPixbuf.

	* app/gui/about-dialog.c: sink the GtkPreview.
2001-11-22 23:46:13 +00:00
Sven Neumann fe53c66c7c AUTHORS app/authors.h app/pdb/channel_cmds.c app/pdb/internal_procs.c
2001-01-29  Sven Neumann  <sven@gimp.org>

	* AUTHORS
	* app/authors.h
	* app/pdb/channel_cmds.c
	* app/pdb/internal_procs.c
	* app/pdb/selection_cmds.c
	* libgimp/gimpchannel_pdb.c
	* libgimp/gimpchannel_pdb.h
	* libgimp/gimpselection_pdb.c
	* libgimp/gimpselection_pdb.h
	* tools/authorsgen/contributors
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/selection.pdb: applied a patch from Adam Spiers
	<adam@spiers.net> which adds two new PDB functions: selection_combine
	and channel_combine_masks.
2001-01-29 00:02:33 +00:00
Sven Neumann cb7d5a179f tools/pdbgen/pdb/fileops.pdb added a few more PDB wrappers
2000-08-25  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/selection.pdb: added a few more PDB wrappers

	* tools/pdbgen/pdb/image.pdb: tweaked the help and blurb strings

	* app/image_cmds.c
	* libgimp/gimpfileops_pdb.[ch]
	* libgimp/gimpimage_pdb.c
	* libgimp/gimpselection_pdb.[ch]: regenerated

	* plug-ins/common/bz2.c
	* plug-ins/common/gz.c
	* plug-ins/common/mail.c
	* plug-ins/common/screenshot.c
	* plug-ins/common/url.c
	* plug-ins/gdyntext/gdyntext.c
	* plug-ins/gfig/gfig.c: use new PDB wrappers.
	For GDynText this change fixes a bug since it used to use the
	wrong number of arguments for gimp_selection_load().

	* plug-ins/flame/rect.[ch]: removed compiler warning
2000-08-25 15:38:38 +00:00
Manish Singh 50e478ef43 $srcdir != $builddir fix for GIMP_CONTRIBUTORS
* configure.in: $srcdir != $builddir fix for GIMP_CONTRIBUTORS

* plug-ins/common/plugin-defs.pl: More tidying up after Daniel Egger

* tools/pdbgen/Makefile.am: parse pdb defs only once for app and lib

* tools/pdbgen/lib.pl
* tools/pdbgen/pdb/procedural_db.pdb: all void rets now return a
boolean for success/failure

-Yosh
2000-08-23 01:44:59 +00:00
Manish Singh e79d0af89d tools/pdbgen/lib.pl libgimp/gimpchannel_pdb.c libgimp/gimpcolor_pdb.[ch]
* tools/pdbgen/lib.pl
* libgimp/gimpchannel_pdb.c
* libgimp/gimpcolor_pdb.[ch]
* libgimp/gimpdrawable_pdb.[ch]
* libgimp/gimpgimprc_pdb.[ch]
* libgimp/gimpgradientselect_pdb.c
* libgimp/gimpimage_pdb.c
* libgimp/gimppaths_pdb.[ch]
* libgimp/gimpselection_pdb.[ch]
* libgimp/gimptexttool_pdb.c
* libgimp/gimptools_pdb.c: landed the genned files from the changes
below. Minimal code changes (some failure case return values changed,
hopefully this won't break anything)

-Yosh
2000-06-22 20:06:02 +00:00
Michael Natterer 5f7e2a8d1c Sven Neumann <sven@gimp.org> Simon Budig <Simon.Budig@unix-ag.org> Garry
2000-06-01  Michael Natterer  <mitch@gimp.org>
	    Sven Neumann  <sven@gimp.org>
	    Simon Budig  <Simon.Budig@unix-ag.org>
	    Garry R. Osgood  <gosgood@idt.net>
	    Seth Burgess <sjburges@gimp.org>

	* libgimp/gimpchannel_pdb.[ch]
	* libgimp/gimpproceduraldb_pdb.[ch]
	* libgimp/gimpunit_pdb.[ch]: replaced with code based on
	files generated using pdbgen

	* libgimp/Makefile.am
	* libgimp/gimp.h
	* libgimp/gimp_pdb.h
	* libgimp/gimpchannel.[ch]
	* libgimp/gimpproceduraldb.[ch]: new files wrapping around the
	autogenerated PDB wrappers as found in *_pdb.[ch].

	* libgimp/gimpselection_pdb.h: minor change.

	* tools/pdbgen/pdb/procedural_db.pdb: made it create libgimp code

	* plug-ins/gap/gap_filter_pdb.c
	* plug-ins/script-fu/script-fu-console.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/xjt/xpdb_calls.c: gimp_query_procedure's signature
	is typesafe now.
2000-06-01 17:34:56 +00:00
Michael Natterer 6be23f70fa Sven Neumann <sven@gimp.org>
2000-06-01  Michael Natterer  <mitch@gimp.org>
	    Sven Neumann  <sven@gimp.org>

	Completed the new file structure. Yet only few of the _pdb.[ch]
	files are based upon generated code and nothing is really
	autogenerated...

	* app/Makefile.am
	* app/gdisplay_cmds.c      -> app/display_cmds.c
	* app/gimage_cmds.c        -> app/image_cmds.c
	* app/gimage_mask_cmds.c   -> app/selection_cmds.c
	* app/internal_procs.c: related change

	* libgimp/Makefile.am
	* libgimp/gimp.h
	* libgimp/gimp_pdb.h
	* libgimp/gimpdisplay_pdb.[ch]
	* libgimp/gimpimage_pdb.[ch]
	* libgimp/gimpselection_pdb.[ch]: replaced with code based on files
	generated using pdbgen

	* libgimp/gimpchannelops_pdb.[ch]
	* libgimp/gimpcolor_pdb.[ch]
	* libgimp/gimpedit_pdb.[ch]
	* libgimp/gimpfloatingsel_pdb.[ch]
	* libgimp/gimpgimprc_pdb.[ch]
	* libgimp/gimptexttool_pdb.[ch]
	* libgimp/gimptools_pdb.[ch]
	* libgimp/gimpundo_pdb.[ch]: new files based on generated code

	* libgimp/gimpgradientselect.[ch]
	* libgimp/gimpimage.[ch]
	* libgimp/gimpselection.[ch]: new files wrapping around the
	autogenerated PDB wrappers as found in *_pdb.[ch]. This is necessary
	since the number of parameters or their order is different from the
	PDP calls.

	* plug-ins/common/CEL.c: plugged memleak

	* plug-ins/common/aa.c: removed compiler warning

	* tools/pdbgen/Makefile.am
	* tools/pdbgen/groups.pl
	* tools/pdbgen/pdb/gdisplay.pdb     -> display.pdb
	* tools/pdbgen/pdb/gimage.pdb       -> image.pdb
	* tools/pdbgen/pdb/gimage_mask.pdb  -> selection.pdb

	* tools/pdbgen/pdb/channel_ops.pdb
	* tools/pdbgen/pdb/color.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/floating_sel.pdb
	* tools/pdbgen/pdb/gimprc.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/tools.pdb
	* tools/pdbgen/pdb/undo.pdb: made them create libgimp code
2000-06-01 12:20:13 +00:00
Michael Natterer 053af2f1c9 Sven Neumann <sven@gimp.org>
2000-05-31  Michael Natterer  <mitch@gimp.org>
	    Sven Neumann  <sven@gimp.org>

	* libgimp/Makefile.am
	* libgimp/gimpchannel_pdb.h
	* libgimp/gimpdisplay_pdb.h
	* libgimp/gimpdrawable_pdb.h
	* libgimp/gimpgradient_pdb.h
	* libgimp/gimphelp_pdb.h
	* libgimp/gimpimage_pdb.h
	* libgimp/gimplayer_pdb.h
	* libgimp/gimpparasite_pdb.h
	* libgimp/gimpselection_pdb.h
	* libgimp/gimpunit_pdb.h
	* libgimp/gimpdrawable.[ch]
	* libgimp/gimphelp.c
	* libgimp/gimppixelrgn.h
	* libgimp/gimptile.h: new files

	* libgimp/gimp.[ch]
	* libgimp/gimpchannel_pdb.c
	* libgimp/gimpdrawable_pdb.c
	* libgimp/gimpgradient_pdb.c
	* libgimp/gimppalette_pdb.c
	* libgimp/gimpselection_pdb.c
	* libgimp/gimphelp_pdb.c
	* libgimp/gimpimage_pdb.c
	* libgimp/gimplayer_pdb.c
	* libgimp/gimpgradientmenu.c
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpmenu.[ch]
	* libgimp/gimppatternmenu.c
	* libgimp/gimppixelrgn.c
	* libgimp/gimptile.c: part III of the (final) libgimp cleanup

	Split gimp.h into a bunch of headers. More or less finished the
	task of moving PDB wrappers into separate files in preparation
	of the upcoming autogen-it-all-attack.

	* libgimp/gimpcompat.h: declared the following functions obsolete:
	gimp_[channel|layer]_[width|height]
	gimp_layer_[bpp|type]
	gimp_channel_get_[image|layer]_ID

	* libgimp/gimptypes.h: new file:
	GPlugInInfo
	GTile
	GDrawable
	GPixelRgn
	GParamColor
	GParamRegion
	GParamData
	GParamDef
	GParam: s/G/Gimp/

	* app/gimphelp_cmds.c
	* app/plug_in_cmds.c
	* tools/pdbgen/pdb/gimphelp.pdb
	* tools/pdbgen/pdb/plug_in.pdb: changed help texts.
2000-05-31 06:15:06 +00:00