From 49d9628efc0144ff63da5d09d4aa2c51e309067a Mon Sep 17 00:00:00 2001 From: Owen Taylor Date: Sun, 4 Nov 2001 19:02:10 +0000 Subject: [PATCH] Add a function g_pointer_type_register_static() to register a type derived Sun Nov 4 14:01:23 2001 Owen Taylor * gvaluetypes.[ch]: Add a function g_pointer_type_register_static() to register a type derived from G_TYPE_POINTER. --- gobject/ChangeLog | 5 +++++ gobject/gvaluetypes.c | 26 ++++++++++++++++++++++++++ gobject/gvaluetypes.h | 3 +++ 3 files changed, 34 insertions(+) diff --git a/gobject/ChangeLog b/gobject/ChangeLog index 2c7af5c6..e70a5605 100644 --- a/gobject/ChangeLog +++ b/gobject/ChangeLog @@ -1,3 +1,8 @@ +Sun Nov 4 14:01:23 2001 Owen Taylor + + * gvaluetypes.[ch]: Add a function g_pointer_type_register_static() + to register a type derived from G_TYPE_POINTER. + 2001-11-03 Hans Breuer * makefile.msc.in : gobject-query needs gmarshal.[hc,stings] diff --git a/gobject/gvaluetypes.c b/gobject/gvaluetypes.c index c64bb352..e0031904 100644 --- a/gobject/gvaluetypes.c +++ b/gobject/gvaluetypes.c @@ -872,3 +872,29 @@ g_strdup_value_contents (const GValue *value) return contents; } + +GType +g_pointer_type_register_static (const gchar *name) +{ + static const GTypeInfo type_info = { + 0, /* class_size */ + NULL, /* base_init */ + NULL, /* base_finalize */ + NULL, /* class_init */ + NULL, /* class_finalize */ + NULL, /* class_data */ + 0, /* instance_size */ + 0, /* n_preallocs */ + NULL, /* instance_init */ + NULL /* value_table */ + }; + GType type; + + g_return_val_if_fail (name != NULL, 0); + g_return_val_if_fail (g_type_from_name (name) == 0, 0); + + type = g_type_register_static (G_TYPE_POINTER, name, &type_info, 0); + + return type; +} + diff --git a/gobject/gvaluetypes.h b/gobject/gvaluetypes.h index 6f74af37..06290075 100644 --- a/gobject/gvaluetypes.h +++ b/gobject/gvaluetypes.h @@ -87,6 +87,9 @@ void g_value_set_pointer (GValue *value, gpointer g_value_get_pointer (const GValue *value); +/* Convenience for registering new pointer types */ +GType g_pointer_type_register_static (const gchar *name); + /* debugging aid, describe value contents as string */ gchar* g_strdup_value_contents (const GValue *value); -- 2.34.1