Commit Graph

136 Commits

Author SHA1 Message Date
573c043bab Issue #4392: Gimp Segmentation Fault triggered by Glib GParamSpec...
... property name validation.
Previous commit fixed the parameter name validation in core code. This
commit fixes the source error in the plug-in code.
2019-12-24 01:34:29 +01:00
Ell
5b857dbb4b libgimpcolor, app, modules, plug-ins: remove GEGL_ITERATOR2 define
... it's no longer needed, since GEGL commit
gegl@9dcd2cde63f95a080bf16a58c10e9ffbdd99aace.

Partially reverts commits:

6fca9959c7
cc10af72cc
49c53568d7
8edbc0d491
29f63616d2
3a2014984d
ee48ec6877
4165a315d5
764085278f
b7633c722e
6ab12061b7
754a3c5b18
22b4b647bd
55b3438328
c6d23add65
f03a84d607
822f9f0d2b
95358ca1fa
cdda37f4ee
41e8035635
6761da42b2
fb5d7832a8
97ed7817d8
46e9036578
ea9c5e6a49
24fbdfb591
beb4ecb238
4b77831e03
fcf113a39c
567ffe94ff

(cherry picked from commit 053e5edc93)
2018-12-02 11:21:36 -05:00
ef035fb297 plug-ins: migrate pagecurl to new iterator api
(cherry picked from commit 6fca9959c7)
2018-09-18 12:36:13 +02:00
79961a6545 plug-ins: install plug-ins in subfolder.
I am going to forbid plug-ins from being installed directly in the root
of the plug-ins/ directory. They will have to be installed in a
subdirectory named the same as the entry point binary.
This may seem useless for our core plug-ins which are nearly all
self-contained in single binaries, but this is actually a necessary
restriction to eliminate totally the DLL hell issue on Windows. Moving
core plug-ins in subfolders is only a necessary consequence for it.

(cherry picked from commit 870ca6334d)
2018-08-16 13:25:51 +02:00
d1d9eb17e5 configure: GLIB_COMPILE_RESOURCES is wrong when cross-compiling.
AM_PATH_GLIB_2_0 m4 macro actually computes this value using
$PKG_CONFIG. Yet $PKG_CONFIG variable is the pkg-config tool looking for
target libraries (not host), hence it would return the executable
`glib-compile-resources` built for the target.

Also using the same variable name invalidates our test: our own
AC_PATH_PROG was never run as the variable was already set. And no
environment variable could override this test anymore either. This is
why I rename the test variable to HOST_GLIB_COMPILE_RESOURCES.
2018-08-12 19:13:13 +02:00
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
dda54c1df8 Deprecate stock items for good and change all icon defines to GIMP_ICON_*
Try to sort all GIMP_ICON_* defines into FDO categories like in
https://specifications.freedesktop.org/icon-naming-spec/latest/ar01s04.html

Add defines for all icons we override, rename some icons to their FDO
standard names, and mark the ones we duplicate with a comment so we
don't forget to rename those to standard names in 3.0.
2017-03-05 16:01:59 +01: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
801bd8fb3f plug-ins: get rid of icons in dialog buttons (use labels not stock IDs) 2017-02-12 16:18:54 +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
87dd280e2c pagecurl: reduce fish genocide. 2016-04-18 22:57:16 +02:00
c4498e78f6 pagecurl: avoid 8 bit handling. 2016-04-18 22:09:50 +02:00
f456565de2 pagecurl: do a pretty basic port to the gegl API. Still 8 bit though. 2016-04-18 15:21:24 +02:00
e86362e6e4 plug-ins: Attempt to fix Jenkins error in pagecurl 2016-01-02 18:00:50 -08:00
ed042c540a plug-ins: put the pagecurl icons into a resource 2015-12-28 23:54:30 +01: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
ec786816bb */Makefile.am: merge INCLUDES into AM_CPPFLAGS
automake-1.13 finally warns about this anachronism.
2013-06-05 20:48:37 +02:00
82c3ef5f41 pagecurl: clean up generated header file again 2013-03-22 14:06:44 +01:00
968b3ffb43 pagecurl: fix build order for generated headers
don't distribute these headers either
2013-03-22 13:49:57 +01:00
d1ced11415 plug-ins: add GEGL_CFLAGS to many Makefile.am's 2012-05-02 17:46:08 +02:00
2084b13369 Bug 155733 - need to check return values of gimp_drawable_mask_bounds()
Mask intersect fixes for some plug-ins.
2012-03-04 17:49:41 +01:00
1808e4cbc3 build: Fix the location of the libm dependency
The plug-ins use symbols in libm and that's why -lm is necessary, not
because libgimpmath uses it.
2011-12-12 23:42:52 +05:30
ddddde8084 pagecurl: explicitly specify library dependencies 2011-12-12 00:31:00 +05:30
dcb4c6e34a plug-ins: use gtk_box_new() 2011-09-30 12:18:24 +02:00
ab3fe10275 plug-ins: remove some more -Wunused-but-set-variable 2011-05-15 21:12:49 +02:00
8ff66342b8 plug-ins: set progress to 1.0 when done 2011-04-10 19:28:43 +02:00
8c4d99f883 Bug 645456 - Inconsistent window (role) naming scheme
Applied patch from Christoph Kappel which adds a "gimp-" prefix to all
plug-in dialog window roles.
2011-04-08 20:31:34 +02:00
bbd7ec6b5c plug-ins: port from gimp_image_add_foo() to gimp_image_insert_foo()
I'm sure some plug-ins need to add their items *not* at the toplevel,
but since making plug-ins really tree-aware is a lot more work than
just fixing insert positions, I went for passing -1 as parent in
almost all cases. And because of laziness...
2010-09-06 11:40:46 +02:00
e77dd90fc0 Bug 574018 - Add a manifest to executables
Created a resource file for plug-ins and a rule to link it to them.
The application icon file is smaller than the default one, there's no
point in doubling the size of a plug-in executable just for an icon.

If no problems turn up, this will close the bug.
2010-09-01 08:24:45 +02:00
9186909ed3 Use gtk_adjustment_get_value() instead of adjustment->value 2009-10-09 23:02:24 +02:00
e805cb0cf4 Use gtk_dialog_get_content_area() instead of dialog->vbox 2009-07-15 18:57:12 +02:00
eed061efbb Adding Microsoft Windows executables to the .gitignore files
All binaries have been added individually.
Old binaries are supposed to show up as untracked.
2009-06-19 00:14:17 +02:00
4d7a6b10d1 Added .gitignore files generated with git svn create-ignore.
svn path=/trunk/; revision=27972
2009-01-31 11:37:44 +00:00
4ea1437646 plug-ins/common/*.c plug-ins/color-rotate/color-rotate.c
2009-01-19  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/*.c
	* plug-ins/color-rotate/color-rotate.c
	* plug-ins/file-bmp/bmp.c
	* plug-ins/file-faxg3/faxg3.c
	* plug-ins/file-fits/fits.c
	* plug-ins/file-fli/fli-gimp.c
	* plug-ins/file-ico/ico.c
	* plug-ins/file-jpeg/jpeg.c
	* plug-ins/file-psd/psd-save.c
	* plug-ins/file-psd/psd.c
	* plug-ins/file-sgi/sgi.c
	* plug-ins/file-uri/uri.c
	* plug-ins/file-xjt/xjt.c
	* plug-ins/flame/flame.c
	* plug-ins/fractal-explorer/fractal-explorer.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/gradient-flare/gradient-flare.c
	* plug-ins/help-browser/help-browser.c
	* plug-ins/ifs-compose/ifs-compose.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/lighting/lighting-main.c
	* plug-ins/map-object/map-object-main.c
	* plug-ins/maze/maze.c
	* plug-ins/metadata/metadata.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/print.c
	* plug-ins/pygimp/gimpfu.py
	* plug-ins/script-fu/script-fu-script.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/selection-to-path/selection-to-path.c
	* plug-ins/twain/twain.c
	* plug-ins/win-snap/winsnap.c: document the "run-mode" parameter
	as we document enums for core procedures.


svn path=/trunk/; revision=27922
2009-01-19 20:11:36 +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
c2d1214551 Changed "The GIMP" to "GIMP" everywhere, where it's used as a name.
2007-06-06  Mukund Sivaraman  <muks@mukund.org>

        Changed "The GIMP" to "GIMP" everywhere, where it's used as a name.


svn path=/trunk/; revision=22715
2007-06-06 08:44:52 +00:00
930d6149da removed all .cvsignore files from SVN
svn path=/trunk/; revision=21612
2006-12-30 14:31:03 +00:00
6be54f9b20 plug-ins/common/CML_explorer.c plug-ins/common/curve_bend.c
2006-06-27  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/CML_explorer.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/mapcolor.c
	* plug-ins/common/mblur.c
	* plug-ins/common/png.c
	* plug-ins/common/sample_colorize.c
	* plug-ins/common/tga.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/tiler.c
	* plug-ins/common/unsharp.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gfli/gfli.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/twain/twain.c
	* plug-ins/winsnap/winsnap.c: use canonical parameter names.
2006-06-27 12:38:45 +00:00
a450ba46bb declared GimpPlugInInfo and GimpParamDef arrays as const.
2006-05-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/*/*.c: declared GimpPlugInInfo and GimpParamDef arrays
	as const.
2006-05-16 12:26:20 +00:00
ec5d800fdf plug-ins/flame/flame.c plug-ins/gfig/gfig.c plug-ins/gflare/gflare.c
2006-03-28  Sven Neumann  <sven@gimp.org>

	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/ifscompose/ifscompose.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/maze/maze.c
	* plug-ins/metadata/metadata.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm.c
	* plug-ins/winsnap/winsnap.c: reviewed blurbs and marked them for
	translation.
2006-03-28 12:58:49 +00:00
3f5050323f removed '...' from progress messages. They are redundant because we are
2005-09-30  Michael Natterer  <mitch@gimp.org>

	* plug-ins/*/*.c: removed '...' from progress messages. They are
	redundant because we are already in a progress. Ported some more
	g_strdup_printf()/gimp_progress_init() to
	gimp_progress_init_printf(). Core will follow...
2005-09-30 08:16:10 +00:00
66217ce840 document how to construct an empty GimpIntComboBox using g_object_new().
2005-09-27  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpintcombobox.c: document how to construct an
	empty GimpIntComboBox using g_object_new().

	* plug-ins/common/aa.c
	* plug-ins/common/channel_mixer.c
	* plug-ins/common/compose.c
	* plug-ins/common/decompose.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/spheredesigner.c
	* plug-ins/gflare/gflare.c
	* plug-ins/pagecurl/pagecurl.c: use g_object_new() to construct an
	empty GimpIntComboBox. The old way of doing it caused warnings.
2005-09-27 20:51:29 +00:00
b10adabb5e Added parent window API to the GimpProgress interface and to the libgimp
2005-09-09  Michael Natterer  <mitch@gimp.org>

	Added parent window API to the GimpProgress interface and to
	the libgimp progress stuff. Might look strange, but does
	the right thing in almost all cases (image window, file dialog,
	script-fu dialog etc). Fixes bug #62988.

	* app/core/gimpprogress.[ch]: added GimpProgress::get_window()
	which should return a toplevel window ID if the progress is in a
	window that wants to be the transient parent of plug-in dialogs.

	* app/widgets/gimpwidgets-utils.[ch] (gimp_window_get_native): new
	function which returns the window handle of a GtkWindow's GdkWindow.

	* app/widgets/gimpfiledialog.c: implement ::get_window().

	* app/display/gimpdisplay.[ch]: ditto. Removed window handle API.

	* app/gui/gui-vtable.c: changed accordingly.

	* libgimpbase/gimpbaseenums.[ch] (enum GimpProgressCommand):
	added GIMP_PROGRESS_COMMAND_GET_WINDOW.

	* app/plug-in/plug-in-progress.[ch] (plug_in_progress_get_window):
	new function. Also renamed some functions to match the
	GimpProgress interface, and not the legacy PDB procedure names.

	* tools/pdbgen/pdb/progress.pdb
	* app/core/gimppdbprogress.c: implement get_window() on both
	sides of the wire, keeping backward compatibility (hopefully).

	* libgimp/gimpprogress.[ch]: deprecated gimp_progress_install()
	and added gimp_progress_install_vtable() which takes a vtable with
	padding to be extensible. Added get_window() vtable entry and
	dispatch it accordingly. Also added pulse() which was implemented
	in a hackish way before. Everything is of course backward
	compatible.

	* libgimp/gimpprogressbar.c: inmplement the get_window() stuff
	so a plug-in dialog containing a progress can be the transient
	parent of another dialog in another plug-in.

	* libgimp/gimpui.[ch] (gimp_ui_get_progress_window): new function
	which returns a foreign GdkWindow of this plug-ins progress
	window.

	Renamed gimp_window_set_transient_for_default_display() to
	gimp_window_set_transient() and make it use the progress' window
	handle instead of the display's (which is the right thing to do in
	almost all cases).

	* libgimp/gimp.def
	* libgimp/gimpui.def: add the new functions.

	* tools/pdbgen/enums.pl
	* app/pdb/internal_procs.c
	* app/pdb/progress_cmds.c
	* libgimp/gimpprogress_pdb.[ch]: regenerated.

	* libgimp/gimpexport.c
	* plug-ins/*/*.c: follow API change.
2005-09-09 18:07:31 +00:00
cc6f3e762f Call gimp_window_set_transient_for_default_display() for most plug-in
2005-09-05  Sven Neumann  <sven@gimp.org>

	* plug-ins: Call gimp_window_set_transient_for_default_display()
	for most plug-in dialogs. Not yet done are load and save dialogs
	and dialogs created from language bindings.
2005-09-05 21:40:29 +00:00
d0a5930f21 plug-ins/common/CML_explorer.c plug-ins/common/cartoon.c
2005-08-15  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/CML_explorer.c
	* plug-ins/common/cartoon.c
	* plug-ins/common/channel_mixer.c
	* plug-ins/common/colorify.c
	* plug-ins/common/compose.c
	* plug-ins/common/csource.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig-dialog.c
	* plug-ins/gfli/gfli.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/rcm/rcm_dialog.c
	* plug-ins/sgi/sgi.c: fix indentation.
2005-08-15 11:09:18 +00:00
b6b126903d plug-ins/bmp/bmp.c plug-ins/faxg3/faxg3.c plug-ins/fits/fits.c
2005-08-12  Michael Natterer  <mitch@gimp.org>

	* plug-ins/bmp/bmp.c
	* plug-ins/faxg3/faxg3.c
	* plug-ins/fits/fits.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig-dialog.c
	* plug-ins/gfig/gfig.[ch]
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/help/help.c
	* plug-ins/helpbrowser/helpbrowser.c
	* plug-ins/ifscompose/ifscompose.c
	* plug-ins/jpeg/jpeg-save.c
	* plug-ins/jpeg/jpeg.[ch]
	* plug-ins/maze/maze.[ch]
	* plug-ins/maze/maze_face.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/rcm/rcm.[ch]
	* plug-ins/rcm/rcm_dialog.c
	* plug-ins/sel2path/sel2path.c
	* plug-ins/sgi/sgi.c
	* plug-ins/uri/uri.c
	* plug-ins/xjt/xjt.c: canonicalize procedure and parameter names.
	#define them instead of repeating the same string several times.
	Minor cleanups.
2005-08-12 15:46:46 +00:00
4f870bc132 deprecated RGB intensity functions and definitions. These coefficients do
2005-08-03  Sven Neumann  <sven@gimp.org>

	* libgimpcolor/gimprgb.[ch]: deprecated RGB intensity functions
	and definitions. These coefficients do not accurately compute
	luminance for contemporary monitors. Instead the coefficients from
	the sRGB spec should be used which have now been added.

	* libgimpcolor/gimpcolor.def: updated.

	* libgimp/gimpdrawable.c
	* libgimp/gimppixelfetcher.c
	* app/base/colorize.c
	* app/base/levels.c
	* app/base/temp-buf.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage.c
	* app/gui/splash.c
	* app/widgets/gimpgradienteditor.c
	* modules/colorsel_triangle.c
	* plug-ins/common/aa.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/colorify.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/displace.c
	* plug-ins/common/engrave.c
	* plug-ins/common/gradmap.c
	* plug-ins/common/grid.c
	* plug-ins/common/mng.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/png.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/maze/handy.c
	* plug-ins/pagecurl/pagecurl.c: use gimp_rgb_luminance() and
	friends instead of the deprecated intensity functions.
2005-08-03 00:36:41 +00:00
19a65560cd use the canonical form of signal names.
2005-06-29  Sven Neumann  <sven@gimp.org>

	* plug-ins/*/*.c: use the canonical form of signal names.
2005-06-30 16:03:24 +00:00