From fb9e8980a428de3be004615d85a4c2f494d2e6ab Mon Sep 17 00:00:00 2001 From: Mike Kestner Date: Mon, 8 Dec 2003 18:59:16 +0000 Subject: [PATCH] 2003-12-08 Mike Kestner * glue/type.c : new glue for g_signal_override_class_closure svn path=/trunk/gtk-sharp/; revision=20885 --- ChangeLog | 4 ++++ glue/type.c | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index 9a0b2d000..04ad82c47 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2003-12-08 Mike Kestner + + * glue/type.c : new glue for g_signal_override_class_closure + 2003-12-07 Mike Kestner * gnome/Gnome.metadata : About ctor's logo_pixbuf is null_ok diff --git a/glue/type.c b/glue/type.c index 786e83877..7e5cce543 100644 --- a/glue/type.c +++ b/glue/type.c @@ -20,6 +20,8 @@ GType gtksharp_get_parent_type (GType typ); G_CONST_RETURN gchar *gtksharp_get_type_name_for_id (GType typ); GType gtksharp_register_type (gchar *name, GType parent); + +void gtksharp_override_virtual_method (GType g_type, const gchar *name, GCallback callback); /* */ G_CONST_RETURN gchar * @@ -65,3 +67,11 @@ gtksharp_register_type (gchar *name, GType parent) return g_type_register_static (parent, name, &info, 0); } + +void +gtksharp_override_virtual_method (GType g_type, const gchar *name, GCallback callback) +{ + guint id = g_signal_lookup (name, g_type); + GClosure *closure = g_cclosure_new (callback, NULL, NULL); + g_signal_override_class_closure (id, g_type, closure); +}