In GTK, a common scheme is to let a function creating a specific widget
to return a `GtkWidget *`, rather than the specific subtype, since you
often need to call API of GtkWidget, avoiding some useless casts.
For bindings however (and especially bindings to compiled languages),
this is a bit annoying, as you have to explicitly change the type of the
return value (downcast), which is not trivial (or at least desirable) in
each language.
Luckily, we can use `(type ...)` annotation for this use case, leaving
the C API unchanged, while improving the experience for bindings.
... 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.
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.
It's deprecated in GTK+ 3.x, so we get rid of some deprecation
warnings. Also, it has always only been a utility function that hides
what is really going on in the widget hierarchy.
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.
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
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-10-06 Sven Neumann <sven@gimp.org>
* libgimp/gimpprocbrowserdialog.c: capitalization and other string
changes.
* libgimpwidgets/gimpbrowser.c: string unification. Set the
message label italic.
* plug-ins/common/plugin-browser.c: use ngettext() for plural forms.
2005-07-06 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpbrowser.c: set the count label in italic.
* plug-ins/dbbrowser/gimpprocbrowser.c
* plug-ins/dbbrowser/plugin-browser.c: try to make it more obvious
that the list is the result of a query by explicitely mentioning
this in the summary below the list.
2005-07-06 Sven Neumann <sven@gimp.org>
* app/plug-in/plug-ins-query.c (match_strings): match
case-insensitive.
* libgimpwidgets/gimpbrowser.c: unset "focus-on-click" on the
filter combo-box.
* plug-ins/dbbrowser/plugin-browser.c: moved "Insertation Date"
column all the way to the right and renamed to "Installation Date".
* plug-ins/common/gauss.c: tweaked dialog packing.
2005-06-23 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimpbrowser.[ch]: added the widget living in the
right_vbox to the GimpBrowser struct instead of attaching it to
the browser.