Commit Graph

46 Commits

Author SHA1 Message Date
a88c0ffb93 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:47:19 +02:00
e16c8a2352 Move the new "default_new_layer_mode" APIs to the image...
...in both the core and libgimp.

Images now know what the default mode for new layers is:

- NORMAL for empty images
- NORMAL for images with any non-legacy layer
- NORMAL_LEGAVY for images with only legacy layers

This changes behavior when layers are created from the UI, but *also*
when created by plug-ins (yes there is a compat issue here):

- Most (all?) single-layer file importers now create NORMAL layers
- Screenshot, Webpage etc also create NORMAL layers

Scripts that create images from scratch (logos etc) should not be
affected because they usually have NORMAL_LEGACY hardcoded.

3rd party plug-ins and scripts will also behave old-style unless they
get ported to gimp_image_get_default_new_layer_mode().
2017-08-21 20:18:00 +02:00
838449254a plug-ins: use gimp_get_default_new_layer_mode() for most new layers
instead of hardcoding NORMAL_LEGACY.
2017-08-20 17:12:46 +02:00
3cf423f0cd *: rename NORMAL to NORMAL_LEGACY and NORMAL_LINEAR to NORMAL
and make NORMAL_LEGACY immutable.
2017-02-26 16:26:34 +01:00
66060e3307 app, libgimp*, plug-ins: replace enum GimpLayerModeEffects by GimpLayerMode
with proper value names. Mark most values as _BROKEN because they use
weird alpha compositing that has to die. Move GimpLayerModeEffects to
libgimpbase, deprecate it, and set it as compat enum for GimpLayerMode.
Add the GimpLayerModeEffects values as compat constants to script-fu
and pygimp.
2017-01-08 23:00:19 +01:00
5b10339c5f Bug 751584 - parasite_list() methods fail if no parasites found
Correct parasite_list() methods.
2015-09-15 09:34:55 +02:00
d965c7cab2 pygimp: add 'precision' property to Image 2015-02-21 02:32:43 -02:00
425748dab0 libgimpbase, *: rename GimpFillType values: GIMP_FOO_FILL -> GIMP_FILL_FOO
Change all users accordingly and add compat enum values and compat
constants to script-fu and pygimp.
2014-06-03 01:11:32 +02:00
c77fc779db libgimp, plug-ins: use g_strfreev() to free PDB string arrays 2012-11-27 21:16:26 +01:00
75242a03e4 pygimp: adds proper support for layer groups
Layer groups where barely supported using numeric IDs and
by calling gimp.Item.from_id. This adds a Python
GroupLayer class.
2012-04-20 04:49:16 -03:00
87646e9ace libgimp: deprecate and rename the image parasite functions
in exactly the way the drawable functios were turned into item ones.
2011-03-08 13:19:21 +01:00
16491ce8a8 pygimp: completely undeprecate pygimp-image.c
Somebody really needs to take care of deprecating all that
stuff in pygimp itself, and add API for the new functions.
2010-09-16 20:58:21 +02:00
98d8d686e8 pygimp: don't use gimp_image,layer_scale_full() 2010-09-16 20:53:15 +02:00
378a465caa python: add Image.insert_layer() and Image.insert_channel() 2010-09-06 23:43:22 +02:00
48f6219585 python: use gimp_image_insert_layer() instead of add_layer() 2010-09-06 23:31:04 +02:00
1eb50fec2e Bug 611928 - Add 'active_vectors' to pygimp
Add 'img_get_active_vectors' and 'img_set_active_vectors' to pygimp.
2010-03-07 12:34:52 +01:00
74424325ab Fix default values for Image.new_layer() methods
Use image height instead of width as the default height of the
newly created layer (bug #579400).
2009-04-21 10:24:52 +02:00
849a18b08c Bug 574149 – Can't get name/filename of files loaded from URI
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-03-04 19:35:18 +00:00
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
4bdf294b94 undef GIMP_DISABLE_DEPRECATED as we need the deprecated
2008-09-24  Sven Neumann  <sven@gimp.org>

	* plug-ins/pygimp/pygimp-image.c: undef GIMP_DISABLE_DEPRECATED
	as we need the deprecated gimp_image_free_shadow() here.

	* plug-ins/pygimp/pygimp-drawable.c: added 
Drawable.free_shadow().


svn path=/trunk/; revision=27043
2008-09-24 11:17:12 +00:00
7414d0bc16 plug-ins/pygimp/pygimp-drawable.c added optional interpolation parameters
2008-09-24  Sven Neumann  <sven@gimp.org>

	* plug-ins/pygimp/pygimp-drawable.c
	* plug-ins/pygimp/pygimp-image.c: added optional interpolation
	parameters to the image.scale() and layer.scale() methods.


svn path=/trunk/; revision=27042
2008-09-24 09:48:44 +00:00
8ec1d65a4a removed trailing whitespace
svn path=/trunk/; revision=26852
2008-09-04 08:37:32 +00:00
c103ca3c90 plug-ins/pygimp/pygimp-drawable.c plug-ins/pygimp/pygimp-vectors.c
2008-07-03  Lars-Peter Clausen  <lars@metafoo.de>

	* plug-ins/pygimp/pygimp-drawable.c
	* plug-ins/pygimp/pygimp-vectors.c
	* plug-ins/pygimp/pygimp-display.c
	* plug-ins/pygimp/pygimp-image.c: Added checks to ensure that a python
	object only is created if its id is valid. Fixes bug #536403.
	* plug-ins/pygimp/pygimp-pdb.c
	* plug-ins/pygimp/pygimp-tile.c
	* plug-ins/pygimp/pygimp-colors.c
	* plug-ins/pygimp/pygimp.h: Fix crashing when pygimp is used with
	python-2.5 on 64 bit systems. Fixes bug #540629.


svn path=/trunk/; revision=26044
2008-07-03 11:39:52 +00:00
30e0e4125c new Image.new_layer() method, which is convenience for creating, filling,
2008-01-05  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-image.c: new Image.new_layer() method,
        which is convenience for creating, filling, and attaching a new
        layer onto an image. Based on a idea and patch by João S. O. Bueno
        in bug #505982.

svn path=/trunk/; revision=24540
2008-01-05 23:36:42 +00:00
6f26979be4 plug-ins/pygimp/gimpcolormodule.c plug-ins/pygimp/gimpenumsmodule.c
2007-05-28  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/gimpcolormodule.c
        * plug-ins/pygimp/gimpenumsmodule.c
        * plug-ins/pygimp/gimpmodule.c
        * plug-ins/pygimp/gimpthumbmodule.c
        * plug-ins/pygimp/gimpuimodule.c
        * plug-ins/pygimp/pygimp-drawable.c
        * plug-ins/pygimp/pygimp-image.c
        * plug-ins/pygimp/pygimp-pdb.c
        * plug-ins/pygimp/pygimp-tile.c: cleanups.

svn path=/trunk/; revision=22644
2007-05-28 22:26:22 +00:00
e019d0c423 bind gimp_image_resize_to_layers.
2007-05-10  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-image.c: bind gimp_image_resize_to_layers.

svn path=/trunk/; revision=22466
2007-05-10 16:57:51 +00:00
e4b08205e3 Vector object wrapper API.
2006-10-24  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-vectors.c: Vector object wrapper API.

        * plug-ins/pygimp/Makefile.am: add above file.

        * plug-ins/pygimp/gimpshelf.py
        * plug-ins/pygimp/pygimp.h
        * plug-ins/pygimp/gimpmodule.c: hook the new objects in.

        * plug-ins/pygimp/pygimp-image.c: get_vectors accessor.
2006-10-24 09:16:14 +00:00
7d8998a99c automatically removed trailing whitespace from 3460 lines.
2006-01-17  Raphael Quinet  <raphael@gimp.org>

	* (about 130 *.[ch] files): automatically removed trailing
	whitespace from 3460 lines.
2006-01-17 12:43:50 +00:00
e8c7a7a497 plug-ins/pygimp/pygimp-api.h export our API to other modules in a saner
2005-06-03  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-api.h
        * plug-ins/pygimp/gimpmodule.c: export our API to other modules
        in a saner fashion. Also add checks_get_shades method.

        * plug-ins/pygimp/procbrowser.c: Use new export API.

        * plug-ins/pygimp/pygimp-drawable.c (drw_mask_intersect):
        use Py_BuildValue to build the tuple.

        * plug-ins/pygimp/pygimp-image.c (img_repr): capitalization fix.

        * plug-ins/pygimp/pygimp-rgb.c
        * plug-ins/pygimp/pygimpcolor.h
        * plug-ins/pygimp/gimpcolormodule.c: beginnings of a wrapper to
        libgimpcolor.

        * plug-ins/pygimp/gimpfu.py
        * plug-ins/pygimp/gimpenums.py
        * plug-ins/pygimp/gimpenumsmodule.c: use gimp enum API to find out
        our enums.

        * plug-ins/pygimp/Makefile.am: hook in all of the above.
2005-06-04 00:17:06 +00:00
553e840768 include Parasite flag values.
2005-03-04  Manish Singh  <yosh@gimp.org>

        * tools/pdbgen/enumcode-py.pl: include Parasite flag values.

        * plug-ins/pygimp/gimpenums.py: regenerated.

        * plug-ins/pygimp/pygimp-drawable.c: minor change for type
        consistency.

        * plug-ins/pygimp/pygimp-image.c: add keyword args, is_dirty getter.
2005-03-05 07:59:15 +00:00
a56d6b41ad no need to export PLUG_IN_INFO symbol.
2005-03-04  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/Makefile.am: no need to export PLUG_IN_INFO symbol.

        * plug-ins/pygimp/pygimp-image.c: more descriptive exception for
        Image constructor.

        * plug-ins/pygimp/pygimp-pdb.c: cosmetic changes.

        * plug-ins/pygimp/pygimp-drawable.c: wrap transform API, add keyword
        arguments to several drawable methods, wrap
        layer_resize_to_image_size.
2005-03-05 00:30:29 +00:00
872c501ee6 Make a compatibility wrapper for PyBool_FromLong for pre-2.3 versions of
2005-03-03  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp.h: Make a compatibility wrapper for
        PyBool_FromLong for pre-2.3 versions of python.

        * plug-ins/pygimp/gimpfu.py
        * plug-ins/pygimp/gimpui.py: Update to use some more modern python
        features.

        * plug-ins/pygimp/gimpmodule.c
        * plug-ins/pygimp/pygimp-display.c
        * plug-ins/pygimp/pygimp-drawable.c
        * plug-ins/pygimp/pygimp-image.c
        * plug-ins/pygimp/pygimp-parasite.c
        * plug-ins/pygimp/pygimp-pdb.c
        * plug-ins/pygimp/pygimp-tile.c: Throw exceptions on failures for
        libgimp wrappers (fixes bug #160136), and make the exception strings
        a lot more descriptive to aid debugging. Also return proper Bools when
        appropriate. Some new API wrapped as well. Still a work in progress.

        * plug-ins/pygimp/gimpplugin.py
        * plug-ins/pygimp/gimpshelf.py
        * plug-ins/pygimp/plug-ins/clothify.py
        * plug-ins/pygimp/plug-ins/foggify.py
        * plug-ins/pygimp/plug-ins/sphere.py: Add some whitespace to make
        things more readable.
2005-03-03 08:43:55 +00:00
3d8e4d1224 plug-ins/bmp/bmpread.c plug-ins/bmp/bmpwrite.c plug-ins/common/CEL.c
2004-11-02  Michael Natterer  <mitch@gimp.org>

	* plug-ins/bmp/bmpread.c
	* plug-ins/bmp/bmpwrite.c
	* plug-ins/common/CEL.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/animoptimize.c
	* plug-ins/common/autostretch_hsv.c
	* plug-ins/common/c_astretch.c
	* plug-ins/common/ccanalyze.c
	* plug-ins/common/color_enhance.c
	* plug-ins/common/film.c
	* plug-ins/common/gee.c
	* plug-ins/common/gee_zoom.c
	* plug-ins/common/gif.c
	* plug-ins/common/gifload.c
	* plug-ins/common/grid.c
	* plug-ins/common/header.c
	* plug-ins/common/mng.c
	* plug-ins/common/normalize.c
	* plug-ins/common/pcx.c
	* plug-ins/common/png.c
	* plug-ins/common/pnm.c
	* plug-ins/common/postscript.c
	* plug-ins/common/psd.c
	* plug-ins/common/psd_save.c
	* plug-ins/common/raw.c
	* plug-ins/common/sunras.c
	* plug-ins/common/tga.c
	* plug-ins/common/tiff.c
	* plug-ins/common/tile.c
	* plug-ins/common/vinvert.c
	* plug-ins/common/winclipboard.c
	* plug-ins/common/winprint.c
	* plug-ins/common/xbm.c
	* plug-ins/common/xpm.c
	* plug-ins/common/xwd.c
	* plug-ins/fits/fits.c
	* plug-ins/gfli/gfli.c
	* plug-ins/imagemap/imap_preview.c
	* plug-ins/print/print.c
	* plug-ins/pygimp/pygimp-image.c
	* plug-ins/winicon/main.c: use the new "colormap" functions
	instead of the deprecated "cmap" ones.
2004-11-02 12:00:25 +00:00
2c82c9fca0 plug-ins/pygimp/gimpfu.py Hacked up support for the new progress
2004-09-01  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/gimpfu.py
        * plug-ins/pygimp/gimpmodule.c: Hacked up support for the new
        progress interface. Emphasis on hacked.

        * plug-ins/pygimp/gimpmodule.c: Wrapped gimp_extension_enable(). Minor
        cleanups.

        * plug-ins/pygimp/pygimp-image.c
        * plug-ins/pygimp/pygimp-tile.c: Minor cleanups.
2004-09-01 07:57:15 +00:00
270c8d9c33 add undo_group_{start,end} methods.
2003-12-24  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-image.c: add undo_group_{start,end} methods.

        * plug-ins/pygimp/foggify.py
        * plug-ins/pygimp/shadow_bevel.py: and use them here, instead of
        deprecated PDB functions.
2003-12-25 06:14:15 +00:00
9fe4d3bbc3 remove add/remove_layer_mask methods...
2003-12-23  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-image.c: remove add/remove_layer_mask
        methods...

        * plug-ins/pygimp/pygimp-drawable.c: ... and put them here, as methods
        of the layer object.

        * plug-ins/pygimp/plug-ins/foggify.py: update for the above new API.
2003-12-24 00:41:12 +00:00
2f78ef6d1f use get_name for the repr instead of get_filename, to be more consistent.
2003-12-14  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/pygimp-image.c: use get_name for the repr instead
        of get_filename, to be more consistent.
2003-12-14 22:29:03 +00:00
c6de971122 marked gimp_image_add_layer_mask() and gimp_image_remove_layer_mask() as
2003-12-08  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/image.pdb: marked gimp_image_add_layer_mask()
	and gimp_image_remove_layer_mask() as deprecated. Didnn't remove
	them from the PDB because the new functions' signature differs and
	they are used very often in scripts, but removed them from the
	libgimp C wrappers.

	* tools/pdbgen/pdb/layer.pdb: added gimp_layer_add_mask() and
	gimp_layer_remove_mask().

	* libgimp/gimpcompat.h: added compat cruft.

	* 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/gimpexport.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/psd.c
	* plug-ins/pygimp/pygimp-image.c
	* plug-ins/script-fu/scripts/3d-outline.scm
	* plug-ins/script-fu/scripts/alien-neon-logo.scm
	* plug-ins/script-fu/scripts/blended-logo.scm
	* plug-ins/script-fu/scripts/burn-in-anim.scm
	* plug-ins/script-fu/scripts/carve-it.scm
	* plug-ins/script-fu/scripts/carved-logo.scm
	* plug-ins/script-fu/scripts/chrome-it.scm
	* plug-ins/script-fu/scripts/chrome-logo.scm
	* plug-ins/script-fu/scripts/coolmetal-logo.scm
	* plug-ins/script-fu/scripts/crystal-logo.scm
	* plug-ins/script-fu/scripts/fade-outline.scm
	* plug-ins/script-fu/scripts/frosty-logo.scm
	* plug-ins/script-fu/scripts/image-structure.scm
	* plug-ins/script-fu/scripts/news-text.scm
	* plug-ins/script-fu/scripts/rendermap.scm
	* plug-ins/script-fu/scripts/slide.scm
	* plug-ins/script-fu/scripts/sota-chrome-logo.scm
	* plug-ins/script-fu/scripts/speed-text.scm
	* plug-ins/script-fu/scripts/starburst-logo.scm
	* plug-ins/script-fu/scripts/textured-logo.scm
	* plug-ins/script-fu/scripts/weave.scm
	* plug-ins/script-fu/scripts/xach-effect.scm
	* plug-ins/xjt/xjt.c: changed accordingly.

2003-12-08  Michael Natterer  <mitch@gimp.org>

	* libgimp/libgimp-sections.txt
	* libgimp/tmpl/gimpimage.sgml
	* libgimp/tmpl/gimplayer.sgml: follow layer mask API change.
2003-12-08 22:33:17 +00:00
a046969687 renamed PDB function gimp_image_active_drawable() to
2003-12-08  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/image.pdb: renamed PDB function
	gimp_image_active_drawable() to gimp_image_get_active_drawable()
	so it's consistent with all other drawable getters.

	* app/pdb/procedural_db.c
	* libgimp/gimpcompat.h: added compat stuff.

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

	* plug-ins/pygimp/pygimp-image.c
	* plug-ins/script-fu/scripts/add-bevel.scm
	* plug-ins/script-fu/scripts/carved-logo.scm
	* plug-ins/script-fu/scripts/chrome-it.scm
	* plug-ins/script-fu/scripts/crystal-logo.scm
	* plug-ins/script-fu/scripts/round-corners.scm
	* plug-ins/script-fu/scripts/slide.scm
	* plug-ins/script-fu/scripts/sota-chrome-logo.scm: changed accordingly.

2003-12-08  Michael Natterer  <mitch@gimp.org>

	* libgimp/libgimp-sections.txt
	* libgimp/tmpl/gimpimage.sgml: updated.
2003-12-08 18:30:54 +00:00
3ad199d5b3 Name all PDB procedures which deal with floating selections consistently:
2003-12-05  Michael Natterer  <mitch@gimp.org>

	Name all PDB procedures which deal with floating selections
	consistently:

	* tools/pdbgen/pdb/image.pdb: renamed
	gimp_image_floating_selection() to gimp_image_get_floating_sel().

	* libgimp/gimplayer.h: removed gimp_layer_is_floating_selection #define.

	* libgimp/gimpcompat.h
	* app/pdb/procedural_db.c: added compat stuff.

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

	* plug-ins/common/curve_bend.c
	* plug-ins/common/film.c
	* plug-ins/common/rotate.c
	* plug-ins/pygimp/pygimp-image.c
	* plug-ins/xjt/xjt.c: changed accordingly.

2003-12-05  Michael Natterer  <mitch@gimp.org>

	* libgimp/libgimp-sections.txt
	* libgimp/tmpl/gimpimage.sgml
	* libgimp/tmpl/gimplayer.sgml: follow floating_sel cleanup.
2003-12-05 16:30:01 +00:00
0518761f23 plug-ins/pygimp/gimpmodule.c plug-ins/pygimp/pygimp-drawable.c
2003-12-03  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/gimpmodule.c
        * plug-ins/pygimp/pygimp-drawable.c
        * plug-ins/pygimp/pygimp-image.c
        * plug-ins/pygimp/pygimp-pdb.c
        * plug-ins/pygimp/pygimp-tile.c: some cosmetic changes to error
        messages.

        * plug-ins/pygimp/pygimp-drawable.c: accessors for name, tattoo, and
        visible live in the drawable class now, so layer and channel objects
        inherit it.
2003-12-03 21:52:09 +00:00
e7d1c4fa91 update to list all methods. Convert no arg functions to METH_NOARG (slight
2002-08-30  James Henstridge  <james@daa.com.au>

    * pygimp-*.c: update to list all methods.  Convert no arg
    functions to METH_NOARG (slight code size reduction).
2002-08-30 15:00:00 +00:00
29aa6f5037 add getsets for common drawable attributes. (PyGimpLayer_Type): convert
2002-08-30  James Henstridge  <james@daa.com.au>

    * pygimp-drawable.c (PyGimpDrawable_Type): add getsets for common
    drawable attributes.
    (PyGimpLayer_Type): convert getattr and setattr to getsets.
    (PyGimpChannel_Type): convert to getsets.

    * gimpmodule.c (new_parasite): remove.  Superceded by
    gimp.Parasite constructor.
    (pygimp_image_list): rename to match actual API.

    * pygimp-parasite.c (PyGimpParasite_Type): switch to getsets.
    (para_init): add constructor.
2002-08-30 12:46:27 +00:00
430a9f5d55 convert to use getsets. (PyGimpTile_Type): convert to use getsets.
2002-08-30  James Henstridge  <james@daa.com.au>

    * pygimp-tile.c (PyGimpPixelRgn_Type): convert to use getsets.
    (PyGimpTile_Type): convert to use getsets.

    * pygimp-image.c (PyGimpImage_Type): convert getattr and setattr
    routines into getsets.
2002-08-30 03:01:35 +00:00
1a9de76944 check if gimp_image_get_filename() returns NULL.
2002-08-29  James Henstridge  <james@daa.com.au>

    * pygimp-image.c (img_repr): check if gimp_image_get_filename()
    returns NULL.
2002-08-29 13:40:48 +00:00
dc70b17ac0 split module into multiple files, and convert types to Python 2.2 style
2002-08-28  James Henstridge  <james@daa.com.au>

    * *.c, pygimp.h: split module into multiple files, and convert
    types to Python 2.2 style types.  Still need to fix some of the
    getattr routines.
2002-08-28 15:17:29 +00:00