Commit graph

30 commits

Author SHA1 Message Date
Jehan
49e534247a app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup()
Since it appeared with GLib 2.68.0, we could not change this until we
bumped the dependency which has only become possible a few days ago
(since Debian testing is our baseline for dependency bumps). Cf.
previous commit.

As this is a drop-in replacement (just a guint parameter changed to
gsize to avoid integer overflow), search-and-replace with:

> sed -i 's/g_memdup\>/g_memdup2/g' `grep -rIl 'g_memdup\>' *`

… followed by a few manual alignment tweaks when necessary.

This gets rid of the many deprecation warnings which we had lately when
building with a recent GLib version.
2021-08-26 17:32:09 +02:00
lloyd konneker
f59feba611 Fix #6540 annotations on BrushSelectButton.get_brush() 2021-03-05 19:12:30 +00:00
Niels De Graef
1f3bcb9b49 libgimp: Always use g_object_notify_by_pspec()
`g_object_notify()` actually takes a global lock to look up the property
by its name, which means there is a performance hit (albeit tiny) every
time this function is called.  So let's encourage using
`g_object_notify_by_pspec()` instead.

Another nice advantage is that it's a bit safer at compile-time, since
now typos will at least be caught by the compiler (as the enum value has
to match).
2021-01-02 14:29:04 +01:00
Niels De Graef
73252da4f4 GIR: Add some missing (nullable) annotations 2020-12-25 15:02:09 +01:00
Niels De Graef
7f58f2d6e5 gir: Add more missing (array) and (out) annotations 2020-05-04 21:29:42 +02:00
Michael Natterer
89feeecc96 libgimp: make GimpFontSelectButton interpret NULL as the current font
like all other select buttons do.
2019-08-04 17:14:18 +02:00
Michael Natterer
ae7fa2a1de libgimp: clean up the instance private code in all select buttons 2019-08-04 17:04:22 +02:00
Michael Natterer
6e80a2324f libgimp: port gimp*select.[ch] to the new plug-in API
Use the new implementation only if a GimpPlugIn exists, use the old
code otherwise. Add a GDestroyNotify for the callabck's user_data.
2019-08-04 16:08:49 +02:00
Michael Natterer
c144cf69de libgimp*: use more g_clear_pointer() 2019-07-25 12:37:52 +02:00
Michael Natterer
aca5f806c4 libgimp*: lots of doc fixes and new docs for structs and enums 2019-07-24 01:18:30 +02:00
Ell
3b0040c043 app, libgimp*, modules: don't use g_type_class_add_private() ...
... and G_TYPE_INSTANCE_GET_PRIVATE()

g_type_class_add_private() and G_TYPE_INSTANCE_GET_PRIVATE() were
deprecated in GLib 2.58.  Instead, use
G_DEFINE_[ABSTRACT_]TYPE_WITH_PRIVATE(), and
G_ADD_PRIVATE[_DYNAMIC](), and the implictly-defined
foo_get_instance_private() functions, all of which are available in
the GLib versions we depend on.

This commit only covers types registered using one of the
G_DEFINE_FOO() macros (i.e., most types), but not types with a
custom registration function, of which we still have a few -- GLib
currently only provides a (non-deprecated) public API for adding a
private struct using the G_DEFINE_FOO() macros.

Note that this commit was 99% auto-generated (because I'm not
*that* crazy :), so if there are any style mismatches... we'll have
to live with them for now.
2018-09-18 14:39:56 -04: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
f4f106ad26 libimp*: add private pointers to all instance structs
even if we don't have private members (yet). Also make class padding 8
pointers in all headers. This commit moves nothing to private, it just
makes all headers consistent and adjusts .c files accordigly.
2018-05-20 21:06:33 +02:00
Michael Natterer
1ed1d98a5a libgimp: undeprecate all GimpFooSelectButton classes 2018-05-20 21:06:32 +02:00
Elle Stone
aaed8a6eb9 app: Bug 753163 - Add blend mode "RGB Luminance"
This adds a blend mode similar to CIE Luminance - but that does not alter
saturation.
2017-02-20 13:54:37 +01:00
Michael Natterer
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
Michael Natterer
8005eea835 Remove the "GIMP" from all "Since: GIMP 2.x" API doc comments
because it confuses gtk-doc and breaks some links. Also change the
"Index of new symbols in GIMP 2.x" sections to be what seems to be the
modern standard (looked at the GLib and GTK+ docs), and update some
other stuff.
2015-05-31 21:18:09 +02:00
saul
cbce05f92c Bug 725325 - Drag and drop fails for patterns and brushes
The "drag-data-received" signal was connected wrongly
2014-02-27 18:46:26 +01:00
Michael Natterer
ec9879ea6e libgimp: also include <gegl.h> when we include "libgimpwidgets/gimpwidgets.h" 2013-11-01 22:29:46 +01:00
Michael Natterer
72b0ef397f libgimp: use gtk_box_new() 2011-09-30 10:53:32 +02:00
Michael Natterer
c78e4c8d63 libgimp: move docs from template files to inline comments
Also split up the "tools" docs into separate files so it matches
the new autogenerated PDB section headers.
2010-07-07 11:48:10 +02:00
Michael Natterer
8cee9c66a7 Build with GSEAL_ENABLE and #undef it where accessors are missing 2009-10-17 18:55:14 +02:00
Michael Natterer
8becbc6568 libgimp/gimpbrushselectbutton.c libgimp/gimpexport.c
2009-03-22  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimpbrushselectbutton.c
	* libgimp/gimpexport.c
	* libgimp/gimpfontselectbutton.c
	* libgimp/gimpgradientselectbutton.c
	* libgimp/gimpimagecombobox.c
	* libgimp/gimpitemcombobox.c
	* libgimp/gimppaletteselectbutton.c
	* libgimp/gimppatternselectbutton.c
	* libgimp/gimpprogressbar.c
	* libgimp/gimpui.c
	* libgimp/gimpzoompreview.c
	* tools/test-clipboard.c: use accessors for various members of
	GTK+ structures that don't exist any longer when GSEAL_ENABLE is
	defined.


svn path=/trunk/; revision=28191
2009-03-22 15:49:13 +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
c1c7afb03a libgimp/gimppatternselectbutton.c libgimp/gimpbrushselectbutton.c
2007-10-16  Sven Neumann  <sven@gimp.org>

	* libgimp/gimppatternselectbutton.c
	* libgimp/gimpbrushselectbutton.c
	* libgimpwidgets/gimpcolorarea.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdockbook.c: set GDK_WINDOW_TYPE_HINT_DND on
	popup windows used to implement a DND cursor.

svn path=/trunk/; revision=23841
2007-10-16 13:56:34 +00:00
Sven Neumann
606a97c862 reverted the change for bug #356901 and instead applied a patch from
2007-01-05  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpbrushselectbutton.c: reverted the change for bug
	#356901 and instead applied a patch from Kyoichiro Suda that's
	actually a better fix and also plugs a memleak (see bug 
#393158).


svn path=/trunk/; revision=21658
2007-01-05 20:30:35 +00:00
Sven Neumann
de3130ca10 initialize opacity, spacing and paint mode as described by the API docs.
2007-01-03  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpbrushselectbutton.c 
(gimp_brush_select_button_new):
	initialize opacity, spacing and paint mode as described by the 
API
	docs. Fixes bug #356901.


svn path=/trunk/; revision=21636
2007-01-03 13:39:59 +00:00
Sven Neumann
e85896c0fa use const for G_CONST_RETURN.
2006-07-05  Sven Neumann  <sven@gimp.org>

	* libgimp/gimp*selectbutton.[ch]: use const for G_CONST_RETURN.
2006-07-05 14:13:20 +00:00
Sven Neumann
a9bd28e458 libgimp/gimpfontselectbutton.[ch] libgimp/gimpgradientselectbutton.[ch]
2006-06-28  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpfontselectbutton.[ch]
	* libgimp/gimpgradientselectbutton.[ch]
	* libgimp/gimppaletteselectbutton.[ch]
	* libgimp/gimppatternselectbutton.[ch]: for consistency with
	GimpBrushSelectButton dropped the _name suffix from the getter
	and setter API.

	* libgimp/gimpfontmenu.c
	* libgimp/gimpgradientmenu.c
	* libgimp/gimppalettemenu.c
	* libgimp/gimppatternmenu.c
	* plug-ins/gfig/gfig-style.c
	* plug-ins/script-fu/script-fu-interface.c: changed accordingly.

	* libgimp/gimpbrushmenu.c
	* libgimp/gimpbrushselectbutton.[ch]
	* libgimp/gimpselectbutton.c: cleanup for consistency.

2006-06-28  Sven Neumann  <sven@gimp.org>

	* libgimp/tmpl/gimpbrushselectbutton.sgml
	* libgimp/tmpl/gimpgradientselectbutton.sgml
	* libgimp/tmpl/gimppaletteselectbutton.sgml
	* libgimp/tmpl/gimppatternselectbutton.sgml
	* libgimp/tmpl/gimpselectbutton.sgml: new files.

	* libgimp/libgimp-docs.sgml
	* libgimp/libgimp-sections.txt
	* libgimp/libgimp.types: added docs for GimpSelectButton widgets.

	* libgimp/tmpl/gimpfontselectbutton.sgml: regenerated.

	* libgimpcolor/libgimpcolor-sections.txt: added docs for GValue API.

	* libgimpcolor/tmpl/gimprgb.sgml: regenerated.

	* libgimpwidgets/libgimpwidgets-sections.txt: updated.

	* libgimpwidgets/tmpl/gimppropwidgets.sgml
	* libgimpwidgets/tmpl/gimpstock.sgml: regenerated.
2006-06-28 10:35:22 +00:00
Manish Singh
68dfb3f223 libgimp/gimpuitypes.h abstract class for resource selection buttons.
2006-06-25  Manish Singh  <yosh@gimp.org>

        * libgimp/gimpuitypes.h
        * libgimp/gimpselectbutton.[ch]: abstract class for resource selection
        buttons.

        * libgimp/gimpfontselectbutton.[ch]: derive from GimpSelectButton.

        * libgimp/gimpbrushselectbutton.[ch]
        * libgimp/gimpgradientselectbutton.[ch]
        * libgimp/gimppaletteselectbutton.[ch]
        * libgimp/gimppatternselectbutton.[ch]: replacements for
        gimp_foo_select widgets, akin to GimpFontSelectButton.

        * libgimp/gimpbrushmenu.[ch]
        * libgimp/gimpgradientmenu.[ch]
        * libgimp/gimppalettemenu.[ch]
        * libgimp/gimppatternmenu.[ch]: deprecate old API, and reimplement
        in terms of GimpFooSelectButton.

        * libgimp/gimpfontmenu.[ch]: change to use the GimpSelectButton API.

        * libgimp/gimpuimarshal.list: new marshallers for the above new
        widgets.

        * libgimp/gimpui.h: add new headers.

        * libgimp/Makefile.am: add new files.

        * plug-ins/FractalExplorer/Dialogs.c
        * plug-ins/gfig/gfig-dialog.c
        * plug-ins/gfig/gfig-style.[ch]
        * plug-ins/script-fu/script-fu-interface.c: use new API.
2006-06-26 01:47:22 +00:00