diff options
Diffstat (limited to 'gtk/gtktypeutils.c')
-rw-r--r-- | gtk/gtktypeutils.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gtk/gtktypeutils.c b/gtk/gtktypeutils.c index 79e049156..fa4605d54 100644 --- a/gtk/gtktypeutils.c +++ b/gtk/gtktypeutils.c @@ -270,6 +270,28 @@ gtk_type_is_a (GtkType type, } void +gtk_type_get_arg (GtkObject *object, + GtkType type, + GtkArg *arg, + guint arg_id) +{ + GtkTypeNode *node; + + g_return_if_fail (object != NULL); + g_return_if_fail (arg != NULL); + + if (initialize) + gtk_type_init (); + + node = g_hash_table_lookup (type_hash_table, &type); + + if (node && node->type_info.arg_get_func) + (* node->type_info.arg_get_func) (object, arg, arg_id); + else + arg->type = GTK_TYPE_INVALID; +} + +void gtk_type_set_arg (GtkObject *object, GtkType type, GtkArg *arg, @@ -277,6 +299,9 @@ gtk_type_set_arg (GtkObject *object, { GtkTypeNode *node; + g_return_if_fail (object != NULL); + g_return_if_fail (arg != NULL); + if (initialize) gtk_type_init (); |