summaryrefslogtreecommitdiff
path: root/gobject/gobject.h
diff options
context:
space:
mode:
authorTim Janik <timj@gtk.org>2001-07-02 05:02:13 +0000
committerTim Janik <timj@src.gnome.org>2001-07-02 05:02:13 +0000
commit69f32ba7c947dce0f0dd9615e937ec073bee466b (patch)
tree50c8b094388557c36ac1eb62b522550996dc46fb /gobject/gobject.h
parent4f96a13cba0fc1d445c76d30a7cb90b2971de06a (diff)
added g_list_insert_before().
Sat Jun 30 23:14:32 2001 Tim Janik <timj@gtk.org> * glib/glist.[hc]: added g_list_insert_before(). * glib/gslist.c (g_slist_insert_before): provide an implementation, prototype was already present... Sat Jun 30 11:07:00 2001 Tim Janik <timj@gtk.org> * gobject.[hc]: provide weak_ref/weak_unref functions, invoked from ->dispose. renamed ->shutdown() to ->dispose(), provide "public" API entry here: g_object_run_dispose(), this fucntion should _only_ be called from object system implementations (e.g. gtkobject.c) if at all. * gtypemodule.c (g_type_module_dispose): s/shutdown/dispose/ * gsignal.h: removed compat aliases. * gobject.c (g_object_connect): support data objects.
Diffstat (limited to 'gobject/gobject.h')
-rw-r--r--gobject/gobject.h21
1 files changed, 16 insertions, 5 deletions
diff --git a/gobject/gobject.h b/gobject/gobject.h
index 819190456..43740f0e8 100644
--- a/gobject/gobject.h
+++ b/gobject/gobject.h
@@ -54,6 +54,7 @@ typedef void (*GObjectSetPropertyFunc) (GObject *object,
const GValue *value,
GParamSpec *pspec);
typedef void (*GObjectFinalizeFunc) (GObject *object);
+typedef void (*GWeakNotify) (gpointer data);
struct _GObject
{
GTypeInstance g_type_instance;
@@ -73,17 +74,17 @@ struct _GObjectClass
GObject* (*constructor) (GType type,
guint n_construct_properties,
GObjectConstructParam *construct_properties);
- void (*set_property) (GObject *object,
+ void (*set_property) (GObject *object,
guint property_id,
const GValue *value,
GParamSpec *pspec);
- void (*get_property) (GObject *object,
+ void (*get_property) (GObject *object,
guint property_id,
GValue *value,
GParamSpec *pspec);
- void (*shutdown) (GObject *object);
- void (*finalize) (GObject *object);
-
+ void (*dispose) (GObject *object);
+ void (*finalize) (GObject *object);
+
/* seldomly overidden */
void (*dispatch_properties_changed) (GObject *object,
guint n_pspecs,
@@ -147,6 +148,12 @@ void g_object_notify (GObject *object,
void g_object_thaw_notify (GObject *object);
gpointer g_object_ref (gpointer object);
void g_object_unref (gpointer object);
+void g_object_weak_ref (GObject *object,
+ GWeakNotify notify,
+ gpointer data);
+void g_object_weak_unref (GObject *object,
+ GWeakNotify notify,
+ gpointer data);
gpointer g_object_get_qdata (GObject *object,
GQuark quark);
void g_object_set_qdata (GObject *object,
@@ -188,6 +195,10 @@ guint g_signal_connect_object (gpointer instance,
GConnectFlags connect_flags);
+/*< protected >*/
+void g_object_run_dispose (GObject *object);
+
+
/* --- implementation macros --- */
#define G_OBJECT_WARN_INVALID_PSPEC(object, pname, property_id, pspec) \
G_STMT_START { \