Add gimp_plugin_enable_precision() in libgimp which switches the
plug-in to deal with the drawables' real precision, call it from the
libgimp GeglBuffer and Babl format APIs. If it's not enabled, let the
core's plug-in convert the tiles to legacy formats when sending them
over the wire.
Apply heavily modified patch from Es Swartz which adds PDB API for
brush size, angle and aspect ratio, as well as a full interface for
ink. Changed to patch to add all procedures to the "context" group
instead of creating new PDB groups, properly use the new
GimpPDBContext APIs for paint options, and did some general cleanup.
(Warning, completely untested).
Make gimp_image_get_uri() and gimp_image_get_filename() behave as in
the GIMP 2.6 days. Add new functions gimp_image_get_xcf_uri(),
gimp_image_get_exported_uri() and gimp_image_get_imported_uri().
and simply add them to the list of "compat_procs" which have a
replacement with identical signature. Move the libgimp C functions to
non-generated files.
that have a replacement with identical signature. Register them as
compat aliases with the PDB instead. Implement the libgimp API
manually, calling the new item functions.
Works for all item types, and has much less functions and parameters
than the drawable transform API because it uses the new context
states. Untested and not finished!
which all take "parent" parameters and allow to insert items in a
tree. We don't have channel or vectors trees (yet) but API symmetry is
more important here than a currently useless parameter.
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.
2009-03-31 Sven Neumann <sven@gimp.org>
Bug 568479 – add PDB procedures to manipulate size of text box
* tools/pdbgen/pdb/text_layer.pdb: add gimp-text-layer-resize,
based on a patch from Barak Itkin.
* app/pdb/internal-procs.c
* app/pdb/text-layer-cmds.c
* libgimp/gimptextlayer_pdb.[ch]: regenerated.
svn path=/trunk/; revision=28235
2009-03-04 Sven Neumann <sven@gimp.org>
Bug 574149 – Can't get name/filename of files loaded from URI
* tools/pdbgen/pdb/image.pdb: added new procedure
gimp-image-get-uri.
* app/pdb/image-cmds.c
* libgimp/gimpimage_pdb.c: regenerated.
* plug-ins/pygimp/pygimp-image.c: wrap the new procedure into an
Image attribute.
svn path=/trunk/; revision=28103
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
2008-10-27 Sven Neumann <sven@gimp.org>
* libgimpbase/gimpbaseenums.[ch]: added new enum
GimpTextHintStyle.
* libgimp/gimpenums.c.tail
* tools/pdbgen/enums.pl: regenerated.
* app/text/gimptext.[ch]: added new property "hint-style".
Removed
"autohint" property and mapped the boolean property "hinting" to
the new enum property "hint-style".
* app/text/gimptextlayout-render.c
(gimp_text_layout_render_flags):
use "hint-style".
* app/tools/gimptextoptions.[ch]: changed tool options
accordingly.
* tools/pdbgen/pdb/text_layer.pdb: deprecated the "hinting" API
and introduced getters and setters for "hint-style".
* app/pdb/text-layer-cmds.c
* app/pdb/internal-procs.c
* libgimp/gimptextlayer_pdb.[ch]: regenerated.
svn path=/trunk/; revision=27432
2008-09-24 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/layer.pdb
* tools/pdbgen/pdb/image.pdb: added new scale procedures that
allow to specify the interpolation explicitly. Fixes bug
#486977.
Also pass the progress parameter to the scale and rotate
functions.
* app/pdb/image-cmds.c
* app/pdb/internal-procs.c
* app/pdb/layer-cmds.c
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimplayer_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=27039
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-07-14 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/palette.pdb: added new PDB function
gimp-palette-get-colors that retrieves all colors from a palette
in a single call. Based on patches from bug #332206.
* app/pdb/palette-cmds.c
* app/pdb/internal-procs.c
* libgimp/gimppalette_pdb.[ch]: regenerated.
* libgimp/gimp.def: updated.
svn path=/trunk/; revision=26192
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