53
53
#define <a class="link" href="GtkObject.html#GTK-OBJECT-FLAGS:CAPS" title="GTK_OBJECT_FLAGS()">GTK_OBJECT_FLAGS</a> (obj)
54
54
#define <a class="link" href="GtkObject.html#GTK-OBJECT-FLOATING:CAPS" title="GTK_OBJECT_FLOATING()">GTK_OBJECT_FLOATING</a> (obj)
55
55
enum <a class="link" href="GtkObject.html#GtkArgFlags" title="enum GtkArgFlags">GtkArgFlags</a>;
56
<a class="link" href="GtkObject.html" title="GtkObject"><span class="returnvalue">GtkObject</span></a> * <a class="link" href="GtkObject.html#gtk-object-new" title="gtk_object_new ()">gtk_object_new</a> (<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> type</code></em>,
57
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
56
<a class="link" href="GtkObject.html" title="GtkObject"><span class="returnvalue">GtkObject</span></a> * <a class="link" href="GtkObject.html#gtk-object-new" title="gtk_object_new ()">gtk_object_new</a> (<em class="parameter"><code><span class="type">GType</span> type</code></em>,
57
<em class="parameter"><code>const <span class="type">gchar</span> *first_property_name</code></em>,
58
58
<em class="parameter"><code>...</code></em>);
59
59
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-sink" title="gtk_object_sink ()">gtk_object_sink</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
60
60
<a class="link" href="GtkObject.html" title="GtkObject"><span class="returnvalue">GtkObject</span></a> * <a class="link" href="GtkObject.html#gtk-object-ref" title="gtk_object_ref ()">gtk_object_ref</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
61
61
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-unref" title="gtk_object_unref ()">gtk_object_unref</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
62
62
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-weakref" title="gtk_object_weakref ()">gtk_object_weakref</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
63
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>,
64
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
63
<em class="parameter"><code><span class="type">GDestroyNotify</span> notify</code></em>,
64
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);
65
65
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-weakunref" title="gtk_object_weakunref ()">gtk_object_weakunref</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
66
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> notify</code></em>,
67
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
66
<em class="parameter"><code><span class="type">GDestroyNotify</span> notify</code></em>,
67
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);
68
68
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-destroy" title="gtk_object_destroy ()">gtk_object_destroy</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
69
69
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-get" title="gtk_object_get ()">gtk_object_get</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
70
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
70
<em class="parameter"><code>const <span class="type">gchar</span> *first_property_name</code></em>,
71
71
<em class="parameter"><code>...</code></em>);
72
72
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set" title="gtk_object_set ()">gtk_object_set</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
73
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
73
<em class="parameter"><code>const <span class="type">gchar</span> *first_property_name</code></em>,
74
74
<em class="parameter"><code>...</code></em>);
75
75
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set-data" title="gtk_object_set_data ()">gtk_object_set_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
76
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
77
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
76
<em class="parameter"><code>const <span class="type">gchar</span> *key</code></em>,
77
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);
78
78
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set-data-full" title="gtk_object_set_data_full ()">gtk_object_set_data_full</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
79
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
80
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
81
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);
79
<em class="parameter"><code>const <span class="type">gchar</span> *key</code></em>,
80
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>,
81
<em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);
82
82
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-remove-data" title="gtk_object_remove_data ()">gtk_object_remove_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
83
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);
84
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="GtkObject.html#gtk-object-get-data" title="gtk_object_get_data ()">gtk_object_get_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
85
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);
83
<em class="parameter"><code>const <span class="type">gchar</span> *key</code></em>);
84
<span class="returnvalue">gpointer</span> <a class="link" href="GtkObject.html#gtk-object-get-data" title="gtk_object_get_data ()">gtk_object_get_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
85
<em class="parameter"><code>const <span class="type">gchar</span> *key</code></em>);
86
86
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-remove-no-notify" title="gtk_object_remove_no_notify ()">gtk_object_remove_no_notify</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
87
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);
87
<em class="parameter"><code>const <span class="type">gchar</span> *key</code></em>);
88
88
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set-user-data" title="gtk_object_set_user_data ()">gtk_object_set_user_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
89
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
90
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="GtkObject.html#gtk-object-get-user-data" title="gtk_object_get_user_data ()">gtk_object_get_user_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
91
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-add-arg-type" title="gtk_object_add_arg_type ()">gtk_object_add_arg_type</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *arg_name</code></em>,
92
<em class="parameter"><code><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="type">GType</span></a> arg_type</code></em>,
93
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> arg_flags</code></em>,
94
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> arg_id</code></em>);
89
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);
90
<span class="returnvalue">gpointer</span> <a class="link" href="GtkObject.html#gtk-object-get-user-data" title="gtk_object_get_user_data ()">gtk_object_get_user_data</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>);
91
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-add-arg-type" title="gtk_object_add_arg_type ()">gtk_object_add_arg_type</a> (<em class="parameter"><code>const <span class="type">gchar</span> *arg_name</code></em>,
92
<em class="parameter"><code><span class="type">GType</span> arg_type</code></em>,
93
<em class="parameter"><code><span class="type">guint</span> arg_flags</code></em>,
94
<em class="parameter"><code><span class="type">guint</span> arg_id</code></em>);
95
95
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set-data-by-id" title="gtk_object_set_data_by_id ()">gtk_object_set_data_by_id</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
96
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> data_id</code></em>,
97
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
96
<em class="parameter"><code><span class="type">GQuark</span> data_id</code></em>,
97
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);
98
98
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-set-data-by-id-full" title="gtk_object_set_data_by_id_full ()">gtk_object_set_data_by_id_full</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
99
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> data_id</code></em>,
100
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
101
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);
102
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="GtkObject.html#gtk-object-get-data-by-id" title="gtk_object_get_data_by_id ()">gtk_object_get_data_by_id</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
103
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> data_id</code></em>);
99
<em class="parameter"><code><span class="type">GQuark</span> data_id</code></em>,
100
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>,
101
<em class="parameter"><code><span class="type">GDestroyNotify</span> destroy</code></em>);
102
<span class="returnvalue">gpointer</span> <a class="link" href="GtkObject.html#gtk-object-get-data-by-id" title="gtk_object_get_data_by_id ()">gtk_object_get_data_by_id</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
103
<em class="parameter"><code><span class="type">GQuark</span> data_id</code></em>);
104
104
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-remove-data-by-id" title="gtk_object_remove_data_by_id ()">gtk_object_remove_data_by_id</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
105
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> data_id</code></em>);
105
<em class="parameter"><code><span class="type">GQuark</span> data_id</code></em>);
106
106
<span class="returnvalue">void</span> <a class="link" href="GtkObject.html#gtk-object-remove-no-notify-by-id" title="gtk_object_remove_no_notify_by_id ()">gtk_object_remove_no_notify_by_id</a> (<em class="parameter"><code><a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> *object</code></em>,
107
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> key_id</code></em>);
107
<em class="parameter"><code><span class="type">GQuark</span> key_id</code></em>);
108
108
#define <a class="link" href="GtkObject.html#gtk-object-data-try-key" title="gtk_object_data_try_key">gtk_object_data_try_key</a>
109
109
#define <a class="link" href="GtkObject.html#gtk-object-data-force-id" title="gtk_object_data_force_id">gtk_object_data_force_id</a>
128
128
<div class="refsect1">
129
129
<a name="GtkObject.properties"></a><h2>Properties</h2>
130
130
<pre class="synopsis">
131
"<a class="link" href="GtkObject.html#GtkObject--user-data" title='The "user-data" property'>user-data</a>" <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> : Read / Write
131
"<a class="link" href="GtkObject.html#GtkObject--user-data" title='The "user-data" property'>user-data</a>" <span class="type">gpointer</span> : Read / Write
134
134
<div class="refsect1">
135
135
<a name="GtkObject.signals"></a><h2>Signals</h2>
136
136
<pre class="synopsis">
137
"<a class="link" href="GtkObject.html#GtkObject-destroy" title='The "destroy" signal'>destroy</a>" : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-NO-HOOKS:CAPS"><code class="literal">No Hooks</code></a>
137
"<a class="link" href="GtkObject.html#GtkObject-destroy" title='The "destroy" signal'>destroy</a>" : <code class="literal">No Hooks</code>
140
140
<div class="refsect1">
141
141
<a name="GtkObject.description"></a><h2>Description</h2>
142
142
<div class="refsect2">
143
<a name="idm266978252288"></a><h3>Description</h3>
143
<a name="idm140406187218256"></a><h3>Description</h3>
145
145
<a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> is the base class for all widgets, and for a few
146
146
non-widget objects such as <a class="link" href="GtkAdjustment.html" title="GtkAdjustment"><span class="type">GtkAdjustment</span></a>. <a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> predates
147
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>; non-widgets that derive from <a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> rather than
148
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> do so for backward compatibility reasons.
147
<span class="type">GObject</span>; non-widgets that derive from <a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> rather than
148
<span class="type">GObject</span> do so for backward compatibility reasons.
151
151
<a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a>s are created with a "floating" reference count.
152
152
This means that the initial reference is not owned by anyone. Calling
153
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> on a newly-created <a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> is incorrect, the floating
153
<code class="function">g_object_unref()</code> on a newly-created <a class="link" href="GtkObject.html" title="GtkObject"><span class="type">GtkObject</span></a> is incorrect, the floating
154
154
reference has to be removed first. This can be done by anyone at any time,
155
by calling <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a> to convert the floating reference into a
156
regular reference. <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a> returns a new reference if an object
155
by calling <code class="function">g_object_ref_sink()</code> to convert the floating reference into a
156
regular reference. <code class="function">g_object_ref_sink()</code> returns a new reference if an object
157
157
is already sunk (has no floating reference).