Commit Graph

57 Commits

Author SHA1 Message Date
Niels De Graef 4b6362c0bd gir: Mark more (out) annotations 2020-05-08 17:11:14 +02:00
Niels De Graef 878804fb01 Cleanup GObject signal marshallers
* Don't generate our own marshallers if they are available in GLib
  already
* Don't set the c_marshaller parameter in `g_signal_new()` if it's a
  default marshaller provided by GLib. See commit message of commit
  39e4aa3c57 on why this is the case.
2020-04-01 21:20:01 +00:00
Jehan 9dcdf37ab3 libgimpwidgets: check error return for gtk_icon_theme_load_icon().
In gimp_page_selector_add_frame(), if "gimp-frame" icon cannot be loaded
(which should not happen, but reality can always strike back!), we want
to abort from gimp_page_selector_add_frame() immediately.

Also as a consequence, its return value might be NULL, hence should be
freed with g_clear_object() instead.

This happened here because of broken meson rules (which didn't install
this icon) and ended up in forever looping errors when loading a
multi-page PDF (pages are shown in frames in a dialog):

> (file-pdf-load:12348): GdkPixbuf-CRITICAL **: 11:59:28.513: gdk_pixbuf_copy_area: assertion 'src_pixbuf != NULL' failed
2019-10-12 12:25:55 +02:00
Niels De Graef 5f92ced1f3 Add (nullable) if applicable
Basically this commit makes sure that all return values that are marked
as "Returns:" also have a `(nullable)` annotation if it is mentioned on
the same line that NULL can also be returned.

This will prevent a few problems in GObject-introspection.
2019-08-03 07:53:47 +00:00
Jehan f7fbdc89b1 libgimpwidgets: add a bunch of (transfer) values. 2019-07-31 23:48:32 +02:00
Michael Natterer 63695b4b21 libgimbase: merge gimpparam.h into gimpparamspecs.h
which means that it's now included normally via gimpbase.h
and not any longer via gimpbasetypes.h which we only did out
of lazyness. A *lot* of files in libgimp* and app/ now need to
2019-07-31 10:16:21 +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 007bc5d8ae libgimpwidgets: pack the cells in GimpPageSelector's icon view manually
See previous commit.
2018-06-12 18:32:21 +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 37e24d0059 libgimpwidgets: remove gimp3migration.[ch] 2018-05-20 21:06:29 +02:00
Michael Natterer 582c6edd54 libgimp*: use some g_clear_object() and g_clear_pointer() 2017-09-03 15:14:51 +02:00
Michael Natterer f9ee38ea33 libgimp: add blurbs to all object properties for the docs
and some minor doc fixes.
2017-06-06 21:19:17 +02:00
Michael Natterer 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
Michael Natterer 4df9a1d568 Get rid of gtk_misc_set_alignment(label) and use gtk_label_set_x,yalign() 2016-09-08 19:11:20 +02:00
Richard Kreckel dd9b0fc55b Bug 768044 - Fix many typos
This fixes many typos in comments and one in a user-visible string (msgid
"center abscisse" changed to "center abscissa" in affected po files. too).
2016-06-26 00:35:24 +02:00
Michael Natterer 71894bd787 libgimpwidgets: rename gimpstock.[ch] to gimpicons.[ch]
because stock is on its way out, so we better start renaming and
deprecating stuff sooner than later.
2015-12-12 20:44:46 +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
Michael Natterer 65a65947d9 app, libgimp: replace GTK_STOCK_FOO by icon names
unless it's a stock ID used for an action button, will address that
later.
2014-05-11 22:49:22 +02:00
Michael Natterer 2980f18973 libgimpwidgets: use gtk_icon_theme_load_icon() in GimpPageSelector 2014-05-08 09:22:46 +02:00
Michael Natterer 5fd46384a5 libgimpwidgets: include <gegl.h> in all files that include gimpcolordisplay.h 2013-11-01 22:32:31 +01:00
Michael Natterer f1c785fb37 libgimpwidgets: remove all item width logic from GimpPageSelector
It seems GtkIconView got fixed, and now the pile of code I added to
make the layout nice has exactly the opposite effect. Get rid of the
pile.
2012-11-23 23:29:44 +01:00
Michael Natterer f342b50483 libgimpwidgets: add gtk_button_box_new() to gimp3migration.[ch]
and use it all over the place.
2011-09-30 15:44:33 +02:00
Michael Natterer 83eb6fdc9e libgimpwidgets: use gtk_box_new() 2011-09-30 10:50:50 +02:00
Michael Natterer 9c6338900e libgimp*: don't derive from GtkHBox and GtkVBox in libgimp either
I know this is not 100% compatible, but is in fact absolutely safe to
change unless somebody is using the headers in ways that are totally
wrong.
2011-07-27 19:53:34 +02:00
Michael Natterer c35ff719a7 app/libgimp*: remove stuff found by -Wunused-but-set-variable 2011-05-01 23:23:19 +02:00
Michael Natterer fcfb7cf160 Use the new g_[s]list_free_full() instead of foreach() and free() 2011-03-07 17:11:28 +01:00
Michael Natterer b3ee51794d libgimpwidgets: fix most gtk-doc warnings 2010-07-05 19:04:15 +02:00
Michael Natterer 1f7ff98c45 libgimpwidgets: move docs from template files to inline comments
but leave the template file for gimpstock there because its contents
would be too much for gimpstock.h.
2010-07-05 18:01:28 +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 c30c5f60a3 libgimpbase/gimpchecks.c libgimp/gimpunitcache.c
2008-01-06  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpchecks.c
	* libgimp/gimpunitcache.c
	* libgimpwidgets/gimppageselector.c
	* libgimpwidgets/gimpcolorscales.c: removed redundant checks for
	enum values (which are unsigned) >= 0.


svn path=/trunk/; revision=24546
2008-01-06 02:14:44 +00:00
Sven Neumann c558c7ed84 formatting.
2007-11-10  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppageselector.c: formatting.


svn path=/trunk/; revision=24114
2007-11-10 16:02:30 +00:00
Mukund Sivaraman 9f080a827b updated the API documentation to indicate that the returned array is
2007-04-24  Mukund Sivaraman  <muks@mukund.org>

        * libgimpwidgets/gimppageselector.c: updated the API documentation
        to indicate that the returned array is sorted.


svn path=/trunk/; revision=22313
2007-04-24 18:31:46 +00:00
Simon Budig a8593d8141 Oops. Need to specify both pdb-skip and skip.
2006-10-25  Simon Budig  <simon@gimp.org>

	* app/vectors/vectors-enums.h: Oops. Need to specify both
	pdb-skip and skip.

	* libgimp/gimp.def
	* libgimpconfig/gimpconfig.def
	* libgimpmath/gimpmath.def
	* libgimpthumb/gimpthumb.def
	* libgimpwidgets/gimpwidgets.def: .def-file maintenance. Hope my
	changes are correct...

	With the help from
	   nm .libs/libgimpfoo-2.0.so |\
	   sed -ne "s/.* T \([a-zA-Z0-9][a-zA-Z0-9_]*\)/\t\1/p" |\
	   (echo EXPORTS ; LC_ALL=C sort )

	* libgimpwidgets/gimppageselector.c: marked stretch_frame_image()
	as static.

	* libgimp/gimpenums.c.tail
	* libgimp/gimpenums.h
	* tools/pdbgen/enums.pl: regenerated.

	* devel-docs/libgimp/tmpl/gimpfontselectbutton.sgml: this changed
	again. WTF?
2006-10-25 16:55:20 +00:00
Sven Neumann bc3c41b648 removed "(Fastest)" from "None" and added translation context (bug
2006-08-23  Sven Neumann  <sven@gimp.org>

        * libgimpbase/gimpbaseenums.[ch]: removed "(Fastest)" from "None"
        and added translation context (bug #343576).

        * app/actions/select-actions.c (select_actions): added translation
        context for "None" and "All".

        * app/widgets/gimpactiongroup.c: strip translation context from
        all labels.

        * libgimpwidgets/gimppageselector.c: fixed singular form.
2006-08-23 14:55:39 +00:00
Sven Neumann 7b1327dd86 I18n improvements based on a patch from Zbigniew Chyla:
2006-06-27  Sven Neumann  <sven@gimp.org>

	I18n improvements based on a patch from Zbigniew Chyla:

	* app/main.c:
	* modules/controller_midi.c
	* plug-ins/script-fu/scripts/guides-new.scm: marked strings for
	translation.

	* app/widgets/gimpdock.c
	* libgimpwidgets/gimppageselector.c
	* plug-ins/common/plugin-browser.c: use ngettext() for plural
forms.
2006-06-27 07:49:14 +00:00
Sven Neumann 6ebcf700d1 removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15  Sven Neumann  <sven@gimp.org>

	* app/*/*.c:
	* lib*/*.c: removed erroneous semicolon after G_DEFINE_TYPE macros.
2006-05-15 09:46:31 +00:00
Sven Neumann f2df31a50e converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* libgimp*/gimp*.[ch]: converted tabs to spaces.
2006-04-12 10:53:28 +00:00
Sven Neumann 7b24dd8e36 moved GIMP_PARAM defines from here ...
2006-01-30  Sven Neumann  <sven@gimp.org>

	* app/config/config-types.h: moved GIMP_PARAM defines from here ...

	* libgimpbase/gimpparam.h: ... to this new files.

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbasetypes.h: include the new header file.

	* libgimp/gimpfontselectbutton.c
	* libgimpconfig/gimpcolorconfig.c
	* libgimpthumb/gimpthumbnail.c
	* libgimpwidgets/gimpcellrenderercolor.c
	* libgimpwidgets/gimpcellrenderertoggle.c
	* libgimpwidgets/gimpcolorarea.c
	* libgimpwidgets/gimpcolorbutton.c
	* libgimpwidgets/gimpcolordisplay.c
	* libgimpwidgets/gimpcontroller.c
	* libgimpwidgets/gimpdialog.c
	* libgimpwidgets/gimpenumcombobox.c
	* libgimpwidgets/gimpintcombobox.c
	* libgimpwidgets/gimppageselector.c
	* libgimpwidgets/gimppreview.c
	* libgimpwidgets/gimppreviewarea.c
	* libgimpwidgets/gimpzoommodel.c
	* modules/cdisplay_colorblind.c
	* modules/cdisplay_gamma.c
	* modules/cdisplay_highcontrast.c
	* modules/cdisplay_lcms.c
	* modules/cdisplay_proof.c
	* modules/controller_linux_input.c
	* modules/controller_midi.c: use the GIMP_PARAM defines to avoid
	unnecessary string allocations.
2006-01-30 16:10:56 +00:00
Sven Neumann b614bf5e85 libgimpwidgets/gimpintcombobox.[ch] libgimpwidgets/gimppageselector.[ch]
2006-01-25  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpintcombobox.[ch]
	* libgimpwidgets/gimppageselector.[ch]
	* libgimpwidgets/gimpzoommodel.[ch]: added a priv pointer to the
	instance struct and changed the GET_PRIVATE() macro to access the
	private data via that pointer.

	* libgimpwidgets/gimpscrolledpreview.[ch]
	* libgimpwidgets/gimpwidgets.def: added a priv pointer to the
	instance struct and moved all private data to the
	GimpScrolledPreviewPrivate struct. Added freeze/thaw methods so
	that derived widgets can be implemented without accessing private
	data.

	* libgimp/gimpzoompreview.c: changed accordingly.

	* libgimp/gimpfontselectbutton.[ch]: let the priv pointer be an
	anonymous void pointer.
2006-01-25 14:35:56 +00:00
Michael Natterer 33ae55f873 libgimp/*.c libgimpconfig/*.c libgimpmodule/*.c libgimpthumb/*.c port to
2005-12-20  Michael Natterer  <mitch@gimp.org>

	* libgimp/*.c
	* libgimpconfig/*.c
	* libgimpmodule/*.c
	* libgimpthumb/*.c
	* libgimpwidgets/*.c: port to G_DEFINE_TYPE() and friends. Some
	related cleanup.
2005-12-20 20:35:23 +00:00
Sven Neumann d5d9640f23 applied a patch by Tobias Lenz that makes use of the state that was added
2005-10-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied a patch by Tobias Lenz that makes use
	of the state that was added to SIOX in order to speed up the tool.
2005-10-28 16:11:40 +00:00
Sven Neumann d6da6d0f88 added new signal "activate" and emit it if the user activates an item in
2005-10-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppageselector.[ch]: added new signal "activate"
	and emit it if the user activates an item in the icon view.

	* plug-ins/common/poppler.c
	* plug-ins/common/postscript.c: activate the dialog if the page
	selector emits "activate" as suggested in bug #320080.
2005-10-28 14:57:32 +00:00
Sven Neumann 5071edb1a6 increased spacing.
2005-07-29  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppageselector.c: increased spacing.
2005-07-29 21:02:19 +00:00
Michael Natterer 53ac1f4f01 added a label showing the number of selected pages. Allow to enter ranges
2005-07-23  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.c: added a label showing the
	number of selected pages. Allow to enter ranges like "5-" or "-7"
	(treat them as if the user had entered "5-n_pages" or "1-7").
	Minor UI spacing and code cleanup.
2005-07-23 16:37:33 +00:00
Michael Natterer a3371b1f0f added and fixed some API docs.
2005-07-08  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.c (gimp_page_selector_class_init):
	added and fixed some API docs.
2005-07-08 18:16:20 +00:00
Michael Natterer 0cf2783cc4 moved all instance members to a private struct.
2005-07-08  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.[ch]: moved all instance members
	to a private struct.
2005-07-08 13:25:57 +00:00
Michael Natterer 2813bcd8b7 fixed horizontal layout to not always use multiples of the default item
2005-07-08  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.[ch]: fixed horizontal layout to
	not always use multiples of the default item width. Use the
	maximum thumbnail icon width instead. Also fixes keynav since it
	doesn't trigger a GTK+ bug any more.
2005-07-07 23:54:32 +00:00
Michael Natterer 419b1ef03d added a frame around the thumbnails. The code is still a bit hackish...
2005-07-06  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.c: added a frame around the
	thumbnails. The code is still a bit hackish... Frame stretching
	is a 1:1 copy from app/widgets/gimpviewrenderer-frame.c so it
	can be easily factored out).
2005-07-05 22:46:34 +00:00
Michael Natterer 6ed5d64c43 some cleanup and API docs.
2005-07-02  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppageselector.c: some cleanup and API docs.
2005-07-02 14:38:22 +00:00