]> Pileus Git - ~andy/gtk/commitdiff
urg, removed implementation of gtk_marshal_VOID__INT_INT_INT_INT. if
authorTim Janik <timj@gtk.org>
Wed, 25 Oct 2000 22:34:14 +0000 (22:34 +0000)
committerTim Janik <timj@src.gnome.org>
Wed, 25 Oct 2000 22:34:14 +0000 (22:34 +0000)
Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>

        * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
        implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
        couldn't they at least give it a non-standard name?

        * gtk/gtktextlayout.c: arg! yet another implementation of
        gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?

        * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
        gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
        home. now i know this _is_ a conspiracy.

        * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
        ::state-changed.

        * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove):
        (gtk_accel_group_create_add): marshaller signature fixups.

        * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
        pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.

        * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
        anymore.

Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>

        * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
        due to the signal system changes, it wouldn't build currently. to
        be fixed soon.

        * docs/Changes-2.0.txt: GtkSignal/GSignal updates.

        * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
        so it needs gtk_marshal_VOID__ENUM() instead of
        gtk_marshal_NONE__UINT().

        * gdk/gdk*.c: adapted type registration functions.

        * gtk/gtkbindings.c:
        * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
        gone.

        * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.

        * gtk/gtkobject.c:
        (gtk_object_destroy):
        (gtk_object_shutdown): fixed recursion guards. basically we have to
        catch the case where any of GObject.shutdown() or gtk_object_destroy()
        is called during ::destroy, and avoid recursion there.

        * gtk/gtktypeutils.c:
        * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
        boxed_copy/boxed_free. this needs a more general solution based on a
        publically installed code-generator utility.

        * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
        glib's gobject has support for that now.
        define GtkSignalMarshaller in terms of GSignalCMarshaller.

Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]:
        * gtk/gtkmarshal.[hc]:
        * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
        compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
        removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
        care of that.

        * *.c: marshaller name fixups.

        * gtk/gtkmarshal.list: added a comment briefing the format.

Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
        compatibility macros here now. more specifically, most of
        the API is preserved (yes, _most_, nonwithstanding the
        following exceptions listed, the API is stil lHUGE ;)
        things that got removed completely:
        GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
        gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
        gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
        gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
        gtk_signal_remove_emission_hook().
        non-functional functions variants:
        gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
        the GtkCallbackMarshal argument to gtk_signal_connect_full() is
        not supported anymore.
        (gtk_signal_compat_matched): new internal function to aid
        implementation of the compatibility macros, it  provides
        functionality to block/unblock/disconnect handlers based
        on func/data.

        * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,

        * *.c: adaptions to new type registration API signatures.

Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.

108 files changed:
ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
docs/Changes-2.0.txt
docs/reference/Makefile.am
docs/reference/gdk-pixbuf/tmpl/animation.sgml
docs/reference/gdk-pixbuf/tmpl/creating.sgml
docs/reference/gdk-pixbuf/tmpl/file-loading.sgml
docs/reference/gdk-pixbuf/tmpl/gdk-pixbuf-unused.sgml
docs/reference/gdk-pixbuf/tmpl/gdk-pixbuf.sgml
docs/reference/gdk-pixbuf/tmpl/initialization_versions.sgml
docs/reference/gdk-pixbuf/tmpl/module_interface.sgml
docs/reference/gdk-pixbuf/tmpl/refcounting.sgml
docs/reference/gdk-pixbuf/tmpl/scaling.sgml
docs/reference/gdk-pixbuf/tmpl/util.sgml
docs/reference/gdk/tmpl/gdk-unused.sgml
docs/reference/gdk/tmpl/input_devices.sgml
docs/reference/gdk/tmpl/threads.sgml
gdk-pixbuf/gdk-pixbuf-animation.c
gdk-pixbuf/gdk-pixbuf-loader.c
gdk-pixbuf/gdk-pixbuf.c
gdk/gdkdraw.c
gdk/gdkgc.c
gdk/gdkpixmap.c
gdk/gdkwindow.c
gdk/x11/gdkcolor-x11.c
gdk/x11/gdkdnd-x11.c
gdk/x11/gdkdrawable-x11.c
gdk/x11/gdkgc-x11.c
gdk/x11/gdkimage-x11.c
gdk/x11/gdkpixmap-x11.c
gdk/x11/gdkwindow-x11.c
gtk/Makefile.am
gtk/gdk-pixbuf-loader.c
gtk/gtkaccelgroup.c
gtk/gtkadjustment.c
gtk/gtkbindings.c
gtk/gtkbutton.c
gtk/gtkcalendar.c
gtk/gtkcellrenderer.c
gtk/gtkcellrendererpixbuf.c
gtk/gtkcellrenderertext.c
gtk/gtkcellrenderertextpixbuf.c
gtk/gtkcellrenderertoggle.c
gtk/gtkcheckmenuitem.c
gtk/gtkclist.c
gtk/gtkcolorsel.c
gtk/gtkcontainer.c
gtk/gtkctree.c
gtk/gtkcurve.c
gtk/gtkdata.c
gtk/gtkeditable.c
gtk/gtkenums.h
gtk/gtkhandlebox.c
gtk/gtkhsv.c
gtk/gtkiconfactory.c
gtk/gtkimcontext.c
gtk/gtkinputdialog.c
gtk/gtkitem.c
gtk/gtklabel.c
gtk/gtklayout.c
gtk/gtklist.c
gtk/gtklistitem.c
gtk/gtkliststore.c
gtk/gtkmain.c
gtk/gtkmarshal.list
gtk/gtkmarshalers.list
gtk/gtkmenuitem.c
gtk/gtkmenushell.c
gtk/gtkmodelsimple.c
gtk/gtknotebook.c
gtk/gtkobject.c
gtk/gtkobject.h
gtk/gtkplug.c
gtk/gtkrc.c
gtk/gtksignal.c
gtk/gtksignal.h
gtk/gtksocket.c
gtk/gtkspinbutton.c
gtk/gtkstatusbar.c
gtk/gtkstyle.c
gtk/gtktext.c
gtk/gtktextbuffer.c
gtk/gtktextlayout.c
gtk/gtktextmark.c
gtk/gtktexttagtable.c
gtk/gtktextview.c
gtk/gtkthemes.c
gtk/gtktipsquery.c
gtk/gtktogglebutton.c
gtk/gtktoolbar.c
gtk/gtktree.c
gtk/gtktreeitem.c
gtk/gtktreemodel.c
gtk/gtktreeselection.c
gtk/gtktreestore.c
gtk/gtktreeview.c
gtk/gtktreeviewcolumn.c
gtk/gtktypeutils.c
gtk/gtktypeutils.h
gtk/gtkviewport.c
gtk/gtkwidget.c
gtk/gtkwindow.c
gtk/maketypes.awk

index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index e6f54639a5217436acde02b32fd56f4669677e19..b2ffe6305ac1646c115b48e9a11247d506479d44 100644 (file)
@@ -1,3 +1,105 @@
+Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
+       implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
+       couldn't they at least give it a non-standard name?
+       
+       * gtk/gtktextlayout.c: arg! yet another implementation of
+       gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
+
+       * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
+       gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
+       home. now i know this _is_ a conspiracy.
+
+       * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
+       ::state-changed.
+
+       * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
+       (gtk_accel_group_create_add): marshaller signature fixups.
+
+       * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
+       pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
+
+       * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
+       anymore.
+
+Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
+
+       * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
+       due to the signal system changes, it wouldn't build currently. to
+       be fixed soon.
+
+       * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
+
+       * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
+       so it needs gtk_marshal_VOID__ENUM() instead of
+       gtk_marshal_NONE__UINT().
+
+       * gdk/gdk*.c: adapted type registration functions.
+
+       * gtk/gtkbindings.c:
+       * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
+       gone.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
+
+       * gtk/gtkobject.c:
+       (gtk_object_destroy):
+       (gtk_object_shutdown): fixed recursion guards. basically we have to
+       catch the case where any of GObject.shutdown() or gtk_object_destroy()
+       is called during ::destroy, and avoid recursion there.
+
+       * gtk/gtktypeutils.c:
+       * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
+       boxed_copy/boxed_free. this needs a more general solution based on a
+       publically installed code-generator utility.
+
+       * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
+       glib's gobject has support for that now.
+       define GtkSignalMarshaller in terms of GSignalCMarshaller.
+
+Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]:
+       * gtk/gtkmarshal.[hc]:
+       * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
+       compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
+       removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
+       care of that.
+
+       * *.c: marshaller name fixups.
+
+       * gtk/gtkmarshal.list: added a comment briefing the format.
+
+Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
+       compatibility macros here now. more specifically, most of
+       the API is preserved (yes, _most_, nonwithstanding the
+       following exceptions listed, the API is stil lHUGE ;)
+       things that got removed completely:
+       GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
+       gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
+       gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+       gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+       gtk_signal_remove_emission_hook().
+       non-functional functions variants:
+       gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+       the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+       not supported anymore.
+       (gtk_signal_compat_matched): new internal function to aid
+       implementation of the compatibility macros, it  provides
+       functionality to block/unblock/disconnect handlers based
+       on func/data.
+
+       * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
+
+       * *.c: adaptions to new type registration API signatures.
+
+Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
+
+       * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
+
 2000-10-25  Robert Brady  <robert@suse.co.uk>
 
        * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
index 437d73ffb76bc5d01a2e0786307dc1d5b997736a..0cdca5a4eead3e8c3907144b81bd088939684622 100644 (file)
@@ -106,6 +106,26 @@ Incompatible Changes from GTK+-1.2 to GTK+-1.4:
     have to be moved into the ::destroy implementations. The reason for doing
     this is that all object reference cycles should be broken at destruction 
     time.
+    
+* Signal system changes:
+  The Gtk 2.0 signal merly proxies the GSignal system now.
+  For future usage, direct use of the GSignal API is recommended,
+  this avoids significant performance hits where GtkArg structures
+  have to be converted into GValues. For language bindings,
+  GSignal+GClosure provide a much more flexible and convenient
+  mechanism to hook into signal emissions or install class default
+  handlers, so the old GtkSignal API for language bindings is not
+  supported anymore.
+  Functions that got removed in the Gtk signal API:
+  gtk_signal_n_emissions(), gtk_signal_n_emissions_by_name(),
+  gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
+  gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
+  gtk_signal_remove_emission_hook(), gtk_signal_query().
+  gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
+  Also, the GtkCallbackMarshal argument to gtk_signal_connect_full() is
+  not supported anymore.
+  For many of the removed functions, similar variants are available
+  in the g_signal_* namespace.
 
 - Inserting and deleting text in GtkEntry though functions such
   as gtk_entry_insert_text() now leave the cursor at its original
index 2cd7f681da51e65a4ca7a102462685cfeb6e5b29..38a74371d95db5b3533ba5ef418264f896030652 100644 (file)
@@ -1,3 +1,3 @@
 ## Process this file with automake to produce Makefile.in
 
-SUBDIRS = gdk-pixbuf gdk gtk
\ No newline at end of file
+#SUBDIRS = gdk-pixbuf gdk gtk
index c8bff9b017cfc6fb46c4595234dcd7a9630173fc..7a86308a2e6e963d516aed3de3d1f16cb1806d92 100644 (file)
@@ -18,147 +18,3 @@ Animations as multi-frame structures.
     #GdkPixbufLoader
   </para>
 
-<!-- ##### ENUM GdkPixbufFrameAction ##### -->
-  <para>
-    Each animation frame can have several things happen to it when the
-    next frame is displayed.  The #GdkPixbufFrameAction determines
-    this.  These are essentially the overlay modes supported by GIF
-    animations.
-  </para>
-
-@GDK_PIXBUF_FRAME_RETAIN: The previous image should remain displayed,
-and will potentially be occluded by the new frame.
-@GDK_PIXBUF_FRAME_DISPOSE: The animation will be reverted to the state
-before the frame was shown.
-@GDK_PIXBUF_FRAME_REVERT: The animation will be reverted to the first
-frame.
-
-<!-- ##### STRUCT GdkPixbufFrame ##### -->
-  <para>
-    This structure describes a frame in a #GdkPixbufAnimation.  Each
-    frame consists of a #GdkPixbuf, an offset of the frame within the
-    animation's bounding box, a duration, and an overlay mode or
-    action.
-  </para>
-
-
-<!-- ##### STRUCT GdkPixbufAnimation ##### -->
-  <para>
-    This structure describes an animation, which is represented as a
-    list of #GdkPixbufFrame structures.
-  </para>
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_new_from_file ##### -->
-<para>
-
-</para>
-
-@filename: 
-@error: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_ref ##### -->
-<para>
-
-</para>
-
-@animation: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_unref ##### -->
-<para>
-
-</para>
-
-@animation: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_get_frames ##### -->
-<para>
-
-</para>
-
-@animation: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_get_width ##### -->
-<para>
-
-</para>
-
-@animation: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_get_num_frames ##### -->
-<para>
-
-</para>
-
-@animation: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_animation_get_height ##### -->
-<para>
-
-</para>
-
-@animation: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_frame_get_pixbuf ##### -->
-<para>
-
-</para>
-
-@frame: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_frame_get_action ##### -->
-<para>
-
-</para>
-
-@frame: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_frame_get_y_offset ##### -->
-<para>
-
-</para>
-
-@frame: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_frame_get_delay_time ##### -->
-<para>
-
-</para>
-
-@frame: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_frame_get_x_offset ##### -->
-<para>
-
-</para>
-
-@frame: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
index b98b4024fa727e1aeef9cfe2427c9e003f413fa9..72ca320a18c18f4687b2661c91f4af19131bb71c 100644 (file)
@@ -43,68 +43,3 @@ Creating a pixbuf from image data that is already in memory.
     gdk_pixbuf_finalize().
   </para>
 
-<!-- ##### FUNCTION gdk_pixbuf_new ##### -->
-<para>
-
-</para>
-
-@colorspace: 
-@has_alpha: 
-@bits_per_sample: 
-@width: 
-@height: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_new_from_data ##### -->
-<para>
-
-</para>
-
-@data: 
-@colorspace: 
-@has_alpha: 
-@bits_per_sample: 
-@width: 
-@height: 
-@rowstride: 
-@destroy_fn: 
-@destroy_fn_data: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_new_from_xpm_data ##### -->
-<para>
-
-</para>
-
-@data: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_new_from_inline ##### -->
-<para>
-
-</para>
-
-@inline_pixbuf: 
-@copy_pixels: 
-@length: 
-@error: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_copy ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
index 7025c7edd54a516e175535e0b6225d87e5e85239..149903b4371f60c0c5fd7f315fadce170f708ba5 100644 (file)
@@ -25,18 +25,3 @@ Loading a pixbuf from a file.
     #GdkPixbufLoader.
   </para>
 
-<!-- ##### FUNCTION gdk_pixbuf_new_from_file ##### -->
-<para>
-
-</para>
-
-@filename: 
-@error: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
index 456531628e1b7ee2b55ab1b00acf2d80b1ac0bd9..41b1751d2e93d6e0513144040a676fa1325f1271 100644 (file)
-<!-- ##### USER_FUNCTION GdkPixbufLastUnref ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_get_rowstride ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### ARG GnomeCanvasPixbuf:width_in_pixels ##### -->
   <para>
-    A function of this type can be used to override the default
-    operation when a pixbuf loses its last reference, i.e. when
-    gdk_pixbuf_unref() is called on a #GdkPixbuf structure that has a
-    reference count of 1.  This function should determine whether to
-    finalize the pixbuf by calling gdk_pixbuf_finalize(), or whether
-    to just resume normal execution.  The last unref handler for a
-    #GdkPixbuf can be set using the
-    gdk_pixbuf_set_last_unref_handler() function.  By default, pixbufs
-    will be finalized automatically if no last unref handler has been
-    defined.
+    If this argument is %TRUE, then the width of the pixbuf will be
+    considered to be in pixels, that is, it will not be visually
+    scaled even if the item's affine transformation changes.  If this
+    is %FALSE, then the width of the pixbuf will be considered to be
+    in canvas units, and so will be scaled normally by affine
+    transformations.  The default is %FALSE.
   </para>
 
-@pixbuf: The pixbuf that is losing its last reference.
-@data: User closure data.
 
-<!-- ##### SECTION ./tmpl/from-drawables.sgml:Title ##### -->
-Drawables to Pixbufs
+<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:See_Also ##### -->
+  <para>
+    GdkRGB
+  </para>
 
 
-<!-- ##### ARG GnomeCanvasPixbuf:height_pixels ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_load_module ##### -->
 <para>
 
 </para>
 
+@image_module: 
+@error: 
+@Returns: 
 
-<!-- ##### SECTION ./tmpl/rendering.sgml:See_Also ##### -->
+<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:See_Also ##### -->
   <para>
-    GdkRGB
+    #GnomeCanvas, #GdkPixbuf
   </para>
 
 
-<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Title ##### -->
-X Drawables to Pixbufs
+<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Short_Description ##### -->
 
 
-<!-- ##### FUNCTION gdk_pixbuf_render_pixmap_and_mask ##### -->
+
+<!-- ##### ENUM GdkPixbufError ##### -->
 <para>
 
 </para>
 
-@pixbuf: 
-@pixmap_return: 
-@mask_return: 
-@alpha_threshold: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
+@GDK_PIXBUF_ERROR_CORRUPT_IMAGE: 
+@GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY: 
+@GDK_PIXBUF_ERROR_BAD_OPTION_VALUE: 
+@GDK_PIXBUF_ERROR_UNKNOWN_TYPE: 
+@GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION: 
+@GDK_PIXBUF_ERROR_FAILED: 
 
-<!-- ##### ARG GnomeCanvasPixbuf:width ##### -->
-  <para>
-    Indicates the width the pixbuf will be scaled to.  This argument
-    will only be used if the <link
-    linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument
-    is %TRUE.  If the <link
-    linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
-    argument is %FALSE, the width will be taken to be in canvas units,
-    and thus will be scaled along with the canvas item's affine
-    transformation.  If width_in_pixels is %TRUE, the width will be
-    taken to be in pixels, and will visually remain a constant size
-    even if the item's affine transformation changes.
-  </para>
+<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Short_Description ##### -->
+Canvas item to display #GdkPixbuf images.
 
 
-<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable ##### -->
-<para>
+<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Long_Description ##### -->
+  <para>
+    The &gdk-pixbuf; Xlib library provides several convenience
+    functions to render pixbufs to X drawables.  It uses XlibRGB to
+    render the image data.
+  </para>
 
-</para>
+  <para>
+    These functions are analogous to those for the Gdk version of
+    &gdk-pixbuf;.
+  </para>
 
-@pixbuf: 
-@drawable: 
-@gc: 
-@src_x: 
-@src_y: 
-@dest_x: 
-@dest_y: 
-@width: 
-@height: 
-@dither: 
-@x_dither: 
-@y_dither: 
 
-<!-- ##### FUNCTION gdk_pixbuf_get_from_drawable ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_render_threshold_alpha ##### -->
 <para>
 
 </para>
 
-@dest: 
-@src: 
-@cmap: 
+@pixbuf: 
+@bitmap: 
 @src_x: 
 @src_y: 
 @dest_x: 
 @dest_y: 
 @width: 
 @height: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
+@alpha_threshold: 
 
-<!-- ##### ARG GnomeCanvasPixbuf:x ##### -->
+<!-- ##### SECTION ./tmpl/rendering.sgml:Long_Description ##### -->
   <para>
-    Indicates the horizontal translation offset of the pixbuf item's
-    image.  This offset may not actually appear horizontal, since it
-    will be affected by the item's affine transformation.  The default
-    is 0.0.
+    The &gdk-pixbuf; library provides several convenience functions to
+    render pixbufs to GDK drawables.  It uses the GdkRGB to render the
+    image data.
   </para>
 
-
-<!-- ##### ARG GnomeCanvasPixbuf:y ##### -->
   <para>
-    Indicates the vertical translation offset of the pixbuf item's
-    image.  Works in the same way as the <link
-    linkend="GnomeCanvasPixbuf--x">x</link> argument.  The default is
-    0.0.
+    At this point there is not a standard alpha channel extension for
+    the X Window System, so it is not possible to use full opacity
+    information when painting images to arbitrary drawables.  The
+    &gdk-pixbuf; convenience functions will threshold the opacity
+    information to create a bi-level clipping mask (black and white),
+    and use that to draw the image onto a drawable.
   </para>
 
+  <important>
+    <para>
+      Since these functions use GdkRGB for rendering, you must
+      initialize GdkRGB before using any of them.  You can do this by
+      calling gdk_rgb_init() near the beginning of your program.
+    </para>
+  </important>
 
-<!-- ##### SECTION ./tmpl/xlib-init.sgml:Short_Description ##### -->
-Initializing the &gdk-pixbuf; Xlib library.
 
+<!-- ##### SECTION ./tmpl/xlib-init.sgml:Title ##### -->
+&gdk-pixbuf; Xlib initialization
 
-<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Long_Description ##### -->
-  <para>
-    The functions in this section allow you to take the image data
-    from an X drawable and dump it into a #GdkPixbuf.  This can be
-    used for screenshots and other special effects.  Note that these
-    operations can be expensive, since the image data has to be
-    transferred from the X server to the client program and converted.
-  </para>
 
-  <para>
-    These functions are analogous to those for the Gdk version of
-    &gdk-pixbuf;.
-  </para>
+<!-- ##### FUNCTION gdk_pixbuf_saturate_and_pixelate ##### -->
+<para>
 
+</para>
 
-<!-- ##### FUNCTION gdk_pixbuf_new_from_art_pixbuf ##### -->
+@src: 
+@dest: 
+@saturation: 
+@pixelate: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_height ##### -->
 <para>
 
 </para>
 
-@art_pixbuf: 
+@pixbuf: 
 @Returns: 
 
-<!-- ##### SECTION ./tmpl/xlib-init.sgml:See_Also ##### -->
-  <para>
-    XlibRGB
-  </para>
+<!-- ##### FUNCTION gdk_pixbuf_get_bits_per_sample ##### -->
+<para>
 
+</para>
 
-<!-- ##### ARG GnomeCanvasPixbuf:y_in_pixels ##### -->
+@pixbuf: 
+@Returns: 
+
+<!-- ##### MACRO GDK_PIXBUF_MAJOR ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:height_in_pixels ##### -->
   <para>
     Works in the same way as the <link
-    linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>
-    argument, but controls whether the <link
-    linkend="GnomeCanvasPixbuf--y">y</link> translation offset is
-    scaled or not.  The default is %FALSE.
+    linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
+    argument.  The default is %FALSE.
   </para>
 
-<!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
 
+<!-- ##### FUNCTION gdk_pixbuf_animation_get_frames ##### -->
+<para>
 
-<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:See_Also ##### -->
-  <para>
-    #GnomeCanvas, #GdkPixbuf
-  </para>
+</para>
 
+@animation: 
+@Returns: 
 
-<!-- ##### ARG GnomeCanvasPixbuf:pixbuf ##### -->
-  <para>
-    Contains a pointer to a #GdkPixbuf structure that will be used by
-    the pixbuf canvas item as an image source.  When a pixbuf is set
-    its reference count is incremented; if the pixbuf item kept a
-    pointer to another #GdkPixbuf structure, the reference count of
-    this structure will be decremented.  Also, the GdkPixbuf's
-    reference count will automatically be decremented when the
-    #GnomeCanvasPixbuf item is destroyed.  When a pixbuf is queried, a
-    reference count will not be added to the return value; you must do
-    this yourself if you intend to keep the pixbuf structure around.
-  </para>
+<!-- ##### FUNCTION gdk_pixbuf_animation_get_width ##### -->
+<para>
 
+</para>
 
-<!-- ##### ARG GnomeCanvasPixbuf:y_pixels ##### -->
+@animation: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:See_Also ##### -->
 <para>
 
 </para>
 
 
-<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:See_Also ##### -->
-  <para>
-    GdkRGB
-  </para>
+<!-- ##### SECTION ./tmpl/rendering.sgml:Title ##### -->
+Rendering
 
 
-<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Long_Description ##### -->
-  <para>
-    The &gdk-pixbuf; Xlib library provides several convenience
-    functions to render pixbufs to X drawables.  It uses XlibRGB to
-    render the image data.
-  </para>
+<!-- ##### MACRO GDK_PIXBUF_MINOR ##### -->
+<para>
 
-  <para>
-    These functions are analogous to those for the Gdk version of
-    &gdk-pixbuf;.
-  </para>
+</para>
 
 
-<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Short_Description ##### -->
+<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Short_Description ##### -->
+Getting parts of an X drawable's image data into a pixbuf.
 
 
+<!-- ##### STRUCT GdkPixbufModule ##### -->
+<para>
 
-<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Short_Description ##### -->
-Canvas item to display #GdkPixbuf images.
+</para>
 
+@module_name: 
+@format_check: 
+@module: 
+@load: 
+@load_xpm_data: 
+@begin_load: 
+@stop_load: 
+@load_increment: 
+@load_animation: 
+@save: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_colorspace ##### -->
+<para>
 
-<!-- ##### ARG GnomeCanvasPixbuf:x_in_pixels ##### -->
-  <para>
-    If this argument is %TRUE, the pixbuf's translation with respect
-    to its logical origin in item-relative coordinates will be in
-    pixels, that is, the visible offset will not change even if the
-    item's affine transformation changes.  If it is %FALSE, the
-    pixbuf's translation will be taken to be in canvas units, and thus
-    will change along with the item's affine transformation.  The
-    default is %FALSE.
-  </para>
+</para>
 
+@pixbuf: 
+@Returns: 
 
-<!-- ##### SECTION ./tmpl/from-drawables.sgml:Long_Description ##### -->
-  <para>
-    The functions in this section allow you to take the image data
-    from a GDK drawable and dump it into a #GdkPixbuf.  This can be
-    used for screenshots and other special effects.  Note that these
-    operations can be expensive, since the image data has to be
-    transferred from the X server to the client program and converted.
-  </para>
-
-
-<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Long_Description ##### -->
-  <para>
-    The XlibRGB set of functions is a port of the GdkRGB library to
-    use plain Xlib and X drawables.  You can use these functions to
-    render RGB buffers into drawables very quickly with high-quality
-    dithering.
-  </para>
-
-
-<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Short_Description ##### -->
-Functions for rendering RGB buffers to X drawables.
-
-
-<!-- ##### MACRO GNOME_CANVAS_PIXBUF ##### -->
-  <para>
-    Casts a #GtkOjbect to a #GnomeCanvasPixbuf.
-  </para>
-
-@obj: A GTK+ object.
-
-<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:See_Also ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_animation_get_num_frames ##### -->
 <para>
 
 </para>
 
+@animation: 
+@Returns: 
 
-<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Short_Description ##### -->
-Rendering a pixbuf to an X drawable.
+<!-- ##### SECTION ./tmpl/from-drawables.sgml:Short_Description ##### -->
+Getting parts of a drawable's image data into a pixbuf.
 
 
-<!-- ##### FUNCTION gdk_pixbuf_finalize ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_render_pixmap_and_mask ##### -->
 <para>
 
 </para>
 
-@pixbuf: <!--
+@pixbuf: 
+@pixmap_return: 
+@mask_return: 
+@alpha_threshold: <!--
 Local variables:
 mode: sgml
 sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
 End:
 -->
 
-<!-- ##### SECTION ./tmpl/rendering.sgml:Short_Description ##### -->
-Rendering a pixbuf to a GDK drawable.
+<!-- ##### FUNCTION gdk_pixbuf_composite_color ##### -->
+<para>
 
+</para>
 
-<!-- ##### FUNCTION gdk_pixbuf_set_last_unref_handler ##### -->
+@src: 
+@dest: 
+@dest_x: 
+@dest_y: 
+@dest_width: 
+@dest_height: 
+@offset_x: 
+@offset_y: 
+@scale_x: 
+@scale_y: 
+@interp_type: 
+@overall_alpha: 
+@check_x: 
+@check_y: 
+@check_size: 
+@color1: 
+@color2: 
+
+<!-- ##### FUNCTION gdk_pixbuf_new_from_data ##### -->
 <para>
 
 </para>
 
-@pixbuf: 
-@last_unref_fn: 
-@last_unref_fn_data: 
-
-<!-- ##### ARG GnomeCanvasPixbuf:x_set ##### -->
-  <para>
-    Determines whether the <link
-    linkend="GnomeCanvasPixbuf--x">x</link> argument is used to
-    translate the pixbuf from its logical origin in item-relative
-    coordinates.
-  </para>
+@data: 
+@colorspace: 
+@has_alpha: 
+@bits_per_sample: 
+@width: 
+@height: 
+@rowstride: 
+@destroy_fn: 
+@destroy_fn_data: 
+@Returns: 
 
+<!-- ##### FUNCTION gdk_pixbuf_animation_new_from_file ##### -->
+<para>
 
-<!-- ##### ARG GnomeCanvasPixbuf:width_in_pixels ##### -->
-  <para>
-    If this argument is %TRUE, then the width of the pixbuf will be
-    considered to be in pixels, that is, it will not be visually
-    scaled even if the item's affine transformation changes.  If this
-    is %FALSE, then the width of the pixbuf will be considered to be
-    in canvas units, and so will be scaled normally by affine
-    transformations.  The default is %FALSE.
-  </para>
+</para>
 
+@filename: 
+@error: 
+@Returns: 
 
-<!-- ##### SECTION ./tmpl/xlib-init.sgml:Long_Description ##### -->
+<!-- ##### ARG GnomeCanvasPixbuf:y_in_pixels ##### -->
   <para>
-    In addition to the normal Gdk-specific functions, the &gdk-pixbuf;
-    package provides a small library that lets Xlib-only applications
-    use #GdkPixbuf structures and render them to X drawables.  The
-    functions in this section are used to initialize the &gdk-pixbuf;
-    Xlib library.  This library must be initialized near the beginning
-    or the program or before calling any of the other &gdk-pixbuf;
-    Xlib functions; it cannot be initialized automatically since
-    Xlib-only applications do not call gdk_rgb_init() like GNOME
-    applications do.
+    Works in the same way as the <link
+    linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>
+    argument, but controls whether the <link
+    linkend="GnomeCanvasPixbuf--y">y</link> translation offset is
+    scaled or not.  The default is %FALSE.
   </para>
 
+<!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
 
-<!-- ##### FUNCTION gdk_pixbuf_get_format ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
 
-<!-- ##### ARG GnomeCanvasPixbuf:height_in_pixels ##### -->
+<!-- ##### STRUCT GdkPixbufAnimation ##### -->
   <para>
-    Works in the same way as the <link
-    linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
-    argument.  The default is %FALSE.
+    This structure describes an animation, which is represented as a
+    list of #GdkPixbufFrame structures.
   </para>
 
 
-<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:See_Also ##### -->
+<!-- ##### SECTION ./tmpl/xlib-init.sgml:Short_Description ##### -->
+Initializing the &gdk-pixbuf; Xlib library.
+
+
+<!-- ##### FUNCTION gdk_pixbuf_frame_get_delay_time ##### -->
 <para>
 
 </para>
 
+@frame: 
+@Returns: 
 
-<!-- ##### ARG GnomeCanvasPixbuf:width_set ##### -->
+<!-- ##### ENUM GdkInterpType ##### -->
   <para>
-    Determines whether the <link
-    linkend="GnomeCanvasPixbuf--width">width</link> argument is taken
-    into account when scaling the pixbuf item.  If this argument is
-    %FALSE, then the width value of the pixbuf will be used instead.
-    This argument is %FALSE by default.
+    This enumeration describes the different interpolation modes that
+    can be used with the scaling functions.
+
+    <note>
+      <para>
+       Cubic filtering is missing from the list; hyperbolic
+       interpolation is just as fast and results in higher quality.
+      </para>
+    </note>
   </para>
 
+@GDK_INTERP_NEAREST: Nearest neighbor sampling; this is the fastest
+and lowest quality mode.
+@GDK_INTERP_TILES: This is an accurate simulation of the PostScript
+image operator without any interpolation enabled.  Each pixel is
+rendered as a tiny parallelogram of solid color, the edges of which
+are implemented with antialiasing.  It resembles nearest neighbor for
+enlargement, and bilinear for reduction.
+@GDK_INTERP_BILINEAR: Bilinear interpolation.  For enlargement, it is
+equivalent to point-sampling the ideal bilinear-interpolated image.
+For reduction, it is equivalent to laying down small tiles and
+integrating over the coverage area.
+@GDK_INTERP_HYPER: This is the slowest and highest quality
+reconstruction function.  It is derived from the hyperbolic filters in
+Wolberg's "Digital Image Warping", and is formally defined as the
+hyperbolic-filter sampling the ideal hyperbolic-filter interpolated
+image (the filter is designed to be idempotent for 1:1 pixel mapping).
 
 <!-- ##### FUNCTION gdk_pixbuf_render_to_drawable_alpha ##### -->
 <para>
@@ -387,133 +380,29 @@ Rendering a pixbuf to a GDK drawable.
 @x_dither: 
 @y_dither: 
 
-<!-- ##### SECTION ./tmpl/xlib-init.sgml:Title ##### -->
-&gdk-pixbuf; Xlib initialization
-
-
-<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Short_Description ##### -->
-Getting parts of an X drawable's image data into a pixbuf.
-
-
-<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Title ##### -->
-XlibRGB
-
-
-<!-- ##### ARG GnomeCanvasPixbuf:x_pixels ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### ARG GnomeCanvasPixbuf:height ##### -->
-  <para>
-    Indicates the height the pixbuf will be scaled to.  This argument
-    will only be used if the <link
-    linkend="GnomeCanvasPixbuf--height-set">height_set</link> argument
-    is %TRUE.  Works in the same way as the <link
-    linkend="GnomeCanvasPixbuf--width">width</link> argument.
-  </para>
-
-
-<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:See_Also ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/from-drawables.sgml:See_Also ##### -->
-  <para>
-    gdk_image_get().
-  </para>
-
-
-<!-- ##### STRUCT GdkPixbufAnimationClass ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### SECTION ./tmpl/rendering.sgml:Title ##### -->
-Rendering
-
-
-<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Title ##### -->
-GnomeCanvasPixbuf
-
-
-<!-- ##### MACRO GDK_PIXBUF_LOADER ##### -->
-  <para>
-    Casts a #GtkObject to a #GdkPixbufLoader.
-  </para>
-
-@obj: A GTK+ object.
-
-<!-- ##### ARG GnomeCanvasPixbuf:y_set ##### -->
+<!-- ##### ENUM GdkPixbufFrameAction ##### -->
   <para>
-    Determines whether the <link
-    linkend="GnomeCanvasPixbuf--y">y</link> argument is used to
-    translate the pixbuf from its logical origin in item-relative
-    coordinates.  Works in the same way as the <link
-    linkend="GnomeCanvasPixbuf--x-set">x_set</link> argument.  The
-    default is %FALSE.
+    Each animation frame can have several things happen to it when the
+    next frame is displayed.  The #GdkPixbufFrameAction determines
+    this.  These are essentially the overlay modes supported by GIF
+    animations.
   </para>
 
+@GDK_PIXBUF_FRAME_RETAIN: The previous image should remain displayed,
+and will potentially be occluded by the new frame.
+@GDK_PIXBUF_FRAME_DISPOSE: The animation will be reverted to the state
+before the frame was shown.
+@GDK_PIXBUF_FRAME_REVERT: The animation will be reverted to the first
+frame.
 
-<!-- ##### SECTION ./tmpl/rendering.sgml:Long_Description ##### -->
-  <para>
-    The &gdk-pixbuf; library provides several convenience functions to
-    render pixbufs to GDK drawables.  It uses the GdkRGB to render the
-    image data.
-  </para>
-
+<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Long_Description ##### -->
   <para>
-    At this point there is not a standard alpha channel extension for
-    the X Window System, so it is not possible to use full opacity
-    information when painting images to arbitrary drawables.  The
-    &gdk-pixbuf; convenience functions will threshold the opacity
-    information to create a bi-level clipping mask (black and white),
-    and use that to draw the image onto a drawable.
+    The XlibRGB set of functions is a port of the GdkRGB library to
+    use plain Xlib and X drawables.  You can use these functions to
+    render RGB buffers into drawables very quickly with high-quality
+    dithering.
   </para>
 
-  <important>
-    <para>
-      Since these functions use GdkRGB for rendering, you must
-      initialize GdkRGB before using any of them.  You can do this by
-      calling gdk_rgb_init() near the beginning of your program.
-    </para>
-  </important>
-
-
-<!-- ##### SECTION ./tmpl/from-drawables.sgml:Short_Description ##### -->
-Getting parts of a drawable's image data into a pixbuf.
-
-
-<!-- ##### FUNCTION gdk_pixbuf_render_threshold_alpha ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@bitmap: 
-@src_x: 
-@src_y: 
-@dest_x: 
-@dest_y: 
-@width: 
-@height: 
-@alpha_threshold: 
-
-<!-- ##### ARG GnomeCanvasPixbuf:width_pixels ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### STRUCT GdkPixbufClass ##### -->
-<para>
-
-</para>
-
 
 <!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Long_Description ##### -->
   <para>
@@ -684,28 +573,789 @@ Getting parts of a drawable's image data into a pixbuf.
   </refsect2>
 
 
-<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Long_Description ##### -->
-<para>
-
-</para>
+<!-- ##### SECTION ./tmpl/rendering.sgml:Short_Description ##### -->
+Rendering a pixbuf to a GDK drawable.
 
 
-<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Title ##### -->
-Xlib Rendering
+<!-- ##### MACRO GDK_PIXBUF_LOADER ##### -->
+  <para>
+    Casts a #GtkObject to a #GdkPixbufLoader.
+  </para>
+
+@obj: A GTK+ object.
+
+<!-- ##### STRUCT GdkPixbufAnimationClass ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:x_set ##### -->
+  <para>
+    Determines whether the <link
+    linkend="GnomeCanvasPixbuf--x">x</link> argument is used to
+    translate the pixbuf from its logical origin in item-relative
+    coordinates.
+  </para>
+
+
+<!-- ##### USER_FUNCTION ModulePreparedNotifyFunc ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@user_data: 
+
+<!-- ##### MACRO GNOME_CANVAS_PIXBUF ##### -->
+  <para>
+    Casts a #GtkOjbect to a #GnomeCanvasPixbuf.
+  </para>
+
+@obj: A GTK+ object.
+
+<!-- ##### FUNCTION gdk_pixbuf_ref ##### -->
+  <para>
+
+  </para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_width ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### ENUM GdkColorspace ##### -->
+  <para>
+    This enumeration defines the color spaces that are supported by
+    the &gdk-pixbuf; library.  Currently only RGB is supported.
+  </para>
+
+@GDK_COLORSPACE_RGB: Indicates a red/green/blue additive color space.
+
+<!-- ##### ARG GnomeCanvasPixbuf:width_set ##### -->
+  <para>
+    Determines whether the <link
+    linkend="GnomeCanvasPixbuf--width">width</link> argument is taken
+    into account when scaling the pixbuf item.  If this argument is
+    %FALSE, then the width value of the pixbuf will be used instead.
+    This argument is %FALSE by default.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_get_module ##### -->
+<para>
+
+</para>
+
+@buffer: 
+@size: 
+@filename: 
+@error: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Long_Description ##### -->
+  <para>
+    The functions in this section allow you to take the image data
+    from an X drawable and dump it into a #GdkPixbuf.  This can be
+    used for screenshots and other special effects.  Note that these
+    operations can be expensive, since the image data has to be
+    transferred from the X server to the client program and converted.
+  </para>
+
+  <para>
+    These functions are analogous to those for the Gdk version of
+    &gdk-pixbuf;.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_get_named_module ##### -->
+<para>
+
+</para>
+
+@name: 
+@error: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_new ##### -->
+<para>
+
+</para>
+
+@colorspace: 
+@has_alpha: 
+@bits_per_sample: 
+@width: 
+@height: 
+@Returns: 
+
+<!-- ##### USER_FUNCTION GdkPixbufLastUnref ##### -->
+  <para>
+    A function of this type can be used to override the default
+    operation when a pixbuf loses its last reference, i.e. when
+    gdk_pixbuf_unref() is called on a #GdkPixbuf structure that has a
+    reference count of 1.  This function should determine whether to
+    finalize the pixbuf by calling gdk_pixbuf_finalize(), or whether
+    to just resume normal execution.  The last unref handler for a
+    #GdkPixbuf can be set using the
+    gdk_pixbuf_set_last_unref_handler() function.  By default, pixbufs
+    will be finalized automatically if no last unref handler has been
+    defined.
+  </para>
+
+@pixbuf: The pixbuf that is losing its last reference.
+@data: User closure data.
+
+<!-- ##### FUNCTION gdk_pixbuf_new_from_inline ##### -->
+<para>
+
+</para>
+
+@inline_pixbuf: 
+@copy_pixels: 
+@length: 
+@error: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/xlib-init.sgml:See_Also ##### -->
+  <para>
+    XlibRGB
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_unref ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_has_alpha ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:See_Also ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### USER_FUNCTION GdkPixbufDestroyNotify ##### -->
+  <para>
+    A function of this type is responsible for freeing the pixel array
+    of a pixbuf.  The gdk_pixbuf_new_from_data() function lets you
+    pass in a pre-allocated pixel array so that a pixbuf can be
+    created from it; in this case you will need to pass in a function
+    of #GdkPixbufDestroyNotify so that the pixel data can be freed
+    when the pixbuf is finalized.
+  </para>
+
+@pixels: The pixel array of the pixbuf that is being finalized.
+@data: User closure data.
+
+<!-- ##### MACRO GDK_PIXBUF_ERROR ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_new_from_xpm_data ##### -->
+<para>
+
+</para>
+
+@data: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_new_from_art_pixbuf ##### -->
+<para>
+
+</para>
+
+@art_pixbuf: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_scale_simple ##### -->
+<para>
+
+</para>
+
+@src: 
+@dest_width: 
+@dest_height: 
+@interp_type: 
+@Returns: 
+
+<!-- ##### ARG GnomeCanvasPixbuf:height ##### -->
+  <para>
+    Indicates the height the pixbuf will be scaled to.  This argument
+    will only be used if the <link
+    linkend="GnomeCanvasPixbuf--height-set">height_set</link> argument
+    is %TRUE.  Works in the same way as the <link
+    linkend="GnomeCanvasPixbuf--width">width</link> argument.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_composite ##### -->
+<para>
+
+</para>
+
+@src: 
+@dest: 
+@dest_x: 
+@dest_y: 
+@dest_width: 
+@dest_height: 
+@offset_x: 
+@offset_y: 
+@scale_x: 
+@scale_y: 
+@interp_type: 
+@overall_alpha: 
+
+<!-- ##### FUNCTION gdk_pixbuf_frame_get_pixbuf ##### -->
+<para>
+
+</para>
+
+@frame: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_n_channels ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Title ##### -->
+Xlib Rendering
+
+
+<!-- ##### SECTION ./tmpl/from-drawables.sgml:See_Also ##### -->
+  <para>
+    gdk_image_get().
+  </para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:height_pixels ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:pixbuf ##### -->
+  <para>
+    Contains a pointer to a #GdkPixbuf structure that will be used by
+    the pixbuf canvas item as an image source.  When a pixbuf is set
+    its reference count is incremented; if the pixbuf item kept a
+    pointer to another #GdkPixbuf structure, the reference count of
+    this structure will be decremented.  Also, the GdkPixbuf's
+    reference count will automatically be decremented when the
+    #GnomeCanvasPixbuf item is destroyed.  When a pixbuf is queried, a
+    reference count will not be added to the return value; you must do
+    this yourself if you intend to keep the pixbuf structure around.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_frame_get_action ##### -->
+<para>
+
+</para>
+
+@frame: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_frame_get_y_offset ##### -->
+<para>
+
+</para>
+
+@frame: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Short_Description ##### -->
+Functions for rendering RGB buffers to X drawables.
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:x ##### -->
+  <para>
+    Indicates the horizontal translation offset of the pixbuf item's
+    image.  This offset may not actually appear horizontal, since it
+    will be affected by the item's affine transformation.  The default
+    is 0.0.
+  </para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:y ##### -->
+  <para>
+    Indicates the vertical translation offset of the pixbuf item's
+    image.  Works in the same way as the <link
+    linkend="GnomeCanvasPixbuf--x">x</link> argument.  The default is
+    0.0.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_animation_get_height ##### -->
+<para>
+
+</para>
+
+@animation: 
+@Returns: 
+
+<!-- ##### ARG GnomeCanvasPixbuf:width ##### -->
+  <para>
+    Indicates the width the pixbuf will be scaled to.  This argument
+    will only be used if the <link
+    linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument
+    is %TRUE.  If the <link
+    linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
+    argument is %FALSE, the width will be taken to be in canvas units,
+    and thus will be scaled along with the canvas item's affine
+    transformation.  If width_in_pixels is %TRUE, the width will be
+    taken to be in pixels, and will visually remain a constant size
+    even if the item's affine transformation changes.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_composite_color_simple ##### -->
+<para>
+
+</para>
+
+@src: 
+@dest_width: 
+@dest_height: 
+@interp_type: 
+@overall_alpha: 
+@check_size: 
+@color1: 
+@color2: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### MACRO GDK_PIXBUF_MICRO ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_preinit ##### -->
+<para>
+
+</para>
+
+@app: 
+@modinfo: 
+
+<!-- ##### FUNCTION gdk_pixbuf_set_last_unref_handler ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@last_unref_fn: 
+@last_unref_fn_data: 
+
+<!-- ##### ARG GnomeCanvasPixbuf:height_set ##### -->
+  <para>
+    Determines whether the <link
+    linkend="GnomeCanvasPixbuf--height">height</link> argument is
+    taken into account when scaling the pixbuf item.  Works in the
+    same way as the <link
+    linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument.
+    The default is %FALSE.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_animation_unref ##### -->
+<para>
+
+</para>
+
+@animation: 
+
+<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@drawable: 
+@gc: 
+@src_x: 
+@src_y: 
+@dest_x: 
+@dest_y: 
+@width: 
+@height: 
+@dither: 
+@x_dither: 
+@y_dither: 
+
+<!-- ##### SECTION ./tmpl/xlib-init.sgml:Long_Description ##### -->
+  <para>
+    In addition to the normal Gdk-specific functions, the &gdk-pixbuf;
+    package provides a small library that lets Xlib-only applications
+    use #GdkPixbuf structures and render them to X drawables.  The
+    functions in this section are used to initialize the &gdk-pixbuf;
+    Xlib library.  This library must be initialized near the beginning
+    or the program or before calling any of the other &gdk-pixbuf;
+    Xlib functions; it cannot be initialized automatically since
+    Xlib-only applications do not call gdk_rgb_init() like GNOME
+    applications do.
+  </para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:y_pixels ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:See_Also ##### -->
+<para>
+
+</para>
 
 
-<!-- ##### ARG GnomeCanvasPixbuf:height_set ##### -->
+<!-- ##### FUNCTION gdk_pixbuf_frame_get_x_offset ##### -->
+<para>
+
+</para>
+
+@frame: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Long_Description ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/rendering.sgml:See_Also ##### -->
   <para>
-    Determines whether the <link
-    linkend="GnomeCanvasPixbuf--height">height</link> argument is
-    taken into account when scaling the pixbuf item.  Works in the
-    same way as the <link
-    linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument.
-    The default is %FALSE.
+    GdkRGB
   </para>
 
 
+<!-- ##### SECTION ./tmpl/xlib-rendering.sgml:Short_Description ##### -->
+Rendering a pixbuf to an X drawable.
+
+
+<!-- ##### USER_FUNCTION ModuleUpdatedNotifyFunc ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@x: 
+@y: 
+@width: 
+@height: 
+@user_data: 
+
+<!-- ##### FUNCTION gdk_pixbuf_finalize ##### -->
+<para>
+
+</para>
+
+@pixbuf: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### FUNCTION gdk_pixbuf_get_pixels ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_from_drawable ##### -->
+<para>
+
+</para>
+
+@dest: 
+@src: 
+@cmap: 
+@src_x: 
+@src_y: 
+@dest_x: 
+@dest_y: 
+@width: 
+@height: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### USER_FUNCTION ModuleFrameDoneNotifyFunc ##### -->
+<para>
+
+</para>
+
+@frame: 
+@user_data: 
+
+<!-- ##### FUNCTION gdk_pixbuf_postinit ##### -->
+<para>
+
+</para>
+
+@app: 
+@modinfo: 
+
 <!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Title ##### -->
 gdk-pixbuf-io
 
 
+<!-- ##### FUNCTION gdk_pixbuf_copy ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### ARG GnomeCanvasPixbuf:y_set ##### -->
+  <para>
+    Determines whether the <link
+    linkend="GnomeCanvasPixbuf--y">y</link> argument is used to
+    translate the pixbuf from its logical origin in item-relative
+    coordinates.  Works in the same way as the <link
+    linkend="GnomeCanvasPixbuf--x-set">x_set</link> argument.  The
+    default is %FALSE.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_animation_ref ##### -->
+<para>
+
+</para>
+
+@animation: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/gnome-canvas-pixbuf.sgml:Title ##### -->
+GnomeCanvasPixbuf
+
+
+<!-- ##### STRUCT GdkPixbuf ##### -->
+  <para>
+    This is the main structure in the &gdk-pixbuf; library.  It is
+    used to represent images.  It contains information about the
+    image's pixel data, its color space, bits per sample, width and
+    height, and the rowstride or number of bytes between rows.
+  </para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:x_pixels ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### MACRO GDK_PIXBUF_VERSION ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### VARIABLE gdk_pixbuf_version ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_scale ##### -->
+<para>
+
+</para>
+
+@src: 
+@dest: 
+@dest_x: 
+@dest_y: 
+@dest_width: 
+@dest_height: 
+@offset_x: 
+@offset_y: 
+@scale_x: 
+@scale_y: 
+@interp_type: 
+
+<!-- ##### FUNCTION gdk_pixbuf_get_format ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@Returns: 
+
+<!-- ##### SECTION ./tmpl/from-drawables.sgml:Long_Description ##### -->
+  <para>
+    The functions in this section allow you to take the image data
+    from a GDK drawable and dump it into a #GdkPixbuf.  This can be
+    used for screenshots and other special effects.  Note that these
+    operations can be expensive, since the image data has to be
+    transferred from the X server to the client program and converted.
+  </para>
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:width_pixels ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
+  <para>
+    These values can be passed to
+    gdk_pixbuf_render_to_drawable_alpha() to control how the alpha
+    chanel of an image should be handled.  This function can create a
+    bilevel clipping mask (black and white) and use it while painting
+    the image.  In the future, when the X Window System gets an alpha
+    channel extension, it will be possible to do full alpha
+    compositing onto arbitrary drawables.  For now both cases fall
+    back to a bilevel clipping mask.
+  </para>
+
+@GDK_PIXBUF_ALPHA_BILEVEL: A bilevel clipping mask (black and white)
+will be created and used to draw the image.  Pixels below 0.5 opacity
+will be considered fully transparent, and all others will be
+considered fully opaque.
+@GDK_PIXBUF_ALPHA_FULL: For now falls back to #GDK_PIXBUF_ALPHA_BILEVEL.
+In the future it will do full alpha compositing.
+
+<!-- ##### STRUCT GdkPixbufFrame ##### -->
+  <para>
+    This structure describes a frame in a #GdkPixbufAnimation.  Each
+    frame consists of a #GdkPixbuf, an offset of the frame within the
+    animation's bounding box, a duration, and an overlay mode or
+    action.
+  </para>
+
+
+<!-- ##### FUNCTION gdk_pixbuf_add_alpha ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@substitute_color: 
+@r: 
+@g: 
+@b: 
+@Returns: 
+
+<!-- ##### USER_FUNCTION ModuleAnimationDoneNotifyFunc ##### -->
+<para>
+
+</para>
+
+@pixbuf: 
+@user_data: 
+
+<!-- ##### FUNCTION gdk_pixbuf_copy_area ##### -->
+<para>
+
+</para>
+
+@src_pixbuf: 
+@src_x: 
+@src_y: 
+@width: 
+@height: 
+@dest_pixbuf: 
+@dest_x: 
+@dest_y: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
+<!-- ##### FUNCTION gdk_pixbuf_init ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/xlib-from-drawables.sgml:Title ##### -->
+X Drawables to Pixbufs
+
+
+<!-- ##### STRUCT GdkPixbufClass ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### SECTION ./tmpl/from-drawables.sgml:Title ##### -->
+Drawables to Pixbufs
+
+
+<!-- ##### ARG GnomeCanvasPixbuf:x_in_pixels ##### -->
+  <para>
+    If this argument is %TRUE, the pixbuf's translation with respect
+    to its logical origin in item-relative coordinates will be in
+    pixels, that is, the visible offset will not change even if the
+    item's affine transformation changes.  If it is %FALSE, the
+    pixbuf's translation will be taken to be in canvas units, and thus
+    will change along with the item's affine transformation.  The
+    default is %FALSE.
+  </para>
+
+
+<!-- ##### SECTION ./tmpl/xlib-rgb.sgml:Title ##### -->
+XlibRGB
+
+
+<!-- ##### FUNCTION gdk_pixbuf_new_from_file ##### -->
+<para>
+
+</para>
+
+@filename: 
+@error: 
+@Returns: <!--
+Local variables:
+mode: sgml
+sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
+End:
+-->
+
index 403941efa9fe2ebfcc5540aaf115b81f9c8c0bdc..897d59bf8f4d78ecc6d16c462df7061a4b84dc89 100644 (file)
@@ -15,135 +15,3 @@ Information that describes an image.
   <para>
   </para>
 
-<!-- ##### ENUM GdkPixbufError ##### -->
-<para>
-
-</para>
-
-@GDK_PIXBUF_ERROR_CORRUPT_IMAGE: 
-@GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY: 
-@GDK_PIXBUF_ERROR_BAD_OPTION_VALUE: 
-@GDK_PIXBUF_ERROR_UNKNOWN_TYPE: 
-@GDK_PIXBUF_ERROR_UNSUPPORTED_OPERATION: 
-@GDK_PIXBUF_ERROR_FAILED: 
-
-<!-- ##### MACRO GDK_PIXBUF_ERROR ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### ENUM GdkColorspace ##### -->
-  <para>
-    This enumeration defines the color spaces that are supported by
-    the &gdk-pixbuf; library.  Currently only RGB is supported.
-  </para>
-
-@GDK_COLORSPACE_RGB: Indicates a red/green/blue additive color space.
-
-<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
-  <para>
-    These values can be passed to
-    gdk_pixbuf_render_to_drawable_alpha() to control how the alpha
-    chanel of an image should be handled.  This function can create a
-    bilevel clipping mask (black and white) and use it while painting
-    the image.  In the future, when the X Window System gets an alpha
-    channel extension, it will be possible to do full alpha
-    compositing onto arbitrary drawables.  For now both cases fall
-    back to a bilevel clipping mask.
-  </para>
-
-@GDK_PIXBUF_ALPHA_BILEVEL: A bilevel clipping mask (black and white)
-will be created and used to draw the image.  Pixels below 0.5 opacity
-will be considered fully transparent, and all others will be
-considered fully opaque.
-@GDK_PIXBUF_ALPHA_FULL: For now falls back to #GDK_PIXBUF_ALPHA_BILEVEL.
-In the future it will do full alpha compositing.
-
-<!-- ##### STRUCT GdkPixbuf ##### -->
-  <para>
-    This is the main structure in the &gdk-pixbuf; library.  It is
-    used to represent images.  It contains information about the
-    image's pixel data, its color space, bits per sample, width and
-    height, and the rowstride or number of bytes between rows.
-  </para>
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_colorspace ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_n_channels ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_has_alpha ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_bits_per_sample ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_pixels ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_width ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_height ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_rowstride ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
index 41302c27ca084250c73490b55d7cc9284e2c752a..26746d7402d4721e366ed4cca3466193343b47c1 100644 (file)
@@ -14,62 +14,3 @@ Initialization and Versions
 
 </para>
 
-<!-- ##### FUNCTION gdk_pixbuf_init ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### FUNCTION gdk_pixbuf_preinit ##### -->
-<para>
-
-</para>
-
-@app: 
-@modinfo: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_postinit ##### -->
-<para>
-
-</para>
-
-@app: 
-@modinfo: 
-
-
-<!-- ##### VARIABLE gdk_pixbuf_version ##### -->
-<para>
-
-</para>
-
-
-<!-- ##### MACRO GDK_PIXBUF_VERSION ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO GDK_PIXBUF_MAJOR ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO GDK_PIXBUF_MINOR ##### -->
-<para>
-
-</para>
-
-
-
-<!-- ##### MACRO GDK_PIXBUF_MICRO ##### -->
-<para>
-
-</para>
-
-
-
index 734ee8034a007c90f615caa880af7e2b39e8a69c..7e1402e2f58456df66df577fc5eeb470c7375135 100644 (file)
@@ -14,91 +14,3 @@ Module Interface
 
 </para>
 
-<!-- ##### USER_FUNCTION ModulePreparedNotifyFunc ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@user_data: 
-
-
-<!-- ##### USER_FUNCTION ModuleUpdatedNotifyFunc ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@x: 
-@y: 
-@width: 
-@height: 
-@user_data: 
-
-
-<!-- ##### USER_FUNCTION ModuleFrameDoneNotifyFunc ##### -->
-<para>
-
-</para>
-
-@frame: 
-@user_data: 
-
-
-<!-- ##### USER_FUNCTION ModuleAnimationDoneNotifyFunc ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@user_data: 
-
-
-<!-- ##### STRUCT GdkPixbufModule ##### -->
-<para>
-
-</para>
-
-@module_name: 
-@format_check: 
-@module: 
-@load: 
-@load_xpm_data: 
-@begin_load: 
-@stop_load: 
-@load_increment: 
-@load_animation: 
-@save: 
-
-<!-- ##### FUNCTION gdk_pixbuf_get_module ##### -->
-<para>
-
-</para>
-
-@buffer: 
-@size: 
-@filename: 
-@error: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_get_named_module ##### -->
-<para>
-
-</para>
-
-@name: 
-@error: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_load_module ##### -->
-<para>
-
-</para>
-
-@image_module: 
-@error: 
-@Returns: 
-
-
index f975e4f69aa29039d3762acd260319738249a4e2..770b66ae193572d9c2bee36f9189a7b6666fea41 100644 (file)
@@ -54,34 +54,3 @@ Functions to perform reference counting and memory management on a
     #GdkPixbuf, gdk_pixbuf_new_from_data().
   </para>
 
-<!-- ##### USER_FUNCTION GdkPixbufDestroyNotify ##### -->
-  <para>
-    A function of this type is responsible for freeing the pixel array
-    of a pixbuf.  The gdk_pixbuf_new_from_data() function lets you
-    pass in a pre-allocated pixel array so that a pixbuf can be
-    created from it; in this case you will need to pass in a function
-    of #GdkPixbufDestroyNotify so that the pixel data can be freed
-    when the pixbuf is finalized.
-  </para>
-
-@pixels: The pixel array of the pixbuf that is being finalized.
-@data: User closure data.
-
-
-<!-- ##### FUNCTION gdk_pixbuf_ref ##### -->
-  <para>
-
-  </para>
-
-@pixbuf: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_unref ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-
-
index a8d41a1170bdf3cc68f195fc433255627d2421c3..b4bf82445c7bfe5ab7f59d1e20b98ba968e258a5 100644 (file)
@@ -68,127 +68,3 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
     GdkRGB
   </para>
 
-<!-- ##### ENUM GdkInterpType ##### -->
-  <para>
-    This enumeration describes the different interpolation modes that
-    can be used with the scaling functions.
-
-    <note>
-      <para>
-       Cubic filtering is missing from the list; hyperbolic
-       interpolation is just as fast and results in higher quality.
-      </para>
-    </note>
-  </para>
-
-@GDK_INTERP_NEAREST: Nearest neighbor sampling; this is the fastest
-and lowest quality mode.
-@GDK_INTERP_TILES: This is an accurate simulation of the PostScript
-image operator without any interpolation enabled.  Each pixel is
-rendered as a tiny parallelogram of solid color, the edges of which
-are implemented with antialiasing.  It resembles nearest neighbor for
-enlargement, and bilinear for reduction.
-@GDK_INTERP_BILINEAR: Bilinear interpolation.  For enlargement, it is
-equivalent to point-sampling the ideal bilinear-interpolated image.
-For reduction, it is equivalent to laying down small tiles and
-integrating over the coverage area.
-@GDK_INTERP_HYPER: This is the slowest and highest quality
-reconstruction function.  It is derived from the hyperbolic filters in
-Wolberg's "Digital Image Warping", and is formally defined as the
-hyperbolic-filter sampling the ideal hyperbolic-filter interpolated
-image (the filter is designed to be idempotent for 1:1 pixel mapping).
-
-<!-- ##### FUNCTION gdk_pixbuf_scale ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest: 
-@dest_x: 
-@dest_y: 
-@dest_width: 
-@dest_height: 
-@offset_x: 
-@offset_y: 
-@scale_x: 
-@scale_y: 
-@interp_type: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_composite ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest: 
-@dest_x: 
-@dest_y: 
-@dest_width: 
-@dest_height: 
-@offset_x: 
-@offset_y: 
-@scale_x: 
-@scale_y: 
-@interp_type: 
-@overall_alpha: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_composite_color ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest: 
-@dest_x: 
-@dest_y: 
-@dest_width: 
-@dest_height: 
-@offset_x: 
-@offset_y: 
-@scale_x: 
-@scale_y: 
-@interp_type: 
-@overall_alpha: 
-@check_x: 
-@check_y: 
-@check_size: 
-@color1: 
-@color2: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_scale_simple ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest_width: 
-@dest_height: 
-@interp_type: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_composite_color_simple ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest_width: 
-@dest_height: 
-@interp_type: 
-@overall_alpha: 
-@check_size: 
-@color1: 
-@color2: 
-@Returns: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
index 35726a967be23704f1e7c6acf35a8890a1da818b..bb91711e77d8b47f954c3bf35d0c41294e3b6b0d 100644 (file)
@@ -17,47 +17,3 @@ Utility and miscellaneous convenience functions.
     #GdkPixbuf
   </para>
 
-<!-- ##### FUNCTION gdk_pixbuf_add_alpha ##### -->
-<para>
-
-</para>
-
-@pixbuf: 
-@substitute_color: 
-@r: 
-@g: 
-@b: 
-@Returns: 
-
-
-<!-- ##### FUNCTION gdk_pixbuf_copy_area ##### -->
-<para>
-
-</para>
-
-@src_pixbuf: 
-@src_x: 
-@src_y: 
-@width: 
-@height: 
-@dest_pixbuf: 
-@dest_x: 
-@dest_y: <!--
-Local variables:
-mode: sgml
-sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
-End:
--->
-
-
-<!-- ##### FUNCTION gdk_pixbuf_saturate_and_pixelate ##### -->
-<para>
-
-</para>
-
-@src: 
-@dest: 
-@saturation: 
-@pixelate: 
-
-
index f455390216a776a3d520ca54cdd827fd7f9cc001..830db8f65ecd8829ff3cb3a73701bc0f19849765 100644 (file)
@@ -1,8 +1,34 @@
-<!-- ##### SECTION ./tmpl/gdkregion.sgml:See_Also ##### -->
+<!-- ##### FUNCTION gdk_input_set_mode ##### -->
 <para>
+Enables or disables a device, and determines how the
+device maps onto the screen.
+</para>
 
+@deviceid: the device to configure.
+@mode: the new mode.
+@Returns: %TRUE if the device supports the given mode, otherwise 
+          %FALSE and the device's mode is unchanged.
+
+<!-- ##### FUNCTION gdk_input_set_key ##### -->
+<para>
+Sets the key event generated when a macro button is pressed.
 </para>
 
+@deviceid: the device to configure.
+@index: the index of the macro button.
+@keyval: the key value for the #GdkKeypressEvent to generate.
+         (a value of 0 means no event will be generated.)
+@modifiers: the modifier field for the generated 
+            #GdkKeyPressEvent.
+
+<!-- ##### FUNCTION gdk_regions_intersect ##### -->
+<para>
+Returns the intersection of two regions.
+</para>
+
+@source1: a #GdkRegion.
+@source2: a #GdkRegion.
+@Returns: the intersection of @source1 and @source2.
 
 <!-- ##### FUNCTION gdk_regions_xor ##### -->
 <para>
@@ -16,21 +42,32 @@ but which are not in both.
 @Returns: the difference between the union and the intersection of @source1
 and @source2.
 
-<!-- ##### FUNCTION gdk_input_motion_events ##### -->
+<!-- ##### FUNCTION gdk_regions_subtract ##### -->
 <para>
-Retrieves the motion history for a given device/window pair.
+Subtracts one region from another.
+The result is a region containing all the pixels which are in @source1, but
+which are not in @source2.
 </para>
 
-@window: a #GdkWindow.
-@deviceid: the device for which to retrieve motion history.
-@start: the start time.
-@stop: the stop time.
-@nevents_return: location to store the number of events returned.
-@Returns: a newly allocated array containing all the events
-          from @start to @stop. This array should be freed
-          with g_free() when you are finished using it.
+@source1: a #GdkRegion.
+@source2: a #GdkRegion to subtract from @source1.
+@Returns: @source1 - @source2.
 
-<!-- ##### SECTION ./tmpl/gdkregion.sgml:Long_Description ##### -->
+<!-- ##### FUNCTION gdk_input_list_devices ##### -->
+<para>
+Lists all available input devices, along with their
+configuration information.
+</para>
+
+@Returns: A #GList of #GdkDeviceInfo structures. This list
+          is internal data of GTK+ and should not be modified 
+          or freed.
+
+<!-- ##### SECTION ./tmpl/gdkregion.sgml:Short_Description ##### -->
+
+
+
+<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:See_Also ##### -->
 <para>
 
 </para>
@@ -40,6 +77,29 @@ Retrieves the motion history for a given device/window pair.
 
 
 
+<!-- ##### MACRO GDK_CORE_POINTER ##### -->
+<para>
+This macro contains an integer value representing
+the device ID for the core pointer device.
+</para>
+
+
+<!-- ##### VARIABLE gdk_threads_mutex ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### FUNCTION gdk_input_set_axes ##### -->
+<para>
+Sets the mapping of the axes (valuators) of a device
+onto the predefined valuator types that GTK+ understands.
+</para>
+
+@deviceid: the device to configure.
+@axes: an array of GdkAxisUse. This length of this array
+       must match the number of axes for the device.
+
 <!-- ##### STRUCT GdkDeviceInfo ##### -->
 <para>
 The #GdkDeviceInfo structure contains information about a 
@@ -64,70 +124,69 @@ device. It has the following fields:
        which describe what key press events are generated
        for each macro button.
 
-<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:Title ##### -->
-Pango Interaction
+<!-- ##### SECTION ./tmpl/gdkregion.sgml:Title ##### -->
+Points, Rectangles and Regions
 
 
-<!-- ##### FUNCTION gdk_regions_union ##### -->
+<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:Long_Description ##### -->
 <para>
-Returns the union of two regions.
-This is all pixels in either of @source1 or @source2.
+
 </para>
 
-@source1: a #GdkRegion.
-@source2: a #GdkRegion.
-@Returns: the union of @source1 and @source2.
 
-<!-- ##### SECTION ./tmpl/gdkregion.sgml:Short_Description ##### -->
+<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
+<para>
 
+</para>
 
+@GDK_PIXBUF_ALPHA_BILEVEL: 
+@GDK_PIXBUF_ALPHA_FULL: 
 
-<!-- ##### FUNCTION gdk_input_set_key ##### -->
+<!-- ##### FUNCTION gdk_input_motion_events ##### -->
 <para>
-Sets the key event generated when a macro button is pressed.
+Retrieves the motion history for a given device/window pair.
 </para>
 
-@deviceid: the device to configure.
-@index: the index of the macro button.
-@keyval: the key value for the #GdkKeypressEvent to generate.
-         (a value of 0 means no event will be generated.)
-@modifiers: the modifier field for the generated 
-            #GdkKeyPressEvent.
+@window: a #GdkWindow.
+@deviceid: the device for which to retrieve motion history.
+@start: the start time.
+@stop: the stop time.
+@nevents_return: location to store the number of events returned.
+@Returns: a newly allocated array containing all the events
+          from @start to @stop. This array should be freed
+          with g_free() when you are finished using it.
 
-<!-- ##### FUNCTION gdk_input_list_devices ##### -->
+<!-- ##### VARIABLE gdk_core_pointer ##### -->
 <para>
-Lists all available input devices, along with their
-configuration information.
+
 </para>
 
-@Returns: A #GList of #GdkDeviceInfo structures. This list
-          is internal data of GTK+ and should not be modified 
-          or freed.
 
-<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:See_Also ##### -->
+<!-- ##### SECTION ./tmpl/gdkregion.sgml:See_Also ##### -->
 <para>
 
 </para>
 
 
-<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
+<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:Title ##### -->
+Pango Interaction
+
+
+<!-- ##### SECTION ./tmpl/gdkregion.sgml:Long_Description ##### -->
 <para>
 
 </para>
 
-@GDK_PIXBUF_ALPHA_BILEVEL: 
-@GDK_PIXBUF_ALPHA_FULL: 
 
-<!-- ##### FUNCTION gdk_regions_subtract ##### -->
+<!-- ##### FUNCTION gdk_regions_union ##### -->
 <para>
-Subtracts one region from another.
-The result is a region containing all the pixels which are in @source1, but
-which are not in @source2.
+Returns the union of two regions.
+This is all pixels in either of @source1 or @source2.
 </para>
 
 @source1: a #GdkRegion.
-@source2: a #GdkRegion to subtract from @source1.
-@Returns: @source1 - @source2.
+@source2: a #GdkRegion.
+@Returns: the union of @source1 and @source2.
 
 <!-- ##### FUNCTION gdk_input_window_get_pointer ##### -->
 <para>
@@ -146,23 +205,6 @@ they will be ignored.
 @ytilt: location to store current tilt in the y direction.
 @mask: location to store the current modifier state.
 
-<!-- ##### MACRO GDK_CORE_POINTER ##### -->
-<para>
-This macro contains an integer value representing
-the device ID for the core pointer device.
-</para>
-
-
-<!-- ##### FUNCTION gdk_input_set_axes ##### -->
-<para>
-Sets the mapping of the axes (valuators) of a device
-onto the predefined valuator types that GTK+ understands.
-</para>
-
-@deviceid: the device to configure.
-@axes: an array of GdkAxisUse. This length of this array
-       must match the number of axes for the device.
-
 <!-- ##### FUNCTION gdk_input_set_source ##### -->
 <para>
 Sets the source type for a device.
@@ -171,33 +213,3 @@ Sets the source type for a device.
 @deviceid: the device to configure
 @source: the new source type.
 
-<!-- ##### SECTION ./tmpl/gdkregion.sgml:Title ##### -->
-Points, Rectangles and Regions
-
-
-<!-- ##### FUNCTION gdk_regions_intersect ##### -->
-<para>
-Returns the intersection of two regions.
-</para>
-
-@source1: a #GdkRegion.
-@source2: a #GdkRegion.
-@Returns: the intersection of @source1 and @source2.
-
-<!-- ##### FUNCTION gdk_input_set_mode ##### -->
-<para>
-Enables or disables a device, and determines how the
-device maps onto the screen.
-</para>
-
-@deviceid: the device to configure.
-@mode: the new mode.
-@Returns: %TRUE if the device supports the given mode, otherwise 
-          %FALSE and the device's mode is unchanged.
-
-<!-- ##### SECTION ./tmpl/input_methods.sgml.sgml:Long_Description ##### -->
-<para>
-
-</para>
-
-
index 572bd6974332fb6a210852d224d51b038dc45abb..1f9b99c12df1511f2763dc94cc65446223b185cb 100644 (file)
@@ -175,12 +175,6 @@ types that GTK+ understands.
 @Returns: 
 
 
-<!-- ##### VARIABLE gdk_core_pointer ##### -->
-<para>
-
-</para>
-
-
 <!-- ##### FUNCTION gdk_device_set_source ##### -->
 <para>
 
index 5e7e049abbf686fbadd74c98d84bc193ac009c4b..4bc696e7681f93865f1b9a6fbb97eda1c3b621e7 100644 (file)
@@ -42,9 +42,3 @@ Threads
 
 
 
-<!-- ##### VARIABLE gdk_threads_mutex ##### -->
-<para>
-
-</para>
-
-
index 16dc26d6c2cfae93b38f56a992ae0c3b3482940f..9d221d5c397c4d4d5c9b89364dda1c8ae0bd03a8 100644 (file)
@@ -53,7 +53,7 @@ gdk_pixbuf_animation_get_type (void)
       
                 object_type = g_type_register_static (G_TYPE_OBJECT,
                                                       "GdkPixbufAnimation",
-                                                      &object_info);
+                                                      &object_info, 0);
         }
   
         return object_type;
index 42aec5d4c7bc50eb6157a72380969d09a8dc9a0f..22d7ba107a1ba2e567ec8e35df897922db00fcef 100644 (file)
@@ -66,26 +66,6 @@ typedef struct
 } GdkPixbufLoaderPrivate;
 
 
-/* our marshaller */
-typedef void (*GtkSignal_NONE__INT_INT_INT_INT) (GtkObject *object,
-                                                gint arg1, gint arg2, gint arg3, gint arg4,
-                                                gpointer user_data);
-static void
-gtk_marshal_NONE__INT_INT_INT_INT (GtkObject *object, GtkSignalFunc func, gpointer func_data,
-                                  GtkArg * args)
-{
-  GtkSignal_NONE__INT_INT_INT_INT rfunc;
-  
-  rfunc = (GtkSignal_NONE__INT_INT_INT_INT) func;
-  (*rfunc) (object,
-           GTK_VALUE_INT (args[0]),
-           GTK_VALUE_INT (args[1]),
-           GTK_VALUE_INT (args[2]),
-           GTK_VALUE_INT (args[3]),
-           func_data);
-}
-
-
 /**
  * gdk_pixbuf_loader_get_type:
  * @void:
@@ -135,7 +115,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, area_prepared),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   pixbuf_loader_signals[AREA_UPDATED] =
@@ -143,7 +123,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, area_updated),
-                   gtk_marshal_NONE__INT_INT_INT_INT,
+                   gtk_marshal_VOID__INT_INT_INT_INT,
                    GTK_TYPE_NONE, 4,
                    GTK_TYPE_INT,
                    GTK_TYPE_INT,
@@ -155,7 +135,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, frame_done),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
   
@@ -164,7 +144,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, animation_done),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   pixbuf_loader_signals[CLOSED] =
@@ -172,7 +152,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, closed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   gtk_object_class_add_signals (object_class, pixbuf_loader_signals, LAST_SIGNAL);
index a515ea55b0e827d0d352ae64c317e0c29026a8b7..84e086e725b8481ebb69caf77291373f04ea08cb 100644 (file)
@@ -56,7 +56,7 @@ gdk_pixbuf_get_type (void)
       
                 object_type = g_type_register_static (G_TYPE_OBJECT,
                                                       "GdkPixbuf",
-                                                      &object_info);
+                                                      &object_info, 0);
         }
   
         return object_type;
index d2c7e401641f9a4809c2bbc6e071392814ac8c31..facc185e9cfaf521f45a6261c07155d466030d3f 100644 (file)
@@ -60,7 +60,7 @@ gdk_drawable_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GdkDrawable",
-                                            &object_info);
+                                            &object_info, 0);
     }  
 
   return object_type;
index 8bc2a97abc7be7bfc99bca540a39cb504b8dc1d8..7a482b245a633b024d8778fc6a61f5f238575159 100644 (file)
@@ -57,7 +57,7 @@ gdk_gc_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GdkGC",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 8b44d8728777cb25f811cadea3d5a6c3ae768766..27fc5f631a1d7ce7e7a5d8f846be345b055c668c 100644 (file)
@@ -148,7 +148,7 @@ gdk_pixmap_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_DRAWABLE,
                                             "GdkPixmap",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index c4c2419511fb44283dd84d53cf6d78bb64080017..291830e219a84c840a2f62b41e48f4f38b98a9b7 100644 (file)
@@ -177,7 +177,7 @@ gdk_window_object_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_DRAWABLE,
                                             "GdkWindow",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 27cac85c8673da81ece3adcfe463788f3dfa7d53..cd78240f9fcbfcf6b72417adffc3ed4640dc887c 100644 (file)
@@ -70,7 +70,7 @@ gdk_colormap_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GdkColormap",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 7c4fb682e703e2e595adff91cadb0fdac0bc2b03..28478eeb9022aed0ed84e2480d7a2b2a0aed29d3 100644 (file)
@@ -152,7 +152,7 @@ gdk_drag_context_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GdkDragContext",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 058c447265f4669a5809d65dbfed36649480db6e..9eaf0ad96b00f38da99640c6999f307fdc63b4a6 100644 (file)
@@ -149,7 +149,7 @@ gdk_drawable_impl_x11_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_DRAWABLE,
                                             "GdkDrawableImplX11",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 130500434420e230abb045daeaec68327a43de3b..a5b0088b0011f0fa49761727d5a7c52fe84ec940 100644 (file)
@@ -77,7 +77,7 @@ gdk_gc_x11_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_GC,
                                             "GdkGCX11",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 519ff2789610fdfdf4faaeadbde9d84b2a8accf5..1eeee2297597fcfcf33b7bbfab8fedb2a2a43e14 100644 (file)
@@ -92,7 +92,7 @@ gdk_image_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GdkImage",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 66d34562afa0f8ed34dcf9e9b4776b1cfe30218a..03ef5888cf865162a8a2aea006b97872440fedc7 100644 (file)
@@ -82,7 +82,7 @@ gdk_pixmap_impl_x11_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_DRAWABLE_IMPL_X11,
                                             "GdkPixmapImplX11",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 1accdd1c1b81cbd2ee36480ca5bab0b4db52f841..3aee23b0331f0c0f775511a2076db5bf69861294 100644 (file)
@@ -115,7 +115,7 @@ gdk_window_impl_x11_get_type (void)
       
       object_type = g_type_register_static (GDK_TYPE_DRAWABLE_IMPL_X11,
                                             "GdkWindowImplX11",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 6dbee7dbabd34901ff6b27d7d10099194d3f4552..bb5c735077826205948d466499f51e5fe63201e2 100644 (file)
@@ -285,7 +285,6 @@ gtk_c_sources = @STRIP_BEGIN@ \
        gtklistitem.c           \
        gtkliststore.c          \
        gtkmain.c               \
-       gtkmarshal.c            \
        gtkmenu.c               \
        gtkmenubar.c            \
        gtkmenufactory.c        \
@@ -400,7 +399,7 @@ gtk_extra_sources = @STRIP_BEGIN@ \
        makeenums.h             \
        gtkargcollector.c       \
        gtk-boxed.defs          \
-       genmarshal.pl           \
+       genmarshal.           \
        gtkmarshal.list         \
 @STRIP_END@
 # Extra headers that are used for enum type array/id generation
@@ -486,11 +485,10 @@ $(srcdir)/stamp-gtk.defs: @REBUILD@ makeenums.pl gtk.defs gtk-boxed.defs $(gtk_p
        && rm -f xgen-gdef \
        && echo timestamp > $(@F)
 $(srcdir)/gtkmarshal.c: stamp-gtkmarshal.h
-$(srcdir)/gtkmarshal.c $(srcdir)/stamp-gtkmarshal.h: @REBUILD@ genmarshal.pl gtkmarshal.list gtkmarshal.h
+$(srcdir)/gtkmarshal.c $(srcdir)/stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list gtkmarshal.h
        cd $(srcdir) \
-       && $(PERL) genmarshal.pl gtkmarshal.list xgen-gmh xgen-gmc \
-       && (test -z "$(INDENT)" || $(INDENT) xgen-gmh) \
-       && (test -z "$(INDENT)" || $(INDENT) xgen-gmc) \
+       && glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --header --skip-source >> xgen-gmh \
+       && glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --body >> xgen-gmc \
        && cp xgen-gmc gtkmarshal.c \
        && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
        && rm -f xgen-gmh xgen-gmc xgen-gmh~ xgen-gmc~ \
index 42aec5d4c7bc50eb6157a72380969d09a8dc9a0f..22d7ba107a1ba2e567ec8e35df897922db00fcef 100644 (file)
@@ -66,26 +66,6 @@ typedef struct
 } GdkPixbufLoaderPrivate;
 
 
-/* our marshaller */
-typedef void (*GtkSignal_NONE__INT_INT_INT_INT) (GtkObject *object,
-                                                gint arg1, gint arg2, gint arg3, gint arg4,
-                                                gpointer user_data);
-static void
-gtk_marshal_NONE__INT_INT_INT_INT (GtkObject *object, GtkSignalFunc func, gpointer func_data,
-                                  GtkArg * args)
-{
-  GtkSignal_NONE__INT_INT_INT_INT rfunc;
-  
-  rfunc = (GtkSignal_NONE__INT_INT_INT_INT) func;
-  (*rfunc) (object,
-           GTK_VALUE_INT (args[0]),
-           GTK_VALUE_INT (args[1]),
-           GTK_VALUE_INT (args[2]),
-           GTK_VALUE_INT (args[3]),
-           func_data);
-}
-
-
 /**
  * gdk_pixbuf_loader_get_type:
  * @void:
@@ -135,7 +115,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, area_prepared),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   pixbuf_loader_signals[AREA_UPDATED] =
@@ -143,7 +123,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, area_updated),
-                   gtk_marshal_NONE__INT_INT_INT_INT,
+                   gtk_marshal_VOID__INT_INT_INT_INT,
                    GTK_TYPE_NONE, 4,
                    GTK_TYPE_INT,
                    GTK_TYPE_INT,
@@ -155,7 +135,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, frame_done),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
   
@@ -164,7 +144,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, animation_done),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   pixbuf_loader_signals[CLOSED] =
@@ -172,7 +152,7 @@ gdk_pixbuf_loader_class_init (GdkPixbufLoaderClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GdkPixbufLoaderClass, closed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   gtk_object_class_add_signals (object_class, pixbuf_loader_signals, LAST_SIGNAL);
index 6cbc8396f1182f3daf7c87da3383abced7ce5910..c5343508b75642870be6762e9e175ada60875dbf 100644 (file)
@@ -342,7 +342,7 @@ gtk_accel_group_add (GtkAccelGroup  *accel_group,
   guint add_accelerator_signal_id = 0;
   guint remove_accelerator_signal_id = 0;
   gchar *signal;
-  GtkSignalQuery *query;
+  GSignalQuery query;
   GSList *slist;
   GSList *groups;
   GSList *attach_objects;
@@ -377,20 +377,16 @@ gtk_accel_group_add (GtkAccelGroup        *accel_group,
                 gtk_type_name (GTK_OBJECT_TYPE (object)));
       return;
     }
-  query = gtk_signal_query (accel_signal_id);
-  if (!query ||
-      query->nparams > 0)
+  g_signal_query (accel_signal_id, &query);
+  if (!query.signal_id || query.n_params > 0)
     {
       g_warning ("gtk_accel_group_add(): signal \"%s\" in the `%s' class ancestry"
                 "cannot be used as accelerator signal",
                 accel_signal,
                 gtk_type_name (GTK_OBJECT_TYPE (object)));
-      if (query)
-       g_free (query);
 
       return;
     }
-  g_free (query);
 
   /* prematurely abort if the group/entry is already locked
    */
@@ -662,7 +658,7 @@ gtk_accel_group_create_add (GtkType          class_type,
                         signal_flags,
                         class_type,
                         handler_offset,
-                        gtk_marshal_NONE__UINT_POINTER_UINT_UINT_ENUM,
+                        gtk_marshal_VOID__UINT_BOXED_UINT_FLAGS_FLAGS,
                         GTK_TYPE_NONE, 5,
                         GTK_TYPE_UINT,
                         GTK_TYPE_ACCEL_GROUP,
@@ -682,7 +678,7 @@ gtk_accel_group_create_remove (GtkType          class_type,
                         signal_flags,
                         class_type,
                         handler_offset,
-                        gtk_marshal_NONE__POINTER_UINT_UINT,
+                        gtk_marshal_VOID__BOXED_UINT_FLAGS,
                         GTK_TYPE_NONE, 3,
                         GTK_TYPE_ACCEL_GROUP,
                         GTK_TYPE_UINT,
index f4677cffead0ff1339614dc213ac003aa0d69f7b..084a5ef50b7082200d5e31f945e65d42e55d0784 100644 (file)
@@ -79,14 +79,14 @@ gtk_adjustment_class_init (GtkAdjustmentClass *class)
                     GTK_RUN_FIRST | GTK_RUN_NO_RECURSE,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkAdjustmentClass, changed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   adjustment_signals[VALUE_CHANGED] =
     gtk_signal_new ("value_changed",
                     GTK_RUN_FIRST | GTK_RUN_NO_RECURSE,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkAdjustmentClass, value_changed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, adjustment_signals, LAST_SIGNAL);
index 37e82612a739fad007333c3c01ff3df4362baed8..4004622f7028def0e54d3439b9d9e52d317b13eb 100644 (file)
@@ -252,7 +252,7 @@ binding_ht_lookup_entry (GtkBindingSet *set,
 
 static gboolean
 binding_compose_params (GtkBindingArg  *args,
-                       GtkSignalQuery  *query,
+                       GSignalQuery    *query,
                        GtkArg          **params_p)
 {
   GtkArg *params;
@@ -260,12 +260,12 @@ binding_compose_params (GtkBindingArg     *args,
   guint i;
   gboolean valid;
   
-  params = g_new0 (GtkArg, query->nparams);
+  params = g_new0 (GtkArg, query->n_params);
   *params_p = params;
   
-  types = query->params;
+  types = query->param_types;
   valid = TRUE;
-  for (i = 0; i < query->nparams && valid; i++)
+  for (i = 0; i < query->n_params && valid; i++)
     {
       GtkType param_ftype;
 
@@ -357,7 +357,7 @@ gtk_binding_entry_activate (GtkBindingEntry *entry,
   
   for (sig = entry->signals; sig; sig = sig->next)
     {
-      GtkSignalQuery *query;
+      GSignalQuery query;
       guint signal_id;
       GtkArg *params = NULL;
       gchar *accelerator = NULL;
@@ -376,10 +376,10 @@ gtk_binding_entry_activate (GtkBindingEntry       *entry,
          continue;
        }
       
-      query = gtk_signal_query (signal_id);
-      if (query->nparams != sig->n_args ||
-         query->return_val != GTK_TYPE_NONE ||
-         !binding_compose_params (sig->args, query, &params))
+      g_signal_query (signal_id, &query);
+      if (query.n_params != sig->n_args ||
+         query.return_type != G_TYPE_NONE ||
+         !binding_compose_params (sig->args, &query, &params))
        {
          accelerator = gtk_accelerator_name (entry->keyval, entry->modifiers);
          g_warning ("gtk_binding_entry_activate(): binding \"%s::%s\": "
@@ -389,7 +389,7 @@ gtk_binding_entry_activate (GtkBindingEntry *entry,
                     sig->signal_name,
                     gtk_type_name (GTK_OBJECT_TYPE (object)));
        }
-      else if (!(query->signal_flags & GTK_RUN_ACTION))
+      else if (!(query.signal_flags & GTK_RUN_ACTION))
        {
          accelerator = gtk_accelerator_name (entry->keyval, entry->modifiers);
          g_warning ("gtk_binding_entry_activate(): binding \"%s::%s\": "
@@ -400,7 +400,6 @@ gtk_binding_entry_activate (GtkBindingEntry *entry,
                     gtk_type_name (GTK_OBJECT_TYPE (object)));
        }
       g_free (accelerator);
-      g_free (query);
       if (accelerator)
        continue;
 
index 394688496b15667aec3846c0344bb74d53912035..2898cc0db86c968c7dd1c0b1e2aa1bbb8bdbc39a 100644 (file)
@@ -125,7 +125,7 @@ gtk_button_get_type (void)
        (GInstanceInitFunc) gtk_button_init,
       };
 
-      button_type = g_type_register_static (GTK_TYPE_BIN, "GtkButton", &button_info);
+      button_type = g_type_register_static (GTK_TYPE_BIN, "GtkButton", &button_info, 0);
     }
 
   return button_type;
@@ -152,35 +152,35 @@ gtk_button_class_init (GtkButtonClass *klass)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkButtonClass, pressed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   button_signals[RELEASED] =
     gtk_signal_new ("released",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkButtonClass, released),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   button_signals[CLICKED] =
     gtk_signal_new ("clicked",
                     GTK_RUN_FIRST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkButtonClass, clicked),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   button_signals[ENTER] =
     gtk_signal_new ("enter",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkButtonClass, enter),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   button_signals[LEAVE] =
     gtk_signal_new ("leave",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkButtonClass, leave),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, button_signals, LAST_SIGNAL);
index 90b2c8d0d1d8d7c489c2feb39fb3c8e4e228bfab..5b0a6162719a1b2f02e0b8cb75ca0cf7b635361a 100644 (file)
@@ -337,7 +337,7 @@ gtk_calendar_get_type (void)
        (GInstanceInitFunc) gtk_calendar_init,
       };
 
-      calendar_type = g_type_register_static (GTK_TYPE_WIDGET, "GtkCalendar", &calendar_info);
+      calendar_type = g_type_register_static (GTK_TYPE_WIDGET, "GtkCalendar", &calendar_info, 0);
     }
   
   return calendar_type;
index 5a12dc21ebc702cebf61c0f6fc02d3cc85bc71ac..75d34ee044281bbc4b597c91454fcaded91cfb13 100644 (file)
@@ -66,7 +66,7 @@ gtk_cell_renderer_get_type (void)
         (GInstanceInitFunc) gtk_cell_renderer_init,
       };
 
-      cell_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkCellRenderer", &cell_info);
+      cell_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkCellRenderer", &cell_info, 0);
     }
 
   return cell_type;
index c37cb5afb64b297bd8912ea6d356d0120e9fb7ce..50d6a9fe7ddb50dfed909976e8787aaf95768327 100644 (file)
@@ -76,7 +76,7 @@ gtk_cell_renderer_pixbuf_get_type (void)
                        (GInstanceInitFunc) gtk_cell_renderer_pixbuf_init,
                };
 
-               cell_pixbuf_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererPixbuf", &cell_pixbuf_info);
+               cell_pixbuf_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererPixbuf", &cell_pixbuf_info, 0);
        }
 
        return cell_pixbuf_type;
index 9925f03ee9fcf5fee28fa7c0e66452e370325259..159aa5ceb0d5f1b096e45078db50aaf581c13523 100644 (file)
@@ -85,7 +85,7 @@ gtk_cell_renderer_text_get_type (void)
         (GInstanceInitFunc) gtk_cell_renderer_text_init,
       };
 
-      cell_text_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererText", &cell_text_info);
+      cell_text_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererText", &cell_text_info, 0);
     }
 
   return cell_text_type;
index 3929a13335f5162571cf5cbaae2632b714abad7e..d2fe42dac42a437cb73738d0adc852948bfe9284 100644 (file)
@@ -83,7 +83,7 @@ gtk_cell_renderer_text_pixbuf_get_type (void)
         (GInstanceInitFunc) gtk_cell_renderer_text_pixbuf_init,
       };
 
-      cell_text_pixbuf_type = g_type_register_static (GTK_TYPE_CELL_RENDERER_TEXT, "GtkCellRendererTextPixbuf", &cell_text_pixbuf_info);
+      cell_text_pixbuf_type = g_type_register_static (GTK_TYPE_CELL_RENDERER_TEXT, "GtkCellRendererTextPixbuf", &cell_text_pixbuf_info, 0);
     }
 
   return cell_text_pixbuf_type;
index 6830604b4efa3d01b162b72d50482332a585d7a4..238049d0595d55bb3d90f354eba1fb0c261ff098 100644 (file)
@@ -95,7 +95,7 @@ gtk_cell_renderer_toggle_get_type (void)
        (GInstanceInitFunc) gtk_cell_renderer_toggle_init,
       };
 
-      cell_toggle_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererToggle", &cell_toggle_info);
+      cell_toggle_type = g_type_register_static (GTK_TYPE_CELL_RENDERER, "GtkCellRendererToggle", &cell_toggle_info, 0);
     }
 
   return cell_toggle_type;
@@ -147,7 +147,7 @@ gtk_cell_renderer_toggle_class_init (GtkCellRendererToggleClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCellRendererToggleClass, toggled),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
 
index 3740da660269619fbf316f9e30bf6a97d78eb186..3d3b707e242c24c8e19e5a80d841428add3c7c24 100644 (file)
@@ -106,7 +106,7 @@ gtk_check_menu_item_class_init (GtkCheckMenuItemClass *klass)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCheckMenuItemClass, toggled),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   gtk_object_class_add_signals (object_class, check_menu_item_signals, LAST_SIGNAL);
 }
index 9fa74569fc22028f7df3b07406a459b1004acc53..4519ac87b04f440be6b7cbfde37524d3affb89ad 100644 (file)
@@ -544,7 +544,7 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 
   clist_signals[SELECT_ROW] =
@@ -552,7 +552,7 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, select_row),
-                   gtk_marshal_NONE__INT_INT_POINTER,
+                   gtk_marshal_VOID__INT_INT_POINTER,
                    GTK_TYPE_NONE, 3,
                    GTK_TYPE_INT,
                    GTK_TYPE_INT,
@@ -562,7 +562,7 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, unselect_row),
-                   gtk_marshal_NONE__INT_INT_POINTER,
+                   gtk_marshal_VOID__INT_INT_POINTER,
                    GTK_TYPE_NONE, 3, GTK_TYPE_INT,
                    GTK_TYPE_INT, GTK_TYPE_GDK_EVENT);
   clist_signals[ROW_MOVE] =
@@ -570,21 +570,21 @@ gtk_clist_class_init (GtkCListClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, row_move),
-                   gtk_marshal_NONE__INT_INT,
+                   gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
   clist_signals[CLICK_COLUMN] =
     gtk_signal_new ("click_column",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, click_column),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, GTK_TYPE_INT);
   clist_signals[RESIZE_COLUMN] =
     gtk_signal_new ("resize_column",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, resize_column),
-                   gtk_marshal_NONE__INT_INT,
+                   gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE, 2, GTK_TYPE_INT, GTK_TYPE_INT);
 
   clist_signals[TOGGLE_FOCUS_ROW] =
@@ -592,56 +592,56 @@ gtk_clist_class_init (GtkCListClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, toggle_focus_row),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[SELECT_ALL] =
     gtk_signal_new ("select_all",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, select_all),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[UNSELECT_ALL] =
     gtk_signal_new ("unselect_all",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, unselect_all),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   clist_signals[UNDO_SELECTION] =
     gtk_signal_new ("undo_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, undo_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[START_SELECTION] =
     gtk_signal_new ("start_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, start_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[END_SELECTION] =
     gtk_signal_new ("end_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, end_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[TOGGLE_ADD_MODE] =
     gtk_signal_new ("toggle_add_mode",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCListClass, toggle_add_mode),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   clist_signals[EXTEND_SELECTION] =
     gtk_signal_new ("extend_selection",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, extend_selection),
-                    gtk_marshal_NONE__ENUM_FLOAT_BOOL,
+                    gtk_marshal_VOID__ENUM_FLOAT_BOOL,
                     GTK_TYPE_NONE, 3,
                    GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT, GTK_TYPE_BOOL);
   clist_signals[SCROLL_VERTICAL] =
@@ -649,21 +649,21 @@ gtk_clist_class_init (GtkCListClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, scroll_vertical),
-                    gtk_marshal_NONE__ENUM_FLOAT,
+                    gtk_marshal_VOID__ENUM_FLOAT,
                     GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
   clist_signals[SCROLL_HORIZONTAL] =
     gtk_signal_new ("scroll_horizontal",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, scroll_horizontal),
-                    gtk_marshal_NONE__ENUM_FLOAT,
+                    gtk_marshal_VOID__ENUM_FLOAT,
                     GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
   clist_signals[ABORT_COLUMN_RESIZE] =
     gtk_signal_new ("abort_column_resize",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkCListClass, abort_column_resize),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   gtk_object_class_add_signals (object_class, clist_signals, LAST_SIGNAL);
 
index 8093a02210cef55c7ffb05bbe8dc914d0f2d60d9..4830f6b6597c4e5d7b5df86b09b256965b8af17c 100644 (file)
@@ -1351,7 +1351,7 @@ gtk_color_selection_class_init (GtkColorSelectionClass *klass)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkColorSelectionClass, color_changed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   
   
index 02158eefdb57bad3c6b504a0a6d3f28fd868b12f..053a6a893a963099a0ceaac7e8fb65ba71176472 100644 (file)
@@ -172,7 +172,7 @@ gtk_container_class_init (GtkContainerClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkContainerClass, add),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                     GTK_TYPE_WIDGET);
   container_signals[REMOVE] =
@@ -180,7 +180,7 @@ gtk_container_class_init (GtkContainerClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkContainerClass, remove),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                     GTK_TYPE_WIDGET);
   container_signals[CHECK_RESIZE] =
@@ -188,7 +188,7 @@ gtk_container_class_init (GtkContainerClass *class)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkContainerClass, check_resize),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   container_signals[FOCUS] =
     gtk_signal_new ("focus",
@@ -203,7 +203,7 @@ gtk_container_class_init (GtkContainerClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkContainerClass, set_focus_child),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                     GTK_TYPE_WIDGET);
   gtk_object_class_add_signals (object_class, container_signals, LAST_SIGNAL);
index b156789b7fbf42878867cc56e162dc44b3e4684b..9a80d2c76e11c9ced751e37580955ee6e4be897b 100644 (file)
@@ -391,35 +391,35 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_select_row),
-                   gtk_marshal_NONE__POINTER_INT,
+                   gtk_marshal_VOID__POINTER_INT,
                    GTK_TYPE_NONE, 2, GTK_TYPE_CTREE_NODE, GTK_TYPE_INT);
   ctree_signals[TREE_UNSELECT_ROW] =
     gtk_signal_new ("tree_unselect_row",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_unselect_row),
-                   gtk_marshal_NONE__POINTER_INT,
+                   gtk_marshal_VOID__POINTER_INT,
                    GTK_TYPE_NONE, 2, GTK_TYPE_CTREE_NODE, GTK_TYPE_INT);
   ctree_signals[TREE_EXPAND] =
     gtk_signal_new ("tree_expand",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_expand),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1, GTK_TYPE_CTREE_NODE);
   ctree_signals[TREE_COLLAPSE] =
     gtk_signal_new ("tree_collapse",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_collapse),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1, GTK_TYPE_CTREE_NODE);
   ctree_signals[TREE_MOVE] =
     gtk_signal_new ("tree_move",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_move),
-                   gtk_marshal_NONE__POINTER_POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER_POINTER,
                    GTK_TYPE_NONE, 3, GTK_TYPE_CTREE_NODE,
                    GTK_TYPE_CTREE_NODE, GTK_TYPE_CTREE_NODE);
   ctree_signals[CHANGE_FOCUS_ROW_EXPANSION] =
@@ -428,7 +428,7 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCTreeClass,
                                       change_focus_row_expansion),
-                   gtk_marshal_NONE__ENUM,
+                   gtk_marshal_VOID__ENUM,
                    GTK_TYPE_NONE, 1, GTK_TYPE_CTREE_EXPANSION_TYPE);
   gtk_object_class_add_signals (object_class, ctree_signals, LAST_SIGNAL);
 
index 805507df6b7d8ad5b3043d67e09205bc847e4417..76e5c30918265a0f0df8f96f225174992737495c 100644 (file)
@@ -114,7 +114,7 @@ gtk_curve_class_init (GtkCurveClass *class)
   curve_type_changed_signal =
     gtk_signal_new ("curve_type_changed", GTK_RUN_FIRST, GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkCurveClass, curve_type_changed),
-                   gtk_marshal_NONE__NONE, GTK_TYPE_NONE, 0);
+                   gtk_marshal_VOID__VOID, GTK_TYPE_NONE, 0);
   gtk_object_class_add_signals (object_class, &curve_type_changed_signal, 1);
   
   gtk_object_add_arg_type ("GtkCurve::curve_type", GTK_TYPE_CURVE_TYPE,
index d58e8dbfa42c2f0f598c11aad2d9e64a5cbde8c5..75201780219acddad59fd0e4e67ed2ac2f86d2f9 100644 (file)
@@ -77,7 +77,7 @@ gtk_data_class_init (GtkDataClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkDataClass, disconnect),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, data_signals, LAST_SIGNAL);
index 70cf6b8813d915b985b85a1742737f7fd0bd4ef8..76ee618fda3394ad2e82eee8385fe1f0e28e35d2 100644 (file)
@@ -150,7 +150,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   editable_signals[INSERT_TEXT] =
@@ -158,7 +158,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, insert_text),
-                   gtk_marshal_NONE__POINTER_INT_POINTER,
+                   gtk_marshal_VOID__POINTER_INT_POINTER,
                    GTK_TYPE_NONE,
                    3,
                    GTK_TYPE_STRING,
@@ -170,7 +170,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, delete_text),
-                   gtk_marshal_NONE__INT_INT,
+                   gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE,
                    2,
                    GTK_TYPE_INT,
@@ -181,7 +181,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, activate),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_class->activate_signal = editable_signals[ACTIVATE];
 
@@ -190,7 +190,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, set_editable),
-                   gtk_marshal_NONE__BOOL,
+                   gtk_marshal_VOID__BOOLEAN,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_BOOL);
 
@@ -199,7 +199,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, move_cursor),
-                   gtk_marshal_NONE__INT_INT,
+                   gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE, 2, 
                    GTK_TYPE_INT, 
                    GTK_TYPE_INT);
@@ -209,7 +209,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, move_word),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -218,7 +218,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, move_page),
-                   gtk_marshal_NONE__INT_INT,
+                   gtk_marshal_VOID__INT_INT,
                    GTK_TYPE_NONE, 2, 
                    GTK_TYPE_INT, 
                    GTK_TYPE_INT);
@@ -228,7 +228,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, move_to_row),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -237,7 +237,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, move_to_column),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -246,7 +246,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, kill_char),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -255,7 +255,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, kill_word),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -264,7 +264,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, kill_line),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_INT);
 
@@ -273,7 +273,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, cut_clipboard),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   editable_signals[COPY_CLIPBOARD] =
@@ -281,7 +281,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, copy_clipboard),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   editable_signals[PASTE_CLIPBOARD] =
@@ -289,7 +289,7 @@ gtk_editable_class_init (GtkEditableClass *class)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkEditableClass, paste_clipboard),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, editable_signals, LAST_SIGNAL);
index 9f8e1f93d8341498679b07874fbd9e041a48517f..0fcdf510ab7fd943be9ce0cf9ec770bccc1139dc 100644 (file)
@@ -27,6 +27,8 @@
 #ifndef __GTK_ENUMS_H__
 #define __GTK_ENUMS_H__
 
+#include <gobject/gsignal.h>
+
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
@@ -236,12 +238,12 @@ typedef enum
 /* signal run types */
 typedef enum                   /*< flags >*/
 {
-  GTK_RUN_FIRST      = 1 << 0,
-  GTK_RUN_LAST       = 1 << 1,
+  GTK_RUN_FIRST      = G_SIGNAL_RUN_FIRST,
+  GTK_RUN_LAST       = G_SIGNAL_RUN_LAST,
   GTK_RUN_BOTH       = (GTK_RUN_FIRST | GTK_RUN_LAST),
-  GTK_RUN_NO_RECURSE = 1 << 2,
-  GTK_RUN_ACTION     = 1 << 3,
-  GTK_RUN_NO_HOOKS   = 1 << 4
+  GTK_RUN_NO_RECURSE = G_SIGNAL_NO_RECURSE,
+  GTK_RUN_ACTION     = G_SIGNAL_ACTION,
+  GTK_RUN_NO_HOOKS   = G_SIGNAL_NO_HOOKS
 } GtkSignalRunType;
 
 /* scrolling types */
index 88d3ef87350933b4d2614f83d094d1e0cd4acdf7..e62230bcf81503fa3acbef98e78c0eb5a3189698 100644 (file)
@@ -183,7 +183,7 @@ gtk_handle_box_class_init (GtkHandleBoxClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkHandleBoxClass, child_attached),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
   handle_box_signals[SIGNAL_CHILD_DETACHED] =
@@ -191,7 +191,7 @@ gtk_handle_box_class_init (GtkHandleBoxClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkHandleBoxClass, child_detached),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
   gtk_object_class_add_signals (object_class, handle_box_signals, SIGNAL_LAST);
index 45a286df7065930452e5d1eb8d7932bc9d9bb219..7b1af385e0f9099e63b6af968f625202da6c0964 100644 (file)
@@ -150,7 +150,7 @@ gtk_hsv_class_init (GtkHSVClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkHSVClass, changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   gtk_object_class_add_signals (object_class, hsv_signals, LAST_SIGNAL);
   
index f6541a3d3e4a4a0e2f4b0fac9609c12b6128c4ee..ff724d454948bf6c28162e049c433111ff0619a0 100644 (file)
@@ -62,7 +62,7 @@ gtk_icon_factory_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GtkIconFactory",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 70b3a6d8f5e243b12f7d62dcf465095465bacce8..753937f11fede28f956ab71d0878d2c02f618ada 100644 (file)
@@ -76,7 +76,7 @@ gtk_im_context_class_init (GtkIMContextClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkIMContextClass, preedit_start),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   im_context_signals[PREEDIT_END] =
@@ -84,7 +84,7 @@ gtk_im_context_class_init (GtkIMContextClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkIMContextClass, preedit_end),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   im_context_signals[PREEDIT_CHANGED] =
@@ -92,7 +92,7 @@ gtk_im_context_class_init (GtkIMContextClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkIMContextClass, preedit_changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   im_context_signals[COMMIT] =
@@ -100,7 +100,7 @@ gtk_im_context_class_init (GtkIMContextClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkIMContextClass, commit),
-                   gtk_marshal_NONE__STRING,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_STRING);
 
index 147ed2090a38367fbc6041ae6eff6947d377363c..cf0e9690985c5ffd943bddb850b1729839006382 100644 (file)
@@ -143,7 +143,7 @@ gtk_input_dialog_class_init (GtkInputDialogClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkInputDialogClass, enable_device),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1, GTK_TYPE_POINTER);
 
   input_dialog_signals[DISABLE_DEVICE] =
@@ -151,7 +151,7 @@ gtk_input_dialog_class_init (GtkInputDialogClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkInputDialogClass, disable_device),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1, GTK_TYPE_POINTER);
 
   gtk_object_class_add_signals (object_class, input_dialog_signals,
index 2d3a73a63e51f3e779c7df175a992eaaad9b9da4..b3b7e0a5e97992d62e2eb328f4c275f9e14c6110 100644 (file)
@@ -89,21 +89,21 @@ gtk_item_class_init (GtkItemClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkItemClass, select),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   item_signals[DESELECT] =
     gtk_signal_new ("deselect",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkItemClass, deselect),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   item_signals[TOGGLE] =
     gtk_signal_new ("toggle",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkItemClass, toggle),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, item_signals, LAST_SIGNAL);
index 817c854033926fa3de4abd5a849e11c888f61224..e7fcde574c32612c4f9a8fa3719a83b2e6a572b9 100644 (file)
@@ -79,7 +79,7 @@ gtk_label_get_type (void)
        (GInstanceInitFunc) gtk_label_init,
       };
 
-      label_type = g_type_register_static (GTK_TYPE_MISC, "GtkLabel", &label_info);
+      label_type = g_type_register_static (GTK_TYPE_MISC, "GtkLabel", &label_info, 0);
     }
   
   return label_type;
index 23e46dfe4b86d603259b96dd2063620f7886d664..b1b87ea0d0dcac01f9a1a7a479bcf87910b827a0 100644 (file)
@@ -360,7 +360,7 @@ gtk_layout_get_type (void)
        (GInstanceInitFunc) gtk_layout_init,
       };
 
-      layout_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkLayout", &layout_info);
+      layout_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkLayout", &layout_info, 0);
     }
 
   return layout_type;
@@ -400,7 +400,7 @@ gtk_layout_class_init (GtkLayoutClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkLayoutClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 }
 
index de3eeb987bd3fd870078858ecc91a1c201d98f49..1043e147ffcd18192b92d78ebcc68b5c1e125673 100644 (file)
@@ -221,14 +221,14 @@ gtk_list_class_init (GtkListClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListClass, selection_changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   list_signals[SELECT_CHILD] =
     gtk_signal_new ("select_child",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListClass, select_child),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
   list_signals[UNSELECT_CHILD] =
@@ -236,7 +236,7 @@ gtk_list_class_init (GtkListClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListClass, unselect_child),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
 
index 15b6e5479eb5af624d4c63d032369a5ced8e3377..e4bf4a2ab9f0e9548bc1b43e4eb696c66489b700 100644 (file)
@@ -120,72 +120,72 @@ gtk_list_item_class_init (GtkListItemClass *class)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, toggle_focus_row),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   list_item_signals[SELECT_ALL] =
     gtk_signal_new ("select_all",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, select_all),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   list_item_signals[UNSELECT_ALL] =
     gtk_signal_new ("unselect_all",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, unselect_all),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
   list_item_signals[UNDO_SELECTION] =
     gtk_signal_new ("undo_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListItemClass, undo_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   list_item_signals[START_SELECTION] =
     gtk_signal_new ("start_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListItemClass, start_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   list_item_signals[END_SELECTION] =
     gtk_signal_new ("end_selection",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListItemClass, end_selection),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   list_item_signals[TOGGLE_ADD_MODE] =
     gtk_signal_new ("toggle_add_mode",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkListItemClass, toggle_add_mode),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   list_item_signals[EXTEND_SELECTION] =
     gtk_signal_new ("extend_selection",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, extend_selection),
-                    gtk_marshal_NONE__ENUM_FLOAT_BOOL,
+                    gtk_marshal_VOID__ENUM_FLOAT_BOOL,
                     GTK_TYPE_NONE, 3,
-                   GTK_TYPE_ENUM, GTK_TYPE_FLOAT, GTK_TYPE_BOOL);
+                   GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT, GTK_TYPE_BOOL);
   list_item_signals[SCROLL_VERTICAL] =
     gtk_signal_new ("scroll_vertical",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, scroll_vertical),
-                    gtk_marshal_NONE__ENUM_FLOAT,
-                    GTK_TYPE_NONE, 2, GTK_TYPE_ENUM, GTK_TYPE_FLOAT);
+                    gtk_marshal_VOID__ENUM_FLOAT,
+                    GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
   list_item_signals[SCROLL_HORIZONTAL] =
     gtk_signal_new ("scroll_horizontal",
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListItemClass, scroll_horizontal),
-                    gtk_marshal_NONE__ENUM_FLOAT,
-                    GTK_TYPE_NONE, 2, GTK_TYPE_ENUM, GTK_TYPE_FLOAT);
+                    gtk_marshal_VOID__ENUM_FLOAT,
+                    GTK_TYPE_NONE, 2, GTK_TYPE_SCROLL_TYPE, GTK_TYPE_FLOAT);
 
   gtk_object_class_add_signals (object_class, list_item_signals, LAST_SIGNAL);
 
index 41ab68ec0792be55569d54f785a54690771d920f..8c861c5c0f1e3e9a89a10c1e1e08bb16bf6977c1 100644 (file)
@@ -89,7 +89,7 @@ gtk_list_store_get_type (void)
        NULL
       };
 
-      list_store_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkListStore", &list_store_info);
+      list_store_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkListStore", &list_store_info, 0);
       g_type_add_interface_static (list_store_type,
                                   GTK_TYPE_TREE_MODEL,
                                   &tree_model_info);
@@ -110,7 +110,7 @@ gtk_list_store_class_init (GtkListStoreClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListStoreClass, node_changed),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -119,7 +119,7 @@ gtk_list_store_class_init (GtkListStoreClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListStoreClass, node_inserted),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -128,7 +128,7 @@ gtk_list_store_class_init (GtkListStoreClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListStoreClass, node_child_toggled),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -137,7 +137,7 @@ gtk_list_store_class_init (GtkListStoreClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkListStoreClass, node_deleted),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
 
index 98d74c926fa38facabff87082015f0d9884e26f9..9dde7c3ce94e42e7541e7d00bcdac189784a124b 100644 (file)
@@ -383,7 +383,7 @@ gtk_init_check (int  *argc,
        }
       if (!modinit_func)
        {
-         g_warning ("Failed to load module \"%s\": %s",
+         g_message ("Failed to load module \"%s\": %s",
                     module ? g_module_name (module) : module_name,
                     g_module_error ());
          if (module)
index b82fff618d70d1f892a66ac68752ea1b45f7b8f1..1395f1da18a3b056fa0f7ddf9b0be6be1ec19ace 100644 (file)
@@ -1,17 +1,85 @@
+# see glib-genmarshal(1) for a detailed description of the file format,
+# possible parameter types are:
+#   VOID        indicates   no   return   type,  or  no  extra
+#               parameters. if VOID is used as  the  parameter
+#               list, no additional parameters may be present.
+#   BOOLEAN     for boolean types (gboolean)
+#   CHAR        for signed char types (gchar)
+#   UCHAR       for unsigned char types (guchar)
+#   INT         for signed integer types (gint)
+#   UINT        for unsigned integer types (guint)
+#   LONG        for signed long integer types (glong)
+#   ULONG       for unsigned long integer types (gulong)
+#   ENUM        for enumeration types (gint)
+#   FLAGS       for flag enumeration types (guint)
+#   FLOAT       for single-precision float types (gfloat)
+#   DOUBLE      for double-precision float types (gdouble)
+#   STRING      for string types (gchar*)
+#   BOXED       for boxed (anonymous but reference counted) types (GBoxed*)
+#   POINTER     for anonymous pointer types (gpointer)
+#   OBJECT      for GObject or derived types (GObject*)
+#   NONE        deprecated alias for VOID
+#   BOOL        deprecated alias for BOOLEAN
+
+
+BOOLEAN:POINTER
+BOOLEAN:POINTER,INT,INT
+BOOLEAN:POINTER,INT,INT,UINT
+BOOLEAN:POINTER,POINTER,INT,INT
+BOOLEAN:POINTER,STRING,STRING,POINTER
+BOOLEAN:VOID
+ENUM:ENUM
+INT:OBJECT,BOXED,POINTER
+INT:POINTER
+INT:POINTER,CHAR,CHAR
+INT:VOID
+POINTER:POINTER
+POINTER:POINTER,INT
+POINTER:VOID
+VOID:BOOLEAN
+VOID:BOXED
+VOID:BOXED,UINT,FLAGS
+VOID:ENUM
+VOID:ENUM,FLOAT
+VOID:ENUM,FLOAT,BOOLEAN
+VOID:INT
+VOID:INT,INT
+VOID:INT,INT,INT
+VOID:INT,INT,INT,INT
+VOID:INT,INT,POINTER
+VOID:OBJECT
+VOID:POINTER
+VOID:POINTER,INT
+VOID:POINTER,INT,INT,POINTER,UINT,UINT
+VOID:POINTER,INT,POINTER
+VOID:POINTER,POINTER
+VOID:POINTER,POINTER,INT
+VOID:POINTER,POINTER,INT,INT
+VOID:POINTER,POINTER,POINTER
+VOID:POINTER,POINTER,UINT,UINT
+VOID:POINTER,STRING,STRING
+VOID:POINTER,UINT
+VOID:POINTER,UINT,ENUM
+VOID:POINTER,UINT,UINT
+VOID:STRING
+VOID:STRING,INT,POINTER
+VOID:STRING,POINTER
+VOID:UINT
+VOID:UINT,BOXED,UINT,FLAGS,FLAGS
+VOID:UINT,POINTER,UINT,ENUM,ENUM,POINTER
+VOID:UINT,POINTER,UINT,UINT,ENUM
+VOID:UINT,STRING
+VOID:VOID
+
+# deprecated, compatibility aliases:
 BOOL:NONE
 BOOL:POINTER
-BOOL:POINTER,POINTER,INT,INT
 BOOL:POINTER,INT,INT
 BOOL:POINTER,INT,INT,UINT
+BOOL:POINTER,POINTER,INT,INT
 BOOL:POINTER,STRING,STRING,POINTER
-ENUM:ENUM
 INT:NONE
-INT:POINTER
-INT:POINTER,CHAR,CHAR
-INT:OBJECT,BOXED,POINTER
 POINTER:NONE
-POINTER:POINTER
-POINTER:POINTER,INT
 NONE:BOOL
 NONE:BOXED
 NONE:ENUM
@@ -25,14 +93,16 @@ NONE:NONE
 NONE:OBJECT
 NONE:POINTER
 NONE:POINTER,INT
+NONE:POINTER,INT,INT,POINTER,UINT,UINT
+NONE:POINTER,INT,POINTER
 NONE:POINTER,POINTER
+NONE:POINTER,POINTER,INT
+NONE:POINTER,POINTER,INT,INT
 NONE:POINTER,POINTER,POINTER
+NONE:POINTER,POINTER,UINT,UINT
 NONE:POINTER,STRING,STRING
 NONE:POINTER,UINT
 NONE:POINTER,UINT,ENUM
-NONE:POINTER,POINTER,UINT,UINT
-NONE:POINTER,INT,INT,POINTER,UINT,UINT
-NONE:POINTER,UINT,UINT
 NONE:POINTER,UINT,UINT
 NONE:STRING
 NONE:STRING,INT,POINTER
@@ -41,5 +111,4 @@ NONE:UINT
 NONE:UINT,POINTER,UINT,ENUM,ENUM,POINTER
 NONE:UINT,POINTER,UINT,UINT,ENUM
 NONE:UINT,STRING
-NONE:POINTER,POINTER,INT,INT
-NONE:POINTER,POINTER,INT
+VOID:ENUM,FLOAT,BOOL
index b82fff618d70d1f892a66ac68752ea1b45f7b8f1..1395f1da18a3b056fa0f7ddf9b0be6be1ec19ace 100644 (file)
@@ -1,17 +1,85 @@
+# see glib-genmarshal(1) for a detailed description of the file format,
+# possible parameter types are:
+#   VOID        indicates   no   return   type,  or  no  extra
+#               parameters. if VOID is used as  the  parameter
+#               list, no additional parameters may be present.
+#   BOOLEAN     for boolean types (gboolean)
+#   CHAR        for signed char types (gchar)
+#   UCHAR       for unsigned char types (guchar)
+#   INT         for signed integer types (gint)
+#   UINT        for unsigned integer types (guint)
+#   LONG        for signed long integer types (glong)
+#   ULONG       for unsigned long integer types (gulong)
+#   ENUM        for enumeration types (gint)
+#   FLAGS       for flag enumeration types (guint)
+#   FLOAT       for single-precision float types (gfloat)
+#   DOUBLE      for double-precision float types (gdouble)
+#   STRING      for string types (gchar*)
+#   BOXED       for boxed (anonymous but reference counted) types (GBoxed*)
+#   POINTER     for anonymous pointer types (gpointer)
+#   OBJECT      for GObject or derived types (GObject*)
+#   NONE        deprecated alias for VOID
+#   BOOL        deprecated alias for BOOLEAN
+
+
+BOOLEAN:POINTER
+BOOLEAN:POINTER,INT,INT
+BOOLEAN:POINTER,INT,INT,UINT
+BOOLEAN:POINTER,POINTER,INT,INT
+BOOLEAN:POINTER,STRING,STRING,POINTER
+BOOLEAN:VOID
+ENUM:ENUM
+INT:OBJECT,BOXED,POINTER
+INT:POINTER
+INT:POINTER,CHAR,CHAR
+INT:VOID
+POINTER:POINTER
+POINTER:POINTER,INT
+POINTER:VOID
+VOID:BOOLEAN
+VOID:BOXED
+VOID:BOXED,UINT,FLAGS
+VOID:ENUM
+VOID:ENUM,FLOAT
+VOID:ENUM,FLOAT,BOOLEAN
+VOID:INT
+VOID:INT,INT
+VOID:INT,INT,INT
+VOID:INT,INT,INT,INT
+VOID:INT,INT,POINTER
+VOID:OBJECT
+VOID:POINTER
+VOID:POINTER,INT
+VOID:POINTER,INT,INT,POINTER,UINT,UINT
+VOID:POINTER,INT,POINTER
+VOID:POINTER,POINTER
+VOID:POINTER,POINTER,INT
+VOID:POINTER,POINTER,INT,INT
+VOID:POINTER,POINTER,POINTER
+VOID:POINTER,POINTER,UINT,UINT
+VOID:POINTER,STRING,STRING
+VOID:POINTER,UINT
+VOID:POINTER,UINT,ENUM
+VOID:POINTER,UINT,UINT
+VOID:STRING
+VOID:STRING,INT,POINTER
+VOID:STRING,POINTER
+VOID:UINT
+VOID:UINT,BOXED,UINT,FLAGS,FLAGS
+VOID:UINT,POINTER,UINT,ENUM,ENUM,POINTER
+VOID:UINT,POINTER,UINT,UINT,ENUM
+VOID:UINT,STRING
+VOID:VOID
+
+# deprecated, compatibility aliases:
 BOOL:NONE
 BOOL:POINTER
-BOOL:POINTER,POINTER,INT,INT
 BOOL:POINTER,INT,INT
 BOOL:POINTER,INT,INT,UINT
+BOOL:POINTER,POINTER,INT,INT
 BOOL:POINTER,STRING,STRING,POINTER
-ENUM:ENUM
 INT:NONE
-INT:POINTER
-INT:POINTER,CHAR,CHAR
-INT:OBJECT,BOXED,POINTER
 POINTER:NONE
-POINTER:POINTER
-POINTER:POINTER,INT
 NONE:BOOL
 NONE:BOXED
 NONE:ENUM
@@ -25,14 +93,16 @@ NONE:NONE
 NONE:OBJECT
 NONE:POINTER
 NONE:POINTER,INT
+NONE:POINTER,INT,INT,POINTER,UINT,UINT
+NONE:POINTER,INT,POINTER
 NONE:POINTER,POINTER
+NONE:POINTER,POINTER,INT
+NONE:POINTER,POINTER,INT,INT
 NONE:POINTER,POINTER,POINTER
+NONE:POINTER,POINTER,UINT,UINT
 NONE:POINTER,STRING,STRING
 NONE:POINTER,UINT
 NONE:POINTER,UINT,ENUM
-NONE:POINTER,POINTER,UINT,UINT
-NONE:POINTER,INT,INT,POINTER,UINT,UINT
-NONE:POINTER,UINT,UINT
 NONE:POINTER,UINT,UINT
 NONE:STRING
 NONE:STRING,INT,POINTER
@@ -41,5 +111,4 @@ NONE:UINT
 NONE:UINT,POINTER,UINT,ENUM,ENUM,POINTER
 NONE:UINT,POINTER,UINT,UINT,ENUM
 NONE:UINT,STRING
-NONE:POINTER,POINTER,INT,INT
-NONE:POINTER,POINTER,INT
+VOID:ENUM,FLOAT,BOOL
index e27fa6d13bf14ad3107ea3656e704f3e111818fb..b4e0ba45404130d5e6d62a0e86af1c8bd82fa2c9 100644 (file)
@@ -101,7 +101,7 @@ gtk_menu_item_get_type (void)
        (GInstanceInitFunc) gtk_menu_item_init,
       };
 
-      menu_item_type = g_type_register_static (GTK_TYPE_ITEM, "GtkMenuItem", &menu_item_info);
+      menu_item_type = g_type_register_static (GTK_TYPE_ITEM, "GtkMenuItem", &menu_item_info, 0);
     }
 
   return menu_item_type;
@@ -127,7 +127,7 @@ gtk_menu_item_class_init (GtkMenuItemClass *klass)
                     GTK_RUN_FIRST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuItemClass, activate),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   menu_item_signals[ACTIVATE_ITEM] =
index 38a717e4939e7f2cd111ee957293e7f79d030713..a8ced1698e4fc5d4ffffc75e8314e452719b7220 100644 (file)
@@ -192,21 +192,21 @@ gtk_menu_shell_class_init (GtkMenuShellClass *klass)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuShellClass, deactivate),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   menu_shell_signals[SELECTION_DONE] =
     gtk_signal_new ("selection-done",
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuShellClass, selection_done),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   menu_shell_signals[MOVE_CURRENT] =
     gtk_signal_new ("move_current",
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuShellClass, move_current),
-                   gtk_marshal_NONE__ENUM,
+                   gtk_marshal_VOID__ENUM,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_MENU_DIRECTION_TYPE);
   menu_shell_signals[ACTIVATE_CURRENT] =
@@ -214,7 +214,7 @@ gtk_menu_shell_class_init (GtkMenuShellClass *klass)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuShellClass, activate_current),
-                   gtk_marshal_NONE__BOOL,
+                   gtk_marshal_VOID__BOOLEAN,
                    GTK_TYPE_NONE, 1, 
                    GTK_TYPE_BOOL);
   menu_shell_signals[CANCEL] =
@@ -222,7 +222,7 @@ gtk_menu_shell_class_init (GtkMenuShellClass *klass)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkMenuShellClass, cancel),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   
   gtk_object_class_add_signals (object_class, menu_shell_signals, LAST_SIGNAL);
index e44aee4ca293efd79f4fc739cf212a2e7272a93a..1d32e48f16bad138dac575fea31febb4c905bb1f 100644 (file)
@@ -18,7 +18,6 @@
  */
 
 #include "gtkmodelsimple.h"
-#include "gtkmarshal.h"
 #include "gtksignal.h"
 enum {
   NODE_CHANGED,
@@ -98,7 +97,7 @@ gtk_model_simple_get_type (void)
        NULL
       };
 
-      model_simple_type = g_type_register_static (GTK_TYPE_TREE_MODEL, "GtkModelSimple", &model_simple_info);
+      model_simple_type = g_type_register_static (GTK_TYPE_TREE_MODEL, "GtkModelSimple", &model_simple_info, 0);
       g_type_add_interface_static (model_simple_type,
                                   GTK_TYPE_TREE_MODEL,
                                   &tree_model_info);
@@ -125,7 +124,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkModelSimpleClass, node_changed),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -134,7 +133,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkModelSimpleClass, node_inserted),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -143,7 +142,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkModelSimpleClass, node_child_toggled),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -152,7 +151,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkModelSimpleClass, node_deleted),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
 
@@ -161,7 +160,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     0,
-                    gtk_marshal_INT__NONE,
+                    gtk_marshal_INT__VOID,
                     GTK_TYPE_INT, 0);
   model_simple_signals[GET_NODE] =
     gtk_signal_new ("get_node",
@@ -184,7 +183,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     0,
-                    gtk_marshal_NONE__POINTER_INT_POINTER,
+                    gtk_marshal_VOID__POINTER_INT_POINTER,
                     GTK_TYPE_NONE, 3,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_INT,
@@ -194,7 +193,7 @@ gtk_model_simple_class_init (GtkModelSimpleClass *class)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     0,
-                    gtk_marshal_BOOL__POINTER,
+                    gtk_marshal_BOOLEAN__POINTER,
                     GTK_TYPE_BOOL, 1,
                    GTK_TYPE_POINTER);
   model_simple_signals[NODE_CHILDREN] =
index 839c778110f92c8723953b7fa02b1f52b0b5663e..0cb79802e720b399db840ef1e0c5c2a82d72fcc5 100644 (file)
@@ -273,7 +273,7 @@ gtk_notebook_class_init (GtkNotebookClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkNotebookClass, switch_page),
-                   gtk_marshal_NONE__POINTER_UINT,
+                   gtk_marshal_VOID__POINTER_UINT,
                    GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_UINT);
index cefeddfc5bef33f49e1f1de911164ff148c4a2f2..c1df707cb8344a44816a61ca05413579e41e446c 100644 (file)
@@ -95,7 +95,7 @@ gtk_object_get_type (void)
        (GInstanceInitFunc) gtk_object_init,
       };
       
-      object_type = g_type_register_static (G_TYPE_OBJECT, "GtkObject", &object_info);
+      object_type = g_type_register_static (G_TYPE_OBJECT, "GtkObject", &object_info, 0);
     }
 
   return object_type;
@@ -161,10 +161,10 @@ gtk_object_class_init (GtkObjectClass *class)
 
   object_signals[DESTROY] =
     gtk_signal_new ("destroy",
-                    GTK_RUN_LAST | GTK_RUN_NO_HOOKS,
+                    G_SIGNAL_RUN_CLEANUP | G_SIGNAL_NO_RECURSE | GTK_RUN_NO_HOOKS,
                     GTK_CLASS_TYPE (class),
                     GTK_SIGNAL_OFFSET (GtkObjectClass, destroy),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (class, object_signals, LAST_SIGNAL);
@@ -201,13 +201,10 @@ gtk_object_destroy (GtkObject *object)
   if (!GTK_OBJECT_DESTROYED (object))
     {
       /* need to hold a reference count around all class method
-       * invocations. we guard against reinvocations during
-       * destruction with the GTK_DESTROYED flag.
+       * invocations.
        */
       gtk_object_ref (object);
-      GTK_OBJECT_SET_FLAGS (object, GTK_DESTROYED);
       G_OBJECT_GET_CLASS (object)->shutdown (G_OBJECT (object));
-      GTK_OBJECT_UNSET_FLAGS (object, GTK_DESTROYED);
       gtk_object_unref (object);
     }
 }
@@ -217,7 +214,17 @@ gtk_object_shutdown (GObject *gobject)
 {
   GtkObject *object = GTK_OBJECT (gobject);
 
-  gtk_signal_emit (object, object_signals[DESTROY]);
+  /* guard against reinvocations during
+   * destruction with the GTK_DESTROYED flag.
+   */
+  if (!GTK_OBJECT_DESTROYED (object))
+    {
+      GTK_OBJECT_SET_FLAGS (object, GTK_DESTROYED);
+      
+      gtk_signal_emit (object, object_signals[DESTROY]);
+      
+      GTK_OBJECT_UNSET_FLAGS (object, GTK_DESTROYED);
+    }
 
   G_OBJECT_CLASS (parent_class)->shutdown (gobject);
 }
@@ -225,8 +232,7 @@ gtk_object_shutdown (GObject *gobject)
 static void
 gtk_object_real_destroy (GtkObject *object)
 {
-  if (GTK_OBJECT_CONNECTED (object))
-    gtk_signal_handlers_destroy (object);
+  g_signal_handlers_destroy (G_OBJECT (object));
 }
 
 static void
index 3b7947a64a6eda4f17d9485823bcba486b00470c..7c819d3a4f834d309646d0a0dff2c6cb658fc874 100644 (file)
@@ -64,7 +64,7 @@ typedef enum
 {
   GTK_DESTROYED                = 1 << 0,
   GTK_FLOATING         = 1 << 1,
-  GTK_CONNECTED                = 1 << 2,
+  GTK_RESERVED         = 1 << 2,
   GTK_CONSTRUCTED      = 1 << 3
 } GtkObjectFlags;
 
index 78be5ca133865ad7012d5e7f0a9be738c4bda9f1..420b53a8c6444bb38e157678416dac573d8940af 100644 (file)
@@ -79,7 +79,7 @@ gtk_plug_get_type ()
        (GInstanceInitFunc) gtk_plug_init,
       };
 
-      plug_type = g_type_register_static (GTK_TYPE_WINDOW, "GtkPlug", &plug_info);
+      plug_type = g_type_register_static (GTK_TYPE_WINDOW, "GtkPlug", &plug_info, 0);
     }
 
   return plug_type;
index 324e8d3a5442821eda5510aa388bac814972645d..5626ad4ff6b4466819f9a65e892c914a658f7d73 100644 (file)
@@ -733,7 +733,7 @@ gtk_rc_style_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GtkRcStyle",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 5cfc38cfec37dc19af3cbd5d82d49872f2e4d46f..004b7293fcb2d4b4569f70363b4df123e747729e 100644 (file)
@@ -8,7 +8,7 @@
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.         See the GNU
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
  * Boston, MA 02111-1307, USA.
  */
 
-/*
- * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
- * file for a list of people on the GTK+ Team.  See the ChangeLog
- * files for a list of changes.  These files are distributed with
- * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
- */
-
-#include <stdarg.h>
-#include <string.h>
-#include <stdio.h>
-#include "gtksignal.h"
-#include "gtkargcollector.c"
-
-
-#define        SIGNAL_BLOCK_SIZE               (100)
-#define        HANDLER_BLOCK_SIZE              (200)
-#define        EMISSION_BLOCK_SIZE             (100)
-#define        DISCONNECT_INFO_BLOCK_SIZE      (64)
-#define MAX_SIGNAL_PARAMS              (31)
-
-enum
-{
-  EMISSION_CONTINUE,
-  EMISSION_RESTART,
-  EMISSION_DONE
-};
-
-#define GTK_RUN_TYPE(x)         ((x) & GTK_RUN_BOTH)
-
-
-typedef struct _GtkSignal              GtkSignal;
-typedef struct _GtkSignalHash          GtkSignalHash;
-typedef struct _GtkHandler             GtkHandler;
-typedef struct _GtkEmission            GtkEmission;
-typedef struct _GtkEmissionHookData    GtkEmissionHookData;
-typedef struct _GtkDisconnectInfo      GtkDisconnectInfo;
-
-typedef void (*GtkSignalMarshaller0) (GtkObject *object,
-                                     gpointer   data);
-
-struct _GtkSignal
-{
-  guint                      signal_id;
-  GtkType            object_type;
-  gchar                     *name;
-  guint                      function_offset;
-  GtkSignalMarshaller marshaller;
-  GtkType            return_val;
-  guint                      signal_flags : 16;
-  guint                      nparams : 16;
-  GtkType           *params;
-  GHookList         *hook_list;
-};
-
-struct _GtkSignalHash
-{
-  GtkType object_type;
-  GQuark  quark;
-  guint          signal_id;
-};
-
-struct _GtkHandler
-{
-  guint                   id;
-  GtkHandler     *next;
-  GtkHandler     *prev;
-  guint                   blocked : 20;
-  guint                   object_signal : 1;
-  guint                   after : 1;
-  guint                   no_marshal : 1;
-  guint16         ref_count;
-  guint16         signal_id;
-  GtkSignalFunc           func;
-  gpointer        func_data;
-  GtkSignalDestroy destroy_func;
-};
-
-struct _GtkEmission
-{
-  GtkObject   *object;
-  guint16      signal_id;
-  guint               in_hook : 1;
-  GtkEmission *next;
-};
-
-struct _GtkEmissionHookData
-{
-  GtkObject *object;
-  guint signal_id;
-  guint n_params;
-  GtkArg *params;
-};
-
-struct _GtkDisconnectInfo
-{
-  GtkObject    *object1;
-  guint                 disconnect_handler1;
-  guint                 signal_handler;
-  GtkObject    *object2;
-  guint                 disconnect_handler2;
-};
-
-
-static guint       gtk_signal_hash            (gconstpointer h);
-static gint        gtk_signal_compare         (gconstpointer h1,
-                                               gconstpointer h2);
-static GtkHandler*  gtk_signal_handler_new     (void);
-static void        gtk_signal_handler_ref     (GtkHandler    *handler);
-static void        gtk_signal_handler_unref   (GtkHandler    *handler,
-                                               GtkObject     *object);
-static void        gtk_signal_handler_insert  (GtkObject     *object,
-                                               GtkHandler    *handler);
-static void        gtk_signal_real_emit       (GtkObject     *object,
-                                               guint          signal_id,
-                                               GtkArg        *params);
-static guint       gtk_signal_connect_by_type (GtkObject     *object,
-                                               guint          signal_id,
-                                               GtkSignalFunc  func,
-                                               gpointer       func_data,
-                                               GtkSignalDestroy destroy_func,
-                                               gint           object_signal,
-                                               gint           after,
-                                               gint           no_marshal);
-static guint       gtk_alive_disconnecter     (GtkDisconnectInfo *info);
-static GtkEmission* gtk_emission_new          (void);
-static void        gtk_emission_add           (GtkEmission   **emissions,
-                                               GtkObject      *object,
-                                               guint           signal_type);
-static void        gtk_emission_remove        (GtkEmission   **emissions,
-                                               GtkObject      *object,
-                                               guint           signal_type);
-static gint        gtk_emission_check         (GtkEmission    *emissions,
-                                               GtkObject      *object,
-                                               guint           signal_type);
-static gint        gtk_handlers_run           (GtkHandler     *handlers,
-                                               GtkSignal      *signal,
-                                               GtkObject      *object,
-                                               GtkArg         *params,
-                                               gint            after);
-static gboolean gtk_emission_hook_marshaller   (GHook          *hook,
-                                               gpointer        data);
-static gboolean        gtk_signal_collect_params      (GtkArg         *params,
-                                               guint           nparams,
-                                               GtkType        *param_types,
-                                               GtkType         return_type,
-                                               va_list         var_args);
-
-#define LOOKUP_SIGNAL_ID(signal_id)    ( \
-  signal_id > 0 && signal_id < _gtk_private_n_signals ? \
-    (GtkSignal*) _gtk_private_signals + signal_id : \
-    (GtkSignal*) 0 \
-)
-
-
-static GtkSignalMarshal global_marshaller = NULL;
-static GtkSignalDestroy global_destroy_notify = NULL;
-
-static guint                    gtk_handler_id = 1;
-static guint                    gtk_handler_quark = 0;
-static GHashTable              *gtk_signal_hash_table = NULL;
-#ifdef G_OS_WIN32
-#define EXPORT __declspec(dllexport)
-#else
-#define EXPORT
-#endif
-EXPORT GtkSignal               *_gtk_private_signals = NULL;
-EXPORT guint                    _gtk_private_n_signals = 0;
-static GMemChunk               *gtk_signal_hash_mem_chunk = NULL;
-static GMemChunk               *gtk_disconnect_info_mem_chunk = NULL;
-static GtkHandler              *gtk_handler_free_list = NULL;
-static GtkEmission             *gtk_free_emissions = NULL;
-
-
-
-static GtkEmission *current_emissions = NULL;
-static GtkEmission *stop_emissions = NULL;
-static GtkEmission *restart_emissions = NULL;
+#include       "gtksignal.h"
+#include       "gtkargcollector.c"
+#include       "gtkmarshal.c"
 
-static GtkSignal*
-gtk_signal_next_and_invalidate (void)
-{
-  static guint gtk_n_free_signals = 0;
-  register GtkSignal *signal;
-  register guint new_signal_id;
-  
-  /* don't keep *any* GtkSignal pointers across invokation of this function!!!
-   */
-  
-  if (gtk_n_free_signals == 0)
-    {
-      register guint i;
-      register guint size;
-      
-      /* nearest pow
-       */
-      size = _gtk_private_n_signals + SIGNAL_BLOCK_SIZE;
-      size *= sizeof (GtkSignal);
-      i = 1;
-      while (i < size)
-       i <<= 1;
-      size = i;
-      
-      _gtk_private_signals = g_realloc (_gtk_private_signals, size);
-      
-      gtk_n_free_signals = size / sizeof (GtkSignal) - _gtk_private_n_signals;
-      
-      memset (_gtk_private_signals + _gtk_private_n_signals, 0, gtk_n_free_signals * sizeof (GtkSignal));
-    }
-  
-  new_signal_id = _gtk_private_n_signals++;
-  gtk_n_free_signals--;
-
-  g_assert (_gtk_private_n_signals < 65535);
-  
-  signal = LOOKUP_SIGNAL_ID (new_signal_id);
-  if (signal)
-    signal->signal_id = new_signal_id;
-  
-  return signal;
-}
 
-static inline GtkHandler*
-gtk_signal_get_handlers (GtkObject *object,
-                        guint      signal_id)
-{
-  GtkHandler *handlers;
-  
-  handlers = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handlers)
-    {
-      if (handlers->signal_id == signal_id)
-       return handlers;
-      handlers = handlers->next;
-    }
-  
-  return NULL;
-}
+/* the real parameter limit is of course given by GSignal, bu we need
+ * an upper limit for the implementations. so this should be adjusted
+ * with any future changes on the GSignal side of things.
+ */
+#define        SIGNAL_MAX_PARAMS       12
 
-void
-gtk_signal_init (void)
-{
-  if (!gtk_handler_quark)
-    {
-      GtkSignal *zero;
-      
-      zero = gtk_signal_next_and_invalidate ();
-      g_assert (zero == NULL);
-      
-      gtk_handler_quark = g_quark_from_static_string ("gtk-signal-handlers");
-      
-      gtk_signal_hash_mem_chunk =
-       g_mem_chunk_new ("GtkSignalHash mem chunk",
-                        sizeof (GtkSignalHash),
-                        sizeof (GtkSignalHash) * SIGNAL_BLOCK_SIZE,
-                        G_ALLOC_ONLY);
-      gtk_disconnect_info_mem_chunk =
-       g_mem_chunk_new ("GtkDisconnectInfo mem chunk",
-                        sizeof (GtkDisconnectInfo),
-                        sizeof (GtkDisconnectInfo) * DISCONNECT_INFO_BLOCK_SIZE,
-                        G_ALLOC_AND_FREE);
-      gtk_handler_free_list = NULL;
-      gtk_free_emissions = NULL;
-      
-      gtk_signal_hash_table = g_hash_table_new (gtk_signal_hash,
-                                               gtk_signal_compare);
-    }
-}
 
+/* --- functions --- */
 guint
-gtk_signal_newv (const gchar        *r_name,
+gtk_signal_newv (const gchar         *name,
                 GtkSignalRunType     signal_flags,
-                GtkType              object_type,
-                guint                function_offset,
+                GtkType              object_type,
+                guint                function_offset,
                 GtkSignalMarshaller  marshaller,
-                GtkType              return_val,
-                guint                nparams,
-                GtkType             *params)
+                GtkType              return_val,
+                guint                n_params,
+                GtkType             *params)
 {
-  GtkSignal *signal;
-  GtkSignalHash *hash;
-  GQuark quark;
-  guint i;
-  gchar *name;
+  GClosure *closure;
   
-  g_return_val_if_fail (r_name != NULL, 0);
-  g_return_val_if_fail (marshaller != NULL, 0);
-  g_return_val_if_fail (nparams < MAX_SIGNAL_PARAMS, 0);
-  if (nparams)
-    g_return_val_if_fail (params != NULL, 0);
+  g_return_val_if_fail (n_params < SIGNAL_MAX_PARAMS, 0);
   
-  if (!gtk_handler_quark)
-    gtk_signal_init ();
-
-
-  name = g_strdup (r_name);
-  g_strdelimit (name, NULL, '_');
-
-  quark = gtk_signal_lookup (name, object_type);
-  if (quark)
-    {
-      g_warning ("gtk_signal_newv(): signal \"%s\" already exists in the `%s' class ancestry\n",
-                r_name,
-                gtk_type_name (object_type));
-      g_free (name);
-      return 0;
-    }
-  
-  if (return_val != GTK_TYPE_NONE &&
-      (signal_flags & GTK_RUN_BOTH) == GTK_RUN_FIRST)
-    {
-      g_warning ("gtk_signal_newv(): signal \"%s\" - return value `%s' incompatible with GTK_RUN_FIRST",
-                name, gtk_type_name (return_val));
-      g_free (name);
-      return 0;
-    }
-  
-  signal = gtk_signal_next_and_invalidate ();
-  
-  /* signal->signal_id already set */
-  
-  signal->object_type = object_type;
-  signal->name = name;
-  signal->function_offset = function_offset;
-  signal->marshaller = marshaller;
-  signal->return_val = return_val;
-  signal->signal_flags = signal_flags;
-  signal->nparams = nparams;
-  signal->hook_list = NULL;
-  
-  if (nparams > 0)
-    {
-      signal->params = g_new (GtkType, nparams);
-      
-      for (i = 0; i < nparams; i++)
-       signal->params[i] = params[i];
-    }
-  else
-    signal->params = NULL;
-
-  /* insert "signal_name" into hash table
-   */
-  hash = g_chunk_new (GtkSignalHash, gtk_signal_hash_mem_chunk);
-  hash->object_type = object_type;
-  hash->quark = g_quark_from_string (signal->name);
-  hash->signal_id = signal->signal_id;
-  g_hash_table_insert (gtk_signal_hash_table, hash, GUINT_TO_POINTER (hash->signal_id));
-
-  /* insert "signal-name" into hash table
-   */
-  g_strdelimit (signal->name, NULL, '-');
-  quark = g_quark_from_static_string (signal->name);
-  if (quark != hash->quark)
-    {
-      hash = g_chunk_new (GtkSignalHash, gtk_signal_hash_mem_chunk);
-      hash->object_type = object_type;
-      hash->quark = quark;
-      hash->signal_id = signal->signal_id;
-      g_hash_table_insert (gtk_signal_hash_table, hash, GUINT_TO_POINTER (hash->signal_id));
-    }
+  closure = g_signal_type_closure_new (object_type, function_offset);
   
-  return signal->signal_id;
+  return g_signal_newv (name, object_type, signal_flags, closure, NULL, marshaller, return_val, n_params, params);
 }
 
 guint
-gtk_signal_new (const gchar        *name,
+gtk_signal_new (const gchar         *name,
                GtkSignalRunType     signal_flags,
-               GtkType              object_type,
-               guint                function_offset,
+               GtkType              object_type,
+               guint                function_offset,
                GtkSignalMarshaller  marshaller,
-               GtkType              return_val,
-               guint                nparams,
+               GtkType              return_val,
+               guint                n_params,
                ...)
 {
   GtkType *params;
-  guint i;
-  va_list args;
   guint signal_id;
   
-  g_return_val_if_fail (nparams < MAX_SIGNAL_PARAMS, 0);
-  
-  if (nparams > 0)
+  if (n_params)
     {
-      params = g_new (GtkType, nparams);
-      
-      va_start (args, nparams);
+      va_list args;
+      guint i;
       
-      for (i = 0; i < nparams; i++)
+      params = g_new (GtkType, n_params);
+      va_start (args, n_params);
+      for (i = 0; i < n_params; i++)
        params[i] = va_arg (args, GtkType);
-      
       va_end (args);
     }
   else
     params = NULL;
-  
   signal_id = gtk_signal_newv (name,
                               signal_flags,
                               object_type,
                               function_offset,
                               marshaller,
                               return_val,
-                              nparams,
+                              n_params,
                               params);
-  
   g_free (params);
   
   return signal_id;
 }
 
-guint
-gtk_signal_lookup (const gchar *name,
-                  GtkType      object_type)
-{
-  GtkSignalHash hash;
-  GtkType lookup_type;
-  gpointer class = NULL;
-
-  g_return_val_if_fail (name != NULL, 0);
-  g_return_val_if_fail (GTK_TYPE_IS_OBJECT (object_type), 0);
-  
- relookup:
-
-  lookup_type = object_type;
-  hash.quark = g_quark_try_string (name);
-  if (hash.quark)
-    {
-      while (lookup_type)
-       {
-         guint signal_id;
-         
-         hash.object_type = lookup_type;
-         
-         signal_id = GPOINTER_TO_UINT (g_hash_table_lookup (gtk_signal_hash_table, &hash));
-         if (signal_id)
-           return signal_id;
-         
-         lookup_type = gtk_type_parent (lookup_type);
-       }
-    }
-
-  if (!class)
-    {
-      class = gtk_type_class (object_type);
-      goto relookup;
-    }
-
-  return 0;
-}
-
-GtkSignalQuery*
-gtk_signal_query (guint signal_id)
-{
-  GtkSignalQuery *query;
-  GtkSignal *signal;
-  
-  g_return_val_if_fail (signal_id >= 1, NULL);
-  
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  if (signal)
-    {
-      query = g_new (GtkSignalQuery, 1);
-      
-      query->object_type = signal->object_type;
-      query->signal_id = signal_id;
-      query->signal_name = signal->name;
-      query->is_user_signal = signal->function_offset == 0;
-      query->signal_flags = signal->signal_flags;
-      query->return_val = signal->return_val;
-      query->nparams = signal->nparams;
-      query->params = signal->params;
-    }
-  else
-    query = NULL;
-  
-  return query;
-}
-
-gchar*
-gtk_signal_name (guint signal_id)
+void
+gtk_signal_emit_stop_by_name (GtkObject   *object,
+                             const gchar *name)
 {
-  GtkSignal *signal;
-  
-  g_return_val_if_fail (signal_id >= 1, NULL);
-  
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  if (signal)
-    return signal->name;
+  g_return_if_fail (GTK_IS_OBJECT (object));
   
-  return NULL;
+  g_signal_stop_emission (object, g_signal_lookup (name, G_OBJECT_TYPE (object)));
 }
 
 void
-gtk_signal_emitv (GtkObject           *object,
-                 guint                signal_id,
-                 GtkArg              *params)
+gtk_signal_connect_object_while_alive (GtkObject    *object,
+                                      const gchar  *signal,
+                                      GtkSignalFunc func,
+                                      GtkObject    *alive_object)
 {
-  GtkSignal *signal;
-
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (signal_id >= 1);
+  g_return_if_fail (GTK_IS_OBJECT (object));
   
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  g_return_if_fail (signal != NULL);
-  g_return_if_fail (gtk_type_is_a (GTK_OBJECT_TYPE (object), signal->object_type));
-
-  if (signal->nparams > 0)
-    g_return_if_fail (params != NULL);
-
-  gtk_signal_real_emit (object, signal_id, params);
+  g_signal_connect_closure (object,
+                           g_signal_lookup (signal, G_OBJECT_TYPE (object)),
+                           g_cclosure_new_object_swap (func, alive_object),
+                           FALSE);
 }
 
 void
-gtk_signal_emit (GtkObject *object,
-                guint      signal_id,
-                ...)
+gtk_signal_connect_while_alive (GtkObject    *object,
+                               const gchar  *signal,
+                               GtkSignalFunc func,
+                               gpointer      func_data,
+                               GtkObject    *alive_object)
 {
-  GtkSignal *signal;
-  va_list    args;
-  GtkArg     params[MAX_SIGNAL_PARAMS + 1];
-  gboolean   abort;
-
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (signal_id >= 1);
-  
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  g_return_if_fail (signal != NULL);
-  g_return_if_fail (gtk_type_is_a (GTK_OBJECT_TYPE (object), signal->object_type));
+  GClosure *closure;
 
-  va_start (args, signal_id);
-  abort = gtk_signal_collect_params (params,
-                                    signal->nparams,
-                                    signal->params,
-                                    signal->return_val,
-                                    args);
-  va_end (args);
+  g_return_if_fail (GTK_IS_OBJECT (object));
 
-  if (!abort)
-    gtk_signal_real_emit (object, signal_id, params);
+  closure = g_cclosure_new (func, func_data, NULL);
+  g_object_watch_closure (G_OBJECT (alive_object), closure);
+  g_signal_connect_closure (object,
+                           g_signal_lookup (signal, G_OBJECT_TYPE (object)),
+                           closure,
+                           FALSE);
 }
 
-void
-gtk_signal_emitv_by_name (GtkObject           *object,
-                         const gchar         *name,
-                         GtkArg              *params)
+guint
+gtk_signal_connect_full (GtkObject           *object,
+                        const gchar         *name,
+                        GtkSignalFunc        func,
+                        GtkCallbackMarshal   unsupported,
+                        gpointer             data,
+                        GtkDestroyNotify     destroy_func,
+                        gint                 object_signal,
+                        gint                 after)
 {
-  guint signal_id;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (name != NULL);
-  g_return_if_fail (params != NULL);
-  
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
+  g_return_val_if_fail (GTK_IS_OBJECT (object), 0);
+  g_return_val_if_fail (unsupported == NULL, 0);
   
-  if (signal_id >= 1)
-    {
-      GtkSignal *signal;
-      
-      signal = LOOKUP_SIGNAL_ID (signal_id);
-      g_return_if_fail (signal != NULL);
-      g_return_if_fail (gtk_type_is_a (GTK_OBJECT_TYPE (object), signal->object_type));
-
-      gtk_signal_real_emit (object, signal_id, params);
-    }
-  else
-    {
-      g_warning ("gtk_signal_emitv_by_name(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-    }
+  return g_signal_connect_closure (object,
+                                  g_signal_lookup (name, G_OBJECT_TYPE (object)),
+                                  (object_signal
+                                   ? g_cclosure_new_swap
+                                   : g_cclosure_new) (func,
+                                                      data,
+                                                      (GClosureNotify) destroy_func),
+                                  after);
 }
 
 void
-gtk_signal_emit_by_name (GtkObject      *object,
-                        const gchar     *name,
-                        ...)
+gtk_signal_compat_matched (GtkObject       *object,
+                          GtkSignalFunc    func,
+                          gpointer         data,
+                          GSignalMatchType match,
+                          guint            action)
 {
-  guint signal_id;
+  guint id;
   
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (name != NULL);
+  g_return_if_fail (GTK_IS_OBJECT (object));
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
+  id = g_signal_handler_find (object, match, 0, NULL, func, data);
   
-  if (signal_id >= 1)
-    {
-      GtkSignal *signal;
-      GtkArg     params[MAX_SIGNAL_PARAMS + 1];
-      va_list    args;
-      gboolean   abort;
-      
-      signal = LOOKUP_SIGNAL_ID (signal_id);
-      g_return_if_fail (signal != NULL);
-      g_return_if_fail (gtk_type_is_a (GTK_OBJECT_TYPE (object), signal->object_type));
-
-      va_start (args, name);
-      abort = gtk_signal_collect_params (params,
-                                        signal->nparams,
-                                        signal->params,
-                                        signal->return_val,
-                                        args);
-      va_end (args);
-
-      if (!abort)
-       gtk_signal_real_emit (object, signal_id, params);
-    }
+  if (!id)
+    g_warning ("unable to find signal handler for object(%p) with func(%p) and data(%p)",
+              object, func, data);
   else
-    {
-      g_warning ("gtk_signal_emit_by_name(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-    }
+    switch (action)
+      {
+      case 0: g_signal_handler_disconnect (object, id); break;
+      case 1: g_signal_handler_block (object, id);     break;
+      case 2: g_signal_handler_unblock (object, id);   break;
+      }
 }
 
-void
-gtk_signal_emit_stop (GtkObject *object,
-                     guint       signal_id)
-{
-  gint state;
-
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (signal_id >= 1);
-  
-  state = gtk_emission_check (current_emissions, object, signal_id);
-  if (state > 1)
-    g_warning ("gtk_signal_emit_stop(): emission (%u) for object `%s' cannot be stopped from emission hook",
-              signal_id,
-              gtk_type_name (GTK_OBJECT_TYPE (object)));
-  else if (state)
-    {
-      if (!gtk_emission_check (stop_emissions, object, signal_id))
-       gtk_emission_add (&stop_emissions, object, signal_id);
-    }
-  else
-    g_warning ("gtk_signal_emit_stop(): no current emission (%u) for object `%s'",
-              signal_id,
-              gtk_type_name (GTK_OBJECT_TYPE (object)));
+static inline gboolean
+gtk_arg_to_value (GtkArg *arg,
+                 GValue *value)
+{
+  switch (G_TYPE_FUNDAMENTAL (arg->type))
+    {
+    case G_TYPE_CHAR:          g_value_set_char (value, GTK_VALUE_CHAR (*arg));        break;
+    case G_TYPE_UCHAR:         g_value_set_uchar (value, GTK_VALUE_UCHAR (*arg));      break;
+    case G_TYPE_BOOLEAN:       g_value_set_boolean (value, GTK_VALUE_BOOL (*arg));     break;
+    case G_TYPE_INT:           g_value_set_int (value, GTK_VALUE_INT (*arg));          break;
+    case G_TYPE_UINT:          g_value_set_uint (value, GTK_VALUE_UINT (*arg));        break;
+    case G_TYPE_LONG:          g_value_set_long (value, GTK_VALUE_LONG (*arg));        break;
+    case G_TYPE_ULONG:         g_value_set_ulong (value, GTK_VALUE_ULONG (*arg));      break;
+    case G_TYPE_ENUM:          g_value_set_enum (value, GTK_VALUE_ENUM (*arg));        break;
+    case G_TYPE_FLAGS:         g_value_set_flags (value, GTK_VALUE_FLAGS (*arg));      break;
+    case G_TYPE_FLOAT:         g_value_set_float (value, GTK_VALUE_FLOAT (*arg));      break;
+    case G_TYPE_DOUBLE:                g_value_set_double (value, GTK_VALUE_DOUBLE (*arg));    break;
+    case G_TYPE_STRING:                g_value_set_string (value, GTK_VALUE_STRING (*arg));    break;
+    case G_TYPE_BOXED:         g_value_set_boxed (value, GTK_VALUE_BOXED (*arg));      break;
+    case G_TYPE_POINTER:       g_value_set_pointer (value, GTK_VALUE_POINTER (*arg));  break;
+    case G_TYPE_OBJECT:                g_value_set_object (value, GTK_VALUE_POINTER (*arg));   break;
+    default:
+      return FALSE;
+    }
+  return TRUE;
+}
+
+static inline gboolean
+gtk_arg_set_from_value (GtkArg  *arg,
+                       GValue  *value,
+                       gboolean copy_string)
+{
+  switch (G_TYPE_FUNDAMENTAL (arg->type))
+    {
+    case G_TYPE_CHAR:          GTK_VALUE_CHAR (*arg) = g_value_get_char (value);       break;
+    case G_TYPE_UCHAR:         GTK_VALUE_UCHAR (*arg) = g_value_get_uchar (value);     break;
+    case G_TYPE_BOOLEAN:       GTK_VALUE_BOOL (*arg) = g_value_get_boolean (value);    break;
+    case G_TYPE_INT:           GTK_VALUE_INT (*arg) = g_value_get_int (value);         break;
+    case G_TYPE_UINT:          GTK_VALUE_UINT (*arg) = g_value_get_uint (value);       break;
+    case G_TYPE_LONG:          GTK_VALUE_LONG (*arg) = g_value_get_long (value);       break;
+    case G_TYPE_ULONG:         GTK_VALUE_ULONG (*arg) = g_value_get_ulong (value);     break;
+    case G_TYPE_ENUM:          GTK_VALUE_ENUM (*arg) = g_value_get_enum (value);       break;
+    case G_TYPE_FLAGS:         GTK_VALUE_FLAGS (*arg) = g_value_get_flags (value);     break;
+    case G_TYPE_FLOAT:         GTK_VALUE_FLOAT (*arg) = g_value_get_float (value);     break;
+    case G_TYPE_DOUBLE:                GTK_VALUE_DOUBLE (*arg) = g_value_get_double (value);   break;
+    case G_TYPE_BOXED:         GTK_VALUE_BOXED (*arg) = g_value_get_boxed (value);     break;
+    case G_TYPE_POINTER:       GTK_VALUE_POINTER (*arg) = g_value_get_pointer (value); break;
+    case G_TYPE_OBJECT:                GTK_VALUE_POINTER (*arg) = g_value_get_object (value);  break;
+    case G_TYPE_STRING:                if (copy_string)
+      GTK_VALUE_STRING (*arg) = g_value_dup_string (value);
+    else
+      GTK_VALUE_STRING (*arg) = g_value_get_string (value);
+    break;
+    default:
+      return FALSE;
+    }
+  return TRUE;
+}
+
+static inline gboolean
+gtk_argloc_set_from_value (GtkArg  *arg,
+                          GValue  *value,
+                          gboolean copy_string)
+{
+  switch (G_TYPE_FUNDAMENTAL (arg->type))
+    {
+    case G_TYPE_CHAR:          *GTK_RETLOC_CHAR (*arg) = g_value_get_char (value);       break;
+    case G_TYPE_UCHAR:         *GTK_RETLOC_UCHAR (*arg) = g_value_get_uchar (value);     break;
+    case G_TYPE_BOOLEAN:       *GTK_RETLOC_BOOL (*arg) = g_value_get_boolean (value);    break;
+    case G_TYPE_INT:           *GTK_RETLOC_INT (*arg) = g_value_get_int (value);         break;
+    case G_TYPE_UINT:          *GTK_RETLOC_UINT (*arg) = g_value_get_uint (value);       break;
+    case G_TYPE_LONG:          *GTK_RETLOC_LONG (*arg) = g_value_get_long (value);       break;
+    case G_TYPE_ULONG:         *GTK_RETLOC_ULONG (*arg) = g_value_get_ulong (value);     break;
+    case G_TYPE_ENUM:          *GTK_RETLOC_ENUM (*arg) = g_value_get_enum (value);       break;
+    case G_TYPE_FLAGS:         *GTK_RETLOC_FLAGS (*arg) = g_value_get_flags (value);     break;
+    case G_TYPE_FLOAT:         *GTK_RETLOC_FLOAT (*arg) = g_value_get_float (value);     break;
+    case G_TYPE_DOUBLE:                *GTK_RETLOC_DOUBLE (*arg) = g_value_get_double (value);   break;
+    case G_TYPE_BOXED:         *GTK_RETLOC_BOXED (*arg) = g_value_get_boxed (value);     break;
+    case G_TYPE_POINTER:       *GTK_RETLOC_POINTER (*arg) = g_value_get_pointer (value); break;
+    case G_TYPE_OBJECT:                *GTK_RETLOC_POINTER (*arg) = g_value_get_object (value);  break;
+    case G_TYPE_STRING:                if (copy_string)
+      *GTK_RETLOC_STRING (*arg) = g_value_dup_string (value);
+    else
+      *GTK_RETLOC_STRING (*arg) = g_value_get_string (value);
+    break;
+    default:
+      return FALSE;
+    }
+  return TRUE;
 }
 
 void
-gtk_signal_emit_stop_by_name (GtkObject              *object,
-                             const gchar     *name)
+gtk_signal_emitv (GtkObject *object,
+                 guint      signal_id,
+                 GtkArg    *args)
 {
-  guint signal_id;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (name != NULL);
+  GSignalQuery query;
+  GValue params[SIGNAL_MAX_PARAMS + 1] = { { 0, }, };
+  GValue rvalue = { 0, };
+  guint i;
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (signal_id)
-    gtk_signal_emit_stop (object, signal_id);
-  else
-    g_warning ("gtk_signal_emit_stop_by_name(): could not find signal \"%s\" in the `%s' class ancestry",
-              name,
-              gtk_type_name (GTK_OBJECT_TYPE (object)));
-}
-
-guint
-gtk_signal_n_emissions (GtkObject  *object,
-                       guint       signal_id)
-{
-  GtkEmission *emission;
-  guint n;
+  g_return_if_fail (GTK_IS_OBJECT (object));
   
-  g_return_val_if_fail (object != NULL, 0);
-  g_return_val_if_fail (GTK_IS_OBJECT (object), 0);
+  g_signal_query (signal_id, &query);
+  g_return_if_fail (query.signal_id != 0);
+  g_return_if_fail (g_type_conforms_to (GTK_OBJECT_TYPE (object), query.itype));
+  g_return_if_fail (query.n_params < SIGNAL_MAX_PARAMS);
+  if (query.n_params > 0)
+    g_return_if_fail (args != NULL);
   
-  n = 0;
-  for (emission = current_emissions; emission; emission = emission->next)
+  g_value_init (params + 0, GTK_OBJECT_TYPE (object));
+  g_value_set_object (params + 0, G_OBJECT (object));
+  for (i = 0; i < query.n_params; i++)
     {
-      if (emission->object == object && emission->signal_id == signal_id)
-       n++;
+      GValue *value = params + 1 + i;
+      GtkArg *arg = args + i;
+      
+      g_value_init (value, arg->type);
+      if (!gtk_arg_to_value (arg, value))
+       {
+         g_warning ("%s: failed to convert arg type `%s' to value type `%s'",
+                    G_STRLOC, g_type_name (arg->type), g_type_name (G_VALUE_TYPE (value)));
+         return;
+       }
     }
+  if (query.return_type != G_TYPE_NONE)
+    g_value_init (&rvalue, query.return_type);
   
-  return n;
-}
-
-guint
-gtk_signal_n_emissions_by_name (GtkObject      *object,
-                               const gchar     *name)
-{
-  guint signal_id;
-  guint n;
-  
-  g_return_val_if_fail (object != NULL, 0);
-  g_return_val_if_fail (GTK_IS_OBJECT (object), 0);
-  g_return_val_if_fail (name != NULL, 0);
+  g_signal_emitv (params, signal_id, &rvalue);
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (signal_id)
-    n = gtk_signal_n_emissions (object, signal_id);
-  else
+  if (query.return_type != G_TYPE_NONE)
     {
-      g_warning ("gtk_signal_n_emissions_by_name(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      n = 0;
+      gtk_argloc_set_from_value (args + query.n_params, &rvalue, TRUE);
+      g_value_unset (&rvalue);
     }
-  
-  return n;
+  for (i = 0; i < query.n_params; i++)
+    g_value_unset (params + 1 + i);
+  g_value_unset (params + 0);
 }
 
-guint
-gtk_signal_connect (GtkObject    *object,
-                   const gchar   *name,
-                   GtkSignalFunc  func,
-                   gpointer       func_data)
+static gboolean
+gtk_signal_collect_args (GtkArg        *args,
+                        guint          n_args,
+                        const GtkType *arg_types,
+                        GtkType        return_type,
+                        va_list        var_args)
 {
-  guint signal_id;
-  
-  g_return_val_if_fail (object != NULL, 0);
-  g_return_val_if_fail (GTK_IS_OBJECT (object), 0);
+  register GtkArg *last_arg;
+  register gboolean failed = FALSE;
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (!signal_id)
+  for (last_arg = args + n_args; args < last_arg; args++)
     {
-      g_warning ("gtk_signal_connect(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      return 0;
+      register gchar *error;
+      
+      args->name = NULL;
+      args->type = *(arg_types++);
+      GTK_ARG_COLLECT_VALUE (args,
+                            var_args,
+                            error);
+      if (error)
+       {
+         failed = TRUE;
+         g_warning ("gtk_signal_collect_args(): %s", error);
+         g_free (error);
+       }
     }
   
-  return gtk_signal_connect_by_type (object, signal_id, 
-                                    func, func_data, NULL,
-                                    FALSE, FALSE, FALSE);
-}
-
-guint
-gtk_signal_connect_after (GtkObject    *object,
-                         const gchar   *name,
-                         GtkSignalFunc  func,
-                         gpointer       func_data)
-{
-  guint signal_id;
-  
-  g_return_val_if_fail (object != NULL, 0);
+  args->type = return_type;
+  args->name = NULL;
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (!signal_id)
+  return_type = GTK_FUNDAMENTAL_TYPE (return_type);
+  if (return_type != G_TYPE_NONE)
     {
-      g_warning ("gtk_signal_connect_after(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      return 0;
+      if (return_type != 0) /* FIXME: check for IS_ARG */
+       {
+         GTK_VALUE_POINTER (*args) = va_arg (var_args, gpointer);
+         
+         if (GTK_VALUE_POINTER (*args) == NULL)
+           {
+             failed = TRUE;
+             g_warning ("gtk_signal_collect_args(): invalid NULL pointer for return argument type `%s'",
+                        gtk_type_name (args->type));
+           }
+       }
+      else
+       {
+         failed = TRUE;
+         g_warning ("gtk_signal_collect_args(): unsupported return argument type `%s'",
+                    gtk_type_name (args->type));
+       }
     }
+  else
+    GTK_VALUE_POINTER (*args) = NULL;
   
-  return gtk_signal_connect_by_type (object, signal_id, 
-                                    func, func_data, NULL,
-                                    FALSE, TRUE, FALSE);
+  return failed;
 }
 
-guint  
-gtk_signal_connect_full (GtkObject          *object,
-                        const gchar         *name,
-                        GtkSignalFunc        func,
-                        GtkCallbackMarshal   marshal,
-                        gpointer             func_data,
-                        GtkDestroyNotify     destroy_func,
-                        gint                 object_signal,
-                        gint                 after)
+void
+gtk_signal_emit (GtkObject *object,
+                guint      signal_id,
+                ...)
 {
-  guint signal_id;
+  GtkArg args[SIGNAL_MAX_PARAMS + 1];
+  GSignalQuery query;
+  gboolean abort;
+  va_list var_args;
   
-  g_return_val_if_fail (object != NULL, 0);
-  
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (!signal_id)
-    {
-      g_warning ("gtk_signal_connect_full(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      return 0;
-    }
-  
-  if (marshal)
-    return gtk_signal_connect_by_type (object, signal_id, (GtkSignalFunc) marshal, 
-                                      func_data, destroy_func, 
-                                      object_signal, after, TRUE);
-  else
-    return gtk_signal_connect_by_type (object, signal_id, func, 
-                                      func_data, destroy_func, 
-                                      object_signal, after, FALSE);
-}
-
-guint
-gtk_signal_connect_object (GtkObject    *object,
-                          const gchar   *name,
-                          GtkSignalFunc  func,
-                          GtkObject     *slot_object)
-{
-  guint signal_id;
+  g_return_if_fail (GTK_IS_OBJECT (object));
   
-  g_return_val_if_fail (object != NULL, 0);
-  /* slot_object needs to be treated as ordinary pointer
-   */
+  g_signal_query (signal_id, &query);
+  g_return_if_fail (query.signal_id != 0);
+  g_return_if_fail (query.n_params < SIGNAL_MAX_PARAMS);
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (!signal_id)
-    {
-      g_warning ("gtk_signal_connect_object(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      return 0;
-    }
+  va_start (var_args, signal_id);
+  abort = gtk_signal_collect_args (args,
+                                  query.n_params,
+                                  query.param_types,
+                                  query.return_type,
+                                  var_args);
+  va_end (var_args);
   
-  return gtk_signal_connect_by_type (object, signal_id, 
-                                    func, slot_object, NULL,
-                                    TRUE, FALSE, FALSE);
+  if (!abort)
+    gtk_signal_emitv (object, signal_id, args);
 }
 
-guint
-gtk_signal_connect_object_after (GtkObject     *object,
-                                const gchar   *name,
-                                GtkSignalFunc  func,
-                                GtkObject     *slot_object)
+void
+gtk_signal_emit_by_name (GtkObject   *object,
+                        const gchar *name,
+                        ...)
 {
-  guint signal_id;
+  GtkArg args[SIGNAL_MAX_PARAMS + 1];
+  GSignalQuery query;
+  gboolean abort;
+  va_list var_args;
+  
+  g_return_if_fail (GTK_IS_OBJECT (object));
+  g_return_if_fail (name != NULL);
   
-  g_return_val_if_fail (object != NULL, 0);
+  g_signal_query (g_signal_lookup (name, GTK_OBJECT_TYPE (object)), &query);
+  g_return_if_fail (query.signal_id != 0);
+  g_return_if_fail (query.n_params < SIGNAL_MAX_PARAMS);
   
-  signal_id = gtk_signal_lookup (name, GTK_OBJECT_TYPE (object));
-  if (!signal_id)
-    {
-      g_warning ("gtk_signal_connect_object_after(): could not find signal \"%s\" in the `%s' class ancestry",
-                name,
-                gtk_type_name (GTK_OBJECT_TYPE (object)));
-      return 0;
-    }
+  va_start (var_args, name);
+  abort = gtk_signal_collect_args (args,
+                                  query.n_params,
+                                  query.param_types,
+                                  query.return_type,
+                                  var_args);
+  va_end (var_args);
   
-  return gtk_signal_connect_by_type (object, signal_id, 
-                                    func, slot_object, NULL,
-                                    TRUE, TRUE, FALSE);
+  if (!abort)
+    gtk_signal_emitv (object, query.signal_id, args);
 }
 
 void
-gtk_signal_connect_while_alive (GtkObject       *object,
-                               const gchar      *signal,
-                               GtkSignalFunc     func,
-                               gpointer          func_data,
-                               GtkObject        *alive_object)
+gtk_signal_emitv_by_name (GtkObject   *object,
+                         const gchar *name,
+                         GtkArg      *args)
 {
-  GtkDisconnectInfo *info;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (GTK_IS_OBJECT (object));
-  g_return_if_fail (signal != NULL);
-  g_return_if_fail (func != NULL);
-  g_return_if_fail (alive_object != NULL);
-  g_return_if_fail (GTK_IS_OBJECT (alive_object));
-  
-  info = g_chunk_new (GtkDisconnectInfo, gtk_disconnect_info_mem_chunk);
-  info->object1 = object;
-  info->object2 = alive_object;
-  
-  info->signal_handler = gtk_signal_connect (object, signal, func, func_data);
-  info->disconnect_handler1 =
-    gtk_signal_connect_object (info->object1,
-                              "destroy",
-                              GTK_SIGNAL_FUNC (gtk_alive_disconnecter),
-                              (GtkObject*) info);
-  info->disconnect_handler2 =
-    gtk_signal_connect_object (info->object2,
-                              "destroy",
-                              GTK_SIGNAL_FUNC (gtk_alive_disconnecter),
-                              (GtkObject*) info);
-}
-
-void
-gtk_signal_connect_object_while_alive (GtkObject       *object,
-                                      const gchar      *signal,
-                                      GtkSignalFunc     func,
-                                      GtkObject        *alive_object)
-{
-  GtkDisconnectInfo *info;
-  
-  g_return_if_fail (object != NULL);
   g_return_if_fail (GTK_IS_OBJECT (object));
-  g_return_if_fail (signal != NULL);
-  g_return_if_fail (func != NULL);
-  g_return_if_fail (alive_object != NULL);
-  g_return_if_fail (GTK_IS_OBJECT (alive_object));
-  
-  info = g_chunk_new (GtkDisconnectInfo, gtk_disconnect_info_mem_chunk);
-  info->object1 = object;
-  info->object2 = alive_object;
-  
-  info->signal_handler = gtk_signal_connect_object (object, signal, func, alive_object);
-  info->disconnect_handler1 =
-    gtk_signal_connect_object (info->object1,
-                              "destroy",
-                              GTK_SIGNAL_FUNC (gtk_alive_disconnecter),
-                              (GtkObject*) info);
-  info->disconnect_handler2 =
-    gtk_signal_connect_object (info->object2,
-                              "destroy",
-                              GTK_SIGNAL_FUNC (gtk_alive_disconnecter),
-                              (GtkObject*) info);
-}
-
-void
-gtk_signal_disconnect (GtkObject *object,
-                      guint      handler_id)
-{
-  GtkHandler *handler;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (handler_id > 0);
-  
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if (handler->id == handler_id)
-       {
-         handler->id = 0;
-         handler->blocked += 1;
-         gtk_signal_handler_unref (handler, object);
-         return;
-       }
-      handler = handler->next;
-    }
-  
-  g_warning ("gtk_signal_disconnect(): could not find handler (%u)", handler_id);
-}
-
-void
-gtk_signal_disconnect_by_func (GtkObject     *object,
-                              GtkSignalFunc  func,
-                              gpointer       data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (func != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      GtkHandler *handler_next;
-      
-      handler_next = handler->next;
-      if ((handler->id > 0) &&
-         (handler->func == func) &&
-         (handler->func_data == data))
-       {
-         found_one = TRUE;
-         handler->id = 0;
-         handler->blocked += 1;
-         gtk_signal_handler_unref (handler, object);
-       }
-      handler = handler_next;
-    }
-  
-  if (!found_one)
-    g_warning ("gtk_signal_disconnect_by_func(): could not find handler (0x%0lX) containing data (0x%0lX)", (long) func, (long) data);
-}
-
-void
-gtk_signal_disconnect_by_data (GtkObject *object,
-                              gpointer   data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      GtkHandler *handler_next;
-      
-      handler_next = handler->next;
-      if ((handler->id > 0) &&
-         (handler->func_data == data))
-       {
-         found_one = TRUE;
-         handler->id = 0;
-         handler->blocked += 1;
-         gtk_signal_handler_unref (handler, object);
-       }
-      handler = handler_next;
-    }
-  
-  if (!found_one)
-    g_warning ("gtk_signal_disconnect_by_data(): could not find handler containing data (0x%0lX)", (long) data);
-}
-
-void
-gtk_signal_handler_block (GtkObject *object,
-                         guint      handler_id)
-{
-  GtkHandler *handler;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (handler_id > 0);
-  
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if (handler->id == handler_id)
-       {
-         handler->blocked += 1;
-         return;
-       }
-      handler = handler->next;
-    }
-  
-  g_warning ("gtk_signal_handler_block(): could not find handler (%u)", handler_id);
-}
-
-void
-gtk_signal_handler_block_by_func (GtkObject    *object,
-                                 GtkSignalFunc  func,
-                                 gpointer       data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (func != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if ((handler->id > 0) &&
-         (handler->func == func) &&
-         (handler->func_data == data))
-       {
-         found_one = TRUE;
-         handler->blocked += 1;
-       }
-      handler = handler->next;
-    }
-  
-  if (!found_one)
-    g_warning ("gtk_signal_handler_block_by_func(): could not find handler (0x%0lX) containing data (0x%0lX)", (long) func, (long) data);
-}
-
-void
-gtk_signal_handler_block_by_data (GtkObject *object,
-                                 gpointer   data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if ((handler->id > 0) &&
-         (handler->func_data == data))
-       {
-         found_one = TRUE;
-         handler->blocked += 1;
-       }
-      handler = handler->next;
-    }
-  
-  if (!found_one)
-    g_warning ("gtk_signal_handler_block_by_data(): could not find handler containing data (0x%0lX)", (long) data);
-}
-
-void
-gtk_signal_handler_unblock (GtkObject *object,
-                           guint      handler_id)
-{
-  GtkHandler *handler;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (handler_id > 0);
-  
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if (handler->id == handler_id)
-       {
-         if (handler->blocked > 0)
-           handler->blocked -= 1;
-         else
-           g_warning ("gtk_signal_handler_unblock(): handler (%u) is not blocked", handler_id);
-         return;
-       }
-      handler = handler->next;
-    }
-  
-  g_warning ("gtk_signal_handler_unblock(): could not find handler (%u)", handler_id);
-}
-
-void
-gtk_signal_handler_unblock_by_func (GtkObject    *object,
-                                   GtkSignalFunc  func,
-                                   gpointer       data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  g_return_if_fail (func != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if ((handler->id > 0) &&
-         (handler->func == func) &&
-         (handler->func_data == data) &&
-         (handler->blocked > 0))
-       {
-         handler->blocked -= 1;
-         found_one = TRUE;
-       }
-      handler = handler->next;
-    }
   
-  if (!found_one)
-    g_warning ("gtk_signal_handler_unblock_by_func(): could not find blocked handler (0x%0lX) containing data (0x%0lX)", (long) func, (long) data);
-}
-
-void
-gtk_signal_handler_unblock_by_data (GtkObject *object,
-                                   gpointer   data)
-{
-  GtkHandler *handler;
-  gint found_one;
-  
-  g_return_if_fail (object != NULL);
-  
-  found_one = FALSE;
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  
-  while (handler)
-    {
-      if ((handler->id > 0) &&
-         (handler->func_data == data) &&
-         (handler->blocked > 0))
-       {
-         handler->blocked -= 1;
-         found_one = TRUE;
-       }
-      handler = handler->next;
-    }
-  
-  if (!found_one)
-    g_warning ("gtk_signal_handler_unblock_by_data(): could not find blocked handler containing data (0x%0lX)", (long) data);
-}
-
-void
-gtk_signal_handlers_destroy (GtkObject *object)
-{
-  GtkHandler *handler;
-  
-  /* we make the "optimization" of destroying the first handler in the last
-   * place, since we don't want gtk_signal_handler_unref() to reset the objects
-   * handler_key data on each removal
-   */
-  
-  handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  if (handler)
-    {
-      handler = handler->next;
-      while (handler)
-       {
-         GtkHandler *next;
-         
-         next = handler->next;
-         if (handler->id > 0)
-            {
-             handler->id = 0;
-             handler->blocked += 1;
-             gtk_signal_handler_unref (handler, object);
-           }
-         handler = next;
-       }
-      handler = gtk_object_get_data_by_id (object, gtk_handler_quark);
-      if (handler->id > 0)
-        {
-         handler->id = 0;
-         handler->blocked += 1;
-         gtk_signal_handler_unref (handler, object);
-       }
-    }
-}
-
-void
-gtk_signal_set_funcs (GtkSignalMarshal marshal_func,
-                     GtkSignalDestroy destroy_func)
-{
-  global_marshaller = marshal_func;
-  global_destroy_notify = destroy_func;
-}
-
-static guint
-gtk_signal_hash (gconstpointer h)
-{
-  register const GtkSignalHash *hash = h;
-  
-  return hash->object_type ^ hash->quark;
-}
-
-static gint
-gtk_signal_compare (gconstpointer h1,
-                   gconstpointer h2)
-{
-  register const GtkSignalHash *hash1 = h1;
-  register const GtkSignalHash *hash2 = h2;
-  
-  return (hash1->quark == hash2->quark &&
-         hash1->object_type == hash2->object_type);
-}
-
-static guint
-gtk_alive_disconnecter (GtkDisconnectInfo *info)
-{
-  g_return_val_if_fail (info != NULL, 0);
-  
-  gtk_signal_disconnect (info->object1, info->disconnect_handler1);
-  gtk_signal_disconnect (info->object1, info->signal_handler);
-  gtk_signal_disconnect (info->object2, info->disconnect_handler2);
-  
-  g_mem_chunk_free (gtk_disconnect_info_mem_chunk, info);
-  
-  return 0;
-}
-
-static GtkHandler*
-gtk_signal_handler_new (void)
-{
-  GtkHandler *handler;
-
-  if (!gtk_handler_free_list)
-    {
-      GtkHandler *handler_block;
-      guint i;
-
-      handler_block = g_new0 (GtkHandler, HANDLER_BLOCK_SIZE);
-      for (i = 1; i < HANDLER_BLOCK_SIZE; i++)
-       {
-         (handler_block + i)->next = gtk_handler_free_list;
-         gtk_handler_free_list = (handler_block + i);
-       }
-      
-      handler = handler_block;
-    }
-  else
-    {
-      handler = gtk_handler_free_list;
-      gtk_handler_free_list = handler->next;
-    }
-  
-  handler->id = 0;
-  handler->blocked = 0;
-  handler->signal_id = 0;
-  handler->object_signal = FALSE;
-  handler->after = FALSE;
-  handler->no_marshal = FALSE;
-  handler->ref_count = 1;
-  handler->func = NULL;
-  handler->func_data = NULL;
-  handler->destroy_func = NULL;
-  handler->prev = NULL;
-  handler->next = NULL;
-  
-  return handler;
-}
-
-static void
-gtk_signal_handler_ref (GtkHandler *handler)
-{
-  handler->ref_count += 1;
-}
-
-static void
-gtk_signal_handler_unref (GtkHandler *handler,
-                         GtkObject  *object)
-{
-  if (!handler->ref_count)
-    {
-      /* FIXME: i wanna get removed somewhen */
-      g_warning ("gtk_signal_handler_unref(): handler with ref_count==0!");
-      return;
-    }
-  
-  handler->ref_count -= 1;
-  
-  if (handler->ref_count == 0)
-    {
-      if (handler->destroy_func)
-       (* handler->destroy_func) (handler->func_data);
-      else if (!handler->func && global_destroy_notify)
-       (* global_destroy_notify) (handler->func_data);
-      
-      if (handler->prev)
-       handler->prev->next = handler->next;
-      else if (handler->next)
-       gtk_object_set_data_by_id (object, gtk_handler_quark, handler->next);
-      else
-       {
-         GTK_OBJECT_UNSET_FLAGS (object, GTK_CONNECTED);
-         gtk_object_set_data_by_id (object, gtk_handler_quark, NULL);
-       }
-      if (handler->next)
-       handler->next->prev = handler->prev;
-      
-      handler->next = gtk_handler_free_list;
-      gtk_handler_free_list = handler;
-    }
-}
-
-static void
-gtk_signal_handler_insert (GtkObject  *object,
-                          GtkHandler *handler)
-{
-  GtkHandler *tmp;
-  
-  /* FIXME: remove */ g_assert (handler->next == NULL);
-  /* FIXME: remove */ g_assert (handler->prev == NULL);
-  
-  tmp = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  if (!tmp)
-    {
-      GTK_OBJECT_SET_FLAGS (object, GTK_CONNECTED);
-      gtk_object_set_data_by_id (object, gtk_handler_quark, handler);
-    }
-  else
-    while (tmp)
-      {
-       if (tmp->signal_id < handler->signal_id)
-         {
-           if (tmp->prev)
-             {
-               tmp->prev->next = handler;
-               handler->prev = tmp->prev;
-             }
-           else
-             gtk_object_set_data_by_id (object, gtk_handler_quark, handler);
-           tmp->prev = handler;
-           handler->next = tmp;
-           break;
-         }
-       
-       if (!tmp->next)
-         {
-           tmp->next = handler;
-           handler->prev = tmp;
-           break;
-         }
-       tmp = tmp->next;
-      }
-}
-
-
-#ifdef  G_ENABLE_DEBUG
-/* value typically set via gdb */
-static GtkObject *gtk_trace_signal_object = NULL;
-#endif  /* G_ENABLE_DEBUG */
-
-
-static void
-gtk_signal_real_emit (GtkObject *object,
-                     guint      signal_id,
-                     GtkArg    *params)
-{
-  GtkSignal     signal;
-  GtkHandler   *handlers;
-  GtkSignalFunc  signal_func;
-  GtkEmission   *emission;
-
-  /* gtk_handlers_run() expects a reentrant GtkSignal*, so we allocate
-   * it locally on the stack. we save some lookups ourselves with this as well.
-   */
-  signal = *LOOKUP_SIGNAL_ID (signal_id);
-  if (signal.function_offset)
-    signal_func = G_STRUCT_MEMBER (GtkSignalFunc, ((GTypeInstance*) object)->g_class, signal.function_offset);
-  else
-    signal_func = NULL;
-  
-#ifdef  G_ENABLE_DEBUG
-  if (gtk_debug_flags & GTK_DEBUG_SIGNALS ||
-      object == gtk_trace_signal_object)
-    g_message ("%s::%s emitted (object=%p class-method=%p)\n",
-              gtk_type_name (GTK_OBJECT_TYPE (object)),
-              signal.name,
-              object,
-              signal_func);
-#endif  /* G_ENABLE_DEBUG */
-  
-  if (signal.signal_flags & GTK_RUN_NO_RECURSE)
-    {
-      gint state;
-      
-      state = gtk_emission_check (current_emissions, object, signal_id);
-      if (state)
-       {
-         if (state > 1)
-           g_warning ("gtk_signal_real_emit(): emission (%u) for object `%s' cannot be restarted from emission hook",
-                      signal_id,
-                      gtk_type_name (GTK_OBJECT_TYPE (object)));
-         else if (!gtk_emission_check (restart_emissions, object, signal_id))
-           gtk_emission_add (&restart_emissions, object, signal_id);
-         
-         return;
-       }
-    }
-  
-  gtk_object_ref (object);
-  
-  gtk_emission_add (&current_emissions, object, signal_id);
-  emission = current_emissions;
-  
- emission_restart:
-  
-  if (signal.signal_flags & GTK_RUN_FIRST && signal_func)
-    {
-      signal.marshaller (object, signal_func, NULL, params);
-      
-      if (stop_emissions && gtk_emission_check (stop_emissions, object, signal_id))
-       {
-         gtk_emission_remove (&stop_emissions, object, signal_id);
-         goto emission_done;
-       }
-      else if (restart_emissions &&
-              signal.signal_flags & GTK_RUN_NO_RECURSE &&
-              gtk_emission_check (restart_emissions, object, signal_id))
-       {
-         gtk_emission_remove (&restart_emissions, object, signal_id);
-         
-         goto emission_restart;
-       }
-    }
-  
-  if (signal.hook_list && !GTK_OBJECT_DESTROYED (object))
-    {
-      GtkEmissionHookData data;
-
-      data.object = object;
-      data.n_params = signal.nparams;
-      data.params = params;
-      data.signal_id = signal_id;
-      emission->in_hook = 1;
-      g_hook_list_marshal_check (signal.hook_list, TRUE, gtk_emission_hook_marshaller, &data);
-      emission->in_hook = 0;
-    }
-
-  if (GTK_OBJECT_CONNECTED (object))
-    {
-      handlers = gtk_signal_get_handlers (object, signal_id);
-      if (handlers)
-       {
-         gint return_val;
-         
-         return_val = gtk_handlers_run (handlers, &signal, object, params, FALSE);
-         switch (return_val)
-           {
-           case EMISSION_CONTINUE:
-             break;
-           case EMISSION_RESTART:
-             goto emission_restart;
-           case EMISSION_DONE:
-             goto emission_done;
-           }
-       }
-    }
-  
-  if (signal.signal_flags & GTK_RUN_LAST && signal_func)
-    {
-      signal.marshaller (object, signal_func, NULL, params);
-      
-      if (stop_emissions && gtk_emission_check (stop_emissions, object, signal_id))
-       {
-         gtk_emission_remove (&stop_emissions, object, signal_id);
-         goto emission_done;
-       }
-      else if (restart_emissions &&
-              signal.signal_flags & GTK_RUN_NO_RECURSE &&
-              gtk_emission_check (restart_emissions, object, signal_id))
-       {
-         gtk_emission_remove (&restart_emissions, object, signal_id);
-         
-         goto emission_restart;
-       }
-    }
-  
-  if (GTK_OBJECT_CONNECTED (object))
-    {
-      handlers = gtk_signal_get_handlers (object, signal_id);
-      if (handlers)
-       {
-         gint return_val;
-         
-         return_val = gtk_handlers_run (handlers, &signal, object, params, TRUE);
-         switch (return_val)
-           {
-           case  EMISSION_CONTINUE:
-             break;
-           case  EMISSION_RESTART:
-             goto emission_restart;
-           case  EMISSION_DONE:
-             goto emission_done;
-           }
-       }
-    }
-  
- emission_done:
-  if (restart_emissions && signal.signal_flags & GTK_RUN_NO_RECURSE)
-    gtk_emission_remove (&restart_emissions, object, signal_id);
-  
-  gtk_emission_remove (&current_emissions, object, signal_id);
-  
-  gtk_object_unref (object);
-}
-
-guint
-gtk_signal_handler_pending (GtkObject          *object,
-                           guint                signal_id,
-                           gboolean             may_be_blocked)
-{
-  GtkHandler *handlers;
-  guint handler_id;
-  
-  g_return_val_if_fail (object != NULL, 0);
-  g_return_val_if_fail (signal_id >= 1, 0);
-
-  if (GTK_OBJECT_CONNECTED (object))
-    handlers = gtk_signal_get_handlers (object, signal_id);
-  else
-    return 0;
-  
-  handler_id = 0;
-  while (handlers && handlers->signal_id == signal_id)
-    {
-      if (handlers->id > 0 &&
-         (may_be_blocked || handlers->blocked == FALSE))
-       {
-         handler_id = handlers->id;
-         break;
-       }
-      
-      handlers = handlers->next;
-    }
-  
-  return handler_id;
-}
-
-guint
-gtk_signal_handler_pending_by_func (GtkObject           *object,
-                                   guint                signal_id,
-                                   gboolean             may_be_blocked,
-                                   GtkSignalFunc        func,
-                                   gpointer             data)
-{
-  GtkHandler *handlers;
-  guint handler_id;
-  
-  g_return_val_if_fail (object != NULL, 0);
-  g_return_val_if_fail (func != NULL, 0);
-  g_return_val_if_fail (signal_id >= 1, 0);
-
-  if (GTK_OBJECT_CONNECTED (object))
-    handlers = gtk_signal_get_handlers (object, signal_id);
-  else
-    return 0;
-  
-  handler_id = 0;
-  while (handlers && handlers->signal_id == signal_id)
-    {
-      if (handlers->id > 0 &&
-         handlers->func == func &&
-         handlers->func_data == data &&
-         (may_be_blocked || handlers->blocked == 0))
-       {
-         handler_id = handlers->id;
-         break;
-       }
-      
-      handlers = handlers->next;
-    }
-  
-  return handler_id;
-}
-
-gint
-gtk_signal_handler_pending_by_id (GtkObject *object,
-                                 guint      handler_id,
-                                 gboolean   may_be_blocked)
-{
-  GtkHandler *handlers;
-  
-  g_return_val_if_fail (object != NULL, FALSE);
-  g_return_val_if_fail (handler_id >= 1, FALSE);
-
-  if (GTK_OBJECT_CONNECTED (object))
-    handlers = gtk_object_get_data_by_id (object, gtk_handler_quark);
-  else
-    return FALSE;
-  
-  while (handlers)
-    {
-      if (handlers->id == handler_id)
-       return may_be_blocked || handlers->blocked == 0;
-      
-      handlers = handlers->next;
-    }
-  
-  return FALSE;
-}
-
-guint
-gtk_signal_add_emission_hook (guint           signal_id,
-                             GtkEmissionHook hook_func,
-                             gpointer        data)
-{
-  return gtk_signal_add_emission_hook_full (signal_id, hook_func, data, NULL);
-}
-
-guint
-gtk_signal_add_emission_hook_full (guint           signal_id,
-                                  GtkEmissionHook hook_func,
-                                  gpointer        data,
-                                  GDestroyNotify  destroy)
-{
-  static guint seq_hook_id = 1;
-  GtkSignal *signal;
-  GHook *hook;
-
-  g_return_val_if_fail (signal_id > 0, 0);
-  g_return_val_if_fail (hook_func != NULL, 0);
-  
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  g_return_val_if_fail (signal != NULL, 0);
-  if (signal->signal_flags & GTK_RUN_NO_HOOKS)
-    {
-      g_warning ("gtk_signal_add_emission_hook_full(): signal \"%s\" does not support emission hooks",
-                signal->name);
-      return 0;
-    }
-
-  if (!signal->hook_list)
-    {
-      signal->hook_list = g_new (GHookList, 1);
-      g_hook_list_init (signal->hook_list, sizeof (GHook));
-    }
-
-  hook = g_hook_alloc (signal->hook_list);
-  hook->data = data;
-  hook->func = hook_func;
-  hook->destroy = destroy;
-
-  signal->hook_list->seq_id = seq_hook_id;
-  g_hook_prepend (signal->hook_list, hook);
-  seq_hook_id = signal->hook_list->seq_id;
-
-  return hook->hook_id;
-}
-
-void
-gtk_signal_remove_emission_hook (guint signal_id,
-                                guint hook_id)
-{
-  GtkSignal *signal;
-
-  g_return_if_fail (signal_id > 0);
-  g_return_if_fail (hook_id > 0);
-
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-  g_return_if_fail (signal != NULL);
-
-  if (!signal->hook_list || !g_hook_destroy (signal->hook_list, hook_id))
-    g_warning ("gtk_signal_remove_emission_hook(): could not find hook (%u)", hook_id);
-}
-
-static gboolean
-gtk_emission_hook_marshaller (GHook   *hook,
-                             gpointer data_p)
-{
-  GtkEmissionHookData *data = data_p;
-  GtkEmissionHook func;
-
-  func = hook->func;
-
-  if (!GTK_OBJECT_DESTROYED (data->object))
-    return func (data->object, data->signal_id,
-                data->n_params, data->params,
-                hook->data);
-  else
-    return TRUE;
-}
-
-static guint
-gtk_signal_connect_by_type (GtkObject      *object,
-                           guint            signal_id,
-                           GtkSignalFunc    func,
-                           gpointer         func_data,
-                           GtkSignalDestroy destroy_func,
-                           gint             object_signal,
-                           gint             after,
-                           gint             no_marshal)
-{
-  GtkObjectClass *class;
-  GtkHandler *handler;
-  gint found_it;
-  GtkSignal *signal;
-  g_return_val_if_fail (GTK_IS_OBJECT (object), 0);
-  
-  signal = LOOKUP_SIGNAL_ID (signal_id);
-
-  /* Search through the signals for this object and make
-   *  sure the one we are adding is valid. We need to perform
-   *  the lookup on the objects parents as well. If it isn't
-   *  valid then issue a warning and return.
-   * As of now (1998-05-27) this lookup shouldn't be neccessarry
-   *  anymore since gtk_signal_lookup() has been reworked to only
-   *  return correct signal ids per class-branch.
-   */
-  found_it = FALSE;
-  class = GTK_OBJECT_GET_CLASS (object);
-  while (class)
-    {
-      GtkType parent;
-      guint *object_signals;
-      guint nsignals;
-      guint i;
-      
-      object_signals = class->signals;
-      nsignals = class->nsignals;
-      
-      for (i = 0; i < nsignals; i++)
-       if (object_signals[i] == signal_id)
-         {
-           found_it = TRUE;
-           break;
-         }
-      
-      parent = g_type_parent (GTK_CLASS_TYPE (class));
-      if (GTK_TYPE_IS_OBJECT (parent))
-       class = g_type_class_peek (parent);
-      else
-       class = NULL;
-    }
-  
-  if (!found_it)
-    {
-      g_warning ("gtk_signal_connect_by_type(): could not find signal id (%u) in the `%s' class ancestry",
-                signal_id,
-                GTK_OBJECT_TYPE_NAME (object));
-      return 0;
-    }
-  
-  handler = gtk_signal_handler_new ();
-  handler->id = gtk_handler_id++;
-  handler->signal_id = signal_id;
-  handler->object_signal = object_signal != FALSE;
-  handler->func = func;
-  handler->func_data = func_data;
-  handler->destroy_func = destroy_func;
-  handler->after = after != FALSE;
-  handler->no_marshal = no_marshal;
-  
-  gtk_signal_handler_insert (object, handler);
-  return handler->id;
-}
-
-static GtkEmission*
-gtk_emission_new (void)
-{
-  GtkEmission *emission;
-  
-  if (!gtk_free_emissions)
-    {
-      GtkEmission *emission_block;
-      guint i;
-
-      emission_block = g_new0 (GtkEmission, EMISSION_BLOCK_SIZE);
-      for (i = 1; i < EMISSION_BLOCK_SIZE; i++)
-       {
-         (emission_block + i)->next = gtk_free_emissions;
-         gtk_free_emissions = (emission_block + i);
-       }
-
-      emission = emission_block;
-    }
-  else
-    {
-      emission = gtk_free_emissions;
-      gtk_free_emissions = emission->next;
-    }
-
-  emission->object = NULL;
-  emission->signal_id = 0;
-  emission->in_hook = 0;
-  emission->next = NULL;
-  
-  return emission;
-}
-
-static void
-gtk_emission_add (GtkEmission **emissions,
-                 GtkObject    *object,
-                 guint         signal_id)
-{
-  GtkEmission *emission;
-  
-  g_return_if_fail (emissions != NULL);
-  g_return_if_fail (object != NULL);
-  
-  emission = gtk_emission_new ();
-  emission->object = object;
-  emission->signal_id = signal_id;
-
-  emission->next = *emissions;
-  *emissions = emission;
-}
-
-static void
-gtk_emission_remove (GtkEmission **emissions,
-                    GtkObject    *object,
-                    guint         signal_id)
-{
-  GtkEmission *emission, *last;
-  
-  g_return_if_fail (emissions != NULL);
-
-  last = NULL;
-  emission = *emissions;
-  while (emission)
-    {
-      if (emission->object == object && emission->signal_id == signal_id)
-       {
-         if (last)
-           last->next = emission->next;
-         else
-           *emissions = emission->next;
-
-         emission->next = gtk_free_emissions;
-         gtk_free_emissions = emission;
-         break;
-       }
-
-      last = emission;
-      emission = last->next;
-    }
-}
-
-static gint
-gtk_emission_check (GtkEmission *emission,
-                   GtkObject   *object,
-                   guint        signal_id)
-{
-  while (emission)
-    {
-      if (emission->object == object && emission->signal_id == signal_id)
-       return 1 + emission->in_hook;
-      emission = emission->next;
-    }
-  return FALSE;
-}
-
-static gint
-gtk_handlers_run (GtkHandler    *handlers,
-                 GtkSignal      *signal,
-                 GtkObject      *object,
-                 GtkArg         *params,
-                 gint            after)
-{
-  /* *signal is a local copy on the stack of gtk_signal_real_emit(),
-   * so we don't need to look it up every time we invoked a function.
-   */
-  while (handlers && handlers->signal_id == signal->signal_id)
-    {
-      GtkHandler *handlers_next;
-      
-      gtk_signal_handler_ref (handlers);
-      
-      if (!handlers->blocked && handlers->after == after)
-       {
-         if (handlers->func)
-           {
-             if (handlers->no_marshal)
-               (* (GtkCallbackMarshal) handlers->func) (object,
-                                                        handlers->func_data,
-                                                        signal->nparams,
-                                                        params);
-             else if (handlers->object_signal)
-               /* don't cast with GTK_OBJECT () */
-               (* signal->marshaller) ((GtkObject*) handlers->func_data,
-                                       handlers->func,
-                                       object,
-                                       params);
-             else
-               (* signal->marshaller) (object,
-                                       handlers->func,
-                                       handlers->func_data,
-                                       params);
-           }
-         else if (global_marshaller)
-           (* global_marshaller) (object,
-                                  handlers->func_data,
-                                  signal->nparams,
-                                  params,
-                                  signal->params,
-                                  signal->return_val);
-         
-         if (stop_emissions && gtk_emission_check (stop_emissions,
-                                                   object,
-                                                   signal->signal_id))
-           {
-             gtk_emission_remove (&stop_emissions, object, signal->signal_id);
-             
-             gtk_signal_handler_unref (handlers, object);
-
-             return EMISSION_DONE;
-           }
-         else if (restart_emissions &&
-                  signal->signal_flags & GTK_RUN_NO_RECURSE &&
-                  gtk_emission_check (restart_emissions, object, signal->signal_id))
-           {
-             gtk_emission_remove (&restart_emissions, object, signal->signal_id);
-
-             gtk_signal_handler_unref (handlers, object);
-
-             return EMISSION_RESTART;
-           }
-       }
-      
-      handlers_next = handlers->next;
-      gtk_signal_handler_unref (handlers, object);
-      handlers = handlers_next;
-    }
-  
-  return EMISSION_CONTINUE;
-}
-
-static gboolean
-gtk_signal_collect_params (GtkArg             *params,
-                          guint                n_params,
-                          GtkType             *param_types,
-                          GtkType              return_type,
-                          va_list              var_args)
-{
-  register GtkArg *last_param;
-  register gboolean failed = FALSE;
-
-  for (last_param = params + n_params; params < last_param; params++)
-    {
-      register gchar *error;
-
-      params->name = NULL;
-      params->type = *(param_types++);
-      GTK_ARG_COLLECT_VALUE (params,
-                            var_args,
-                            error);
-      if (error)
-       {
-         failed = TRUE;
-         g_warning ("gtk_signal_collect_params(): %s", error);
-         g_free (error);
-       }
-    }
-
-  params->type = return_type;
-  params->name = NULL;
-
-  return_type = GTK_FUNDAMENTAL_TYPE (return_type);
-  if (return_type != GTK_TYPE_NONE)
-    {
-      if (return_type != 0) /* FIXME: check for IS_PARAM */
-       {
-         GTK_VALUE_POINTER (*params) = va_arg (var_args, gpointer);
-         
-         if (GTK_VALUE_POINTER (*params) == NULL)
-           {
-             failed = TRUE;
-             g_warning ("gtk_signal_collect_params(): invalid NULL pointer for return argument type `%s'",
-                        gtk_type_name (params->type));
-           }
-       }
-      else
-       {
-         failed = TRUE;
-         g_warning ("gtk_signal_collect_params(): unsupported return argument type `%s'",
-                    gtk_type_name (params->type));
-       }
-    }
-  else
-    GTK_VALUE_POINTER (*params) = NULL;
-
-  return failed;
+  gtk_signal_emitv (object, g_signal_lookup (name, GTK_OBJECT_TYPE (object)), args);
 }
index aa4b519066e37d2e4ba36b7da1e09b061bbba0b7..2f71b4f1e73d50064eee8d4d59a936e3d10396ab 100644 (file)
 #define __GTK_SIGNAL_H__
 
 
-#include <gdk/gdk.h>
 #include <gtk/gtkenums.h>
 #include <gtk/gtkobject.h>
 #include <gtk/gtkmarshal.h>
 
+
 #ifdef __cplusplus
 extern "C" {
 #endif /* __cplusplus */
 
   
-#define GTK_SIGNAL_OFFSET(struct, field)       (GTK_STRUCT_OFFSET (struct, field))
-  
-  
-typedef void    (*GtkSignalMarshal) (GtkObject     *object,
-                                    gpointer        data,
-                                    guint           nparams,
-                                    GtkArg         *args,
-                                    GtkType        *arg_types,
-                                    GtkType         return_type);
-typedef void    (*GtkSignalDestroy) (gpointer       data);
-typedef gboolean (*GtkEmissionHook) (GtkObject     *object,
-                                    guint           signal_id,
-                                    guint           n_params,
-                                    GtkArg         *params,
-                                    gpointer        data);
-
-typedef struct _GtkSignalQuery         GtkSignalQuery;
-
-struct _GtkSignalQuery
-{
-  GtkType         object_type;
-  guint                   signal_id;
-  const gchar    *signal_name;
-  guint                   is_user_signal : 1;
-  GtkSignalRunType signal_flags;
-  GtkType         return_val;
-  guint                   nparams;
-  const GtkType          *params;
-};
-
-
-/* Application-level methods */
-guint  gtk_signal_lookup                 (const gchar         *name,
-                                          GtkType              object_type);
-gchar* gtk_signal_name                   (guint                signal_id) G_GNUC_CONST;
-guint  gtk_signal_n_emissions            (GtkObject           *object,
-                                          guint                signal_id);
-guint  gtk_signal_n_emissions_by_name    (GtkObject           *object,
-                                          const gchar         *name);
-void   gtk_signal_emit_stop              (GtkObject           *object,
-                                          guint                signal_id);
-void   gtk_signal_emit_stop_by_name      (GtkObject           *object,
-                                          const gchar         *name);
-guint  gtk_signal_connect                (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkSignalFunc        func,
-                                          gpointer             func_data);
-guint  gtk_signal_connect_after                  (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkSignalFunc        func,
-                                          gpointer             func_data);
-guint  gtk_signal_connect_object         (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkSignalFunc        func,
-                                          GtkObject           *slot_object);
-guint  gtk_signal_connect_object_after   (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkSignalFunc        func,
-                                          GtkObject           *slot_object);
-guint  gtk_signal_connect_full           (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkSignalFunc        func,
-                                          GtkCallbackMarshal   marshal,
-                                          gpointer             data,
-                                          GtkDestroyNotify     destroy_func,
-                                          gint                 object_signal,
-                                          gint                 after);
-
-void   gtk_signal_connect_object_while_alive (GtkObject               *object,
-                                             const gchar      *signal,
-                                             GtkSignalFunc     func,
-                                             GtkObject        *alive_object);
-void   gtk_signal_connect_while_alive       (GtkObject        *object,
-                                             const gchar      *signal,
-                                             GtkSignalFunc     func,
-                                             gpointer          func_data,
-                                             GtkObject        *alive_object);
-
-void   gtk_signal_disconnect             (GtkObject           *object,
-                                          guint                handler_id);
-void   gtk_signal_disconnect_by_func     (GtkObject           *object,
-                                          GtkSignalFunc        func,
-                                          gpointer             data);
-void   gtk_signal_disconnect_by_data     (GtkObject           *object,
-                                          gpointer             data);
-void   gtk_signal_handler_block                  (GtkObject           *object,
-                                          guint                handler_id);
-void   gtk_signal_handler_block_by_func          (GtkObject           *object,
-                                          GtkSignalFunc        func,
-                                          gpointer             data);
-void   gtk_signal_handler_block_by_data          (GtkObject           *object,
-                                          gpointer             data);
-void   gtk_signal_handler_unblock        (GtkObject           *object,
-                                          guint                handler_id);
-void   gtk_signal_handler_unblock_by_func (GtkObject          *object,
-                                          GtkSignalFunc        func,
-                                          gpointer             data);
-void   gtk_signal_handler_unblock_by_data (GtkObject          *object,
-                                          gpointer             data);
-guint  gtk_signal_handler_pending        (GtkObject           *object,
-                                          guint                signal_id,
-                                          gboolean             may_be_blocked);
-guint  gtk_signal_handler_pending_by_func (GtkObject          *object,
-                                          guint                signal_id,
-                                          gboolean             may_be_blocked,
-                                          GtkSignalFunc        func,
-                                          gpointer             data);
-gint   gtk_signal_handler_pending_by_id   (GtkObject          *object,
-                                          guint                handler_id,
-                                          gboolean             may_be_blocked);
-guint  gtk_signal_add_emission_hook      (guint                signal_id,
-                                          GtkEmissionHook      hook_func,
-                                          gpointer             data);
-guint  gtk_signal_add_emission_hook_full  (guint               signal_id,
-                                          GtkEmissionHook      hook_func,
-                                          gpointer             data,
-                                          GDestroyNotify       destroy);
-void   gtk_signal_remove_emission_hook   (guint                signal_id,
-                                          guint                hook_id);
-
-/* Report internal information about a signal. The caller has the
- * responsibility to invoke a subsequent g_free (returned_data); but
- * must not modify data pointed to by the members of GtkSignalQuery 
- */
-GtkSignalQuery* gtk_signal_query         (guint                signal_id);
-
-
-/* Widget-level methods */
-void   gtk_signal_init                   (void);
-guint  gtk_signal_new                    (const gchar         *name,
-                                          GtkSignalRunType     signal_flags,
-                                          GtkType              object_type,
-                                          guint                function_offset,
-                                          GtkSignalMarshaller  marshaller,
-                                          GtkType              return_val,
-                                          guint                nparams,
-                                          ...);
-guint  gtk_signal_newv                   (const gchar         *name,
-                                          GtkSignalRunType     signal_flags,
-                                          GtkType              object_type,
-                                          guint                function_offset,
-                                          GtkSignalMarshaller  marshaller,
-                                          GtkType              return_val,
-                                          guint                nparams,
-                                          GtkType             *params);
-void   gtk_signal_emit                   (GtkObject           *object,
-                                          guint                signal_id,
-                                          ...);
-void   gtk_signal_emit_by_name           (GtkObject           *object,
-                                          const gchar         *name,
-                                          ...);
-void   gtk_signal_emitv                          (GtkObject           *object,
-                                          guint                signal_id,
-                                          GtkArg              *params);
-void   gtk_signal_emitv_by_name                  (GtkObject           *object,
-                                          const gchar         *name,
-                                          GtkArg              *params);
-/* Non-public methods */
-void   gtk_signal_handlers_destroy       (GtkObject           *object);
-void   gtk_signal_set_funcs              (GtkSignalMarshal     marshal_func,
-                                          GtkSignalDestroy     destroy_func);
-       
+
+#define        gtk_signal_default_marshaller   gtk_marshal_VOID__VOID
+
+
+/* --- compat defines --- */
+#define GTK_SIGNAL_OFFSET                            GTK_STRUCT_OFFSET
+#define        gtk_signal_init()                             g_type_init()
+#define        gtk_signal_lookup                             g_signal_lookup
+#define        gtk_signal_name                               g_signal_name
+#define        gtk_signal_emit_stop                          g_signal_stop_emission
+#define        gtk_signal_connect(o,s,f,d)                   gtk_signal_connect_full ((o), (s), (f), 0, (d), 0, 0, 0)
+#define        gtk_signal_connect_after(o,s,f,d)             gtk_signal_connect_full ((o), (s), (f), 0, (d), 0, 0, 1)
+#define        gtk_signal_connect_object(o,s,f,d)            gtk_signal_connect_full ((o), (s), (f), 0, (d), 0, 1, 0)
+#define        gtk_signal_connect_object_after(o,s,f,d)      gtk_signal_connect_full ((o), (s), (f), 0, (d), 0, 1, 1)
+#define        gtk_signal_disconnect                         g_signal_handler_disconnect
+#define        gtk_signal_handler_block                      g_signal_handler_block
+#define        gtk_signal_handler_unblock                    g_signal_handler_unblock
+#define        gtk_signal_disconnect_by_func(o,f,d)          gtk_signal_compat_matched ((o), (f), (d), G_SIGNAL_MATCH_FUNC | \
+                                                                                                G_SIGNAL_MATCH_DATA, 0)
+#define        gtk_signal_disconnect_by_data(o,d)            gtk_signal_compat_matched ((o), 0, (d), G_SIGNAL_MATCH_DATA, 0)
+#define        gtk_signal_handler_block_by_func(o,f,d)       gtk_signal_compat_matched ((o), (f), (d), G_SIGNAL_MATCH_FUNC | \
+                                                                                                G_SIGNAL_MATCH_DATA, 1)
+#define        gtk_signal_handler_block_by_data(o,d)         gtk_signal_compat_matched ((o), 0, (d), G_SIGNAL_MATCH_DATA, 1)
+#define        gtk_signal_handler_unblock_by_func(o,f,d)     gtk_signal_compat_matched ((o), (f), (d), G_SIGNAL_MATCH_FUNC | \
+                                                                                                G_SIGNAL_MATCH_DATA, 2)
+#define        gtk_signal_handler_unblock_by_data(o,d)       gtk_signal_compat_matched ((o), 0, (d), G_SIGNAL_MATCH_DATA, 2)
+#define        gtk_signal_handler_pending                    g_signal_has_handler_pending
+#define        gtk_signal_handler_pending_by_func(o,s,b,f,d) (g_signal_handler_find ((o), G_SIGNAL_MATCH_ID | \
+                                                                                  G_SIGNAL_MATCH_FUNC | \
+                                                                                   G_SIGNAL_MATCH_DATA | \
+                                                                                   ((b) ? 0 : G_SIGNAL_MATCH_UNBLOCKED), \
+                                                                                  (s), 0, (f), (d)) != 0)
+
+
+/* --- compat functions --- */
+guint  gtk_signal_newv                         (const gchar        *name,
+                                                GtkSignalRunType    signal_flags,
+                                                GtkType             object_type,
+                                                guint               function_offset,
+                                                GtkSignalMarshaller marshaller,
+                                                GtkType             return_val,
+                                                guint               n_args,
+                                                GtkType            *args);
+guint  gtk_signal_new                          (const gchar        *name,
+                                                GtkSignalRunType    signal_flags,
+                                                GtkType             object_type,
+                                                guint               function_offset,
+                                                GtkSignalMarshaller marshaller,
+                                                GtkType             return_val,
+                                                guint               n_args,
+                                                ...);
+void   gtk_signal_emit_stop_by_name            (GtkObject          *object,
+                                                const gchar        *name);
+void   gtk_signal_connect_object_while_alive   (GtkObject          *object,
+                                                const gchar        *signal,
+                                                GtkSignalFunc       func,
+                                                GtkObject          *alive_object);
+void   gtk_signal_connect_while_alive          (GtkObject          *object,
+                                                const gchar        *signal,
+                                                GtkSignalFunc       func,
+                                                gpointer            func_data,
+                                                GtkObject          *alive_object);
+guint  gtk_signal_connect_full                 (GtkObject          *object,
+                                                const gchar        *name,
+                                                GtkSignalFunc       func,
+                                                GtkCallbackMarshal  unsupported,
+                                                gpointer            data,
+                                                GtkDestroyNotify    destroy_func,
+                                                gint                object_signal,
+                                                gint                after);
+void   gtk_signal_emitv                        (GtkObject          *object,
+                                                guint               signal_id,
+                                                GtkArg             *args);
+void   gtk_signal_emit                         (GtkObject          *object,
+                                                guint               signal_id,
+                                                ...);
+void   gtk_signal_emit_by_name                 (GtkObject          *object,
+                                                const gchar        *name,
+                                                ...);
+void   gtk_signal_emitv_by_name                (GtkObject          *object,
+                                                const gchar        *name,
+                                                GtkArg             *args);
+void   gtk_signal_compat_matched               (GtkObject          *object,
+                                                GtkSignalFunc       func,
+                                                gpointer            data,
+                                                GSignalMatchType    match,
+                                                guint               action);
+
+
+/* FIXME: non-functional relicts */
+typedef gpointer GtkEmissionHook;
+#define        gtk_signal_add_emission_hook(i,h,d)     (0)
+#define        gtk_signal_remove_emission_hook(i,h)    while (0)
 
 
 #ifdef __cplusplus
index 067bf4428d0083e66b515b65be46bb30f36e9a89..648cedc48170f025113f883a9cbc4a554b45e3b6 100644 (file)
@@ -92,7 +92,7 @@ gtk_socket_get_type (void)
        (GInstanceInitFunc) gtk_socket_init,
       };
 
-      socket_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkSocket", &socket_info);
+      socket_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkSocket", &socket_info, 0);
     }
 
   return socket_type;
index 9b400cefab2f337d30011b64970fe3d398c0551b..4193ba28afe0b9428111c4f2d98c27fbf4fb0d9f 100644 (file)
@@ -248,7 +248,7 @@ gtk_spin_button_class_init (GtkSpinButtonClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkSpinButtonClass, output),
-                   gtk_marshal_BOOL__NONE,
+                   gtk_marshal_BOOLEAN__VOID,
                    GTK_TYPE_BOOL, 0);
 
   gtk_object_class_add_signals (object_class, spinbutton_signals, LAST_SIGNAL);
index 6e0ba3b79878e928c9252909391f93598b115d1d..c5bb68b9ddbb1fdf1fe71b2410d32da41a6c2110 100644 (file)
@@ -101,7 +101,7 @@ gtk_statusbar_class_init (GtkStatusbarClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkStatusbarClass, text_pushed),
-                   gtk_marshal_NONE__UINT_STRING,
+                   gtk_marshal_VOID__UINT_STRING,
                    GTK_TYPE_NONE, 2,
                    GTK_TYPE_UINT,
                    GTK_TYPE_STRING);
@@ -110,7 +110,7 @@ gtk_statusbar_class_init (GtkStatusbarClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkStatusbarClass, text_popped),
-                   gtk_marshal_NONE__UINT_STRING,
+                   gtk_marshal_VOID__UINT_STRING,
                    GTK_TYPE_NONE, 2,
                    GTK_TYPE_UINT,
                    GTK_TYPE_STRING);
index 087bcb12ed696ea2c58e65a23e043d93e508d9ec..69e9f681c0947bd7ec5a76b8b033a43a0b05b8bf 100644 (file)
@@ -359,7 +359,7 @@ gtk_style_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GtkStyle",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 7953deed29dd3b5ec3f463df0e04676cc6333fd3..5994b1949f440a838d92f1a3b08121c43be59d96 100644 (file)
@@ -609,7 +609,7 @@ gtk_text_class_init (GtkTextClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTextClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 }
 
index 557bd6bf5c722ddca3eaf7caf78fa8809c2b232c..739cfe69b4030ab4faf98a87188450503fd16cfb 100644 (file)
@@ -96,11 +96,6 @@ static void gtk_text_buffer_real_remove_tag            (GtkTextBuffer     *buffe
 
 static GtkTextBTree* get_btree (GtkTextBuffer *buffer);
 
-void gtk_marshal_NONE__INT_POINTER_INT (GtkObject  *object,
-                                        GtkSignalFunc func,
-                                        gpointer func_data,
-                                        GtkArg  *args);
-
 static GtkObjectClass *parent_class = NULL;
 static guint signals[LAST_SIGNAL] = { 0 };
 
@@ -142,7 +137,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, insert_text),
-                    gtk_marshal_NONE__POINTER_POINTER_INT_INT,
+                    gtk_marshal_VOID__POINTER_POINTER_INT_INT,
                     GTK_TYPE_NONE,
                     4,
                     GTK_TYPE_POINTER,
@@ -155,7 +150,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, delete_text),
-                    gtk_marshal_NONE__POINTER_POINTER_INT,
+                    gtk_marshal_VOID__POINTER_POINTER_INT,
                     GTK_TYPE_NONE,
                     3,
                     GTK_TYPE_POINTER,
@@ -167,7 +162,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, changed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE,
                     0);
 
@@ -176,7 +171,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, modified_changed),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE,
                     0);
   
@@ -185,7 +180,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, mark_set),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE,
                     2,
                     GTK_TYPE_POINTER,
@@ -196,7 +191,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, mark_deleted),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE,
                     1,
                     GTK_TYPE_POINTER);
@@ -206,7 +201,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, apply_tag),
-                    gtk_marshal_NONE__POINTER_POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER_POINTER,
                     GTK_TYPE_NONE,
                     3,
                     GTK_TYPE_POINTER,
@@ -218,7 +213,7 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextBufferClass, remove_tag),
-                    gtk_marshal_NONE__POINTER_POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER_POINTER,
                     GTK_TYPE_NONE,
                     3,
                     GTK_TYPE_POINTER,
@@ -237,30 +232,6 @@ gtk_text_buffer_class_init (GtkTextBufferClass *klass)
   klass->remove_tag = gtk_text_buffer_real_remove_tag;
 }
 
-
-typedef gint (*GtkSignal_NONE__INT_POINTER_INT) (GtkObject  *object,
-                                                 gint pos,
-                                                 const gchar *text,
-                                                 gint len,
-                                                 gpointer user_data);
-
-void 
-gtk_marshal_NONE__INT_POINTER_INT (GtkObject  *object,
-                                   GtkSignalFunc func,
-                                   gpointer func_data,
-                                   GtkArg  *args)
-{
-  GtkSignal_NONE__INT_POINTER_INT rfunc;
-
-  rfunc = (GtkSignal_NONE__INT_POINTER_INT) func;
-
-  (*rfunc) (object,
-            GTK_VALUE_INT (args[0]),
-            GTK_VALUE_POINTER (args[1]),
-            GTK_VALUE_INT (args[2]),
-            func_data);
-}
-
 void
 gtk_text_buffer_init (GtkTextBuffer *buffer)
 {
index 99e3c39c408cf3000fbc286b0c0f21694b5583b5..363aafbcad4334ccf2da631fc2971467f6b9ee48 100644 (file)
@@ -101,10 +101,6 @@ static void gtk_text_layout_class_init (GtkTextLayoutClass *klass);
 static void gtk_text_layout_destroy (GtkObject *object);
 static void gtk_text_layout_finalize (GObject *object);
 
-void gtk_marshal_NONE__INT_INT_INT_INT (GtkObject  *object,
-                                        GtkSignalFunc func,
-                                        gpointer func_data,
-                                        GtkArg  *args);
 
 static GtkObjectClass *parent_class = NULL;
 static guint signals[LAST_SIGNAL] = { 0 };
@@ -149,7 +145,7 @@ gtk_text_layout_class_init (GtkTextLayoutClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextLayoutClass, invalidated),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE,
                     0);
 
@@ -158,7 +154,7 @@ gtk_text_layout_class_init (GtkTextLayoutClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextLayoutClass, changed),
-                    gtk_marshal_NONE__INT_INT_INT,
+                    gtk_marshal_VOID__INT_INT_INT,
                     GTK_TYPE_NONE,
                     3,
                     GTK_TYPE_INT,
@@ -2284,28 +2280,6 @@ gtk_text_layout_move_iter_visually (GtkTextLayout *layout,
 
 }
 
-typedef void (*GtkSignal_NONE__INT_INT_INT_INT) (GtkObject  *object,
-                                                 gint x, gint y,
-                                                 gint width, gint height,
-                                                 gpointer user_data);
-
-void
-gtk_marshal_NONE__INT_INT_INT_INT (GtkObject  *object,
-                                   GtkSignalFunc func,
-                                   gpointer func_data,
-                                   GtkArg  *args)
-{
-  GtkSignal_NONE__INT_INT_INT_INT rfunc;
-
-  rfunc = (GtkSignal_NONE__INT_INT_INT_INT) func;
-  (*rfunc) (object,
-            GTK_VALUE_INT (args[0]),
-            GTK_VALUE_INT (args[1]),
-            GTK_VALUE_INT (args[2]),
-            GTK_VALUE_INT (args[3]),
-            func_data);
-}
-
 void
 gtk_text_layout_spew (GtkTextLayout *layout)
 {
index c66af21e2fc5c939881f924cf83c1aaa39d50b18..72adca89779eac84ae67d9b5f0e98383cc1f379d 100644 (file)
@@ -79,7 +79,7 @@ gtk_text_mark_get_type (void)
       
       object_type = g_type_register_static (G_TYPE_OBJECT,
                                             "GtkTextMark",
-                                            &object_info);
+                                            &object_info, 0);
     }
   
   return object_type;
index 57f23ec4e9676544b15861899722d249b3d2b065..3d3d436f2fbfe78b129826704807b24bd4846c91 100644 (file)
@@ -63,7 +63,7 @@ gtk_text_tag_table_class_init (GtkTextTagTableClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextTagTableClass, tag_changed),
-                    gtk_marshal_NONE__POINTER_INT,
+                    gtk_marshal_VOID__POINTER_INT,
                     GTK_TYPE_NONE,
                     2,
                     GTK_TYPE_OBJECT,
@@ -74,7 +74,7 @@ gtk_text_tag_table_class_init (GtkTextTagTableClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextTagTableClass, tag_added),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE,
                     1,
                     GTK_TYPE_OBJECT);
@@ -84,7 +84,7 @@ gtk_text_tag_table_class_init (GtkTextTagTableClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextTagTableClass, tag_removed),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE,
                     1,
                     GTK_TYPE_OBJECT);
index 9bec94ce6e6c79f14cfc928549b4b9c70c99e1da..bab192c873d40aac9cddfaeffc70292071482094 100644 (file)
@@ -383,7 +383,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                       GTK_RUN_LAST | GTK_RUN_ACTION,
                       GTK_CLASS_TYPE (object_class),
                       GTK_SIGNAL_OFFSET (GtkTextViewClass, move),
-                      gtk_marshal_NONE__INT_INT_INT,
+                      gtk_marshal_VOID__INT_INT_INT,
                       GTK_TYPE_NONE, 3, GTK_TYPE_MOVEMENT_STEP, GTK_TYPE_INT, GTK_TYPE_BOOL);
 
   signals[SET_ANCHOR] = 
@@ -391,7 +391,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                       GTK_RUN_LAST | GTK_RUN_ACTION,
                       GTK_CLASS_TYPE (object_class),
                       GTK_SIGNAL_OFFSET (GtkTextViewClass, set_anchor),
-                      gtk_marshal_NONE__NONE,
+                      gtk_marshal_VOID__VOID,
                       GTK_TYPE_NONE, 0);
 
   signals[INSERT] = 
@@ -399,7 +399,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                       GTK_RUN_LAST | GTK_RUN_ACTION,
                       GTK_CLASS_TYPE (object_class),
                       GTK_SIGNAL_OFFSET (GtkTextViewClass, insert),
-                      gtk_marshal_NONE__STRING,
+                      gtk_marshal_VOID__POINTER,
                       GTK_TYPE_NONE, 1, GTK_TYPE_STRING);
 
   signals[DELETE] = 
@@ -407,7 +407,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                       GTK_RUN_LAST | GTK_RUN_ACTION,
                       GTK_CLASS_TYPE (object_class),
                       GTK_SIGNAL_OFFSET (GtkTextViewClass, delete),
-                      gtk_marshal_NONE__INT_INT,
+                      gtk_marshal_VOID__INT_INT,
                       GTK_TYPE_NONE, 2, GTK_TYPE_DELETE_TYPE, GTK_TYPE_INT);
 
   signals[CUT_CLIPBOARD] =
@@ -415,7 +415,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextViewClass, cut_clipboard),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
 
   signals[COPY_CLIPBOARD] =
@@ -423,7 +423,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextViewClass, copy_clipboard),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
 
   signals[PASTE_CLIPBOARD] =
@@ -431,7 +431,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextViewClass, paste_clipboard),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
 
   signals[TOGGLE_OVERWRITE] =
@@ -439,7 +439,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                     GTK_RUN_LAST | GTK_RUN_ACTION,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTextViewClass, toggle_overwrite),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                     GTK_TYPE_NONE, 0);
 
   signals[SET_SCROLL_ADJUSTMENTS] = widget_class->set_scroll_adjustments_signal =
@@ -447,7 +447,7 @@ gtk_text_view_class_init (GtkTextViewClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTextViewClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
   
   gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL);
index 666e4b1a4c48dff2177c6b9dac36ff2712b18e71..61b7fc182155935a2436175169647f7617063e29 100644 (file)
@@ -305,7 +305,7 @@ gtk_theme_engine_register_type (GtkThemeEngine  *engine,
       plugin->engine = NULL;
       plugin->engine_name = NULL;
       plugin->parent_type = parent_type;
-      plugin->type = g_type_register_dynamic (parent_type, type_name, (GTypePlugin *)plugin);
+      plugin->type = g_type_register_dynamic (parent_type, type_name, (GTypePlugin *) plugin, 0);
     }
   
   if (plugin->engine)
index 81aa34c14341e0f3f5b71773bff599d8e6f28528..a07328745e9a3ab78dec7645d6017ad26a18fc16 100644 (file)
@@ -127,21 +127,21 @@ gtk_tips_query_class_init (GtkTipsQueryClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTipsQueryClass, start_query),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   tips_query_signals[SIGNAL_STOP_QUERY] =
     gtk_signal_new ("stop_query",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTipsQueryClass, stop_query),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   tips_query_signals[SIGNAL_WIDGET_ENTERED] =
     gtk_signal_new ("widget_entered",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTipsQueryClass, widget_entered),
-                   gtk_marshal_NONE__POINTER_STRING_STRING,
+                   gtk_marshal_VOID__POINTER_STRING_STRING,
                    GTK_TYPE_NONE, 3,
                    GTK_TYPE_WIDGET,
                    GTK_TYPE_STRING,
@@ -151,7 +151,7 @@ gtk_tips_query_class_init (GtkTipsQueryClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTipsQueryClass, widget_selected),
-                   gtk_marshal_BOOL__POINTER_STRING_STRING_POINTER,
+                   gtk_marshal_BOOLEAN__POINTER_STRING_STRING_POINTER,
                    GTK_TYPE_BOOL, 4,
                    GTK_TYPE_WIDGET,
                    GTK_TYPE_STRING,
index 849dc8a64a3e0fcd50be680a9c45685c70986666..5b70c7e04d481b1b1baf9c8432257b98fdb8d9b0 100644 (file)
@@ -124,7 +124,7 @@ gtk_toggle_button_class_init (GtkToggleButtonClass *class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkToggleButtonClass, toggled),
-                    gtk_marshal_NONE__NONE,
+                    gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, toggle_button_signals, LAST_SIGNAL);
index 28178d7f28faec755e93d24484c008bbff9510fa..24b4412f7cdb411ae2242800003abccc45369a90 100644 (file)
@@ -145,7 +145,7 @@ gtk_toolbar_class_init (GtkToolbarClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkToolbarClass, orientation_changed),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_INT);
   toolbar_signals[STYLE_CHANGED] =
@@ -153,7 +153,7 @@ gtk_toolbar_class_init (GtkToolbarClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkToolbarClass, style_changed),
-                   gtk_marshal_NONE__INT,
+                   gtk_marshal_VOID__INT,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_INT);
 
index 954516c021ae50daae6d4b6771eb3d21be95f9c6..bc17a19b606c5659e065bf38a8f3a6c803e180dd 100644 (file)
@@ -117,14 +117,14 @@ gtk_tree_class_init (GtkTreeClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeClass, selection_changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   tree_signals[SELECT_CHILD] =
     gtk_signal_new ("select_child",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeClass, select_child),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
   tree_signals[UNSELECT_CHILD] =
@@ -132,7 +132,7 @@ gtk_tree_class_init (GtkTreeClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeClass, unselect_child),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_WIDGET);
   
index e93c0727dcdc10ae3efdcc9f0eb5f1e026998418..9ab2e75df43e188da4aa069a446e99098671fb80 100644 (file)
@@ -147,14 +147,14 @@ gtk_tree_item_class_init (GtkTreeItemClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeItemClass, expand),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   tree_item_signals[COLLAPSE_TREE] =
     gtk_signal_new ("collapse",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeItemClass, collapse),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, tree_item_signals, LAST_SIGNAL);
index aaee6974ae393851b5dee64e4c5a3b6866038b8d..a4c8f69d403e225e395eae44e9d7a848410af816 100644 (file)
@@ -42,7 +42,7 @@ gtk_tree_model_get_type (void)
        NULL,           /* base_finalize */
       };
 
-      tree_model_type = g_type_register_static (G_TYPE_INTERFACE, "GtkTreeModel", &tree_model_info);
+      tree_model_type = g_type_register_static (G_TYPE_INTERFACE, "GtkTreeModel", &tree_model_info, 0);
     }
 
   return tree_model_type;
index 6c76bf8c612be63dbafc6780ba07da06e3e661cb..802d806ecfd99f1694192dea4bb8ecab9f5ff0ba 100644 (file)
@@ -59,7 +59,7 @@ gtk_tree_selection_get_type (void)
         (GInstanceInitFunc) gtk_tree_selection_init
       };
 
-      selection_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeSelection", &selection_info);
+      selection_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeSelection", &selection_info, 0);
     }
 
   return selection_type;
@@ -78,7 +78,7 @@ gtk_tree_selection_class_init (GtkTreeSelectionClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeSelectionClass, selection_changed),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, tree_selection_signals, LAST_SIGNAL);
index a34015a6aafc77964b4596da15eefe9a45e058a2..96daafe89b29da8a9a27155834dbc08c0be8da53 100644 (file)
@@ -90,7 +90,7 @@ gtk_tree_store_get_type (void)
        NULL
       };
 
-      tree_store_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeStore", &tree_store_info);
+      tree_store_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeStore", &tree_store_info, 0);
       g_type_add_interface_static (tree_store_type,
                                   GTK_TYPE_TREE_MODEL,
                                   &tree_model_info);
@@ -111,7 +111,7 @@ gtk_tree_store_class_init (GtkTreeStoreClass *tree_store_class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTreeStoreClass, node_changed),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -120,7 +120,7 @@ gtk_tree_store_class_init (GtkTreeStoreClass *tree_store_class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTreeStoreClass, node_inserted),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -129,7 +129,7 @@ gtk_tree_store_class_init (GtkTreeStoreClass *tree_store_class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTreeStoreClass, node_child_toggled),
-                    gtk_marshal_NONE__POINTER_POINTER,
+                    gtk_marshal_VOID__POINTER_POINTER,
                     GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER,
                    GTK_TYPE_POINTER);
@@ -138,7 +138,7 @@ gtk_tree_store_class_init (GtkTreeStoreClass *tree_store_class)
                     GTK_RUN_FIRST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkTreeStoreClass, node_deleted),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                     GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
 
index 6f0b4ab4d5c3f94cb76d497f97207908ff368b75..e951107833dab169c5b863f7da756e7e26c72f35 100644 (file)
@@ -180,7 +180,7 @@ gtk_tree_view_get_type (void)
         (GInstanceInitFunc) gtk_tree_view_init
       };
 
-      tree_view_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkTreeView", &tree_view_info);
+      tree_view_type = g_type_register_static (GTK_TYPE_CONTAINER, "GtkTreeView", &tree_view_info, 0);
     }
 
   return tree_view_type;
@@ -226,7 +226,7 @@ gtk_tree_view_class_init (GtkTreeViewClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeViewClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2,
                    GTK_TYPE_POINTER, GTK_TYPE_POINTER);
 }
index fa032ee1e0289dcc9fb8e6d4890bb75c467eac77..f8810d72472cc90ca6e88ab9d084f94bfe15099f 100644 (file)
@@ -61,7 +61,7 @@ gtk_tree_view_column_get_type (void)
        (GInstanceInitFunc) gtk_tree_view_column_init,
       };
 
-      tree_column_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeViewColumn", &tree_column_info);
+      tree_column_type = g_type_register_static (GTK_TYPE_OBJECT, "GtkTreeViewColumn", &tree_column_info, 0);
     }
 
   return tree_column_type;
@@ -81,7 +81,7 @@ gtk_tree_view_column_class_init (GtkTreeViewColumnClass *class)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkTreeViewColumnClass, clicked),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
 
   gtk_object_class_add_signals (object_class, tree_column_signals, LAST_SIGNAL);
index fa8996a8a43c20422c19da51b685326fca461585..235b461d9c5b974ec4f08bf3bb3cd4b1c51cdb66 100644 (file)
@@ -50,7 +50,7 @@ gtk_type_unique (GtkType            parent_type,
   tinfo.n_preallocs = 0;
   tinfo.instance_init = gtkinfo->object_init_func;
 
-  return g_type_register_static (parent_type, gtkinfo->type_name, &tinfo);
+  return g_type_register_static (parent_type, gtkinfo->type_name, &tinfo, 0);
 }
 
 gpointer
@@ -118,6 +118,9 @@ GType GTK_TYPE_IDENTIFIER = 0;
 #endif
 extern IMPORT gboolean glib_debug_objects;
 
+#include <gtk.h>       /* for gtktypebuiltins_ids.c */
+#include <gdk.h>       /* gtktypebuiltins_ids.c */
+
 void
 gtk_type_init (void)
 {
@@ -129,14 +132,14 @@ gtk_type_init (void)
        GtkType type_id;
        gchar *name;
       } fundamental_info[] = {
-       { GTK_TYPE_POINTER,     "gpointer" },
        { GTK_TYPE_SIGNAL,      "GtkSignal" },
       };
       static struct {
        gchar              *type_name;
        GtkType            *type_id;
        GtkType             parent;
-       const GtkEnumValue *values;
+       gconstpointer       pointer1;
+       gpointer            pointer2;
       } builtin_info[GTK_TYPE_N_BUILTINS + 1] = {
 #include "gtktypebuiltins_ids.c"       /* type entries */
        { NULL }
@@ -148,7 +151,7 @@ gtk_type_init (void)
 
       initialized = TRUE;
 
-      glib_debug_objects = gtk_debug_flags & GTK_DEBUG_OBJECTS != 0;
+      glib_debug_objects = (gtk_debug_flags & GTK_DEBUG_OBJECTS) != 0;
       
       /* initialize GLib type system
        */
@@ -164,20 +167,13 @@ gtk_type_init (void)
        {
          type_id = g_type_register_fundamental (fundamental_info[i].type_id,
                                                 fundamental_info[i].name,
-                                                &tinfo,
-                                                &finfo);
+                                                &tinfo, &finfo, 0);
          g_assert (type_id == fundamental_info[i].type_id);
        }
 
       /* GTK_TYPE_IDENTIFIER
        */
-      GTK_TYPE_IDENTIFIER = g_type_register_static (G_TYPE_STRING, "GtkIdentifier", &tinfo);
-
-      /* GTK_TYPE_BOXED
-       */
-      finfo.type_flags = G_TYPE_FLAG_DERIVABLE;
-      type_id = g_type_register_fundamental (GTK_TYPE_BOXED, "GtkBoxed", &tinfo, &finfo);
-      g_assert (type_id == GTK_TYPE_BOXED);
+      GTK_TYPE_IDENTIFIER = g_type_register_static (G_TYPE_STRING, "GtkIdentifier", &tinfo, 0);
 
       /* enums and flags
        */
@@ -186,11 +182,18 @@ gtk_type_init (void)
          GtkType type_id = 0;
 
          if (builtin_info[i].parent == G_TYPE_ENUM)
-           type_id = g_enum_register_static (builtin_info[i].type_name, builtin_info[i].values);
+           type_id = g_enum_register_static (builtin_info[i].type_name, builtin_info[i].pointer1);
          else if (builtin_info[i].parent == G_TYPE_FLAGS)
-           type_id = g_flags_register_static (builtin_info[i].type_name, (const GFlagsValue *)builtin_info[i].values);
+           type_id = g_flags_register_static (builtin_info[i].type_name, builtin_info[i].pointer1);
          else if (builtin_info[i].parent == GTK_TYPE_BOXED)
-           type_id = g_type_register_static (GTK_TYPE_BOXED, builtin_info[i].type_name, &tinfo);
+           {
+             if (builtin_info[i].pointer1 && builtin_info[i].pointer2)
+               type_id = g_boxed_type_register_static (builtin_info[i].type_name,
+                                                       builtin_info[i].pointer1,
+                                                       builtin_info[i].pointer2);
+             else
+               type_id = g_type_register_static (GTK_TYPE_BOXED, builtin_info[i].type_name, &tinfo, 0);
+           }
          else
            g_assert_not_reached ();
 
index 4a2adac357834bb3d020198c49c81d278c3abd41..0f42429c66077cb02b5ce7c90b29c5f3daf216ff 100644 (file)
@@ -58,8 +58,8 @@ typedef enum  /*< skip >*/
   GTK_TYPE_FLOAT       = G_TYPE_FLOAT,
   GTK_TYPE_DOUBLE      = G_TYPE_DOUBLE,
   GTK_TYPE_STRING      = G_TYPE_STRING,
-  GTK_TYPE_BOXED       = G_TYPE_GTK_BOXED,
-  GTK_TYPE_POINTER     = G_TYPE_GTK_POINTER,
+  GTK_TYPE_BOXED       = G_TYPE_BOXED,
+  GTK_TYPE_POINTER     = G_TYPE_POINTER,
   GTK_TYPE_SIGNAL      = G_TYPE_GTK_SIGNAL
 } GtkFundamentalType;
 
@@ -122,10 +122,7 @@ typedef void (*GtkCallbackMarshal)  (GtkObject    *object,
                                     guint         n_args,
                                     GtkArg       *args);
 typedef void (*GtkSignalFunc)       ();
-typedef void (*GtkSignalMarshaller) (GtkObject    *object,
-                                    GtkSignalFunc func,
-                                    gpointer      func_data,
-                                    GtkArg       *args);
+typedef GSignalCMarshaller          GtkSignalMarshaller;
 #define GTK_SIGNAL_FUNC(f)         ((GtkSignalFunc) (f))
 
 
index 370faf566ef12d0cfe8d87c094f2f351291ea355..33282140a209b9020aabfaf47b79f4ec4da1c502 100644 (file)
@@ -145,7 +145,7 @@ gtk_viewport_class_init (GtkViewportClass *class)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkViewportClass, set_scroll_adjustments),
-                   gtk_marshal_NONE__POINTER_POINTER,
+                   gtk_marshal_VOID__POINTER_POINTER,
                    GTK_TYPE_NONE, 2, GTK_TYPE_ADJUSTMENT, GTK_TYPE_ADJUSTMENT);
 }
 
index e9a2b31605cd0dd6ea68ca667bf09bd8c15adcbb..43d0573f2b9ab578e2451100e9de6c88916c3045 100644 (file)
@@ -361,49 +361,49 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, show),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[HIDE] =
     gtk_signal_new ("hide",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, hide),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[MAP] =
     gtk_signal_new ("map",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, map),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[UNMAP] =
     gtk_signal_new ("unmap",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, unmap),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[REALIZE] =
     gtk_signal_new ("realize",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, realize),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[UNREALIZE] =
     gtk_signal_new ("unrealize",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, unrealize),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[DRAW] =
     gtk_signal_new ("draw",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, draw),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
   widget_signals[DRAW_FOCUS] =
@@ -411,21 +411,21 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, draw_focus),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[DRAW_DEFAULT] =
     gtk_signal_new ("draw_default",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, draw_default),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[SIZE_REQUEST] =
     gtk_signal_new ("size_request",
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, size_request),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
   widget_signals[SIZE_ALLOCATE] =
@@ -433,7 +433,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, size_allocate),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_POINTER);
   widget_signals[STATE_CHANGED] =
@@ -441,7 +441,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, state_changed),
-                   gtk_marshal_NONE__UINT,
+                   gtk_marshal_VOID__ENUM,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_STATE_TYPE);
   widget_signals[PARENT_SET] =
@@ -449,7 +449,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, parent_set),
-                   gtk_marshal_NONE__OBJECT,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_OBJECT);
   widget_signals[STYLE_SET] =
@@ -457,7 +457,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, style_set),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_STYLE);
   widget_signals[DIRECTION_CHANGED] =
@@ -465,7 +465,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_FIRST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, direction_changed),
-                   gtk_marshal_NONE__UINT,
+                   gtk_marshal_VOID__ENUM,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_TEXT_DIRECTION);
   widget_signals[ADD_ACCELERATOR] =
@@ -479,14 +479,14 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, grab_focus),
-                   gtk_marshal_NONE__NONE,
+                   gtk_marshal_VOID__VOID,
                    GTK_TYPE_NONE, 0);
   widget_signals[EVENT] =
     gtk_signal_new ("event",
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[BUTTON_PRESS_EVENT] =
@@ -494,7 +494,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, button_press_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[BUTTON_RELEASE_EVENT] =
@@ -502,7 +502,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, button_release_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[SCROLL_EVENT] =
@@ -510,7 +510,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, scroll_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[MOTION_NOTIFY_EVENT] =
@@ -518,7 +518,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, motion_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[DELETE_EVENT] =
@@ -526,7 +526,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, delete_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[DESTROY_EVENT] =
@@ -534,7 +534,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, destroy_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[EXPOSE_EVENT] =
@@ -542,7 +542,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, expose_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[KEY_PRESS_EVENT] =
@@ -550,7 +550,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, key_press_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[KEY_RELEASE_EVENT] =
@@ -558,7 +558,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, key_release_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[ENTER_NOTIFY_EVENT] =
@@ -566,7 +566,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, enter_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[LEAVE_NOTIFY_EVENT] =
@@ -574,7 +574,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, leave_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[CONFIGURE_EVENT] =
@@ -582,7 +582,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, configure_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[FOCUS_IN_EVENT] =
@@ -590,7 +590,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, focus_in_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[FOCUS_OUT_EVENT] =
@@ -598,7 +598,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, focus_out_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[MAP_EVENT] =
@@ -606,7 +606,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, map_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[UNMAP_EVENT] =
@@ -614,7 +614,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, unmap_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[PROPERTY_NOTIFY_EVENT] =
@@ -622,7 +622,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, property_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[SELECTION_CLEAR_EVENT] =
@@ -630,7 +630,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, selection_clear_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[SELECTION_REQUEST_EVENT] =
@@ -638,7 +638,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, selection_request_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[SELECTION_NOTIFY_EVENT] =
@@ -646,7 +646,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, selection_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[SELECTION_RECEIVED] =
@@ -654,7 +654,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, selection_received),
-                   gtk_marshal_NONE__POINTER_UINT,
+                   gtk_marshal_VOID__POINTER_UINT,
                    GTK_TYPE_NONE, 2,
                    GTK_TYPE_SELECTION_DATA,
                    GTK_TYPE_UINT);
@@ -663,7 +663,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, selection_get),
-                   gtk_marshal_NONE__POINTER_UINT_UINT,
+                   gtk_marshal_VOID__POINTER_UINT_UINT,
                    GTK_TYPE_NONE, 3,
                    GTK_TYPE_SELECTION_DATA,
                    GTK_TYPE_UINT,
@@ -673,7 +673,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, proximity_in_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[PROXIMITY_OUT_EVENT] =
@@ -681,7 +681,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, proximity_out_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[DRAG_LEAVE] =
@@ -689,7 +689,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_leave),
-                   gtk_marshal_NONE__POINTER_UINT,
+                   gtk_marshal_VOID__POINTER_UINT,
                    GTK_TYPE_NONE, 2,
                    GDK_TYPE_DRAG_CONTEXT,
                    GTK_TYPE_UINT);
@@ -698,7 +698,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_begin),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GDK_TYPE_DRAG_CONTEXT);
   widget_signals[DRAG_END] =
@@ -706,7 +706,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_end),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GDK_TYPE_DRAG_CONTEXT);
   widget_signals[DRAG_DATA_DELETE] =
@@ -714,7 +714,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_data_delete),
-                   gtk_marshal_NONE__POINTER,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GDK_TYPE_DRAG_CONTEXT);
   widget_signals[DRAG_MOTION] =
@@ -722,7 +722,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_motion),
-                   gtk_marshal_BOOL__POINTER_INT_INT_UINT,
+                   gtk_marshal_BOOLEAN__POINTER_INT_INT_UINT,
                    GTK_TYPE_BOOL, 4,
                    GDK_TYPE_DRAG_CONTEXT,
                    GTK_TYPE_INT,
@@ -733,7 +733,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_drop),
-                   gtk_marshal_BOOL__POINTER_INT_INT_UINT,
+                   gtk_marshal_BOOLEAN__POINTER_INT_INT_UINT,
                    GTK_TYPE_BOOL, 4,
                    GDK_TYPE_DRAG_CONTEXT,
                    GTK_TYPE_INT,
@@ -744,7 +744,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_data_get),
-                   gtk_marshal_NONE__POINTER_POINTER_UINT_UINT,
+                   gtk_marshal_VOID__POINTER_POINTER_UINT_UINT,
                    GTK_TYPE_NONE, 4,
                    GDK_TYPE_DRAG_CONTEXT,
                    GTK_TYPE_SELECTION_DATA,
@@ -755,7 +755,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, drag_data_received),
-                   gtk_marshal_NONE__POINTER_INT_INT_POINTER_UINT_UINT,
+                   gtk_marshal_VOID__POINTER_INT_INT_POINTER_UINT_UINT,
                    GTK_TYPE_NONE, 6,
                    GDK_TYPE_DRAG_CONTEXT,
                    GTK_TYPE_INT,
@@ -768,7 +768,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, visibility_notify_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[CLIENT_EVENT] =
@@ -776,7 +776,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, client_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[NO_EXPOSE_EVENT] =
@@ -784,7 +784,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, no_expose_event),
-                   gtk_marshal_BOOL__POINTER,
+                   gtk_marshal_BOOLEAN__POINTER,
                    GTK_TYPE_BOOL, 1,
                    GTK_TYPE_GDK_EVENT);
   widget_signals[DEBUG_MSG] =
@@ -792,7 +792,7 @@ gtk_widget_class_init (GtkWidgetClass *klass)
                    GTK_RUN_LAST | GTK_RUN_ACTION,
                    GTK_CLASS_TYPE (object_class),
                    GTK_SIGNAL_OFFSET (GtkWidgetClass, debug_msg),
-                   gtk_marshal_NONE__STRING,
+                   gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                    GTK_TYPE_STRING);
 
index 481f1d2c710a9b01a5927c1171ce255ef3f73d52..dbf9ecaf8faf00bec04e27e1ffa8c3d263679d4b 100644 (file)
@@ -234,7 +234,7 @@ gtk_window_class_init (GtkWindowClass *klass)
                     GTK_RUN_LAST,
                     GTK_CLASS_TYPE (object_class),
                     GTK_SIGNAL_OFFSET (GtkWindowClass, set_focus),
-                    gtk_marshal_NONE__POINTER,
+                    gtk_marshal_VOID__POINTER,
                    GTK_TYPE_NONE, 1,
                     GTK_TYPE_WIDGET);
 
index 0c82cf3a2d2e2200825a6ec8ef42f37f156707fe..3455f2c738ca0a4a1a3e610789e1805e1e11b85c 100644 (file)
@@ -7,6 +7,8 @@ BEGIN {
   gen_macros = 0;
   gen_entries = 0;
   gen_vars = 0;
+  boxed_copy = "";
+  boxed_free = "";
   
   for (i = 2; i < ARGC; i++)
     {
@@ -65,7 +67,7 @@ function set_type (set_type_1)
   sub ("^GTK_TYPE_GTK_", "GTK_TYPE_", type_macro);
 }
 
-function generate (generate_1)
+function generate (generate_what)
 {
   if (gen_macros)
     {
@@ -74,10 +76,10 @@ function generate (generate_1)
   if (gen_entries)
     {
       printf ("  { \"%s\", &%s,\n", type_name, type_macro);
-      if (generate_1 == "BOXED")
-       printf ("    GTK_TYPE_%s, NULL },\n", generate_1);
+      if (generate_what == "BOXED")
+       printf ("    GTK_TYPE_%s, %s, %s, },\n", generate_what, boxed_copy, boxed_free);
       else
-       printf ("    GTK_TYPE_%s, %s_values },\n", generate_1, type_ident);
+       printf ("    GTK_TYPE_%s, %s_values },\n", generate_what, type_ident);
     }
   if (gen_vars)
     {
@@ -116,10 +118,31 @@ function generate (generate_1)
   if ($2 == "")
     printf ("huh? define-boxed keyword without arg?\n") > "/dev/stderr";
   else
-    {
-      set_type($2);
-      generate("BOXED");
-    }
+      {
+         boxed_copy = "NULL";
+         boxed_free = "NULL";
+         set_type($2);
+         do {
+             getline;
+             sub (";.*", "", $0);
+         } while ($0 ~ /^[ \t]*$/);
+         tmp_var1 = $1;
+         if ($0 ~ /\)/) { generate("BOXED"); next; }
+         do {
+             getline;
+             sub (";.*", "", $0);
+         } while ($0 ~ /^[ \t]*$/);
+         tmp_var2 = $1;
+         sub ("\).*", "", tmp_var2);
+         if (tmp_var1 ~ /^[_A-Za-z][_A-Za-z0-9]*$/ &&
+             tmp_var2 ~ /^[_A-Za-z][_A-Za-z0-9]*$/)
+             {
+                 boxed_copy = tmp_var1;
+                 boxed_free = tmp_var2;
+                 # printf ("read boxed funcs: %s %s\n", boxed_copy, boxed_free) > "/dev/stderr";
+             }
+         generate("BOXED");
+      }
 }
 
 END {