~ubuntu-branches/debian/squeeze/glib2.0/squeeze

« back to all changes in this revision

Viewing changes to docs/reference/gobject/html/gobject-The-Base-Object-Type.html

  • Committer: Bazaar Package Importer
  • Author(s): Gustavo Noronha Silva
  • Date: 2009-02-15 13:00:43 UTC
  • mfrom: (1.3.1 upstream) (69.1.10 intrepid)
  • Revision ID: james.westby@ubuntu.com-20090215130043-q47fbt3owmt42m2f
Tags: 2.18.4-2
* Release to unstable
* debian/rules:
- bump SHVER, since we are already forcing a 2.18.0 dependecy on the
  symbols introduced in the development versions
* debian/control.in:
- added Homepage and Vcs-* control fields

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
2
<html>
3
3
<head>
4
 
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
5
 
<title>GObject</title>
6
 
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
 
<link rel="start" href="index.html" title="GObject Reference Manual">
 
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 
5
<title>The Base Object Type</title>
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
 
7
<link rel="home" href="index.html" title="GObject Reference Manual">
8
8
<link rel="up" href="rn01.html" title="API Reference">
9
9
<link rel="prev" href="GTypeModule.html" title="GTypeModule">
10
 
<link rel="next" href="gobject-Enumeration-and-Flag-Types.html" title="Enums and Flags">
11
 
<meta name="generator" content="GTK-Doc V1.9 (XML mode)">
 
10
<link rel="next" href="gobject-Enumeration-and-Flag-Types.html" title="Enumeration and Flag Types">
 
11
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
13
<link rel="preface" href="pr01.html" title="Introduction">
14
 
<link rel="part" href="pt01.html" title="Part&#160;I.&#160;Concepts">
 
14
<link rel="part" href="pt01.html" title="Part I. Concepts">
15
15
<link rel="chapter" href="chapter-intro.html" title="Background">
16
16
<link rel="chapter" href="chapter-gtype.html" title="The GLib Dynamic Type System">
17
17
<link rel="chapter" href="chapter-gobject.html" title="The GObject base class">
18
18
<link rel="chapter" href="chapter-signal.html" title="The GObject messaging system">
19
19
<link rel="reference" href="rn01.html" title="API Reference">
20
20
<link rel="reference" href="rn02.html" title="Tools Reference">
21
 
<link rel="part" href="pt02.html" title="Part&#160;IV.&#160;Tutorial">
 
21
<link rel="part" href="pt02.html" title="Part IV. Tutorial">
22
22
<link rel="chapter" href="howto-gobject.html" title="How to define and implement a new GObject">
23
23
<link rel="chapter" href="howto-interface.html" title="How to define and implement interfaces">
24
24
<link rel="chapter" href="howto-signals.html" title="How to create and use signals">
25
 
<link rel="part" href="pt03.html" title="Part&#160;V.&#160;Related Tools">
 
25
<link rel="part" href="pt03.html" title="Part V. Related Tools">
 
26
<link rel="chapter" href="tools-vala.html" title="Vala">
26
27
<link rel="chapter" href="tools-gob.html" title="GObject builder">
27
28
<link rel="chapter" href="tools-ginspector.html" title="Graphical inspection of GObjects">
28
29
<link rel="chapter" href="tools-refdb.html" title="Debugging reference count problems">
36
37
<link rel="index" href="ix07.html" title="Index of new symbols in 2.10">
37
38
<link rel="index" href="ix08.html" title="Index of new symbols in 2.12">
38
39
<link rel="index" href="ix09.html" title="Index of new symbols in 2.14">
 
40
<link rel="index" href="ix10.html" title="Index of new symbols in 2.14">
39
41
</head>
40
42
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
41
43
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
46
48
<th width="100%" align="center">GObject Reference Manual</th>
47
49
<td><a accesskey="n" href="gobject-Enumeration-and-Flag-Types.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
48
50
</tr>
49
 
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2857043" class="shortcut">Top</a>
50
 
                  &#160;|&#160;
51
 
                  <a href="#id2858824" class="shortcut">Description</a>
52
 
                  &#160;|&#160;
53
 
                  <a href="#id2858770" class="shortcut">Object Hierarchy</a>
54
 
                  &#160;|&#160;
55
 
                  <a href="#id2858794" class="shortcut">Signals</a></nobr></td></tr>
 
51
<tr><td colspan="5" class="shortcuts">
 
52
<a href="#gobject-The-Base-Object-Type.synopsis" class="shortcut">Top</a>
 
53
                 | 
 
54
                <a href="#gobject-The-Base-Object-Type.description" class="shortcut">Description</a>
 
55
                 | 
 
56
                <a href="#gobject-The-Base-Object-Type.object-hierarchy" class="shortcut">Object Hierarchy</a>
 
57
                 | 
 
58
                <a href="#gobject-The-Base-Object-Type.signals" class="shortcut">Signals</a>
 
59
</td></tr>
56
60
</table>
57
61
<div class="refentry" lang="en">
58
62
<a name="gobject-The-Base-Object-Type"></a><div class="titlepage"></div>
59
63
<div class="refnamediv"><table width="100%"><tr>
60
64
<td valign="top">
61
 
<h2>
62
 
<a name="id2857043"></a><span class="refentrytitle">GObject</span>
63
 
</h2>
64
 
<p>GObject &#8212; The base object type</p>
 
65
<h2><span class="refentrytitle"><a name="gobject-The-Base-Object-Type.top_of_page"></a>The Base Object Type</span></h2>
 
66
<p>The Base Object Type — The base object type</p>
65
67
</td>
66
68
<td valign="top" align="right"></td>
67
69
</tr></table></div>
68
70
<div class="refsynopsisdiv">
69
 
<h2>Synopsis</h2>
 
71
<a name="gobject-The-Base-Object-Type.synopsis"></a><h2>Synopsis</h2>
70
72
<a name="GObject"></a><pre class="synopsis">
71
73
 
72
74
#include &lt;glib-object.h&gt;
73
75
 
74
 
 
75
 
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObject-struct">GObject</a>;
76
 
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a>;
77
 
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObjectConstructParam">GObjectConstructParam</a>;
78
 
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectGetPropertyFunc">*GObjectGetPropertyFunc</a>)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
79
 
                                                         <a
80
 
href="./../glib/glib/glib-Basic-Types.html#guint"
81
 
>guint</a> property_id,
82
 
                                                         <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value,
83
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);
84
 
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectSetPropertyFunc">*GObjectSetPropertyFunc</a>)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
85
 
                                                         <a
86
 
href="./../glib/glib/glib-Basic-Types.html#guint"
87
 
>guint</a> property_id,
88
 
                                                         const <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value,
89
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);
90
 
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectFinalizeFunc">*GObjectFinalizeFunc</a>)              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
91
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-IS-OBJECT:CAPS">G_TYPE_IS_OBJECT</a>                    (type)
92
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a>                            (object)
93
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT:CAPS">G_IS_OBJECT</a>                         (object)
94
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS">G_OBJECT_CLASS</a>                      (class)
95
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT-CLASS:CAPS">G_IS_OBJECT_CLASS</a>                   (class)
96
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-GET-CLASS:CAPS">G_OBJECT_GET_CLASS</a>                  (object)
97
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE:CAPS">G_OBJECT_TYPE</a>                       (object)
98
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE-NAME:CAPS">G_OBJECT_TYPE_NAME</a>                  (object)
99
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-TYPE:CAPS">G_OBJECT_CLASS_TYPE</a>                 (class)
100
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-NAME:CAPS">G_OBJECT_CLASS_NAME</a>                 (class)
101
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property">g_object_class_install_property</a>     (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
102
 
                                                         <a
103
 
href="./../glib/glib/glib-Basic-Types.html#guint"
104
 
>guint</a> property_id,
105
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);
106
 
<a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>*         <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property">g_object_class_find_property</a>        (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
76
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObject-struct" title="GObject">GObject</a>;
 
77
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a>;
 
78
                    <a class="link" href="gobject-The-Base-Object-Type.html#GObjectConstructParam" title="GObjectConstructParam">GObjectConstructParam</a>;
 
79
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectGetPropertyFunc" title="GObjectGetPropertyFunc ()">*GObjectGetPropertyFunc</a>)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
80
                                                         <a
 
81
href="./../glib/glib/glib-Basic-Types.html#guint"
 
82
>guint</a> property_id,
 
83
                                                         <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value,
 
84
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);
 
85
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectSetPropertyFunc" title="GObjectSetPropertyFunc ()">*GObjectSetPropertyFunc</a>)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
86
                                                         <a
 
87
href="./../glib/glib/glib-Basic-Types.html#guint"
 
88
>guint</a> property_id,
 
89
                                                         const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value,
 
90
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);
 
91
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectFinalizeFunc" title="GObjectFinalizeFunc ()">*GObjectFinalizeFunc</a>)              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
 
92
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-IS-OBJECT--CAPS" title="G_TYPE_IS_OBJECT()">G_TYPE_IS_OBJECT</a>                    (type)
 
93
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT--CAPS" title="G_OBJECT()">G_OBJECT</a>                            (object)
 
94
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT--CAPS" title="G_IS_OBJECT()">G_IS_OBJECT</a>                         (object)
 
95
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS--CAPS" title="G_OBJECT_CLASS()">G_OBJECT_CLASS</a>                      (class)
 
96
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT-CLASS--CAPS" title="G_IS_OBJECT_CLASS()">G_IS_OBJECT_CLASS</a>                   (class)
 
97
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-GET-CLASS--CAPS" title="G_OBJECT_GET_CLASS()">G_OBJECT_GET_CLASS</a>                  (object)
 
98
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE--CAPS" title="G_OBJECT_TYPE()">G_OBJECT_TYPE</a>                       (object)
 
99
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE-NAME--CAPS" title="G_OBJECT_TYPE_NAME()">G_OBJECT_TYPE_NAME</a>                  (object)
 
100
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-TYPE--CAPS" title="G_OBJECT_CLASS_TYPE()">G_OBJECT_CLASS_TYPE</a>                 (class)
 
101
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-NAME--CAPS" title="G_OBJECT_CLASS_NAME()">G_OBJECT_CLASS_NAME</a>                 (class)
 
102
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()">g_object_class_install_property</a>     (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
 
103
                                                         <a
 
104
href="./../glib/glib/glib-Basic-Types.html#guint"
 
105
>guint</a> property_id,
 
106
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);
 
107
<a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>*         <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property" title="g_object_class_find_property ()">g_object_class_find_property</a>        (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
107
108
                                                         const <a
108
109
href="./../glib/glib/glib-Basic-Types.html#gchar"
109
110
>gchar</a> *property_name);
110
 
<a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>**        <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties">g_object_class_list_properties</a>      (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
111
<a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>**        <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties" title="g_object_class_list_properties ()">g_object_class_list_properties</a>      (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
111
112
                                                         <a
112
113
href="./../glib/glib/glib-Basic-Types.html#guint"
113
114
>guint</a> *n_properties);
114
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property">g_object_class_override_property</a>    (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
115
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property" title="g_object_class_override_property ()">g_object_class_override_property</a>    (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
115
116
                                                         <a
116
117
href="./../glib/glib/glib-Basic-Types.html#guint"
117
118
>guint</a> property_id,
118
119
                                                         const <a
119
120
href="./../glib/glib/glib-Basic-Types.html#gchar"
120
121
>gchar</a> *name);
121
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-install-property">g_object_interface_install_property</a> (<a
 
122
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-install-property" title="g_object_interface_install_property ()">g_object_interface_install_property</a> (<a
122
123
href="./../glib/glib/glib-Basic-Types.html#gpointer"
123
124
>gpointer</a> g_iface,
124
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);
125
 
<a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>*         <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-find-property">g_object_interface_find_property</a>    (<a
 
125
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);
 
126
<a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>*         <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-find-property" title="g_object_interface_find_property ()">g_object_interface_find_property</a>    (<a
126
127
href="./../glib/glib/glib-Basic-Types.html#gpointer"
127
128
>gpointer</a> g_iface,
128
129
                                                         const <a
129
130
href="./../glib/glib/glib-Basic-Types.html#gchar"
130
131
>gchar</a> *property_name);
131
 
<a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>**        <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-list-properties">g_object_interface_list_properties</a>  (<a
 
132
<a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>**        <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-list-properties" title="g_object_interface_list_properties ()">g_object_interface_list_properties</a>  (<a
132
133
href="./../glib/glib/glib-Basic-Types.html#gpointer"
133
134
>gpointer</a> g_iface,
134
135
                                                         <a
136
137
>guint</a> *n_properties_p);
137
138
<a
138
139
href="./../glib/glib/glib-Basic-Types.html#gpointer"
139
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a>                        (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
 
140
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a>                        (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
140
141
                                                         const <a
141
142
href="./../glib/glib/glib-Basic-Types.html#gchar"
142
143
>gchar</a> *first_property_name,
143
144
                                                         ...);
144
145
<a
145
146
href="./../glib/glib/glib-Basic-Types.html#gpointer"
146
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv">g_object_newv</a>                       (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
 
147
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv" title="g_object_newv ()">g_object_newv</a>                       (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
147
148
                                                         <a
148
149
href="./../glib/glib/glib-Basic-Types.html#guint"
149
150
>guint</a> n_parameters,
150
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GParameter">GParameter</a> *parameters);
151
 
                    <a class="link" href="gobject-The-Base-Object-Type.html#GParameter">GParameter</a>;
152
 
<a
153
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
154
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref">g_object_ref</a>                        (<a
155
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
156
 
>gpointer</a> object);
157
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref">g_object_unref</a>                      (<a
158
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
159
 
>gpointer</a> object);
160
 
<a
161
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
162
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink">g_object_ref_sink</a>                   (<a
163
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
164
 
>gpointer</a> object);
165
 
typedef             <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>;
166
 
typedef             <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnownedClass">GInitiallyUnownedClass</a>;
167
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-INITIALLY-UNOWNED:CAPS">G_TYPE_INITIALLY_UNOWNED</a>
 
151
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter">GParameter</a> *parameters);
 
152
                    <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter">GParameter</a>;
 
153
<a
 
154
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
155
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()">g_object_ref</a>                        (<a
 
156
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
157
>gpointer</a> object);
 
158
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()">g_object_unref</a>                      (<a
 
159
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
160
>gpointer</a> object);
 
161
<a
 
162
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
163
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()">g_object_ref_sink</a>                   (<a
 
164
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
165
>gpointer</a> object);
 
166
typedef             <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned">GInitiallyUnowned</a>;
 
167
typedef             <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnownedClass" title="GInitiallyUnownedClass">GInitiallyUnownedClass</a>;
 
168
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-INITIALLY-UNOWNED--CAPS" title="G_TYPE_INITIALLY_UNOWNED">G_TYPE_INITIALLY_UNOWNED</a>
168
169
<a
169
170
href="./../glib/glib/glib-Basic-Types.html#gboolean"
170
 
>gboolean</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-is-floating">g_object_is_floating</a>                (<a
 
171
>gboolean</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-is-floating" title="g_object_is_floating ()">g_object_is_floating</a>                (<a
171
172
href="./../glib/glib/glib-Basic-Types.html#gpointer"
172
173
>gpointer</a> object);
173
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-force-floating">g_object_force_floating</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
174
 
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify">*GWeakNotify</a>)                      (<a
 
174
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-force-floating" title="g_object_force_floating ()">g_object_force_floating</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
 
175
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">*GWeakNotify</a>)                      (<a
175
176
href="./../glib/glib/glib-Basic-Types.html#gpointer"
176
177
>gpointer</a> data,
177
178
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *where_the_object_was);
178
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-ref">g_object_weak_ref</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
179
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify">GWeakNotify</a> notify,
180
 
                                                         <a
181
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
182
 
>gpointer</a> data);
183
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-unref">g_object_weak_unref</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
184
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify">GWeakNotify</a> notify,
185
 
                                                         <a
186
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
187
 
>gpointer</a> data);
188
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer">g_object_add_weak_pointer</a>           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
189
 
                                                         <a
190
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
191
 
>gpointer</a> *weak_pointer_location);
192
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-weak-pointer">g_object_remove_weak_pointer</a>        (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
193
 
                                                         <a
194
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
195
 
>gpointer</a> *weak_pointer_location);
196
 
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify">*GToggleNotify</a>)                    (<a
 
179
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-ref" title="g_object_weak_ref ()">g_object_weak_ref</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
180
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">GWeakNotify</a> notify,
 
181
                                                         <a
 
182
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
183
>gpointer</a> data);
 
184
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-unref" title="g_object_weak_unref ()">g_object_weak_unref</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
185
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">GWeakNotify</a> notify,
 
186
                                                         <a
 
187
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
188
>gpointer</a> data);
 
189
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()">g_object_add_weak_pointer</a>           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
190
                                                         <a
 
191
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
192
>gpointer</a> *weak_pointer_location);
 
193
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-weak-pointer" title="g_object_remove_weak_pointer ()">g_object_remove_weak_pointer</a>        (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
194
                                                         <a
 
195
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
196
>gpointer</a> *weak_pointer_location);
 
197
void                (<a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">*GToggleNotify</a>)                    (<a
197
198
href="./../glib/glib/glib-Basic-Types.html#gpointer"
198
199
>gpointer</a> data,
199
200
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
200
201
                                                         <a
201
202
href="./../glib/glib/glib-Basic-Types.html#gboolean"
202
203
>gboolean</a> is_last_ref);
203
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref">g_object_add_toggle_ref</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
204
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify">GToggleNotify</a> notify,
 
204
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()">g_object_add_toggle_ref</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
205
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">GToggleNotify</a> notify,
205
206
                                                         <a
206
207
href="./../glib/glib/glib-Basic-Types.html#gpointer"
207
208
>gpointer</a> data);
208
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-toggle-ref">g_object_remove_toggle_ref</a>          (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
209
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify">GToggleNotify</a> notify,
 
209
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-toggle-ref" title="g_object_remove_toggle_ref ()">g_object_remove_toggle_ref</a>          (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
210
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">GToggleNotify</a> notify,
210
211
                                                         <a
211
212
href="./../glib/glib/glib-Basic-Types.html#gpointer"
212
213
>gpointer</a> data);
213
214
<a
214
215
href="./../glib/glib/glib-Basic-Types.html#gpointer"
215
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-connect">g_object_connect</a>                    (<a
216
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
217
 
>gpointer</a> object,
218
 
                                                         const <a
219
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
220
 
>gchar</a> *signal_spec,
221
 
                                                         ...);
222
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-disconnect">g_object_disconnect</a>                 (<a
223
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
224
 
>gpointer</a> object,
225
 
                                                         const <a
226
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
227
 
>gchar</a> *signal_spec,
228
 
                                                         ...);
229
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set">g_object_set</a>                        (<a
230
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
231
 
>gpointer</a> object,
232
 
                                                         const <a
233
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
234
 
>gchar</a> *first_property_name,
235
 
                                                         ...);
236
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get">g_object_get</a>                        (<a
237
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
238
 
>gpointer</a> object,
239
 
                                                         const <a
240
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
241
 
>gchar</a> *first_property_name,
242
 
                                                         ...);
243
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify">g_object_notify</a>                     (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
216
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-connect" title="g_object_connect ()">g_object_connect</a>                    (<a
 
217
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
218
>gpointer</a> object,
 
219
                                                         const <a
 
220
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
221
>gchar</a> *signal_spec,
 
222
                                                         ...);
 
223
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-disconnect" title="g_object_disconnect ()">g_object_disconnect</a>                 (<a
 
224
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
225
>gpointer</a> object,
 
226
                                                         const <a
 
227
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
228
>gchar</a> *signal_spec,
 
229
                                                         ...);
 
230
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set" title="g_object_set ()">g_object_set</a>                        (<a
 
231
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
232
>gpointer</a> object,
 
233
                                                         const <a
 
234
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
235
>gchar</a> *first_property_name,
 
236
                                                         ...);
 
237
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()">g_object_get</a>                        (<a
 
238
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
239
>gpointer</a> object,
 
240
                                                         const <a
 
241
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
242
>gchar</a> *first_property_name,
 
243
                                                         ...);
 
244
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify" title="g_object_notify ()">g_object_notify</a>                     (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
244
245
                                                         const <a
245
246
href="./../glib/glib/glib-Basic-Types.html#gchar"
246
247
>gchar</a> *property_name);
247
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify">g_object_freeze_notify</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
248
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-thaw-notify">g_object_thaw_notify</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
249
 
<a
250
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
251
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-data">g_object_get_data</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
252
 
                                                         const <a
253
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
254
 
>gchar</a> *key);
255
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data">g_object_set_data</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
256
 
                                                         const <a
257
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
258
 
>gchar</a> *key,
259
 
                                                         <a
260
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
261
 
>gpointer</a> data);
262
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data-full">g_object_set_data_full</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
263
 
                                                         const <a
264
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
265
 
>gchar</a> *key,
266
 
                                                         <a
267
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
268
 
>gpointer</a> data,
269
 
                                                         <a
270
 
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
271
 
>GDestroyNotify</a> destroy);
272
 
<a
273
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
274
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-data">g_object_steal_data</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
275
 
                                                         const <a
276
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
277
 
>gchar</a> *key);
278
 
<a
279
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
280
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata">g_object_get_qdata</a>                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
281
 
                                                         <a
282
 
href="./../glib/glib/glib-Quarks.html#GQuark"
283
 
>GQuark</a> quark);
284
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata">g_object_set_qdata</a>                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
285
 
                                                         <a
286
 
href="./../glib/glib/glib-Quarks.html#GQuark"
287
 
>GQuark</a> quark,
288
 
                                                         <a
289
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
290
 
>gpointer</a> data);
291
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full">g_object_set_qdata_full</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
292
 
                                                         <a
293
 
href="./../glib/glib/glib-Quarks.html#GQuark"
294
 
>GQuark</a> quark,
295
 
                                                         <a
296
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
297
 
>gpointer</a> data,
298
 
                                                         <a
299
 
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
300
 
>GDestroyNotify</a> destroy);
301
 
<a
302
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
303
 
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata">g_object_steal_qdata</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
304
 
                                                         <a
305
 
href="./../glib/glib/glib-Quarks.html#GQuark"
306
 
>GQuark</a> quark);
307
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-property">g_object_set_property</a>               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
308
 
                                                         const <a
309
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
310
 
>gchar</a> *property_name,
311
 
                                                         const <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value);
312
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property">g_object_get_property</a>               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
313
 
                                                         const <a
314
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
315
 
>gchar</a> *property_name,
316
 
                                                         <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value);
317
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>*            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new-valist">g_object_new_valist</a>                 (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
318
 
                                                         const <a
319
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
320
 
>gchar</a> *first_property_name,
321
 
                                                         va_list var_args);
322
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-valist">g_object_set_valist</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
323
 
                                                         const <a
324
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
325
 
>gchar</a> *first_property_name,
326
 
                                                         va_list var_args);
327
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-valist">g_object_get_valist</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
328
 
                                                         const <a
329
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
330
 
>gchar</a> *first_property_name,
331
 
                                                         va_list var_args);
332
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-watch-closure">g_object_watch_closure</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
333
 
                                                         <a class="link" href="gobject-Closures.html#GClosure">GClosure</a> *closure);
334
 
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-run-dispose">g_object_run_dispose</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
335
 
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-WARN-INVALID-PROPERTY-ID:CAPS">G_OBJECT_WARN_INVALID_PROPERTY_ID</a>   (object, property_id, pspec)
336
 
 
337
 
 
 
248
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify" title="g_object_freeze_notify ()">g_object_freeze_notify</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
 
249
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-thaw-notify" title="g_object_thaw_notify ()">g_object_thaw_notify</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
 
250
<a
 
251
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
252
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-data" title="g_object_get_data ()">g_object_get_data</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
253
                                                         const <a
 
254
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
255
>gchar</a> *key);
 
256
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()">g_object_set_data</a>                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
257
                                                         const <a
 
258
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
259
>gchar</a> *key,
 
260
                                                         <a
 
261
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
262
>gpointer</a> data);
 
263
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data-full" title="g_object_set_data_full ()">g_object_set_data_full</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
264
                                                         const <a
 
265
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
266
>gchar</a> *key,
 
267
                                                         <a
 
268
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
269
>gpointer</a> data,
 
270
                                                         <a
 
271
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
 
272
>GDestroyNotify</a> destroy);
 
273
<a
 
274
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
275
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-data" title="g_object_steal_data ()">g_object_steal_data</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
276
                                                         const <a
 
277
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
278
>gchar</a> *key);
 
279
<a
 
280
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
281
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()">g_object_get_qdata</a>                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
282
                                                         <a
 
283
href="./../glib/glib/glib-Quarks.html#GQuark"
 
284
>GQuark</a> quark);
 
285
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()">g_object_set_qdata</a>                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
286
                                                         <a
 
287
href="./../glib/glib/glib-Quarks.html#GQuark"
 
288
>GQuark</a> quark,
 
289
                                                         <a
 
290
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
291
>gpointer</a> data);
 
292
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full" title="g_object_set_qdata_full ()">g_object_set_qdata_full</a>             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
293
                                                         <a
 
294
href="./../glib/glib/glib-Quarks.html#GQuark"
 
295
>GQuark</a> quark,
 
296
                                                         <a
 
297
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
298
>gpointer</a> data,
 
299
                                                         <a
 
300
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
 
301
>GDestroyNotify</a> destroy);
 
302
<a
 
303
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
304
>gpointer</a>            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata" title="g_object_steal_qdata ()">g_object_steal_qdata</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
305
                                                         <a
 
306
href="./../glib/glib/glib-Quarks.html#GQuark"
 
307
>GQuark</a> quark);
 
308
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-property" title="g_object_set_property ()">g_object_set_property</a>               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
309
                                                         const <a
 
310
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
311
>gchar</a> *property_name,
 
312
                                                         const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value);
 
313
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property" title="g_object_get_property ()">g_object_get_property</a>               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
314
                                                         const <a
 
315
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
316
>gchar</a> *property_name,
 
317
                                                         <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value);
 
318
<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>*            <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new-valist" title="g_object_new_valist ()">g_object_new_valist</a>                 (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
 
319
                                                         const <a
 
320
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
321
>gchar</a> *first_property_name,
 
322
                                                         va_list var_args);
 
323
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-valist" title="g_object_set_valist ()">g_object_set_valist</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
324
                                                         const <a
 
325
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
326
>gchar</a> *first_property_name,
 
327
                                                         va_list var_args);
 
328
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-valist" title="g_object_get_valist ()">g_object_get_valist</a>                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
329
                                                         const <a
 
330
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
331
>gchar</a> *first_property_name,
 
332
                                                         va_list var_args);
 
333
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-watch-closure" title="g_object_watch_closure ()">g_object_watch_closure</a>              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
334
                                                         <a class="link" href="gobject-Closures.html#GClosure" title="GClosure">GClosure</a> *closure);
 
335
void                <a class="link" href="gobject-The-Base-Object-Type.html#g-object-run-dispose" title="g_object_run_dispose ()">g_object_run_dispose</a>                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);
 
336
#define             <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-WARN-INVALID-PROPERTY-ID--CAPS" title="G_OBJECT_WARN_INVALID_PROPERTY_ID()">G_OBJECT_WARN_INVALID_PROPERTY_ID</a>   (object, property_id, pspec)
338
337
</pre>
339
338
</div>
340
339
<div class="refsect1" lang="en">
341
 
<a name="id2858770"></a><h2>Object Hierarchy</h2>
 
340
<a name="gobject-The-Base-Object-Type.object-hierarchy"></a><h2>Object Hierarchy</h2>
342
341
<pre class="synopsis">
343
 
 
344
342
  GObject
345
343
   +----<a class="link" href="GTypeModule.html" title="GTypeModule">GTypeModule</a>
346
344
</pre>
347
345
</div>
348
346
<div class="refsect1" lang="en">
349
 
<a name="id2858794"></a><h2>Signals</h2>
 
347
<a name="gobject-The-Base-Object-Type.signals"></a><h2>Signals</h2>
350
348
<pre class="synopsis">
351
 
 
352
 
  "<a class="link" href="gobject-The-Base-Object-Type.html#GObject-notify">notify</a>"                                         : Run First / No Recursion / Has Details / Action / No Hooks
 
349
  "<a class="link" href="gobject-The-Base-Object-Type.html#GObject-notify" title='The "notify" signal'>notify</a>"                                         : Run First / No Recursion / Has Details / Action / No Hooks
353
350
</pre>
354
351
</div>
355
352
<div class="refsect1" lang="en">
356
 
<a name="id2858824"></a><h2>Description</h2>
357
 
<p>
358
 
GObject is the fundamental type providing the common attributes and methods 
359
 
for all object types in GTK+, Pango and other libraries based on GObject. 
360
 
The GObject class provides methods for object construction and destruction, 
361
 
property access methods, and signal support. 
362
 
Signals are described in detail in <a class="xref" href="gobject-Signals.html" title="Signals"><a name="id2952695"></a><span class="refentrytitle">Signals</span>(3)</a>.
 
353
<a name="gobject-The-Base-Object-Type.description"></a><h2>Description</h2>
 
354
<p>
 
355
GObject is the fundamental type providing the common attributes and
 
356
methods for all object types in GTK+, Pango and other libraries
 
357
based on GObject.  The GObject class provides methods for object
 
358
construction and destruction, property access methods, and signal
 
359
support.  Signals are described in detail in <a class="xref" href="gobject-Signals.html" title="Signals"><span class="refentrytitle"><a name="gobject-Signals.top_of_page"></a>Signals</span>(3)</a>.
 
360
</p>
 
361
<p>
363
362
</p>
364
363
<p><a name="floating-ref"></a>
365
 
<a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is derived from <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>. The only difference between
366
 
the two is that the initial reference of a <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is flagged 
 
364
<a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is derived from <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>. The only difference between
 
365
the two is that the initial reference of a <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is flagged
367
366
as a <em class="firstterm">floating</em> reference.
368
367
This means that it is not specifically claimed to be "owned" by
369
368
any code portion. The main motivation for providing floating references is
370
369
C convenience. In particular, it allows code to be written as:
371
370
</p>
372
 
<div class="example">
373
 
<a name="id2858887"></a><p class="title"><b>Example&#160;1.&#160;</b></p>
374
 
<div class="example-contents"><pre class="programlisting">
375
 
  container = create_container();
376
 
  container_add_child (container, create_child());
 
371
<div class="informalexample"><pre class="programlisting">
 
372
container = create_container();
 
373
container_add_child (container, create_child());
377
374
</pre></div>
378
 
</div>
379
 
<p><br class="example-break">
380
 
If <code class="function"><code class="function">container_add_child()</code></code> will <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a> the
 
375
<p>
 
376
If <code class="function"><code class="function">container_add_child()</code></code> will <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a> the
381
377
passed in child, no reference of the newly created child is leaked.
382
378
Without floating references, <code class="function"><code class="function">container_add_child()</code></code>
383
 
can only <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> the new child, so to implement this code without
 
379
can only <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> the new child, so to implement this code without
384
380
reference leaks, it would have to be written as:
385
381
</p>
386
 
<div class="example">
387
 
<a name="id2858950"></a><p class="title"><b>Example&#160;2.&#160;</b></p>
388
 
<div class="example-contents"><pre class="programlisting">
389
 
  Child *child;
390
 
  container = create_container();
391
 
  child = create_child();
392
 
  container_add_child (container, child);
393
 
  g_object_unref (child);
 
382
<div class="informalexample"><pre class="programlisting">
 
383
Child *child;
 
384
container = create_container();
 
385
child = create_child();
 
386
container_add_child (container, child);
 
387
g_object_unref (child);
394
388
</pre></div>
395
 
</div>
396
 
<p><br class="example-break">
397
 
The floating reference can be converted into 
398
 
an ordinary reference by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a>.
 
389
<p>
 
390
The floating reference can be converted into
 
391
an ordinary reference by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a>.
399
392
For already sunken objects (objects that don't have a floating reference
400
 
anymore), <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a> is equivalent to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> and returns
 
393
anymore), <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a> is equivalent to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> and returns
401
394
a new reference.
402
395
Since floating references are useful almost exclusively for C convenience,
403
396
language bindings that provide automated reference and memory ownership
405
398
need to expose floating references in their API.
406
399
</p>
407
400
<p>
 
401
</p>
 
402
<p>
408
403
Some object implementations may need to save an objects floating state
409
404
across certain code portions (an example is <a
410
405
href="/usr/share/gtk-doc/html/gtk/GtkMenu.html"
411
406
><span class="type">GtkMenu</span></a>), to achive this, the
412
407
following sequence can be used:
413
408
</p>
414
 
<div class="example">
415
 
<a name="id2859015"></a><p class="title"><b>Example&#160;3.&#160;</b></p>
416
 
<div class="example-contents"><pre class="programlisting">
417
 
  /* save floating state */
418
 
  gboolean was_floating = g_object_is_floating (object);
419
 
  g_object_ref_sink (object);
420
 
  /* protected code portion */
421
 
  ...;
422
 
  /* restore floating state */
423
 
  if (was_floating)
424
 
    g_object_force_floating (object);
425
 
  g_obejct_unref (object); /* release previously acquired reference */
 
409
<p>
 
410
</p>
 
411
<div class="informalexample"><pre class="programlisting">
 
412
// save floating state
 
413
gboolean was_floating = g_object_is_floating (object);
 
414
g_object_ref_sink (object);
 
415
// protected code portion
 
416
...;
 
417
// restore floating state
 
418
if (was_floating)
 
419
  g_object_force_floating (object);
 
420
g_obejct_unref (object); // release previously acquired reference
426
421
</pre></div>
427
 
</div>
428
 
<br class="example-break">
 
422
<p>
 
423
</p>
429
424
</div>
430
425
<div class="refsect1" lang="en">
431
 
<a name="id2859028"></a><h2>Details</h2>
 
426
<a name="gobject-The-Base-Object-Type.details"></a><h2>Details</h2>
432
427
<div class="refsect2" lang="en">
433
 
<a name="id2859039"></a><h3>
434
 
<a name="GObject-struct"></a>GObject</h3>
435
 
<a class="indexterm" name="id2859051"></a><pre class="programlisting">typedef struct _GObject GObject;</pre>
 
428
<a name="GObject-struct"></a><h3>GObject</h3>
 
429
<pre class="programlisting">typedef struct _GObject GObject;</pre>
436
430
<p>
437
431
All the fields in the <span class="structname">GObject</span> structure are private 
438
 
to the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> implementation and should never be accessed directly.
 
432
to the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> implementation and should never be accessed directly.</p>
 
433
<p>
439
434
</p>
440
435
</div>
441
436
<hr>
442
437
<div class="refsect2" lang="en">
443
 
<a name="id2859080"></a><h3>
444
 
<a name="GObjectClass"></a>GObjectClass</h3>
445
 
<a class="indexterm" name="id2859093"></a><pre class="programlisting">typedef struct {
 
438
<a name="GObjectClass"></a><h3>GObjectClass</h3>
 
439
<pre class="programlisting">typedef struct {
446
440
  GTypeClass   g_type_class;
447
441
 
448
442
  /* seldomly overidden */
475
469
<p>
476
470
The class structure for the <span class="structname">GObject</span> type.
477
471
</p>
 
472
<p>
 
473
</p>
478
474
<div class="example">
479
 
<a name="id2859132"></a><p class="title"><b>Example&#160;4.&#160;Implementing singletons using a constructor</b></p>
 
475
<a name="id3057823"></a><p class="title"><b>Example 1. Implementing singletons using a constructor</b></p>
480
476
<div class="example-contents"><pre class="programlisting">
481
477
static MySingleton *the_singleton = NULL;
482
478
 
501
497
}
502
498
</pre></div>
503
499
</div>
504
 
<br class="example-break"><div class="variablelist"><table border="0">
 
500
<p><br class="example-break"></p>
 
501
<p>
 
502
</p>
 
503
<div class="variablelist"><table border="0">
505
504
<col align="left" valign="top">
506
505
<tbody>
507
506
<tr>
508
 
<td><p><span class="term"><a class="link" href="gobject-Type-Information.html#GTypeClass">GTypeClass</a>&#160;<em class="structfield"><code>g_type_class</code></em>;</span></p></td>
509
 
<td>the parent class
510
 
</td>
511
 
</tr>
512
 
<tr>
513
 
<td><p><span class="term"><em class="structfield"><code>constructor</code></em>&#160;()</span></p></td>
514
 
<td> the <em class="parameter"><code>constructor</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new"><code class="function">g_object_new()</code></a> to 
515
 
  complete the object initialization after all the construction properties are
516
 
  set. The first thing a <em class="parameter"><code>constructor</code></em> implementation must do is chain up to the
517
 
  <em class="parameter"><code>constructor</code></em> of the parent class. Overriding <em class="parameter"><code>constructor</code></em> should be rarely 
518
 
  needed, e.g. to handle construct properties, or to implement singletons.
519
 
</td>
520
 
</tr>
521
 
<tr>
522
 
<td><p><span class="term"><em class="structfield"><code>set_property</code></em>&#160;()</span></p></td>
523
 
<td>the generic setter for all properties of this type. Should be
524
 
  overridden for every type with properties. Implementations of <em class="parameter"><code>set_property</code></em>
525
 
  don't need to emit property change notification explicitly, this is handled
526
 
  by the type system.
527
 
</td>
528
 
</tr>
529
 
<tr>
530
 
<td><p><span class="term"><em class="structfield"><code>get_property</code></em>&#160;()</span></p></td>
531
 
<td>the generic getter for all properties of this type. Should be
532
 
  overridden for every type with properties.
533
 
</td>
534
 
</tr>
535
 
<tr>
536
 
<td><p><span class="term"><em class="structfield"><code>dispose</code></em>&#160;()</span></p></td>
537
 
<td>the <em class="parameter"><code>dispose</code></em> function is supposed to drop all references to other 
538
 
  objects, but keep the instance otherwise intact, so that client method 
539
 
  invocations still work. It may be run multiple times (due to reference 
540
 
  loops). Before returning, <em class="parameter"><code>dispose</code></em> should chain up to the <em class="parameter"><code>dispose</code></em> method 
541
 
  of the parent class.
542
 
</td>
543
 
</tr>
544
 
<tr>
545
 
<td><p><span class="term"><em class="structfield"><code>finalize</code></em>&#160;()</span></p></td>
546
 
<td>instance finalization function, should finish the finalization of 
547
 
  the instance begun in <em class="parameter"><code>dispose</code></em> and chain up to the <em class="parameter"><code>finalize</code></em> method of the 
548
 
  parent class.
549
 
</td>
550
 
</tr>
551
 
<tr>
552
 
<td><p><span class="term"><em class="structfield"><code>dispatch_properties_changed</code></em>&#160;()</span></p></td>
553
 
<td>emits property change notification for a bunch
554
 
  of properties. Overriding <em class="parameter"><code>dispatch_properties_changed</code></em> should be rarely 
555
 
  needed.
556
 
</td>
557
 
</tr>
558
 
<tr>
559
 
<td><p><span class="term"><em class="structfield"><code>notify</code></em>&#160;()</span></p></td>
560
 
<td>the class closure for the notify signal
561
 
</td>
562
 
</tr>
563
 
<tr>
564
 
<td><p><span class="term"><em class="structfield"><code>constructed</code></em>&#160;()</span></p></td>
565
 
<td>the <em class="parameter"><code>constructed</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new"><code class="function">g_object_new()</code></a> as the
566
 
  final step of the object creation process.  At the point of the call, all
567
 
  construction properties have been set on the object.  The purpose of this
568
 
  call is to allow for object initialisation steps that can only be performed
569
 
  after construction properties have been set.  <em class="parameter"><code>constructed</code></em> implementors
570
 
  should chain up to the <em class="parameter"><code>constructed</code></em> call of their parent class to allow it
571
 
  to complete its initialisation.
572
 
 
 
507
<td><p><span class="term"><a class="link" href="gobject-Type-Information.html#GTypeClass" title="GTypeClass">GTypeClass</a> <em class="structfield"><code>g_type_class</code></em>;</span></p></td>
 
508
<td> the parent class
 
509
</td>
 
510
</tr>
 
511
<tr>
 
512
<td><p><span class="term"><em class="structfield"><code>constructor</code></em> ()</span></p></td>
 
513
<td> the <em class="parameter"><code>constructor</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()"><code class="function">g_object_new()</code></a> to 
 
514
 complete the object initialization after all the construction properties are
 
515
 set. The first thing a <em class="parameter"><code>constructor</code></em> implementation must do is chain up to the
 
516
 <em class="parameter"><code>constructor</code></em> of the parent class. Overriding <em class="parameter"><code>constructor</code></em> should be rarely 
 
517
 needed, e.g. to handle construct properties, or to implement singletons.
 
518
</td>
 
519
</tr>
 
520
<tr>
 
521
<td><p><span class="term"><em class="structfield"><code>set_property</code></em> ()</span></p></td>
 
522
<td> the generic setter for all properties of this type. Should be
 
523
 overridden for every type with properties. Implementations of <em class="parameter"><code>set_property</code></em>
 
524
 don't need to emit property change notification explicitly, this is handled
 
525
 by the type system.
 
526
</td>
 
527
</tr>
 
528
<tr>
 
529
<td><p><span class="term"><em class="structfield"><code>get_property</code></em> ()</span></p></td>
 
530
<td> the generic getter for all properties of this type. Should be
 
531
 overridden for every type with properties.
 
532
</td>
 
533
</tr>
 
534
<tr>
 
535
<td><p><span class="term"><em class="structfield"><code>dispose</code></em> ()</span></p></td>
 
536
<td> the <em class="parameter"><code>dispose</code></em> function is supposed to drop all references to other 
 
537
 objects, but keep the instance otherwise intact, so that client method 
 
538
 invocations still work. It may be run multiple times (due to reference 
 
539
 loops). Before returning, <em class="parameter"><code>dispose</code></em> should chain up to the <em class="parameter"><code>dispose</code></em> method 
 
540
 of the parent class.
 
541
</td>
 
542
</tr>
 
543
<tr>
 
544
<td><p><span class="term"><em class="structfield"><code>finalize</code></em> ()</span></p></td>
 
545
<td> instance finalization function, should finish the finalization of 
 
546
 the instance begun in <em class="parameter"><code>dispose</code></em> and chain up to the <em class="parameter"><code>finalize</code></em> method of the 
 
547
 parent class.
 
548
</td>
 
549
</tr>
 
550
<tr>
 
551
<td><p><span class="term"><em class="structfield"><code>dispatch_properties_changed</code></em> ()</span></p></td>
 
552
<td> emits property change notification for a bunch
 
553
 of properties. Overriding <em class="parameter"><code>dispatch_properties_changed</code></em> should be rarely 
 
554
 needed.
 
555
</td>
 
556
</tr>
 
557
<tr>
 
558
<td><p><span class="term"><em class="structfield"><code>notify</code></em> ()</span></p></td>
 
559
<td> the class closure for the notify signal
 
560
</td>
 
561
</tr>
 
562
<tr>
 
563
<td><p><span class="term"><em class="structfield"><code>constructed</code></em> ()</span></p></td>
 
564
<td> the <em class="parameter"><code>constructed</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()"><code class="function">g_object_new()</code></a> as the
 
565
 final step of the object creation process.  At the point of the call, all
 
566
 construction properties have been set on the object.  The purpose of this
 
567
 call is to allow for object initialisation steps that can only be performed
 
568
 after construction properties have been set.  <em class="parameter"><code>constructed</code></em> implementors
 
569
 should chain up to the <em class="parameter"><code>constructed</code></em> call of their parent class to allow it
 
570
 to complete its initialisation.
573
571
</td>
574
572
</tr>
575
573
</tbody>
577
575
</div>
578
576
<hr>
579
577
<div class="refsect2" lang="en">
580
 
<a name="id2859431"></a><h3>
581
 
<a name="GObjectConstructParam"></a>GObjectConstructParam</h3>
582
 
<a class="indexterm" name="id2859444"></a><pre class="programlisting">typedef struct {
 
578
<a name="GObjectConstructParam"></a><h3>GObjectConstructParam</h3>
 
579
<pre class="programlisting">typedef struct {
583
580
  GParamSpec *pspec;
584
581
  GValue     *value;
585
582
} GObjectConstructParam;
586
583
</pre>
587
584
<p>
588
585
The <span class="structname">GObjectConstructParam</span> struct is an auxiliary 
589
 
structure used to hand <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>/<a class="link" href="gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> pairs to the <em class="parameter"><code>constructor</code></em> of
590
 
a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>.
591
 
</p>
592
 
<div class="variablelist"><table border="0">
593
 
<col align="left" valign="top">
594
 
<tbody>
595
 
<tr>
596
 
<td><p><span class="term"><a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>&#160;*<em class="structfield"><code>pspec</code></em>;</span></p></td>
597
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> of the construct parameter
598
 
</td>
599
 
</tr>
600
 
<tr>
601
 
<td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue">GValue</a>&#160;*<em class="structfield"><code>value</code></em>;</span></p></td>
602
 
<td>the value to set the parameter to
603
 
 
604
 
</td>
605
 
</tr>
606
 
</tbody>
607
 
</table></div>
608
 
</div>
609
 
<hr>
610
 
<div class="refsect2" lang="en">
611
 
<a name="id2859549"></a><h3>
612
 
<a name="GObjectGetPropertyFunc"></a>GObjectGetPropertyFunc ()</h3>
613
 
<a class="indexterm" name="id2859562"></a><pre class="programlisting">void                (*GObjectGetPropertyFunc)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
614
 
                                                         <a
615
 
href="./../glib/glib/glib-Basic-Types.html#guint"
616
 
>guint</a> property_id,
617
 
                                                         <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value,
618
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);</pre>
619
 
<p>
620
 
The type of the <em class="parameter"><code>get_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>. 
621
 
</p>
622
 
<div class="variablelist"><table border="0">
623
 
<col align="left" valign="top">
624
 
<tbody>
625
 
<tr>
626
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
627
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
628
 
</td>
629
 
</tr>
630
 
<tr>
631
 
<td><p><span class="term"><em class="parameter"><code>property_id</code></em>&#160;:</span></p></td>
632
 
<td>the numeric id under which the property was registered with
633
 
   <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property"><code class="function">g_object_class_install_property()</code></a>.
634
 
</td>
635
 
</tr>
636
 
<tr>
637
 
<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
638
 
<td>a <a class="link" href="gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> to return the property value in
639
 
</td>
640
 
</tr>
641
 
<tr>
642
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
643
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> describing the property
644
 
 
645
 
 
646
 
</td>
647
 
</tr>
648
 
</tbody>
649
 
</table></div>
650
 
</div>
651
 
<hr>
652
 
<div class="refsect2" lang="en">
653
 
<a name="id2859724"></a><h3>
654
 
<a name="GObjectSetPropertyFunc"></a>GObjectSetPropertyFunc ()</h3>
655
 
<a class="indexterm" name="id2859737"></a><pre class="programlisting">void                (*GObjectSetPropertyFunc)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
656
 
                                                         <a
657
 
href="./../glib/glib/glib-Basic-Types.html#guint"
658
 
>guint</a> property_id,
659
 
                                                         const <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value,
660
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);</pre>
661
 
<p>
662
 
The type of the <em class="parameter"><code>set_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>. 
663
 
</p>
664
 
<div class="variablelist"><table border="0">
665
 
<col align="left" valign="top">
666
 
<tbody>
667
 
<tr>
668
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
669
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
670
 
</td>
671
 
</tr>
672
 
<tr>
673
 
<td><p><span class="term"><em class="parameter"><code>property_id</code></em>&#160;:</span></p></td>
674
 
<td>the numeric id under which the property was registered with
675
 
   <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property"><code class="function">g_object_class_install_property()</code></a>.
676
 
</td>
677
 
</tr>
678
 
<tr>
679
 
<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
680
 
<td>the new value for the property
681
 
</td>
682
 
</tr>
683
 
<tr>
684
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
685
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> describing the property
686
 
 
687
 
 
688
 
</td>
689
 
</tr>
690
 
</tbody>
691
 
</table></div>
692
 
</div>
693
 
<hr>
694
 
<div class="refsect2" lang="en">
695
 
<a name="id2859892"></a><h3>
696
 
<a name="GObjectFinalizeFunc"></a>GObjectFinalizeFunc ()</h3>
697
 
<a class="indexterm" name="id2859905"></a><pre class="programlisting">void                (*GObjectFinalizeFunc)              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
698
 
<p>
699
 
The type of the <em class="parameter"><code>finalize</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>.
 
586
structure used to hand <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>/<a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> pairs to the <em class="parameter"><code>constructor</code></em> of
 
587
a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.</p>
 
588
<p>
 
589
</p>
 
590
<div class="variablelist"><table border="0">
 
591
<col align="left" valign="top">
 
592
<tbody>
 
593
<tr>
 
594
<td><p><span class="term"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *<em class="structfield"><code>pspec</code></em>;</span></p></td>
 
595
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the construct parameter
 
596
</td>
 
597
</tr>
 
598
<tr>
 
599
<td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *<em class="structfield"><code>value</code></em>;</span></p></td>
 
600
<td> the value to set the parameter to
 
601
</td>
 
602
</tr>
 
603
</tbody>
 
604
</table></div>
 
605
</div>
 
606
<hr>
 
607
<div class="refsect2" lang="en">
 
608
<a name="GObjectGetPropertyFunc"></a><h3>GObjectGetPropertyFunc ()</h3>
 
609
<pre class="programlisting">void                (*GObjectGetPropertyFunc)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
610
                                                         <a
 
611
href="./../glib/glib/glib-Basic-Types.html#guint"
 
612
>guint</a> property_id,
 
613
                                                         <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value,
 
614
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);</pre>
 
615
<p>
 
616
The type of the <em class="parameter"><code>get_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.</p>
 
617
<p>
 
618
</p>
 
619
<div class="variablelist"><table border="0">
 
620
<col align="left" valign="top">
 
621
<tbody>
 
622
<tr>
 
623
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
624
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
625
</td>
 
626
</tr>
 
627
<tr>
 
628
<td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
 
629
<td> the numeric id under which the property was registered with
 
630
 <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()"><code class="function">g_object_class_install_property()</code></a>.
 
631
</td>
 
632
</tr>
 
633
<tr>
 
634
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
 
635
<td> a <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> to return the property value in
 
636
</td>
 
637
</tr>
 
638
<tr>
 
639
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
640
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> describing the property
 
641
</td>
 
642
</tr>
 
643
</tbody>
 
644
</table></div>
 
645
</div>
 
646
<hr>
 
647
<div class="refsect2" lang="en">
 
648
<a name="GObjectSetPropertyFunc"></a><h3>GObjectSetPropertyFunc ()</h3>
 
649
<pre class="programlisting">void                (*GObjectSetPropertyFunc)           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
650
                                                         <a
 
651
href="./../glib/glib/glib-Basic-Types.html#guint"
 
652
>guint</a> property_id,
 
653
                                                         const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value,
 
654
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);</pre>
 
655
<p>
 
656
The type of the <em class="parameter"><code>set_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.</p>
 
657
<p>
 
658
</p>
 
659
<div class="variablelist"><table border="0">
 
660
<col align="left" valign="top">
 
661
<tbody>
 
662
<tr>
 
663
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
664
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
665
</td>
 
666
</tr>
 
667
<tr>
 
668
<td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
 
669
<td> the numeric id under which the property was registered with
 
670
 <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()"><code class="function">g_object_class_install_property()</code></a>.
 
671
</td>
 
672
</tr>
 
673
<tr>
 
674
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
 
675
<td> the new value for the property
 
676
</td>
 
677
</tr>
 
678
<tr>
 
679
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
680
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> describing the property
 
681
</td>
 
682
</tr>
 
683
</tbody>
 
684
</table></div>
 
685
</div>
 
686
<hr>
 
687
<div class="refsect2" lang="en">
 
688
<a name="GObjectFinalizeFunc"></a><h3>GObjectFinalizeFunc ()</h3>
 
689
<pre class="programlisting">void                (*GObjectFinalizeFunc)              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
 
690
<p>
 
691
The type of the <em class="parameter"><code>finalize</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.</p>
 
692
<p>
700
693
</p>
701
694
<div class="variablelist"><table border="0">
702
695
<col align="left" valign="top">
703
696
<tbody><tr>
704
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
705
 
<td>the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> being finalized
706
 
 
707
 
 
 
697
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
698
<td> the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> being finalized
708
699
</td>
709
700
</tr></tbody>
710
701
</table></div>
711
702
</div>
712
703
<hr>
713
704
<div class="refsect2" lang="en">
714
 
<a name="id2859974"></a><h3>
715
 
<a name="G-TYPE-IS-OBJECT:CAPS"></a>G_TYPE_IS_OBJECT()</h3>
716
 
<a class="indexterm" name="id2859987"></a><pre class="programlisting">#define G_TYPE_IS_OBJECT(type)      (G_TYPE_FUNDAMENTAL (type) == G_TYPE_OBJECT)
 
705
<a name="G-TYPE-IS-OBJECT--CAPS"></a><h3>G_TYPE_IS_OBJECT()</h3>
 
706
<pre class="programlisting">#define G_TYPE_IS_OBJECT(type)      (G_TYPE_FUNDAMENTAL (type) == G_TYPE_OBJECT)
717
707
</pre>
718
708
<p>
719
 
Returns a boolean value of <a
720
 
href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"
721
 
><code class="literal">FALSE</code></a> or <a
722
 
href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"
723
 
><code class="literal">TRUE</code></a> indicating whether
724
 
the passed in type id is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a> or derived from it.
 
709
Check if the passed in type id is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT--CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a> or derived from it.</p>
 
710
<p>
725
711
</p>
726
712
<div class="variablelist"><table border="0">
727
713
<col align="left" valign="top">
728
 
<tbody>
729
 
<tr>
730
 
<td><p><span class="term"><em class="parameter"><code>type</code></em>&#160;:</span></p></td>
731
 
<td>Type id to check for is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a> relationship.
732
 
</td>
733
 
</tr>
734
 
<tr>
735
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
736
 
<td>
737
 
<a
738
 
href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"
739
 
><code class="literal">FALSE</code></a> or <a
740
 
href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"
741
 
><code class="literal">TRUE</code></a>, indicating whether <em class="parameter"><code>type</code></em> is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a>.
742
 
 
743
 
 
744
 
</td>
745
 
</tr>
746
 
</tbody>
 
714
<tbody><tr>
 
715
<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
 
716
<td> Type id to check
 
717
</td>
 
718
</tr></tbody>
747
719
</table></div>
748
720
</div>
749
721
<hr>
750
722
<div class="refsect2" lang="en">
751
 
<a name="id2860111"></a><h3>
752
 
<a name="G-OBJECT:CAPS"></a>G_OBJECT()</h3>
753
 
<a class="indexterm" name="id2860124"></a><pre class="programlisting">#define G_OBJECT(object)            (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
 
723
<a name="G-OBJECT--CAPS"></a><h3>G_OBJECT()</h3>
 
724
<pre class="programlisting">#define G_OBJECT(object)            (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
754
725
</pre>
755
726
<p>
756
727
Casts a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> or derived pointer into a (GObject*) pointer.
757
728
Depending on the current debugging level, this function may invoke
758
 
certain runtime checks to identify invalid casts.
759
 
</p>
760
 
<div class="variablelist"><table border="0">
761
 
<col align="left" valign="top">
762
 
<tbody><tr>
763
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
764
 
<td>Object which is subject to casting.
765
 
 
766
 
 
767
 
</td>
768
 
</tr></tbody>
769
 
</table></div>
770
 
</div>
771
 
<hr>
772
 
<div class="refsect2" lang="en">
773
 
<a name="id2860170"></a><h3>
774
 
<a name="G-IS-OBJECT:CAPS"></a>G_IS_OBJECT()</h3>
775
 
<a class="indexterm" name="id2860182"></a><pre class="programlisting">#define G_IS_OBJECT(object)         (G_TYPE_CHECK_INSTANCE_TYPE ((object), G_TYPE_OBJECT))
776
 
</pre>
777
 
<p>
778
 
Checks whether a valid <a class="link" href="gobject-Type-Information.html#GTypeInstance"><span class="type">GTypeInstance</span></a> pointer is of type <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a>.
779
 
</p>
780
 
<div class="variablelist"><table border="0">
781
 
<col align="left" valign="top">
782
 
<tbody><tr>
783
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
784
 
<td>Instance to check for being a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a>.
785
 
 
786
 
 
787
 
</td>
788
 
</tr></tbody>
789
 
</table></div>
790
 
</div>
791
 
<hr>
792
 
<div class="refsect2" lang="en">
793
 
<a name="id2860247"></a><h3>
794
 
<a name="G-OBJECT-CLASS:CAPS"></a>G_OBJECT_CLASS()</h3>
795
 
<a class="indexterm" name="id2860259"></a><pre class="programlisting">#define G_OBJECT_CLASS(class)       (G_TYPE_CHECK_CLASS_CAST ((class), G_TYPE_OBJECT, GObjectClass))
796
 
</pre>
797
 
<p>
798
 
Casts a derived <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> structure into a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> structure.
799
 
</p>
800
 
<div class="variablelist"><table border="0">
801
 
<col align="left" valign="top">
802
 
<tbody><tr>
803
 
<td><p><span class="term"><em class="parameter"><code>class</code></em>&#160;:</span></p></td>
804
 
<td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
805
 
 
806
 
 
807
 
</td>
808
 
</tr></tbody>
809
 
</table></div>
810
 
</div>
811
 
<hr>
812
 
<div class="refsect2" lang="en">
813
 
<a name="id2860320"></a><h3>
814
 
<a name="G-IS-OBJECT-CLASS:CAPS"></a>G_IS_OBJECT_CLASS()</h3>
815
 
<a class="indexterm" name="id2860333"></a><pre class="programlisting">#define G_IS_OBJECT_CLASS(class)    (G_TYPE_CHECK_CLASS_TYPE ((class), G_TYPE_OBJECT))
816
 
</pre>
817
 
<p>
818
 
Checks whether <em class="parameter"><code>class</code></em> "is a" valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> structure of type
819
 
<a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS"><code class="literal">G_TYPE_OBJECT</code></a> or derived.
820
 
</p>
821
 
<div class="variablelist"><table border="0">
822
 
<col align="left" valign="top">
823
 
<tbody><tr>
824
 
<td><p><span class="term"><em class="parameter"><code>class</code></em>&#160;:</span></p></td>
825
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
826
 
 
827
 
 
828
 
</td>
829
 
</tr></tbody>
830
 
</table></div>
831
 
</div>
832
 
<hr>
833
 
<div class="refsect2" lang="en">
834
 
<a name="id2860402"></a><h3>
835
 
<a name="G-OBJECT-GET-CLASS:CAPS"></a>G_OBJECT_GET_CLASS()</h3>
836
 
<a class="indexterm" name="id2860414"></a><pre class="programlisting">#define G_OBJECT_GET_CLASS(object)  (G_TYPE_INSTANCE_GET_CLASS ((object), G_TYPE_OBJECT, GObjectClass))
837
 
</pre>
838
 
<p>
839
 
Returns the class structure associated to a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.
840
 
</p>
841
 
<div class="variablelist"><table border="0">
842
 
<col align="left" valign="top">
843
 
<tbody><tr>
844
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
845
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.
846
 
 
847
 
 
848
 
</td>
849
 
</tr></tbody>
850
 
</table></div>
851
 
</div>
852
 
<hr>
853
 
<div class="refsect2" lang="en">
854
 
<a name="id2860466"></a><h3>
855
 
<a name="G-OBJECT-TYPE:CAPS"></a>G_OBJECT_TYPE()</h3>
856
 
<a class="indexterm" name="id2860478"></a><pre class="programlisting">#define G_OBJECT_TYPE(object)       (G_TYPE_FROM_INSTANCE (object))
857
 
</pre>
858
 
<p>
859
 
Return the type id of an object.
860
 
</p>
861
 
<div class="variablelist"><table border="0">
862
 
<col align="left" valign="top">
863
 
<tbody>
864
 
<tr>
865
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
866
 
<td>Object to return the type id for.
867
 
</td>
868
 
</tr>
869
 
<tr>
870
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
871
 
<td>Type id of <em class="parameter"><code>object</code></em>.
872
 
 
873
 
 
874
 
</td>
875
 
</tr>
876
 
</tbody>
877
 
</table></div>
878
 
</div>
879
 
<hr>
880
 
<div class="refsect2" lang="en">
881
 
<a name="id2860530"></a><h3>
882
 
<a name="G-OBJECT-TYPE-NAME:CAPS"></a>G_OBJECT_TYPE_NAME()</h3>
883
 
<a class="indexterm" name="id2860543"></a><pre class="programlisting">#define G_OBJECT_TYPE_NAME(object)  (g_type_name (G_OBJECT_TYPE (object)))
884
 
</pre>
885
 
<p>
886
 
Returns the name of an object's type.
887
 
</p>
888
 
<div class="variablelist"><table border="0">
889
 
<col align="left" valign="top">
890
 
<tbody>
891
 
<tr>
892
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
893
 
<td>Object to return the type name for.
894
 
</td>
895
 
</tr>
896
 
<tr>
897
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
898
 
<td>Type name of <em class="parameter"><code>object</code></em>. The string is owned by the type system and 
899
 
should not be freed.
900
 
 
901
 
 
902
 
</td>
903
 
</tr>
904
 
</tbody>
905
 
</table></div>
906
 
</div>
907
 
<hr>
908
 
<div class="refsect2" lang="en">
909
 
<a name="id2860596"></a><h3>
910
 
<a name="G-OBJECT-CLASS-TYPE:CAPS"></a>G_OBJECT_CLASS_TYPE()</h3>
911
 
<a class="indexterm" name="id2860609"></a><pre class="programlisting">#define G_OBJECT_CLASS_TYPE(class)  (G_TYPE_FROM_CLASS (class))
912
 
</pre>
913
 
<p>
914
 
Return the type id of a class structure.
915
 
</p>
916
 
<div class="variablelist"><table border="0">
917
 
<col align="left" valign="top">
918
 
<tbody>
919
 
<tr>
920
 
<td><p><span class="term"><em class="parameter"><code>class</code></em>&#160;:</span></p></td>
921
 
<td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
922
 
</td>
923
 
</tr>
924
 
<tr>
925
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
926
 
<td>Type id of <em class="parameter"><code>class</code></em>.
927
 
 
928
 
 
929
 
</td>
930
 
</tr>
931
 
</tbody>
932
 
</table></div>
933
 
</div>
934
 
<hr>
935
 
<div class="refsect2" lang="en">
936
 
<a name="id2860668"></a><h3>
937
 
<a name="G-OBJECT-CLASS-NAME:CAPS"></a>G_OBJECT_CLASS_NAME()</h3>
938
 
<a class="indexterm" name="id2860682"></a><pre class="programlisting">#define G_OBJECT_CLASS_NAME(class)  (g_type_name (G_OBJECT_CLASS_TYPE (class)))
939
 
</pre>
940
 
<p>
941
 
Return the name of a class structure's type.
942
 
</p>
943
 
<div class="variablelist"><table border="0">
944
 
<col align="left" valign="top">
945
 
<tbody>
946
 
<tr>
947
 
<td><p><span class="term"><em class="parameter"><code>class</code></em>&#160;:</span></p></td>
948
 
<td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
949
 
</td>
950
 
</tr>
951
 
<tr>
952
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
953
 
<td>Type name of <em class="parameter"><code>class</code></em>. The string is owned by the type system and 
954
 
should not be freed.
955
 
 
956
 
 
957
 
</td>
958
 
</tr>
959
 
</tbody>
960
 
</table></div>
961
 
</div>
962
 
<hr>
963
 
<div class="refsect2" lang="en">
964
 
<a name="id2860743"></a><h3>
965
 
<a name="g-object-class-install-property"></a>g_object_class_install_property ()</h3>
966
 
<a class="indexterm" name="id2860756"></a><pre class="programlisting">void                g_object_class_install_property     (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
729
certain runtime checks to identify invalid casts.</p>
 
730
<p>
 
731
</p>
 
732
<div class="variablelist"><table border="0">
 
733
<col align="left" valign="top">
 
734
<tbody><tr>
 
735
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
736
<td> Object which is subject to casting.
 
737
</td>
 
738
</tr></tbody>
 
739
</table></div>
 
740
</div>
 
741
<hr>
 
742
<div class="refsect2" lang="en">
 
743
<a name="G-IS-OBJECT--CAPS"></a><h3>G_IS_OBJECT()</h3>
 
744
<pre class="programlisting">#define G_IS_OBJECT(object)         (G_TYPE_CHECK_INSTANCE_TYPE ((object), G_TYPE_OBJECT))
 
745
</pre>
 
746
<p>
 
747
Checks whether a valid <a class="link" href="gobject-Type-Information.html#GTypeInstance" title="GTypeInstance"><span class="type">GTypeInstance</span></a> pointer is of type <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT--CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a>.</p>
 
748
<p>
 
749
</p>
 
750
<div class="variablelist"><table border="0">
 
751
<col align="left" valign="top">
 
752
<tbody><tr>
 
753
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
754
<td> Instance to check for being a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT--CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a>.
 
755
</td>
 
756
</tr></tbody>
 
757
</table></div>
 
758
</div>
 
759
<hr>
 
760
<div class="refsect2" lang="en">
 
761
<a name="G-OBJECT-CLASS--CAPS"></a><h3>G_OBJECT_CLASS()</h3>
 
762
<pre class="programlisting">#define G_OBJECT_CLASS(class)       (G_TYPE_CHECK_CLASS_CAST ((class), G_TYPE_OBJECT, GObjectClass))
 
763
</pre>
 
764
<p>
 
765
Casts a derived <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure into a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure.</p>
 
766
<p>
 
767
</p>
 
768
<div class="variablelist"><table border="0">
 
769
<col align="left" valign="top">
 
770
<tbody><tr>
 
771
<td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
 
772
<td> a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
773
</td>
 
774
</tr></tbody>
 
775
</table></div>
 
776
</div>
 
777
<hr>
 
778
<div class="refsect2" lang="en">
 
779
<a name="G-IS-OBJECT-CLASS--CAPS"></a><h3>G_IS_OBJECT_CLASS()</h3>
 
780
<pre class="programlisting">#define G_IS_OBJECT_CLASS(class)    (G_TYPE_CHECK_CLASS_TYPE ((class), G_TYPE_OBJECT))
 
781
</pre>
 
782
<p>
 
783
Checks whether <em class="parameter"><code>class</code></em> "is a" valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure of type
 
784
<a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT--CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a> or derived.</p>
 
785
<p>
 
786
</p>
 
787
<div class="variablelist"><table border="0">
 
788
<col align="left" valign="top">
 
789
<tbody><tr>
 
790
<td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
 
791
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
792
</td>
 
793
</tr></tbody>
 
794
</table></div>
 
795
</div>
 
796
<hr>
 
797
<div class="refsect2" lang="en">
 
798
<a name="G-OBJECT-GET-CLASS--CAPS"></a><h3>G_OBJECT_GET_CLASS()</h3>
 
799
<pre class="programlisting">#define G_OBJECT_GET_CLASS(object)  (G_TYPE_INSTANCE_GET_CLASS ((object), G_TYPE_OBJECT, GObjectClass))
 
800
</pre>
 
801
<p>
 
802
Get the class structure associated to a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.</p>
 
803
<p>
 
804
</p>
 
805
<div class="variablelist"><table border="0">
 
806
<col align="left" valign="top">
 
807
<tbody><tr>
 
808
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
809
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.
 
810
</td>
 
811
</tr></tbody>
 
812
</table></div>
 
813
</div>
 
814
<hr>
 
815
<div class="refsect2" lang="en">
 
816
<a name="G-OBJECT-TYPE--CAPS"></a><h3>G_OBJECT_TYPE()</h3>
 
817
<pre class="programlisting">#define G_OBJECT_TYPE(object)       (G_TYPE_FROM_INSTANCE (object))
 
818
</pre>
 
819
<p>
 
820
Get the type id of an object.</p>
 
821
<p>
 
822
</p>
 
823
<div class="variablelist"><table border="0">
 
824
<col align="left" valign="top">
 
825
<tbody><tr>
 
826
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
827
<td> Object to return the type id for.
 
828
</td>
 
829
</tr></tbody>
 
830
</table></div>
 
831
</div>
 
832
<hr>
 
833
<div class="refsect2" lang="en">
 
834
<a name="G-OBJECT-TYPE-NAME--CAPS"></a><h3>G_OBJECT_TYPE_NAME()</h3>
 
835
<pre class="programlisting">#define G_OBJECT_TYPE_NAME(object)  (g_type_name (G_OBJECT_TYPE (object)))
 
836
</pre>
 
837
<p>
 
838
Get the name of an object's type.</p>
 
839
<p>
 
840
</p>
 
841
<div class="variablelist"><table border="0">
 
842
<col align="left" valign="top">
 
843
<tbody><tr>
 
844
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
845
<td> Object to return the type name for.
 
846
</td>
 
847
</tr></tbody>
 
848
</table></div>
 
849
</div>
 
850
<hr>
 
851
<div class="refsect2" lang="en">
 
852
<a name="G-OBJECT-CLASS-TYPE--CAPS"></a><h3>G_OBJECT_CLASS_TYPE()</h3>
 
853
<pre class="programlisting">#define G_OBJECT_CLASS_TYPE(class)  (G_TYPE_FROM_CLASS (class))
 
854
</pre>
 
855
<p>
 
856
Get the type id of a class structure.</p>
 
857
<p>
 
858
</p>
 
859
<div class="variablelist"><table border="0">
 
860
<col align="left" valign="top">
 
861
<tbody><tr>
 
862
<td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
 
863
<td> a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
864
</td>
 
865
</tr></tbody>
 
866
</table></div>
 
867
</div>
 
868
<hr>
 
869
<div class="refsect2" lang="en">
 
870
<a name="G-OBJECT-CLASS-NAME--CAPS"></a><h3>G_OBJECT_CLASS_NAME()</h3>
 
871
<pre class="programlisting">#define G_OBJECT_CLASS_NAME(class)  (g_type_name (G_OBJECT_CLASS_TYPE (class)))
 
872
</pre>
 
873
<p>
 
874
Return the name of a class structure's type.</p>
 
875
<p>
 
876
</p>
 
877
<div class="variablelist"><table border="0">
 
878
<col align="left" valign="top">
 
879
<tbody><tr>
 
880
<td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
 
881
<td> a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
882
</td>
 
883
</tr></tbody>
 
884
</table></div>
 
885
</div>
 
886
<hr>
 
887
<div class="refsect2" lang="en">
 
888
<a name="g-object-class-install-property"></a><h3>g_object_class_install_property ()</h3>
 
889
<pre class="programlisting">void                g_object_class_install_property     (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
967
890
                                                         <a
968
891
href="./../glib/glib/glib-Basic-Types.html#guint"
969
892
>guint</a> property_id,
970
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);</pre>
971
 
<p>
972
 
Installs a new property. This is usually done in the class initializer.
 
893
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);</pre>
 
894
<p>
 
895
Installs a new property. This is usually done in the class initializer.</p>
 
896
<p>
973
897
</p>
974
898
<div class="variablelist"><table border="0">
975
899
<col align="left" valign="top">
976
900
<tbody>
977
901
<tr>
978
 
<td><p><span class="term"><em class="parameter"><code>oclass</code></em>&#160;:</span></p></td>
979
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
980
 
</td>
981
 
</tr>
982
 
<tr>
983
 
<td><p><span class="term"><em class="parameter"><code>property_id</code></em>&#160;:</span></p></td>
984
 
<td>the id for the new property
985
 
</td>
986
 
</tr>
987
 
<tr>
988
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
989
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for the new property
990
 
 
991
 
 
 
902
<td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
 
903
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
904
</td>
 
905
</tr>
 
906
<tr>
 
907
<td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
 
908
<td> the id for the new property
 
909
</td>
 
910
</tr>
 
911
<tr>
 
912
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
913
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the new property
992
914
</td>
993
915
</tr>
994
916
</tbody>
996
918
</div>
997
919
<hr>
998
920
<div class="refsect2" lang="en">
999
 
<a name="id2860864"></a><h3>
1000
 
<a name="g-object-class-find-property"></a>g_object_class_find_property ()</h3>
1001
 
<a class="indexterm" name="id2860877"></a><pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>*         g_object_class_find_property        (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
921
<a name="g-object-class-find-property"></a><h3>g_object_class_find_property ()</h3>
 
922
<pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>*         g_object_class_find_property        (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
1002
923
                                                         const <a
1003
924
href="./../glib/glib/glib-Basic-Types.html#gchar"
1004
925
>gchar</a> *property_name);</pre>
1005
926
<p>
1006
 
Looks up the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for a property of a class.
 
927
Looks up the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for a property of a class.</p>
 
928
<p>
1007
929
</p>
1008
930
<div class="variablelist"><table border="0">
1009
931
<col align="left" valign="top">
1010
932
<tbody>
1011
933
<tr>
1012
 
<td><p><span class="term"><em class="parameter"><code>oclass</code></em>&#160;:</span></p></td>
1013
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
1014
 
</td>
1015
 
</tr>
1016
 
<tr>
1017
 
<td><p><span class="term"><em class="parameter"><code>property_name</code></em>&#160;:</span></p></td>
1018
 
<td>the name of the property to look up
1019
 
</td>
1020
 
</tr>
1021
 
<tr>
1022
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1023
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for the property, or <a
1024
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
1025
 
><code class="literal">NULL</code></a> if the class doesn't have
1026
 
a property of that name
1027
 
 
1028
 
 
 
934
<td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
 
935
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
936
</td>
 
937
</tr>
 
938
<tr>
 
939
<td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
 
940
<td> the name of the property to look up
 
941
</td>
 
942
</tr>
 
943
<tr>
 
944
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
945
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the property, or <a
 
946
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
947
><code class="literal">NULL</code></a> if the class
 
948
         doesn't have a property of that name
1029
949
</td>
1030
950
</tr>
1031
951
</tbody>
1033
953
</div>
1034
954
<hr>
1035
955
<div class="refsect2" lang="en">
1036
 
<a name="id2860993"></a><h3>
1037
 
<a name="g-object-class-list-properties"></a>g_object_class_list_properties ()</h3>
1038
 
<a class="indexterm" name="id2861007"></a><pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>**        g_object_class_list_properties      (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
956
<a name="g-object-class-list-properties"></a><h3>g_object_class_list_properties ()</h3>
 
957
<pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>**        g_object_class_list_properties      (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
1039
958
                                                         <a
1040
959
href="./../glib/glib/glib-Basic-Types.html#guint"
1041
960
>guint</a> *n_properties);</pre>
1042
961
<p>
1043
 
Returns an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>* for all properties of a class.
 
962
Get an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>* for all properties of a class.</p>
 
963
<p>
1044
964
</p>
1045
965
<div class="variablelist"><table border="0">
1046
966
<col align="left" valign="top">
1047
967
<tbody>
1048
968
<tr>
1049
 
<td><p><span class="term"><em class="parameter"><code>oclass</code></em>&#160;:</span></p></td>
1050
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
1051
 
</td>
1052
 
</tr>
1053
 
<tr>
1054
 
<td><p><span class="term"><em class="parameter"><code>n_properties</code></em>&#160;:</span></p></td>
1055
 
<td>return location for the length of the returned array
1056
 
</td>
1057
 
</tr>
1058
 
<tr>
1059
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1060
 
<td>an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>* which should be freed after use
1061
 
 
1062
 
 
 
969
<td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
 
970
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
971
</td>
 
972
</tr>
 
973
<tr>
 
974
<td><p><span class="term"><em class="parameter"><code>n_properties</code></em> :</span></p></td>
 
975
<td> return location for the length of the returned array
 
976
</td>
 
977
</tr>
 
978
<tr>
 
979
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
980
<td> an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>* which should be freed after use
1063
981
</td>
1064
982
</tr>
1065
983
</tbody>
1067
985
</div>
1068
986
<hr>
1069
987
<div class="refsect2" lang="en">
1070
 
<a name="id2861112"></a><h3>
1071
 
<a name="g-object-class-override-property"></a>g_object_class_override_property ()</h3>
1072
 
<a class="indexterm" name="id2861128"></a><pre class="programlisting">void                g_object_class_override_property    (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass">GObjectClass</a> *oclass,
 
988
<a name="g-object-class-override-property"></a><h3>g_object_class_override_property ()</h3>
 
989
<pre class="programlisting">void                g_object_class_override_property    (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a> *oclass,
1073
990
                                                         <a
1074
991
href="./../glib/glib/glib-Basic-Types.html#guint"
1075
992
>guint</a> property_id,
1083
1000
a property implementation in a parent class or to provide
1084
1001
the implementation of a property from an interface.
1085
1002
</p>
 
1003
<p>
 
1004
</p>
1086
1005
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
1087
1006
<h3 class="title">Note</h3>
1088
 
<p>
1089
1007
Internally, overriding is implemented by creating a property of type
1090
 
<a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride"><span class="type">GParamSpecOverride</span></a>; generally operations that query the properties of
1091
 
the object class, such as <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property"><code class="function">g_object_class_find_property()</code></a> or
1092
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties"><code class="function">g_object_class_list_properties()</code></a> will return the overridden
 
1008
<a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride" title="GParamSpecOverride"><span class="type">GParamSpecOverride</span></a>; generally operations that query the properties of
 
1009
the object class, such as <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property" title="g_object_class_find_property ()"><code class="function">g_object_class_find_property()</code></a> or
 
1010
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties" title="g_object_class_list_properties ()"><code class="function">g_object_class_list_properties()</code></a> will return the overridden
1093
1011
property. However, in one case, the <em class="parameter"><code>construct_properties</code></em> argument of
1094
 
the <em class="parameter"><code>constructor</code></em> virtual function, the <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride"><span class="type">GParamSpecOverride</span></a> is passed
1095
 
instead, so that the <em class="parameter"><code>param_id</code></em> field of the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> will be
 
1012
the <em class="parameter"><code>constructor</code></em> virtual function, the <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride" title="GParamSpecOverride"><span class="type">GParamSpecOverride</span></a> is passed
 
1013
instead, so that the <em class="parameter"><code>param_id</code></em> field of the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> will be
1096
1014
correct.  For virtually all uses, this makes no difference. If you
1097
1015
need to get the overridden property, you can call
1098
 
<a class="link" href="gobject-GParamSpec.html#g-param-spec-get-redirect-target"><code class="function">g_param_spec_get_redirect_target()</code></a>.
 
1016
<a class="link" href="gobject-GParamSpec.html#g-param-spec-get-redirect-target" title="g_param_spec_get_redirect_target ()"><code class="function">g_param_spec_get_redirect_target()</code></a>.
 
1017
</div>
 
1018
<p>
1099
1019
</p>
1100
 
</div>
1101
1020
<div class="variablelist"><table border="0">
1102
1021
<col align="left" valign="top">
1103
1022
<tbody>
1104
1023
<tr>
1105
 
<td><p><span class="term"><em class="parameter"><code>oclass</code></em>&#160;:</span></p></td>
1106
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
1107
 
</td>
1108
 
</tr>
1109
 
<tr>
1110
 
<td><p><span class="term"><em class="parameter"><code>property_id</code></em>&#160;:</span></p></td>
1111
 
<td>the new property ID
1112
 
</td>
1113
 
</tr>
1114
 
<tr>
1115
 
<td><p><span class="term"><em class="parameter"><code>name</code></em>&#160;:</span></p></td>
1116
 
<td>the name of a property registered in a parent class or
1117
 
       in an interface of this class.
 
1024
<td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
 
1025
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
 
1026
</td>
 
1027
</tr>
 
1028
<tr>
 
1029
<td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
 
1030
<td> the new property ID
 
1031
</td>
 
1032
</tr>
 
1033
<tr>
 
1034
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
 
1035
<td> the name of a property registered in a parent class or
 
1036
 in an interface of this class.
1118
1037
</td>
1119
1038
</tr>
1120
1039
</tbody>
1121
1040
</table></div>
1122
 
<p class="since">Since 2.4
1123
 
 
1124
 
 
1125
 
</p>
 
1041
<p class="since">Since 2.4</p>
1126
1042
</div>
1127
1043
<hr>
1128
1044
<div class="refsect2" lang="en">
1129
 
<a name="id2861353"></a><h3>
1130
 
<a name="g-object-interface-install-property"></a>g_object_interface_install_property ()</h3>
1131
 
<a class="indexterm" name="id2861370"></a><pre class="programlisting">void                g_object_interface_install_property (<a
 
1045
<a name="g-object-interface-install-property"></a><h3>g_object_interface_install_property ()</h3>
 
1046
<pre class="programlisting">void                g_object_interface_install_property (<a
1132
1047
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1133
1048
>gpointer</a> g_iface,
1134
 
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *pspec);</pre>
 
1049
                                                         <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *pspec);</pre>
1135
1050
<p>
1136
1051
Add a property to an interface; this is only useful for interfaces
1137
1052
that are added to GObject-derived types. Adding a property to an
1138
1053
interface forces all objects classes with that interface to have a
1139
1054
compatible property. The compatible property could be a newly
1140
 
created <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a>, but normally
1141
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property"><code class="function">g_object_class_override_property()</code></a> will be used so that the object
 
1055
created <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>, but normally
 
1056
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property" title="g_object_class_override_property ()"><code class="function">g_object_class_override_property()</code></a> will be used so that the object
1142
1057
class only needs to provide an implementation and inherits the
1143
1058
property description, default value, bounds, and so forth from the
1144
1059
interface property.
1146
1061
<p>
1147
1062
This function is meant to be called from the interface's default
1148
1063
vtable initialization function (the <em class="parameter"><code>class_init</code></em> member of
1149
 
<a class="link" href="gobject-Type-Information.html#GTypeInfo"><span class="type">GTypeInfo</span></a>.) It must not be called after after <em class="parameter"><code>class_init</code></em> has
1150
 
been called for any object types implementing this interface.
 
1064
<a class="link" href="gobject-Type-Information.html#GTypeInfo" title="GTypeInfo"><span class="type">GTypeInfo</span></a>.) It must not be called after after <em class="parameter"><code>class_init</code></em> has
 
1065
been called for any object types implementing this interface.</p>
 
1066
<p>
1151
1067
</p>
1152
1068
<div class="variablelist"><table border="0">
1153
1069
<col align="left" valign="top">
1154
1070
<tbody>
1155
1071
<tr>
1156
 
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em>&#160;:</span></p></td>
1157
 
<td>any interface vtable for the interface, or the default
 
1072
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
 
1073
<td> any interface vtable for the interface, or the default
1158
1074
 vtable for the interface.
1159
1075
</td>
1160
1076
</tr>
1161
1077
<tr>
1162
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
1163
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for the new property
 
1078
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
1079
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the new property
1164
1080
</td>
1165
1081
</tr>
1166
1082
</tbody>
1167
1083
</table></div>
1168
 
<p class="since">Since 2.4
1169
 
 
1170
 
 
1171
 
</p>
 
1084
<p class="since">Since 2.4</p>
1172
1085
</div>
1173
1086
<hr>
1174
1087
<div class="refsect2" lang="en">
1175
 
<a name="id2861508"></a><h3>
1176
 
<a name="g-object-interface-find-property"></a>g_object_interface_find_property ()</h3>
1177
 
<a class="indexterm" name="id2861524"></a><pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>*         g_object_interface_find_property    (<a
 
1088
<a name="g-object-interface-find-property"></a><h3>g_object_interface_find_property ()</h3>
 
1089
<pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>*         g_object_interface_find_property    (<a
1178
1090
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1179
1091
>gpointer</a> g_iface,
1180
1092
                                                         const <a
1181
1093
href="./../glib/glib/glib-Basic-Types.html#gchar"
1182
1094
>gchar</a> *property_name);</pre>
1183
1095
<p>
1184
 
Find the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> with the given name for an
 
1096
Find the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> with the given name for an
1185
1097
interface. Generally, the interface vtable passed in as <em class="parameter"><code>g_iface</code></em>
1186
 
will be the default vtable from <a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref"><code class="function">g_type_default_interface_ref()</code></a>, or,
 
1098
will be the default vtable from <a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref" title="g_type_default_interface_ref ()"><code class="function">g_type_default_interface_ref()</code></a>, or,
1187
1099
if you know the interface has already been loaded,
1188
 
<a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek"><code class="function">g_type_default_interface_peek()</code></a>.
 
1100
<a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek" title="g_type_default_interface_peek ()"><code class="function">g_type_default_interface_peek()</code></a>.</p>
 
1101
<p>
1189
1102
</p>
1190
1103
<div class="variablelist"><table border="0">
1191
1104
<col align="left" valign="top">
1192
1105
<tbody>
1193
1106
<tr>
1194
 
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em>&#160;:</span></p></td>
1195
 
<td>any interface vtable for the interface, or the default
1196
 
  vtable for the interface
1197
 
</td>
1198
 
</tr>
1199
 
<tr>
1200
 
<td><p><span class="term"><em class="parameter"><code>property_name</code></em>&#160;:</span></p></td>
1201
 
<td>name of a property to lookup.
1202
 
</td>
1203
 
</tr>
1204
 
<tr>
1205
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1206
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> for the property of the
1207
 
  interface with the name <em class="parameter"><code>property_name</code></em>, or <a
1208
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
1209
 
><code class="literal">NULL</code></a>
1210
 
  if no such property exists.
 
1107
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
 
1108
<td> any interface vtable for the interface, or the default
 
1109
 vtable for the interface
 
1110
</td>
 
1111
</tr>
 
1112
<tr>
 
1113
<td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
 
1114
<td> name of a property to lookup.
 
1115
</td>
 
1116
</tr>
 
1117
<tr>
 
1118
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1119
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the property of the interface with the
 
1120
         name <em class="parameter"><code>property_name</code></em>, or <a
 
1121
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
1122
><code class="literal">NULL</code></a> if no such property exists.
1211
1123
</td>
1212
1124
</tr>
1213
1125
</tbody>
1214
1126
</table></div>
1215
 
<p class="since">Since 2.4
1216
 
 
1217
 
 
1218
 
</p>
 
1127
<p class="since">Since 2.4</p>
1219
1128
</div>
1220
1129
<hr>
1221
1130
<div class="refsect2" lang="en">
1222
 
<a name="id2861676"></a><h3>
1223
 
<a name="g-object-interface-list-properties"></a>g_object_interface_list_properties ()</h3>
1224
 
<a class="indexterm" name="id2861693"></a><pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a>**        g_object_interface_list_properties  (<a
 
1131
<a name="g-object-interface-list-properties"></a><h3>g_object_interface_list_properties ()</h3>
 
1132
<pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a>**        g_object_interface_list_properties  (<a
1225
1133
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1226
1134
>gpointer</a> g_iface,
1227
1135
                                                         <a
1230
1138
<p>
1231
1139
Lists the properties of an interface.Generally, the interface
1232
1140
vtable passed in as <em class="parameter"><code>g_iface</code></em> will be the default vtable from
1233
 
<a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref"><code class="function">g_type_default_interface_ref()</code></a>, or, if you know the interface has
1234
 
already been loaded, <a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek"><code class="function">g_type_default_interface_peek()</code></a>.
 
1141
<a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref" title="g_type_default_interface_ref ()"><code class="function">g_type_default_interface_ref()</code></a>, or, if you know the interface has
 
1142
already been loaded, <a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek" title="g_type_default_interface_peek ()"><code class="function">g_type_default_interface_peek()</code></a>.</p>
 
1143
<p>
1235
1144
</p>
1236
1145
<div class="variablelist"><table border="0">
1237
1146
<col align="left" valign="top">
1238
1147
<tbody>
1239
1148
<tr>
1240
 
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em>&#160;:</span></p></td>
1241
 
<td>any interface vtable for the interface, or the default
 
1149
<td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
 
1150
<td> any interface vtable for the interface, or the default
1242
1151
 vtable for the interface
1243
1152
</td>
1244
1153
</tr>
1245
1154
<tr>
1246
 
<td><p><span class="term"><em class="parameter"><code>n_properties_p</code></em>&#160;:</span></p></td>
1247
 
<td>location to store number of properties returned.
 
1155
<td><p><span class="term"><em class="parameter"><code>n_properties_p</code></em> :</span></p></td>
 
1156
<td> location to store number of properties returned.
1248
1157
</td>
1249
1158
</tr>
1250
1159
<tr>
1251
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1252
 
<td>a pointer to an array of pointers to <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> structures.
1253
 
  The paramspecs are owned by GLib, but the array should
1254
 
  be freed with <a
 
1160
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1161
<td> a pointer to an array of pointers to <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>
 
1162
         structures. The paramspecs are owned by GLib, but the
 
1163
         array should be freed with <a
1255
1164
href="./../glib/glib/glib-Memory-Allocation.html#g-free"
1256
 
><code class="function">g_free()</code></a> when you are done with it.
 
1165
><code class="function">g_free()</code></a> when you are done with
 
1166
         it.
1257
1167
</td>
1258
1168
</tr>
1259
1169
</tbody>
1260
1170
</table></div>
1261
 
<p class="since">Since 2.4
1262
 
 
1263
 
 
1264
 
</p>
 
1171
<p class="since">Since 2.4</p>
1265
1172
</div>
1266
1173
<hr>
1267
1174
<div class="refsect2" lang="en">
1268
 
<a name="id2861831"></a><h3>
1269
 
<a name="g-object-new"></a>g_object_new ()</h3>
1270
 
<a class="indexterm" name="id2861844"></a><pre class="programlisting"><a
 
1175
<a name="g-object-new"></a><h3>g_object_new ()</h3>
 
1176
<pre class="programlisting"><a
1271
1177
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1272
 
>gpointer</a>            g_object_new                        (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
 
1178
>gpointer</a>            g_object_new                        (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
1273
1179
                                                         const <a
1274
1180
href="./../glib/glib/glib-Basic-Types.html#gchar"
1275
1181
>gchar</a> *first_property_name,
1278
1184
Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
1279
1185
</p>
1280
1186
<p>
1281
 
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>) 
1282
 
which are not explicitly specified are set to their default values.
 
1187
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT--CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY--CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
 
1188
which are not explicitly specified are set to their default values.</p>
 
1189
<p>
1283
1190
</p>
1284
1191
<div class="variablelist"><table border="0">
1285
1192
<col align="left" valign="top">
1286
1193
<tbody>
1287
1194
<tr>
1288
 
<td><p><span class="term"><em class="parameter"><code>object_type</code></em>&#160;:</span></p></td>
1289
 
<td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
1290
 
</td>
1291
 
</tr>
1292
 
<tr>
1293
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
1294
 
<td>the name of the first property
1295
 
</td>
1296
 
</tr>
1297
 
<tr>
1298
 
<td><p><span class="term"><em class="parameter"><code>...</code></em>&#160;:</span></p></td>
1299
 
<td>the value of the first property, followed optionally by more
1300
 
     name/value pairs, followed by <a
1301
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
1195
<td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
 
1196
<td> the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
 
1197
</td>
 
1198
</tr>
 
1199
<tr>
 
1200
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
1201
<td> the name of the first property
 
1202
</td>
 
1203
</tr>
 
1204
<tr>
 
1205
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
 
1206
<td> the value of the first property, followed optionally by more
 
1207
 name/value pairs, followed by <a
 
1208
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
1302
1209
><code class="literal">NULL</code></a>
1303
1210
</td>
1304
1211
</tr>
1305
1212
<tr>
1306
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1307
 
<td>a new instance of <em class="parameter"><code>object_type</code></em>
1308
 
 
1309
 
 
 
1213
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1214
<td> a new instance of <em class="parameter"><code>object_type</code></em>
1310
1215
</td>
1311
1216
</tr>
1312
1217
</tbody>
1314
1219
</div>
1315
1220
<hr>
1316
1221
<div class="refsect2" lang="en">
1317
 
<a name="id2861998"></a><h3>
1318
 
<a name="g-object-newv"></a>g_object_newv ()</h3>
1319
 
<a class="indexterm" name="id2862010"></a><pre class="programlisting"><a
 
1222
<a name="g-object-newv"></a><h3>g_object_newv ()</h3>
 
1223
<pre class="programlisting"><a
1320
1224
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1321
 
>gpointer</a>            g_object_newv                       (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
 
1225
>gpointer</a>            g_object_newv                       (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
1322
1226
                                                         <a
1323
1227
href="./../glib/glib/glib-Basic-Types.html#guint"
1324
1228
>guint</a> n_parameters,
1325
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GParameter">GParameter</a> *parameters);</pre>
 
1229
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter">GParameter</a> *parameters);</pre>
1326
1230
<p>
1327
1231
Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
1328
1232
</p>
1329
1233
<p>
1330
 
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>) 
1331
 
which are not explicitly specified are set to their default values.
 
1234
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT--CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY--CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
 
1235
which are not explicitly specified are set to their default values.</p>
 
1236
<p>
1332
1237
</p>
1333
1238
<div class="variablelist"><table border="0">
1334
1239
<col align="left" valign="top">
1335
1240
<tbody>
1336
1241
<tr>
1337
 
<td><p><span class="term"><em class="parameter"><code>object_type</code></em>&#160;:</span></p></td>
1338
 
<td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
1339
 
</td>
1340
 
</tr>
1341
 
<tr>
1342
 
<td><p><span class="term"><em class="parameter"><code>n_parameters</code></em>&#160;:</span></p></td>
1343
 
<td>the length of the <em class="parameter"><code>parameters</code></em> array
1344
 
</td>
1345
 
</tr>
1346
 
<tr>
1347
 
<td><p><span class="term"><em class="parameter"><code>parameters</code></em>&#160;:</span></p></td>
1348
 
<td>an array of <a class="link" href="gobject-The-Base-Object-Type.html#GParameter"><span class="type">GParameter</span></a>
1349
 
</td>
1350
 
</tr>
1351
 
<tr>
1352
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1353
 
<td>a new instance of <em class="parameter"><code>object_type</code></em>
1354
 
 
1355
 
 
 
1242
<td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
 
1243
<td> the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
 
1244
</td>
 
1245
</tr>
 
1246
<tr>
 
1247
<td><p><span class="term"><em class="parameter"><code>n_parameters</code></em> :</span></p></td>
 
1248
<td> the length of the <em class="parameter"><code>parameters</code></em> array
 
1249
</td>
 
1250
</tr>
 
1251
<tr>
 
1252
<td><p><span class="term"><em class="parameter"><code>parameters</code></em> :</span></p></td>
 
1253
<td> an array of <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter"><span class="type">GParameter</span></a>
 
1254
</td>
 
1255
</tr>
 
1256
<tr>
 
1257
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1258
<td> a new instance of <em class="parameter"><code>object_type</code></em>
1356
1259
</td>
1357
1260
</tr>
1358
1261
</tbody>
1360
1263
</div>
1361
1264
<hr>
1362
1265
<div class="refsect2" lang="en">
1363
 
<a name="id2862170"></a><h3>
1364
 
<a name="GParameter"></a>GParameter</h3>
1365
 
<a class="indexterm" name="id2862183"></a><pre class="programlisting">typedef struct {
 
1266
<a name="GParameter"></a><h3>GParameter</h3>
 
1267
<pre class="programlisting">typedef struct {
1366
1268
  const gchar *name;
1367
1269
  GValue       value;
1368
1270
} GParameter;
1369
1271
</pre>
1370
1272
<p>
1371
1273
The <span class="structname">GParameter</span> struct is an auxiliary structure used
1372
 
to hand parameter name/value pairs to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv"><code class="function">g_object_newv()</code></a>.
 
1274
to hand parameter name/value pairs to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv" title="g_object_newv ()"><code class="function">g_object_newv()</code></a>.</p>
 
1275
<p>
1373
1276
</p>
1374
1277
<div class="variablelist"><table border="0">
1375
1278
<col align="left" valign="top">
1376
1279
<tbody>
1377
1280
<tr>
1378
 
<td><p><span class="term">const&#160;<a
 
1281
<td><p><span class="term">const <a
1379
1282
href="./../glib/glib/glib-Basic-Types.html#gchar"
1380
 
>gchar</a>&#160;*<em class="structfield"><code>name</code></em>;</span></p></td>
1381
 
<td>the parameter name
 
1283
>gchar</a> *<em class="structfield"><code>name</code></em>;</span></p></td>
 
1284
<td> the parameter name
1382
1285
</td>
1383
1286
</tr>
1384
1287
<tr>
1385
 
<td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue">GValue</a>&#160;<em class="structfield"><code>value</code></em>;</span></p></td>
1386
 
<td>the parameter value
1387
 
 
 
1288
<td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> <em class="structfield"><code>value</code></em>;</span></p></td>
 
1289
<td> the parameter value
1388
1290
</td>
1389
1291
</tr>
1390
1292
</tbody>
1392
1294
</div>
1393
1295
<hr>
1394
1296
<div class="refsect2" lang="en">
1395
 
<a name="id2862261"></a><h3>
1396
 
<a name="g-object-ref"></a>g_object_ref ()</h3>
1397
 
<a class="indexterm" name="id2862274"></a><pre class="programlisting"><a
 
1297
<a name="g-object-ref"></a><h3>g_object_ref ()</h3>
 
1298
<pre class="programlisting"><a
1398
1299
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1399
1300
>gpointer</a>            g_object_ref                        (<a
1400
1301
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1401
1302
>gpointer</a> object);</pre>
1402
1303
<p>
1403
 
Increases the reference count of <em class="parameter"><code>object</code></em>.
 
1304
Increases the reference count of <em class="parameter"><code>object</code></em>.</p>
 
1305
<p>
1404
1306
</p>
1405
1307
<div class="variablelist"><table border="0">
1406
1308
<col align="left" valign="top">
1407
1309
<tbody>
1408
1310
<tr>
1409
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1410
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1311
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1312
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1411
1313
</td>
1412
1314
</tr>
1413
1315
<tr>
1414
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1415
 
<td>the same <em class="parameter"><code>object</code></em>
1416
 
 
1417
 
 
 
1316
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1317
<td> the same <em class="parameter"><code>object</code></em>
1418
1318
</td>
1419
1319
</tr>
1420
1320
</tbody>
1422
1322
</div>
1423
1323
<hr>
1424
1324
<div class="refsect2" lang="en">
1425
 
<a name="id2862350"></a><h3>
1426
 
<a name="g-object-unref"></a>g_object_unref ()</h3>
1427
 
<a class="indexterm" name="id2862363"></a><pre class="programlisting">void                g_object_unref                      (<a
 
1325
<a name="g-object-unref"></a><h3>g_object_unref ()</h3>
 
1326
<pre class="programlisting">void                g_object_unref                      (<a
1428
1327
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1429
1328
>gpointer</a> object);</pre>
1430
1329
<p>
1431
 
Decreases the reference count of <em class="parameter"><code>object</code></em>.
1432
 
When its reference count drops to 0, the object is finalized 
1433
 
(i.e. its memory is freed).
 
1330
Decreases the reference count of <em class="parameter"><code>object</code></em>. When its reference count
 
1331
drops to 0, the object is finalized (i.e. its memory is freed).</p>
 
1332
<p>
1434
1333
</p>
1435
1334
<div class="variablelist"><table border="0">
1436
1335
<col align="left" valign="top">
1437
1336
<tbody><tr>
1438
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1439
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1440
 
 
1441
 
 
 
1337
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1338
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1442
1339
</td>
1443
1340
</tr></tbody>
1444
1341
</table></div>
1445
1342
</div>
1446
1343
<hr>
1447
1344
<div class="refsect2" lang="en">
1448
 
<a name="id2862425"></a><h3>
1449
 
<a name="g-object-ref-sink"></a>g_object_ref_sink ()</h3>
1450
 
<a class="indexterm" name="id2862440"></a><pre class="programlisting"><a
 
1345
<a name="g-object-ref-sink"></a><h3>g_object_ref_sink ()</h3>
 
1346
<pre class="programlisting"><a
1451
1347
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1452
1348
>gpointer</a>            g_object_ref_sink                   (<a
1453
1349
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1454
1350
>gpointer</a> object);</pre>
1455
1351
<p>
1456
 
Increase the reference count of <em class="parameter"><code>object</code></em>, and possibly remove the 
 
1352
Increase the reference count of <em class="parameter"><code>object</code></em>, and possibly remove the
1457
1353
<a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a> reference, if <em class="parameter"><code>object</code></em>
1458
1354
has a floating reference.
1459
1355
</p>
1460
1356
<p>
1461
 
In other words, if the object is floating, then this call "assumes 
1462
 
ownership" of the floating reference, converting it to a normal reference 
1463
 
by clearing the floating flag while leaving the reference count unchanged. 
1464
 
If the object is not floating, then this call adds a new normal reference 
1465
 
increasing the reference count by one.
 
1357
In other words, if the object is floating, then this call "assumes
 
1358
ownership" of the floating reference, converting it to a normal
 
1359
reference by clearing the floating flag while leaving the reference
 
1360
count unchanged.  If the object is not floating, then this call
 
1361
adds a new normal reference increasing the reference count by one.</p>
 
1362
<p>
1466
1363
</p>
1467
1364
<div class="variablelist"><table border="0">
1468
1365
<col align="left" valign="top">
1469
1366
<tbody>
1470
1367
<tr>
1471
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1472
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1368
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1369
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1473
1370
</td>
1474
1371
</tr>
1475
1372
<tr>
1476
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1477
 
<td>
1478
 
<em class="parameter"><code>object</code></em>
 
1373
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1374
<td> <em class="parameter"><code>object</code></em>
1479
1375
</td>
1480
1376
</tr>
1481
1377
</tbody>
1482
1378
</table></div>
1483
 
<p class="since">Since 2.10
1484
 
 
1485
 
 
1486
 
</p>
 
1379
<p class="since">Since 2.10</p>
1487
1380
</div>
1488
1381
<hr>
1489
1382
<div class="refsect2" lang="en">
1490
 
<a name="id2862546"></a><h3>
1491
 
<a name="GInitiallyUnowned"></a>GInitiallyUnowned</h3>
1492
 
<a class="indexterm" name="id2862558"></a><pre class="programlisting">typedef struct _GObject                  GInitiallyUnowned;
 
1383
<a name="GInitiallyUnowned"></a><h3>GInitiallyUnowned</h3>
 
1384
<pre class="programlisting">typedef struct _GObject                  GInitiallyUnowned;
1493
1385
</pre>
1494
1386
<p>
1495
1387
All the fields in the <span class="structname">GInitiallyUnowned</span> structure 
1496
 
are private to the <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> implementation and should never be 
1497
 
accessed directly.
1498
 
</p>
1499
 
</div>
1500
 
<hr>
1501
 
<div class="refsect2" lang="en">
1502
 
<a name="id2862588"></a><h3>
1503
 
<a name="GInitiallyUnownedClass"></a>GInitiallyUnownedClass</h3>
1504
 
<a class="indexterm" name="id2862601"></a><pre class="programlisting">typedef struct _GObjectClass             GInitiallyUnownedClass;
1505
 
</pre>
1506
 
<p>
1507
 
The class structure for the <span class="structname">GInitiallyUnowned</span> type.
1508
 
</p>
1509
 
</div>
1510
 
<hr>
1511
 
<div class="refsect2" lang="en">
1512
 
<a name="id2862622"></a><h3>
1513
 
<a name="G-TYPE-INITIALLY-UNOWNED:CAPS"></a>G_TYPE_INITIALLY_UNOWNED</h3>
1514
 
<a class="indexterm" name="id2862636"></a><pre class="programlisting">#define G_TYPE_INITIALLY_UNOWNED        (g_initially_unowned_get_type())
1515
 
</pre>
1516
 
<p>
1517
 
The type for <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>.
1518
 
</p>
1519
 
</div>
1520
 
<hr>
1521
 
<div class="refsect2" lang="en">
1522
 
<a name="id2862661"></a><h3>
1523
 
<a name="g-object-is-floating"></a>g_object_is_floating ()</h3>
1524
 
<a class="indexterm" name="id2862676"></a><pre class="programlisting"><a
 
1388
are private to the <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> implementation and should never be 
 
1389
accessed directly.</p>
 
1390
<p>
 
1391
</p>
 
1392
</div>
 
1393
<hr>
 
1394
<div class="refsect2" lang="en">
 
1395
<a name="GInitiallyUnownedClass"></a><h3>GInitiallyUnownedClass</h3>
 
1396
<pre class="programlisting">typedef struct _GObjectClass             GInitiallyUnownedClass;
 
1397
</pre>
 
1398
<p>
 
1399
The class structure for the <span class="structname">GInitiallyUnowned</span> type.</p>
 
1400
<p>
 
1401
</p>
 
1402
</div>
 
1403
<hr>
 
1404
<div class="refsect2" lang="en">
 
1405
<a name="G-TYPE-INITIALLY-UNOWNED--CAPS"></a><h3>G_TYPE_INITIALLY_UNOWNED</h3>
 
1406
<pre class="programlisting">#define G_TYPE_INITIALLY_UNOWNED          (g_initially_unowned_get_type())
 
1407
</pre>
 
1408
<p>
 
1409
The type for <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>.</p>
 
1410
<p>
 
1411
</p>
 
1412
</div>
 
1413
<hr>
 
1414
<div class="refsect2" lang="en">
 
1415
<a name="g-object-is-floating"></a><h3>g_object_is_floating ()</h3>
 
1416
<pre class="programlisting"><a
1525
1417
href="./../glib/glib/glib-Basic-Types.html#gboolean"
1526
1418
>gboolean</a>            g_object_is_floating                (<a
1527
1419
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1528
1420
>gpointer</a> object);</pre>
1529
1421
<p>
1530
1422
Checks wether <em class="parameter"><code>object</code></em> has a <a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a>
1531
 
reference.
 
1423
reference.</p>
 
1424
<p>
1532
1425
</p>
1533
1426
<div class="variablelist"><table border="0">
1534
1427
<col align="left" valign="top">
1535
1428
<tbody>
1536
1429
<tr>
1537
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1538
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1430
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1431
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1539
1432
</td>
1540
1433
</tr>
1541
1434
<tr>
1542
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1543
 
<td>
1544
 
<a
1545
 
href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"
 
1435
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1436
<td> <a
 
1437
href="./../glib/glib/glib-Standard-Macros.html#TRUE--CAPS"
1546
1438
><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em> has a floating reference
1547
1439
</td>
1548
1440
</tr>
1549
1441
</tbody>
1550
1442
</table></div>
1551
 
<p class="since">Since 2.10
1552
 
 
1553
 
 
1554
 
</p>
 
1443
<p class="since">Since 2.10</p>
1555
1444
</div>
1556
1445
<hr>
1557
1446
<div class="refsect2" lang="en">
1558
 
<a name="id2862776"></a><h3>
1559
 
<a name="g-object-force-floating"></a>g_object_force_floating ()</h3>
1560
 
<a class="indexterm" name="id2862792"></a><pre class="programlisting">void                g_object_force_floating             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
 
1447
<a name="g-object-force-floating"></a><h3>g_object_force_floating ()</h3>
 
1448
<pre class="programlisting">void                g_object_force_floating             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
1561
1449
<p>
1562
1450
This function is intended for <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> implementations to re-enforce a
1563
1451
<a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a> object reference.
1564
1452
Doing this is seldomly required, all
1565
 
<a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>s are created with a floating reference which 
1566
 
usually just needs to be sunken by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink"><code class="function">g_object_ref_sink()</code></a>.
 
1453
<a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>s are created with a floating reference which
 
1454
usually just needs to be sunken by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a>.</p>
 
1455
<p>
1567
1456
</p>
1568
1457
<div class="variablelist"><table border="0">
1569
1458
<col align="left" valign="top">
1570
1459
<tbody><tr>
1571
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1572
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1460
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1461
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1573
1462
</td>
1574
1463
</tr></tbody>
1575
1464
</table></div>
1576
 
<p class="since">Since 2.10
1577
 
 
1578
 
 
1579
 
</p>
 
1465
<p class="since">Since 2.10</p>
1580
1466
</div>
1581
1467
<hr>
1582
1468
<div class="refsect2" lang="en">
1583
 
<a name="id2862891"></a><h3>
1584
 
<a name="GWeakNotify"></a>GWeakNotify ()</h3>
1585
 
<a class="indexterm" name="id2862904"></a><pre class="programlisting">void                (*GWeakNotify)                      (<a
 
1469
<a name="GWeakNotify"></a><h3>GWeakNotify ()</h3>
 
1470
<pre class="programlisting">void                (*GWeakNotify)                      (<a
1586
1471
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1587
1472
>gpointer</a> data,
1588
1473
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *where_the_object_was);</pre>
1589
1474
<p>
1590
 
A <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify"><span class="type">GWeakNotify</span></a> function can be added to an object as a callback that gets
 
1475
A <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> function can be added to an object as a callback that gets
1591
1476
triggered when the object is finalized. Since the object is already being
1592
 
finalized when the <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify"><span class="type">GWeakNotify</span></a> is called, there's not much you could do 
1593
 
with the object, apart from e.g. using its adress as hash-index or the like. 
1594
 
</p>
1595
 
<div class="variablelist"><table border="0">
1596
 
<col align="left" valign="top">
1597
 
<tbody>
1598
 
<tr>
1599
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1600
 
<td>data that was provided when the weak reference was established
1601
 
</td>
1602
 
</tr>
1603
 
<tr>
1604
 
<td><p><span class="term"><em class="parameter"><code>where_the_object_was</code></em>&#160;:</span></p></td>
1605
 
<td>the object being finalized
1606
 
 
1607
 
 
1608
 
</td>
1609
 
</tr>
1610
 
</tbody>
1611
 
</table></div>
1612
 
</div>
1613
 
<hr>
1614
 
<div class="refsect2" lang="en">
1615
 
<a name="id2862994"></a><h3>
1616
 
<a name="g-object-weak-ref"></a>g_object_weak_ref ()</h3>
1617
 
<a class="indexterm" name="id2863007"></a><pre class="programlisting">void                g_object_weak_ref                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1618
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify">GWeakNotify</a> notify,
1619
 
                                                         <a
1620
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1621
 
>gpointer</a> data);</pre>
1622
 
<p>
1623
 
Adds a weak reference callback to an object. Weak references are used for
1624
 
notification when an object is finalized. They are called "weak references" 
1625
 
because they allow you to safely hold a pointer to an object without calling 
1626
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> (<a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> adds a strong reference, that is, forces the 
1627
 
object to stay alive).
1628
 
</p>
1629
 
<div class="variablelist"><table border="0">
1630
 
<col align="left" valign="top">
1631
 
<tbody>
1632
 
<tr>
1633
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1634
 
<td>
1635
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to reference weakly
1636
 
</td>
1637
 
</tr>
1638
 
<tr>
1639
 
<td><p><span class="term"><em class="parameter"><code>notify</code></em>&#160;:</span></p></td>
1640
 
<td>callback to invoke before the object is freed
1641
 
</td>
1642
 
</tr>
1643
 
<tr>
1644
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1645
 
<td>extra data to pass to notify
1646
 
 
1647
 
 
1648
 
</td>
1649
 
</tr>
1650
 
</tbody>
1651
 
</table></div>
1652
 
</div>
1653
 
<hr>
1654
 
<div class="refsect2" lang="en">
1655
 
<a name="id2863130"></a><h3>
1656
 
<a name="g-object-weak-unref"></a>g_object_weak_unref ()</h3>
1657
 
<a class="indexterm" name="id2863144"></a><pre class="programlisting">void                g_object_weak_unref                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1658
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify">GWeakNotify</a> notify,
1659
 
                                                         <a
1660
 
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1661
 
>gpointer</a> data);</pre>
1662
 
<p>
1663
 
Removes a weak reference callback to an object.
1664
 
</p>
1665
 
<div class="variablelist"><table border="0">
1666
 
<col align="left" valign="top">
1667
 
<tbody>
1668
 
<tr>
1669
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1670
 
<td>
1671
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to remove a weak reference from
1672
 
</td>
1673
 
</tr>
1674
 
<tr>
1675
 
<td><p><span class="term"><em class="parameter"><code>notify</code></em>&#160;:</span></p></td>
1676
 
<td>callback to search for
1677
 
</td>
1678
 
</tr>
1679
 
<tr>
1680
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1681
 
<td>data to search for
1682
 
 
1683
 
 
1684
 
</td>
1685
 
</tr>
1686
 
</tbody>
1687
 
</table></div>
1688
 
</div>
1689
 
<hr>
1690
 
<div class="refsect2" lang="en">
1691
 
<a name="id2863242"></a><h3>
1692
 
<a name="g-object-add-weak-pointer"></a>g_object_add_weak_pointer ()</h3>
1693
 
<a class="indexterm" name="id2863255"></a><pre class="programlisting">void                g_object_add_weak_pointer           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1477
finalized when the <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> is called, there's not much you could do 
 
1478
with the object, apart from e.g. using its adress as hash-index or the like.</p>
 
1479
<p>
 
1480
</p>
 
1481
<div class="variablelist"><table border="0">
 
1482
<col align="left" valign="top">
 
1483
<tbody>
 
1484
<tr>
 
1485
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1486
<td> data that was provided when the weak reference was established
 
1487
</td>
 
1488
</tr>
 
1489
<tr>
 
1490
<td><p><span class="term"><em class="parameter"><code>where_the_object_was</code></em> :</span></p></td>
 
1491
<td> the object being finalized
 
1492
</td>
 
1493
</tr>
 
1494
</tbody>
 
1495
</table></div>
 
1496
</div>
 
1497
<hr>
 
1498
<div class="refsect2" lang="en">
 
1499
<a name="g-object-weak-ref"></a><h3>g_object_weak_ref ()</h3>
 
1500
<pre class="programlisting">void                g_object_weak_ref                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1501
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">GWeakNotify</a> notify,
 
1502
                                                         <a
 
1503
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
1504
>gpointer</a> data);</pre>
 
1505
<p>
 
1506
Adds a weak reference callback to an object. Weak references are
 
1507
used for notification when an object is finalized. They are called
 
1508
"weak references" because they allow you to safely hold a pointer
 
1509
to an object without calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> (<a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> adds a
 
1510
strong reference, that is, forces the object to stay alive).</p>
 
1511
<p>
 
1512
</p>
 
1513
<div class="variablelist"><table border="0">
 
1514
<col align="left" valign="top">
 
1515
<tbody>
 
1516
<tr>
 
1517
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1518
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to reference weakly
 
1519
</td>
 
1520
</tr>
 
1521
<tr>
 
1522
<td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
 
1523
<td> callback to invoke before the object is freed
 
1524
</td>
 
1525
</tr>
 
1526
<tr>
 
1527
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1528
<td> extra data to pass to notify
 
1529
</td>
 
1530
</tr>
 
1531
</tbody>
 
1532
</table></div>
 
1533
</div>
 
1534
<hr>
 
1535
<div class="refsect2" lang="en">
 
1536
<a name="g-object-weak-unref"></a><h3>g_object_weak_unref ()</h3>
 
1537
<pre class="programlisting">void                g_object_weak_unref                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1538
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">GWeakNotify</a> notify,
 
1539
                                                         <a
 
1540
href="./../glib/glib/glib-Basic-Types.html#gpointer"
 
1541
>gpointer</a> data);</pre>
 
1542
<p>
 
1543
Removes a weak reference callback to an object.</p>
 
1544
<p>
 
1545
</p>
 
1546
<div class="variablelist"><table border="0">
 
1547
<col align="left" valign="top">
 
1548
<tbody>
 
1549
<tr>
 
1550
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1551
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to remove a weak reference from
 
1552
</td>
 
1553
</tr>
 
1554
<tr>
 
1555
<td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
 
1556
<td> callback to search for
 
1557
</td>
 
1558
</tr>
 
1559
<tr>
 
1560
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1561
<td> data to search for
 
1562
</td>
 
1563
</tr>
 
1564
</tbody>
 
1565
</table></div>
 
1566
</div>
 
1567
<hr>
 
1568
<div class="refsect2" lang="en">
 
1569
<a name="g-object-add-weak-pointer"></a><h3>g_object_add_weak_pointer ()</h3>
 
1570
<pre class="programlisting">void                g_object_add_weak_pointer           (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1694
1571
                                                         <a
1695
1572
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1696
1573
>gpointer</a> *weak_pointer_location);</pre>
1697
1574
<p>
1698
1575
Adds a weak reference from weak_pointer to <em class="parameter"><code>object</code></em> to indicate that
1699
 
the pointer located at <em class="parameter"><code>weak_pointer_location</code></em> is only valid during the 
1700
 
lifetime of <em class="parameter"><code>object</code></em>. When the <em class="parameter"><code>object</code></em> is finalized, <em class="parameter"><code>weak_pointer</code></em> will 
1701
 
be set to <a
1702
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
1703
 
><code class="literal">NULL</code></a>.
 
1576
the pointer located at <em class="parameter"><code>weak_pointer_location</code></em> is only valid during
 
1577
the lifetime of <em class="parameter"><code>object</code></em>. When the <em class="parameter"><code>object</code></em> is finalized,
 
1578
<em class="parameter"><code>weak_pointer</code></em> will be set to <a
 
1579
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
1580
><code class="literal">NULL</code></a>.</p>
 
1581
<p>
1704
1582
</p>
1705
1583
<div class="variablelist"><table border="0">
1706
1584
<col align="left" valign="top">
1707
1585
<tbody>
1708
1586
<tr>
1709
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1710
 
<td>The object that should be weak referenced.
 
1587
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1588
<td> The object that should be weak referenced.
1711
1589
</td>
1712
1590
</tr>
1713
1591
<tr>
1714
 
<td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em>&#160;:</span></p></td>
1715
 
<td>The memory address of a pointer.
1716
 
 
1717
 
 
 
1592
<td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em> :</span></p></td>
 
1593
<td> The memory address of a pointer.
1718
1594
</td>
1719
1595
</tr>
1720
1596
</tbody>
1722
1598
</div>
1723
1599
<hr>
1724
1600
<div class="refsect2" lang="en">
1725
 
<a name="id2863367"></a><h3>
1726
 
<a name="g-object-remove-weak-pointer"></a>g_object_remove_weak_pointer ()</h3>
1727
 
<a class="indexterm" name="id2863380"></a><pre class="programlisting">void                g_object_remove_weak_pointer        (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1601
<a name="g-object-remove-weak-pointer"></a><h3>g_object_remove_weak_pointer ()</h3>
 
1602
<pre class="programlisting">void                g_object_remove_weak_pointer        (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1728
1603
                                                         <a
1729
1604
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1730
1605
>gpointer</a> *weak_pointer_location);</pre>
1731
1606
<p>
1732
1607
Removes a weak reference from <em class="parameter"><code>object</code></em> that was previously added
1733
 
using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer"><code class="function">g_object_add_weak_pointer()</code></a>. The <em class="parameter"><code>weak_pointer_location</code></em> has
1734
 
to match the one used with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer"><code class="function">g_object_add_weak_pointer()</code></a>.
 
1608
using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()"><code class="function">g_object_add_weak_pointer()</code></a>. The <em class="parameter"><code>weak_pointer_location</code></em> has
 
1609
to match the one used with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()"><code class="function">g_object_add_weak_pointer()</code></a>.</p>
 
1610
<p>
1735
1611
</p>
1736
1612
<div class="variablelist"><table border="0">
1737
1613
<col align="left" valign="top">
1738
1614
<tbody>
1739
1615
<tr>
1740
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1741
 
<td>The object that is weak referenced.
 
1616
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1617
<td> The object that is weak referenced.
1742
1618
</td>
1743
1619
</tr>
1744
1620
<tr>
1745
 
<td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em>&#160;:</span></p></td>
1746
 
<td>The memory address of a pointer.
1747
 
 
1748
 
 
 
1621
<td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em> :</span></p></td>
 
1622
<td> The memory address of a pointer.
1749
1623
</td>
1750
1624
</tr>
1751
1625
</tbody>
1753
1627
</div>
1754
1628
<hr>
1755
1629
<div class="refsect2" lang="en">
1756
 
<a name="id2863485"></a><h3>
1757
 
<a name="GToggleNotify"></a>GToggleNotify ()</h3>
1758
 
<a class="indexterm" name="id2863498"></a><pre class="programlisting">void                (*GToggleNotify)                    (<a
 
1630
<a name="GToggleNotify"></a><h3>GToggleNotify ()</h3>
 
1631
<pre class="programlisting">void                (*GToggleNotify)                    (<a
1759
1632
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1760
1633
>gpointer</a> data,
1761
1634
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1764
1637
>gboolean</a> is_last_ref);</pre>
1765
1638
<p>
1766
1639
A callback function used for notification when the state
1767
 
of a toggle reference changes. See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref"><code class="function">g_object_add_toggle_ref()</code></a>.
 
1640
of a toggle reference changes. See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>.</p>
 
1641
<p>
1768
1642
</p>
1769
1643
<div class="variablelist"><table border="0">
1770
1644
<col align="left" valign="top">
1771
1645
<tbody>
1772
1646
<tr>
1773
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1774
 
<td>Callback data passed to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref"><code class="function">g_object_add_toggle_ref()</code></a>
1775
 
</td>
1776
 
</tr>
1777
 
<tr>
1778
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1779
 
<td>The object on which <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref"><code class="function">g_object_add_toggle_ref()</code></a> was called.
1780
 
</td>
1781
 
</tr>
1782
 
<tr>
1783
 
<td><p><span class="term"><em class="parameter"><code>is_last_ref</code></em>&#160;:</span></p></td>
1784
 
<td>
1785
 
<a
1786
 
href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"
 
1647
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1648
<td> Callback data passed to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>
 
1649
</td>
 
1650
</tr>
 
1651
<tr>
 
1652
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1653
<td> The object on which <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a> was called.
 
1654
</td>
 
1655
</tr>
 
1656
<tr>
 
1657
<td><p><span class="term"><em class="parameter"><code>is_last_ref</code></em> :</span></p></td>
 
1658
<td> <a
 
1659
href="./../glib/glib/glib-Standard-Macros.html#TRUE--CAPS"
1787
1660
><code class="literal">TRUE</code></a> if the toggle reference is now the
1788
 
  last reference to the object. <a
1789
 
href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"
 
1661
 last reference to the object. <a
 
1662
href="./../glib/glib/glib-Standard-Macros.html#FALSE--CAPS"
1790
1663
><code class="literal">FALSE</code></a> if the toggle
1791
 
  reference was the last reference and there are now other
1792
 
  references.
1793
 
 
1794
 
 
 
1664
 reference was the last reference and there are now other
 
1665
 references.
1795
1666
</td>
1796
1667
</tr>
1797
1668
</tbody>
1799
1670
</div>
1800
1671
<hr>
1801
1672
<div class="refsect2" lang="en">
1802
 
<a name="id2863644"></a><h3>
1803
 
<a name="g-object-add-toggle-ref"></a>g_object_add_toggle_ref ()</h3>
1804
 
<a class="indexterm" name="id2863660"></a><pre class="programlisting">void                g_object_add_toggle_ref             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1805
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify">GToggleNotify</a> notify,
 
1673
<a name="g-object-add-toggle-ref"></a><h3>g_object_add_toggle_ref ()</h3>
 
1674
<pre class="programlisting">void                g_object_add_toggle_ref             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1675
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">GToggleNotify</a> notify,
1806
1676
                                                         <a
1807
1677
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1808
1678
>gpointer</a> data);</pre>
1816
1686
This functionality is intended for binding <em class="parameter"><code>object</code></em> to a proxy
1817
1687
object managed by another memory manager. This is done with two
1818
1688
paired references: the strong reference added by
1819
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref"><code class="function">g_object_add_toggle_ref()</code></a> and a reverse reference to the proxy
 
1689
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a> and a reverse reference to the proxy
1820
1690
object which is either a strong reference or weak reference.
1821
1691
</p>
1822
1692
<p>
1838
1708
however if there are multiple toggle references to an object, none
1839
1709
of them will ever be notified until all but one are removed.  For
1840
1710
this reason, you should only ever use a toggle reference if there
1841
 
is important state in the proxy object.
 
1711
is important state in the proxy object.</p>
 
1712
<p>
1842
1713
</p>
1843
1714
<div class="variablelist"><table border="0">
1844
1715
<col align="left" valign="top">
1845
1716
<tbody>
1846
1717
<tr>
1847
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1848
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1849
 
</td>
1850
 
</tr>
1851
 
<tr>
1852
 
<td><p><span class="term"><em class="parameter"><code>notify</code></em>&#160;:</span></p></td>
1853
 
<td>a function to call when this reference is the
1854
 
  last reference to the object, or is no longer
1855
 
  the last reference.
1856
 
</td>
1857
 
</tr>
1858
 
<tr>
1859
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1860
 
<td>data to pass to <em class="parameter"><code>notify</code></em>
 
1718
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1719
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1720
</td>
 
1721
</tr>
 
1722
<tr>
 
1723
<td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
 
1724
<td> a function to call when this reference is the
 
1725
 last reference to the object, or is no longer
 
1726
 the last reference.
 
1727
</td>
 
1728
</tr>
 
1729
<tr>
 
1730
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1731
<td> data to pass to <em class="parameter"><code>notify</code></em>
1861
1732
</td>
1862
1733
</tr>
1863
1734
</tbody>
1864
1735
</table></div>
1865
 
<p class="since">Since 2.8
1866
 
 
1867
 
 
1868
 
</p>
 
1736
<p class="since">Since 2.8</p>
1869
1737
</div>
1870
1738
<hr>
1871
1739
<div class="refsect2" lang="en">
1872
 
<a name="id2863880"></a><h3>
1873
 
<a name="g-object-remove-toggle-ref"></a>g_object_remove_toggle_ref ()</h3>
1874
 
<a class="indexterm" name="id2863896"></a><pre class="programlisting">void                g_object_remove_toggle_ref          (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
1875
 
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify">GToggleNotify</a> notify,
 
1740
<a name="g-object-remove-toggle-ref"></a><h3>g_object_remove_toggle_ref ()</h3>
 
1741
<pre class="programlisting">void                g_object_remove_toggle_ref          (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
1742
                                                         <a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">GToggleNotify</a> notify,
1876
1743
                                                         <a
1877
1744
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1878
1745
>gpointer</a> data);</pre>
1879
1746
<p>
1880
 
Removes a reference added with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref"><code class="function">g_object_add_toggle_ref()</code></a>. The
1881
 
reference count of the object is decreased by one.
 
1747
Removes a reference added with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>. The
 
1748
reference count of the object is decreased by one.</p>
 
1749
<p>
1882
1750
</p>
1883
1751
<div class="variablelist"><table border="0">
1884
1752
<col align="left" valign="top">
1885
1753
<tbody>
1886
1754
<tr>
1887
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
1888
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1889
 
</td>
1890
 
</tr>
1891
 
<tr>
1892
 
<td><p><span class="term"><em class="parameter"><code>notify</code></em>&#160;:</span></p></td>
1893
 
<td>a function to call when this reference is the
1894
 
  last reference to the object, or is no longer
1895
 
  the last reference.
1896
 
</td>
1897
 
</tr>
1898
 
<tr>
1899
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
1900
 
<td>data to pass to <em class="parameter"><code>notify</code></em>
 
1755
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1756
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1757
</td>
 
1758
</tr>
 
1759
<tr>
 
1760
<td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
 
1761
<td> a function to call when this reference is the
 
1762
 last reference to the object, or is no longer
 
1763
 the last reference.
 
1764
</td>
 
1765
</tr>
 
1766
<tr>
 
1767
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
1768
<td> data to pass to <em class="parameter"><code>notify</code></em>
1901
1769
</td>
1902
1770
</tr>
1903
1771
</tbody>
1904
1772
</table></div>
1905
 
<p class="since">Since 2.8
1906
 
 
1907
 
 
1908
 
</p>
 
1773
<p class="since">Since 2.8</p>
1909
1774
</div>
1910
1775
<hr>
1911
1776
<div class="refsect2" lang="en">
1912
 
<a name="id2864020"></a><h3>
1913
 
<a name="g-object-connect"></a>g_object_connect ()</h3>
1914
 
<a class="indexterm" name="id2864033"></a><pre class="programlisting"><a
 
1777
<a name="g-object-connect"></a><h3>g_object_connect ()</h3>
 
1778
<pre class="programlisting"><a
1915
1779
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1916
1780
>gpointer</a>            g_object_connect                    (<a
1917
1781
href="./../glib/glib/glib-Basic-Types.html#gpointer"
1933
1797
<tr>
1934
1798
<td><p><span class="term">signal</span></p></td>
1935
1799
<td><p>
1936
 
equivalent to <code class="literal">g_signal_connect_data (...)</code>
 
1800
equivalent to <code class="literal">g_signal_connect_data (..., NULL, 0)</code>
1937
1801
</p></td>
1938
1802
</tr>
1939
1803
<tr>
1940
1804
<td><p><span class="term">object_signal, </span><span class="term">object-signal</span></p></td>
1941
1805
<td><p>
1942
 
equivalent to <code class="literal">g_signal_connect_object (...)</code>
 
1806
equivalent to <code class="literal">g_signal_connect_object (..., 0)</code>
1943
1807
</p></td>
1944
1808
</tr>
1945
1809
<tr>
1946
1810
<td><p><span class="term">swapped_signal, </span><span class="term">swapped-signal</span></p></td>
1947
1811
<td><p>
1948
 
equivalent to <code class="literal">g_signal_connect_data (..., G_CONNECT_SWAPPED)</code>
 
1812
equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED)</code>
1949
1813
</p></td>
1950
1814
</tr>
1951
1815
<tr>
1957
1821
<tr>
1958
1822
<td><p><span class="term">signal_after, </span><span class="term">signal-after</span></p></td>
1959
1823
<td><p>
1960
 
equivalent to <code class="literal">g_signal_connect_data (..., G_CONNECT_AFTER)</code>
 
1824
equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_AFTER)</code>
1961
1825
</p></td>
1962
1826
</tr>
1963
1827
<tr>
1969
1833
<tr>
1970
1834
<td><p><span class="term">swapped_signal_after, </span><span class="term">swapped-signal-after</span></p></td>
1971
1835
<td><p>
1972
 
equivalent to <code class="literal">g_signal_connect_data (..., G_CONNECT_SWAPPED | G_CONNECT_AFTER)</code>
 
1836
equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED | G_CONNECT_AFTER)</code>
1973
1837
</p></td>
1974
1838
</tr>
1975
1839
<tr>
1982
1846
</table></div>
1983
1847
<p>
1984
1848
</p>
 
1849
<p>
 
1850
</p>
1985
1851
<div class="informalexample"><pre class="programlisting">
1986
1852
  menu-&gt;toplevel = g_object_connect (g_object_new (GTK_TYPE_WINDOW,
1987
1853
                                                   "type", GTK_WINDOW_POPUP,
1992
1858
                                     "signal::destroy", gtk_widget_destroyed, &amp;menu-&gt;toplevel,
1993
1859
                                     NULL);
1994
1860
</pre></div>
 
1861
<p>
 
1862
</p>
1995
1863
<div class="variablelist"><table border="0">
1996
1864
<col align="left" valign="top">
1997
1865
<tbody>
1998
1866
<tr>
1999
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2000
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2001
 
</td>
2002
 
</tr>
2003
 
<tr>
2004
 
<td><p><span class="term"><em class="parameter"><code>signal_spec</code></em>&#160;:</span></p></td>
2005
 
<td>the spec for the first signal
2006
 
</td>
2007
 
</tr>
2008
 
<tr>
2009
 
<td><p><span class="term"><em class="parameter"><code>...</code></em>&#160;:</span></p></td>
2010
 
<td>
2011
 
<a class="link" href="gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> for the first signal, followed by data for the first signal, 
2012
 
          followed optionally by more signal spec/callback/data triples, 
2013
 
          followed by <a
2014
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
1867
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1868
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1869
</td>
 
1870
</tr>
 
1871
<tr>
 
1872
<td><p><span class="term"><em class="parameter"><code>signal_spec</code></em> :</span></p></td>
 
1873
<td> the spec for the first signal
 
1874
</td>
 
1875
</tr>
 
1876
<tr>
 
1877
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
 
1878
<td> <a class="link" href="gobject-Closures.html#GCallback" title="GCallback ()"><span class="type">GCallback</span></a> for the first signal, followed by data for the
 
1879
      first signal, followed optionally by more signal
 
1880
      spec/callback/data triples, followed by <a
 
1881
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2015
1882
><code class="literal">NULL</code></a>
2016
1883
</td>
2017
1884
</tr>
2018
1885
<tr>
2019
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2020
 
<td>
2021
 
<em class="parameter"><code>object</code></em>
2022
 
 
2023
 
 
 
1886
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
1887
<td> <em class="parameter"><code>object</code></em>
2024
1888
</td>
2025
1889
</tr>
2026
1890
</tbody>
2028
1892
</div>
2029
1893
<hr>
2030
1894
<div class="refsect2" lang="en">
2031
 
<a name="id2864356"></a><h3>
2032
 
<a name="g-object-disconnect"></a>g_object_disconnect ()</h3>
2033
 
<a class="indexterm" name="id2864370"></a><pre class="programlisting">void                g_object_disconnect                 (<a
 
1895
<a name="g-object-disconnect"></a><h3>g_object_disconnect ()</h3>
 
1896
<pre class="programlisting">void                g_object_disconnect                 (<a
2034
1897
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2035
1898
>gpointer</a> object,
2036
1899
                                                         const <a
2041
1904
A convenience function to disconnect multiple signals at once.
2042
1905
</p>
2043
1906
<p>
2044
 
The signal specs expected by this function have the form "any_signal", which
2045
 
means to disconnect any signal with matching callback and data, or 
2046
 
"any_signal::signal_name", which only disconnects the signal named "signal_name". 
 
1907
The signal specs expected by this function have the form
 
1908
"any_signal", which means to disconnect any signal with matching
 
1909
callback and data, or "any_signal::signal_name", which only
 
1910
disconnects the signal named "signal_name".</p>
 
1911
<p>
2047
1912
</p>
2048
1913
<div class="variablelist"><table border="0">
2049
1914
<col align="left" valign="top">
2050
1915
<tbody>
2051
1916
<tr>
2052
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2053
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2054
 
</td>
2055
 
</tr>
2056
 
<tr>
2057
 
<td><p><span class="term"><em class="parameter"><code>signal_spec</code></em>&#160;:</span></p></td>
2058
 
<td>the spec for the first signal
2059
 
</td>
2060
 
</tr>
2061
 
<tr>
2062
 
<td><p><span class="term"><em class="parameter"><code>...</code></em>&#160;:</span></p></td>
2063
 
<td>
2064
 
<a class="link" href="gobject-Closures.html#GCallback"><span class="type">GCallback</span></a> for the first signal, followed by data for the first signal, 
2065
 
          followed optionally by more signal spec/callback/data triples, 
2066
 
          followed by <a
2067
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
1917
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1918
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1919
</td>
 
1920
</tr>
 
1921
<tr>
 
1922
<td><p><span class="term"><em class="parameter"><code>signal_spec</code></em> :</span></p></td>
 
1923
<td> the spec for the first signal
 
1924
</td>
 
1925
</tr>
 
1926
<tr>
 
1927
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
 
1928
<td> <a class="link" href="gobject-Closures.html#GCallback" title="GCallback ()"><span class="type">GCallback</span></a> for the first signal, followed by data for the first signal,
 
1929
 followed optionally by more signal spec/callback/data triples,
 
1930
 followed by <a
 
1931
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2068
1932
><code class="literal">NULL</code></a>
2069
 
 
2070
 
 
2071
1933
</td>
2072
1934
</tr>
2073
1935
</tbody>
2075
1937
</div>
2076
1938
<hr>
2077
1939
<div class="refsect2" lang="en">
2078
 
<a name="id2864488"></a><h3>
2079
 
<a name="g-object-set"></a>g_object_set ()</h3>
2080
 
<a class="indexterm" name="id2864500"></a><pre class="programlisting">void                g_object_set                        (<a
 
1940
<a name="g-object-set"></a><h3>g_object_set ()</h3>
 
1941
<pre class="programlisting">void                g_object_set                        (<a
2081
1942
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2082
1943
>gpointer</a> object,
2083
1944
                                                         const <a
2085
1946
>gchar</a> *first_property_name,
2086
1947
                                                         ...);</pre>
2087
1948
<p>
2088
 
Sets properties on an object.
 
1949
Sets properties on an object.</p>
 
1950
<p>
2089
1951
</p>
2090
1952
<div class="variablelist"><table border="0">
2091
1953
<col align="left" valign="top">
2092
1954
<tbody>
2093
1955
<tr>
2094
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2095
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2096
 
</td>
2097
 
</tr>
2098
 
<tr>
2099
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
2100
 
<td>name of the first property to set
2101
 
</td>
2102
 
</tr>
2103
 
<tr>
2104
 
<td><p><span class="term"><em class="parameter"><code>...</code></em>&#160;:</span></p></td>
2105
 
<td>value for the first property, followed optionally by more
2106
 
          name/value pairs, followed by <a
2107
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
1956
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
1957
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
1958
</td>
 
1959
</tr>
 
1960
<tr>
 
1961
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
1962
<td> name of the first property to set
 
1963
</td>
 
1964
</tr>
 
1965
<tr>
 
1966
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
 
1967
<td> value for the first property, followed optionally by more
 
1968
 name/value pairs, followed by <a
 
1969
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2108
1970
><code class="literal">NULL</code></a>
2109
 
 
2110
 
 
2111
1971
</td>
2112
1972
</tr>
2113
1973
</tbody>
2115
1975
</div>
2116
1976
<hr>
2117
1977
<div class="refsect2" lang="en">
2118
 
<a name="id2864603"></a><h3>
2119
 
<a name="g-object-get"></a>g_object_get ()</h3>
2120
 
<a class="indexterm" name="id2864616"></a><pre class="programlisting">void                g_object_get                        (<a
 
1978
<a name="g-object-get"></a><h3>g_object_get ()</h3>
 
1979
<pre class="programlisting">void                g_object_get                        (<a
2121
1980
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2122
1981
>gpointer</a> object,
2123
1982
                                                         const <a
2128
1987
Gets properties of an object.
2129
1988
</p>
2130
1989
<p>
2131
 
In general, a copy is made of the property contents and the caller is
2132
 
responsible for freeing the memory in the appropriate manner for the type, 
2133
 
for instance by calling <a
 
1990
In general, a copy is made of the property contents and the caller
 
1991
is responsible for freeing the memory in the appropriate manner for
 
1992
the type, for instance by calling <a
2134
1993
href="./../glib/glib/glib-Memory-Allocation.html#g-free"
2135
 
><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
 
1994
><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a>.
 
1995
</p>
 
1996
<p>
2136
1997
</p>
2137
1998
<div class="example">
2138
 
<a name="id2864681"></a><p class="title"><b>Example&#160;5.&#160;Using g_object_get()</b></p>
 
1999
<a name="id3065992"></a><p class="title"><b>Example 2. Using g_object_get()</b></p>
2139
2000
<div class="example-contents">
2140
 
<p>
2141
 
An example of using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get"><code class="function">g_object_get()</code></a> to get the contents
2142
 
of three properties - one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-INT:CAPS"><span class="type">G_TYPE_INT</span></a>,
2143
 
one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-STRING:CAPS"><span class="type">G_TYPE_STRING</span></a>, and one of type <span class="type">""</span>
2144
 
</p>
2145
 
<pre class="programlisting">
 
2001
An example of using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a> to get the contents
 
2002
of three properties - one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-INT--CAPS" title="G_TYPE_INT"><span class="type">G_TYPE_INT</span></a>,
 
2003
one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-STRING--CAPS" title="G_TYPE_STRING"><span class="type">G_TYPE_STRING</span></a>, and one of type <span class="type">""</span><pre class="programlisting">
2146
2004
 gint intval;
2147
2005
 gchar *strval;
2148
 
 GObject *objval; 
2149
 
 
 
2006
 GObject *objval;
 
2007
 
2150
2008
 g_object_get (my_object,
2151
 
               "intproperty", &amp;intval,
2152
 
               "strproperty", &amp;strval,
2153
 
               "objproperty", &amp;objval,
 
2009
               "int-property", &amp;intval,
 
2010
               "str-property", &amp;strval,
 
2011
               "obj-property", &amp;objval,
2154
2012
               NULL);
2155
2013
 
2156
 
 /* Do something with intval, strval, objval */
2157
 
 
 
2014
 // Do something with intval, strval, objval
 
2015
 
2158
2016
 g_free (strval);
2159
2017
 g_object_unref (objval);
2160
2018
</pre>
2161
2019
</div>
2162
2020
</div>
2163
 
<br class="example-break"><div class="variablelist"><table border="0">
 
2021
<p><br class="example-break"></p>
 
2022
<p>
 
2023
</p>
 
2024
<div class="variablelist"><table border="0">
2164
2025
<col align="left" valign="top">
2165
2026
<tbody>
2166
2027
<tr>
2167
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2168
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2169
 
</td>
2170
 
</tr>
2171
 
<tr>
2172
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
2173
 
<td>name of the first property to get
2174
 
</td>
2175
 
</tr>
2176
 
<tr>
2177
 
<td><p><span class="term"><em class="parameter"><code>...</code></em>&#160;:</span></p></td>
2178
 
<td>return location for the first property, followed optionally by more
2179
 
          name/return location pairs, followed by <a
2180
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2028
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2029
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2030
</td>
 
2031
</tr>
 
2032
<tr>
 
2033
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
2034
<td> name of the first property to get
 
2035
</td>
 
2036
</tr>
 
2037
<tr>
 
2038
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
 
2039
<td> return location for the first property, followed optionally by more
 
2040
 name/return location pairs, followed by <a
 
2041
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2181
2042
><code class="literal">NULL</code></a>
2182
 
 
2183
 
 
2184
2043
</td>
2185
2044
</tr>
2186
2045
</tbody>
2188
2047
</div>
2189
2048
<hr>
2190
2049
<div class="refsect2" lang="en">
2191
 
<a name="id2864814"></a><h3>
2192
 
<a name="g-object-notify"></a>g_object_notify ()</h3>
2193
 
<a class="indexterm" name="id2864826"></a><pre class="programlisting">void                g_object_notify                     (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2050
<a name="g-object-notify"></a><h3>g_object_notify ()</h3>
 
2051
<pre class="programlisting">void                g_object_notify                     (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2194
2052
                                                         const <a
2195
2053
href="./../glib/glib/glib-Basic-Types.html#gchar"
2196
2054
>gchar</a> *property_name);</pre>
2197
2055
<p>
2198
 
Emits a "notify" signal for the property <em class="parameter"><code>property_name</code></em> on <em class="parameter"><code>object</code></em>. 
 
2056
Emits a "notify" signal for the property <em class="parameter"><code>property_name</code></em> on <em class="parameter"><code>object</code></em>.</p>
 
2057
<p>
2199
2058
</p>
2200
2059
<div class="variablelist"><table border="0">
2201
2060
<col align="left" valign="top">
2202
2061
<tbody>
2203
2062
<tr>
2204
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2205
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2063
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2064
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2206
2065
</td>
2207
2066
</tr>
2208
2067
<tr>
2209
 
<td><p><span class="term"><em class="parameter"><code>property_name</code></em>&#160;:</span></p></td>
2210
 
<td>the name of a property installed on the class of <em class="parameter"><code>object</code></em>.
2211
 
 
2212
 
 
 
2068
<td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
 
2069
<td> the name of a property installed on the class of <em class="parameter"><code>object</code></em>.
2213
2070
</td>
2214
2071
</tr>
2215
2072
</tbody>
2217
2074
</div>
2218
2075
<hr>
2219
2076
<div class="refsect2" lang="en">
2220
 
<a name="id2864922"></a><h3>
2221
 
<a name="g-object-freeze-notify"></a>g_object_freeze_notify ()</h3>
2222
 
<a class="indexterm" name="id2864935"></a><pre class="programlisting">void                g_object_freeze_notify              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
 
2077
<a name="g-object-freeze-notify"></a><h3>g_object_freeze_notify ()</h3>
 
2078
<pre class="programlisting">void                g_object_freeze_notify              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
2223
2079
<p>
2224
 
Stops emission of "notify" signals on <em class="parameter"><code>object</code></em>. The signals are
2225
 
queued until <a class="link" href="gobject-The-Base-Object-Type.html#g-object-thaw-notify"><code class="function">g_object_thaw_notify()</code></a> is called on <em class="parameter"><code>object</code></em>. 
 
2080
Increases the freeze count on <em class="parameter"><code>object</code></em>. If the freeze count is
 
2081
non-zero, the emission of "notify" signals on <em class="parameter"><code>object</code></em> is
 
2082
stopped. The signals are queued until the freeze count is decreased
 
2083
to zero.
2226
2084
</p>
2227
2085
<p>
2228
2086
This is necessary for accessors that modify multiple properties to prevent
2229
 
premature notification while the object is still being modified.
2230
 
</p>
2231
 
<div class="variablelist"><table border="0">
2232
 
<col align="left" valign="top">
2233
 
<tbody><tr>
2234
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2235
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2236
 
 
2237
 
 
2238
 
</td>
2239
 
</tr></tbody>
2240
 
</table></div>
2241
 
</div>
2242
 
<hr>
2243
 
<div class="refsect2" lang="en">
2244
 
<a name="id2865019"></a><h3>
2245
 
<a name="g-object-thaw-notify"></a>g_object_thaw_notify ()</h3>
2246
 
<a class="indexterm" name="id2865032"></a><pre class="programlisting">void                g_object_thaw_notify                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
2247
 
<p>
2248
 
Reverts the effect of a previous call to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify"><code class="function">g_object_freeze_notify()</code></a>.
2249
 
This causes all queued "notify" signals on <em class="parameter"><code>object</code></em> to be emitted.
2250
 
</p>
2251
 
<div class="variablelist"><table border="0">
2252
 
<col align="left" valign="top">
2253
 
<tbody><tr>
2254
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2255
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2256
 
 
2257
 
 
2258
 
</td>
2259
 
</tr></tbody>
2260
 
</table></div>
2261
 
</div>
2262
 
<hr>
2263
 
<div class="refsect2" lang="en">
2264
 
<a name="id2865104"></a><h3>
2265
 
<a name="g-object-get-data"></a>g_object_get_data ()</h3>
2266
 
<a class="indexterm" name="id2865118"></a><pre class="programlisting"><a
 
2087
premature notification while the object is still being modified.</p>
 
2088
<p>
 
2089
</p>
 
2090
<div class="variablelist"><table border="0">
 
2091
<col align="left" valign="top">
 
2092
<tbody><tr>
 
2093
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2094
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2095
</td>
 
2096
</tr></tbody>
 
2097
</table></div>
 
2098
</div>
 
2099
<hr>
 
2100
<div class="refsect2" lang="en">
 
2101
<a name="g-object-thaw-notify"></a><h3>g_object_thaw_notify ()</h3>
 
2102
<pre class="programlisting">void                g_object_thaw_notify                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
 
2103
<p>
 
2104
Reverts the effect of a previous call to
 
2105
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify" title="g_object_freeze_notify ()"><code class="function">g_object_freeze_notify()</code></a>. The freeze count is decreased on <em class="parameter"><code>object</code></em>
 
2106
and when it reaches zero, all queued "notify" signals are emitted.
 
2107
</p>
 
2108
<p>
 
2109
It is an error to call this function when the freeze count is zero.</p>
 
2110
<p>
 
2111
</p>
 
2112
<div class="variablelist"><table border="0">
 
2113
<col align="left" valign="top">
 
2114
<tbody><tr>
 
2115
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2116
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2117
</td>
 
2118
</tr></tbody>
 
2119
</table></div>
 
2120
</div>
 
2121
<hr>
 
2122
<div class="refsect2" lang="en">
 
2123
<a name="g-object-get-data"></a><h3>g_object_get_data ()</h3>
 
2124
<pre class="programlisting"><a
2267
2125
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2268
2126
>gpointer</a>            g_object_get_data                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2269
2127
                                                         const <a
2270
2128
href="./../glib/glib/glib-Basic-Types.html#gchar"
2271
2129
>gchar</a> *key);</pre>
2272
2130
<p>
2273
 
Gets a named field from the objects table of associations (see <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data"><code class="function">g_object_set_data()</code></a>).
 
2131
Gets a named field from the objects table of associations (see <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()"><code class="function">g_object_set_data()</code></a>).</p>
 
2132
<p>
2274
2133
</p>
2275
2134
<div class="variablelist"><table border="0">
2276
2135
<col align="left" valign="top">
2277
2136
<tbody>
2278
2137
<tr>
2279
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2280
 
<td>
2281
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2282
 
</td>
2283
 
</tr>
2284
 
<tr>
2285
 
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
2286
 
<td>name of the key for that association
2287
 
</td>
2288
 
</tr>
2289
 
<tr>
2290
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2291
 
<td>the data if found, or <a
2292
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2138
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2139
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
 
2140
</td>
 
2141
</tr>
 
2142
<tr>
 
2143
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
2144
<td> name of the key for that association
 
2145
</td>
 
2146
</tr>
 
2147
<tr>
 
2148
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2149
<td> the data if found, or <a
 
2150
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2293
2151
><code class="literal">NULL</code></a> if no such data exists.
2294
 
 
2295
 
 
2296
2152
</td>
2297
2153
</tr>
2298
2154
</tbody>
2300
2156
</div>
2301
2157
<hr>
2302
2158
<div class="refsect2" lang="en">
2303
 
<a name="id2865225"></a><h3>
2304
 
<a name="g-object-set-data"></a>g_object_set_data ()</h3>
2305
 
<a class="indexterm" name="id2865239"></a><pre class="programlisting">void                g_object_set_data                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2159
<a name="g-object-set-data"></a><h3>g_object_set_data ()</h3>
 
2160
<pre class="programlisting">void                g_object_set_data                   (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2306
2161
                                                         const <a
2307
2162
href="./../glib/glib/glib-Basic-Types.html#gchar"
2308
2163
>gchar</a> *key,
2315
2170
</p>
2316
2171
<p>
2317
2172
If the object already had an association with that name,
2318
 
the old association will be destroyed.
 
2173
the old association will be destroyed.</p>
 
2174
<p>
2319
2175
</p>
2320
2176
<div class="variablelist"><table border="0">
2321
2177
<col align="left" valign="top">
2322
2178
<tbody>
2323
2179
<tr>
2324
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2325
 
<td>
2326
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations.
2327
 
</td>
2328
 
</tr>
2329
 
<tr>
2330
 
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
2331
 
<td>name of the key
2332
 
</td>
2333
 
</tr>
2334
 
<tr>
2335
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
2336
 
<td>data to associate with that key
2337
 
 
2338
 
 
 
2180
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2181
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations.
 
2182
</td>
 
2183
</tr>
 
2184
<tr>
 
2185
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
2186
<td> name of the key
 
2187
</td>
 
2188
</tr>
 
2189
<tr>
 
2190
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2191
<td> data to associate with that key
2339
2192
</td>
2340
2193
</tr>
2341
2194
</tbody>
2343
2196
</div>
2344
2197
<hr>
2345
2198
<div class="refsect2" lang="en">
2346
 
<a name="id2865343"></a><h3>
2347
 
<a name="g-object-set-data-full"></a>g_object_set_data_full ()</h3>
2348
 
<a class="indexterm" name="id2865355"></a><pre class="programlisting">void                g_object_set_data_full              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2199
<a name="g-object-set-data-full"></a><h3>g_object_set_data_full ()</h3>
 
2200
<pre class="programlisting">void                g_object_set_data_full              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2349
2201
                                                         const <a
2350
2202
href="./../glib/glib/glib-Basic-Types.html#gchar"
2351
2203
>gchar</a> *key,
2356
2208
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
2357
2209
>GDestroyNotify</a> destroy);</pre>
2358
2210
<p>
2359
 
Like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data"><code class="function">g_object_set_data()</code></a> except it adds notification
2360
 
for when the association is destroyed, either by setting it 
 
2211
Like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()"><code class="function">g_object_set_data()</code></a> except it adds notification
 
2212
for when the association is destroyed, either by setting it
2361
2213
to a different value or when the object is destroyed.
2362
2214
</p>
2363
2215
<p>
2364
2216
Note that the <em class="parameter"><code>destroy</code></em> callback is not called if <em class="parameter"><code>data</code></em> is <a
2365
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
2366
 
><code class="literal">NULL</code></a>.
 
2217
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
2218
><code class="literal">NULL</code></a>.</p>
 
2219
<p>
2367
2220
</p>
2368
2221
<div class="variablelist"><table border="0">
2369
2222
<col align="left" valign="top">
2370
2223
<tbody>
2371
2224
<tr>
2372
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2373
 
<td>
2374
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2375
 
</td>
2376
 
</tr>
2377
 
<tr>
2378
 
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
2379
 
<td>name of the key
2380
 
</td>
2381
 
</tr>
2382
 
<tr>
2383
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
2384
 
<td>data to associate with that key
2385
 
</td>
2386
 
</tr>
2387
 
<tr>
2388
 
<td><p><span class="term"><em class="parameter"><code>destroy</code></em>&#160;:</span></p></td>
2389
 
<td>function to call when the association is destroyed
2390
 
 
2391
 
 
 
2225
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2226
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
 
2227
</td>
 
2228
</tr>
 
2229
<tr>
 
2230
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
2231
<td> name of the key
 
2232
</td>
 
2233
</tr>
 
2234
<tr>
 
2235
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2236
<td> data to associate with that key
 
2237
</td>
 
2238
</tr>
 
2239
<tr>
 
2240
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
 
2241
<td> function to call when the association is destroyed
2392
2242
</td>
2393
2243
</tr>
2394
2244
</tbody>
2396
2246
</div>
2397
2247
<hr>
2398
2248
<div class="refsect2" lang="en">
2399
 
<a name="id2865514"></a><h3>
2400
 
<a name="g-object-steal-data"></a>g_object_steal_data ()</h3>
2401
 
<a class="indexterm" name="id2865528"></a><pre class="programlisting"><a
 
2249
<a name="g-object-steal-data"></a><h3>g_object_steal_data ()</h3>
 
2250
<pre class="programlisting"><a
2402
2251
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2403
2252
>gpointer</a>            g_object_steal_data                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2404
2253
                                                         const <a
2406
2255
>gchar</a> *key);</pre>
2407
2256
<p>
2408
2257
Remove a specified datum from the object's data associations,
2409
 
without invoking the association's destroy handler.
 
2258
without invoking the association's destroy handler.</p>
 
2259
<p>
2410
2260
</p>
2411
2261
<div class="variablelist"><table border="0">
2412
2262
<col align="left" valign="top">
2413
2263
<tbody>
2414
2264
<tr>
2415
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2416
 
<td>
2417
 
<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2418
 
</td>
2419
 
</tr>
2420
 
<tr>
2421
 
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
2422
 
<td>name of the key
2423
 
</td>
2424
 
</tr>
2425
 
<tr>
2426
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2427
 
<td>the data if found, or <a
2428
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2265
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2266
<td> <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
 
2267
</td>
 
2268
</tr>
 
2269
<tr>
 
2270
<td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
 
2271
<td> name of the key
 
2272
</td>
 
2273
</tr>
 
2274
<tr>
 
2275
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2276
<td> the data if found, or <a
 
2277
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2429
2278
><code class="literal">NULL</code></a> if no such data exists.
2430
 
 
2431
 
 
2432
2279
</td>
2433
2280
</tr>
2434
2281
</tbody>
2436
2283
</div>
2437
2284
<hr>
2438
2285
<div class="refsect2" lang="en">
2439
 
<a name="id2865626"></a><h3>
2440
 
<a name="g-object-get-qdata"></a>g_object_get_qdata ()</h3>
2441
 
<a class="indexterm" name="id2865639"></a><pre class="programlisting"><a
 
2286
<a name="g-object-get-qdata"></a><h3>g_object_get_qdata ()</h3>
 
2287
<pre class="programlisting"><a
2442
2288
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2443
2289
>gpointer</a>            g_object_get_qdata                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2444
2290
                                                         <a
2446
2292
>GQuark</a> quark);</pre>
2447
2293
<p>
2448
2294
This function gets back user data pointers stored via
2449
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata"><code class="function">g_object_set_qdata()</code></a>.
 
2295
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>.</p>
 
2296
<p>
2450
2297
</p>
2451
2298
<div class="variablelist"><table border="0">
2452
2299
<col align="left" valign="top">
2453
2300
<tbody>
2454
2301
<tr>
2455
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
 
2302
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2456
2303
<td> The GObject to get a stored user data pointer from
2457
2304
</td>
2458
2305
</tr>
2459
2306
<tr>
2460
 
<td><p><span class="term"><em class="parameter"><code>quark</code></em>&#160;:</span></p></td>
2461
 
<td>  A <a
 
2307
<td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
 
2308
<td> A <a
2462
2309
href="./../glib/glib/glib-Quarks.html#GQuark"
2463
2310
><span class="type">GQuark</span></a>, naming the user data pointer
2464
2311
</td>
2465
2312
</tr>
2466
2313
<tr>
2467
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2468
 
<td>The user data pointer set, or <a
2469
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2314
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2315
<td> The user data pointer set, or <a
 
2316
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2470
2317
><code class="literal">NULL</code></a>
2471
 
 
2472
 
 
2473
2318
</td>
2474
2319
</tr>
2475
2320
</tbody>
2477
2322
</div>
2478
2323
<hr>
2479
2324
<div class="refsect2" lang="en">
2480
 
<a name="id2865748"></a><h3>
2481
 
<a name="g-object-set-qdata"></a>g_object_set_qdata ()</h3>
2482
 
<a class="indexterm" name="id2865762"></a><pre class="programlisting">void                g_object_set_qdata                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2325
<a name="g-object-set-qdata"></a><h3>g_object_set_qdata ()</h3>
 
2326
<pre class="programlisting">void                g_object_set_qdata                  (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2483
2327
                                                         <a
2484
2328
href="./../glib/glib/glib-Quarks.html#GQuark"
2485
2329
>GQuark</a> quark,
2494
2338
<a
2495
2339
href="./../glib/glib/glib-Quarks.html#g-quark-from-static-string"
2496
2340
><code class="function">g_quark_from_static_string()</code></a>), and the pointer
2497
 
can be gotten back from the <em class="parameter"><code>object</code></em> with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata"><code class="function">g_object_get_qdata()</code></a>
 
2341
can be gotten back from the <em class="parameter"><code>object</code></em> with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()"><code class="function">g_object_get_qdata()</code></a>
2498
2342
until the <em class="parameter"><code>object</code></em> is finalized.
2499
2343
Setting a previously set user data pointer, overrides (frees)
2500
2344
the old pointer set, using <a
2501
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2345
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2502
2346
><span class="type">NULL</span></a> as pointer essentially
2503
 
removes the data stored.
 
2347
removes the data stored.</p>
 
2348
<p>
2504
2349
</p>
2505
2350
<div class="variablelist"><table border="0">
2506
2351
<col align="left" valign="top">
2507
2352
<tbody>
2508
2353
<tr>
2509
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2510
 
<td>The GObject to set store a user data pointer
 
2354
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2355
<td> The GObject to set store a user data pointer
2511
2356
</td>
2512
2357
</tr>
2513
2358
<tr>
2514
 
<td><p><span class="term"><em class="parameter"><code>quark</code></em>&#160;:</span></p></td>
 
2359
<td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
2515
2360
<td> A <a
2516
2361
href="./../glib/glib/glib-Quarks.html#GQuark"
2517
2362
><span class="type">GQuark</span></a>, naming the user data pointer
2518
2363
</td>
2519
2364
</tr>
2520
2365
<tr>
2521
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
2522
 
<td>  An opaque user data pointer
2523
 
 
2524
 
 
 
2366
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2367
<td> An opaque user data pointer
2525
2368
</td>
2526
2369
</tr>
2527
2370
</tbody>
2529
2372
</div>
2530
2373
<hr>
2531
2374
<div class="refsect2" lang="en">
2532
 
<a name="id2865916"></a><h3>
2533
 
<a name="g-object-set-qdata-full"></a>g_object_set_qdata_full ()</h3>
2534
 
<a class="indexterm" name="id2865930"></a><pre class="programlisting">void                g_object_set_qdata_full             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2375
<a name="g-object-set-qdata-full"></a><h3>g_object_set_qdata_full ()</h3>
 
2376
<pre class="programlisting">void                g_object_set_qdata_full             (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2535
2377
                                                         <a
2536
2378
href="./../glib/glib/glib-Quarks.html#GQuark"
2537
2379
>GQuark</a> quark,
2542
2384
href="./../glib/glib/glib-Datasets.html#GDestroyNotify"
2543
2385
>GDestroyNotify</a> destroy);</pre>
2544
2386
<p>
2545
 
This function works like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata"><code class="function">g_object_set_qdata()</code></a>, but in addition,
 
2387
This function works like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>, but in addition,
2546
2388
a void (*destroy) (gpointer) function may be specified which is
2547
2389
called with <em class="parameter"><code>data</code></em> as argument when the <em class="parameter"><code>object</code></em> is finalized, or
2548
 
the data is being overwritten by a call to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata"><code class="function">g_object_set_qdata()</code></a>
2549
 
with the same <em class="parameter"><code>quark</code></em>.
 
2390
the data is being overwritten by a call to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>
 
2391
with the same <em class="parameter"><code>quark</code></em>.</p>
 
2392
<p>
2550
2393
</p>
2551
2394
<div class="variablelist"><table border="0">
2552
2395
<col align="left" valign="top">
2553
2396
<tbody>
2554
2397
<tr>
2555
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
 
2398
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2556
2399
<td> The GObject to set store a user data pointer
2557
2400
</td>
2558
2401
</tr>
2559
2402
<tr>
2560
 
<td><p><span class="term"><em class="parameter"><code>quark</code></em>&#160;:</span></p></td>
2561
 
<td>  A <a
 
2403
<td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
 
2404
<td> A <a
2562
2405
href="./../glib/glib/glib-Quarks.html#GQuark"
2563
2406
><span class="type">GQuark</span></a>, naming the user data pointer
2564
2407
</td>
2565
2408
</tr>
2566
2409
<tr>
2567
 
<td><p><span class="term"><em class="parameter"><code>data</code></em>&#160;:</span></p></td>
2568
 
<td>   An opaque user data pointer
 
2410
<td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
 
2411
<td> An opaque user data pointer
2569
2412
</td>
2570
2413
</tr>
2571
2414
<tr>
2572
 
<td><p><span class="term"><em class="parameter"><code>destroy</code></em>&#160;:</span></p></td>
2573
 
<td>Function to invoke with <em class="parameter"><code>data</code></em> as argument, when <em class="parameter"><code>data</code></em> needs to be freed
2574
 
 
2575
 
 
 
2415
<td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
 
2416
<td> Function to invoke with <em class="parameter"><code>data</code></em> as argument, when <em class="parameter"><code>data</code></em>
 
2417
          needs to be freed
2576
2418
</td>
2577
2419
</tr>
2578
2420
</tbody>
2580
2422
</div>
2581
2423
<hr>
2582
2424
<div class="refsect2" lang="en">
2583
 
<a name="id2866106"></a><h3>
2584
 
<a name="g-object-steal-qdata"></a>g_object_steal_qdata ()</h3>
2585
 
<a class="indexterm" name="id2866119"></a><pre class="programlisting"><a
 
2425
<a name="g-object-steal-qdata"></a><h3>g_object_steal_qdata ()</h3>
 
2426
<pre class="programlisting"><a
2586
2427
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2587
2428
>gpointer</a>            g_object_steal_qdata                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2588
2429
                                                         <a
2590
2431
>GQuark</a> quark);</pre>
2591
2432
<p>
2592
2433
This function gets back user data pointers stored via
2593
 
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata"><code class="function">g_object_set_qdata()</code></a> and removes the <em class="parameter"><code>data</code></em> from object
 
2434
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a> and removes the <em class="parameter"><code>data</code></em> from object
2594
2435
without invoking it's <code class="function">destroy()</code> function (if any was
2595
2436
set).
2596
2437
Usually, calling this function is only required to update
2597
2438
user data pointers with a destroy notifier, for example:
2598
2439
</p>
2599
 
<pre class="programlisting">
 
2440
<div class="informalexample"><pre class="programlisting">
2600
2441
void
2601
2442
object_add_to_user_list (GObject     *object,
2602
2443
                         const gchar *new_string)
2603
2444
{
2604
 
  /* the quark, naming the object data */
 
2445
  // the quark, naming the object data
2605
2446
  GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
2606
 
  /* retrive the old string list */
 
2447
  // retrive the old string list
2607
2448
  GList *list = g_object_steal_qdata (object, quark_string_list);
2608
 
  
2609
 
  /* prepend new string */
 
2449
 
 
2450
  // prepend new string
2610
2451
  list = g_list_prepend (list, g_strdup (new_string));
2611
 
  /* this changed 'list', so we need to set it again */
 
2452
  // this changed 'list', so we need to set it again
2612
2453
  g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
2613
2454
}
2614
2455
static void
2615
2456
free_string_list (gpointer data)
2616
2457
{
2617
2458
  GList *node, *list = data;
2618
 
  
 
2459
 
2619
2460
  for (node = list; node; node = node-&gt;next)
2620
2461
    g_free (node-&gt;data);
2621
2462
  g_list_free (list);
2622
2463
}
2623
 
</pre>
2624
 
<p>
2625
 
Using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata"><code class="function">g_object_get_qdata()</code></a> in the above example, instead of <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata"><code class="function">g_object_steal_qdata()</code></a>
2626
 
would have left the destroy function set, and thus the partial string list would
2627
 
have been freed upon <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full"><code class="function">g_object_set_qdata_full()</code></a>.
 
2464
</pre></div>
 
2465
<p>
 
2466
Using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()"><code class="function">g_object_get_qdata()</code></a> in the above example, instead of
 
2467
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata" title="g_object_steal_qdata ()"><code class="function">g_object_steal_qdata()</code></a> would have left the destroy function set,
 
2468
and thus the partial string list would have been freed upon
 
2469
<a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full" title="g_object_set_qdata_full ()"><code class="function">g_object_set_qdata_full()</code></a>.</p>
 
2470
<p>
2628
2471
</p>
2629
2472
<div class="variablelist"><table border="0">
2630
2473
<col align="left" valign="top">
2631
2474
<tbody>
2632
2475
<tr>
2633
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
 
2476
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2634
2477
<td> The GObject to get a stored user data pointer from
2635
2478
</td>
2636
2479
</tr>
2637
2480
<tr>
2638
 
<td><p><span class="term"><em class="parameter"><code>quark</code></em>&#160;:</span></p></td>
2639
 
<td>  A <a
 
2481
<td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
 
2482
<td> A <a
2640
2483
href="./../glib/glib/glib-Quarks.html#GQuark"
2641
2484
><span class="type">GQuark</span></a>, naming the user data pointer
2642
2485
</td>
2643
2486
</tr>
2644
2487
<tr>
2645
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2646
 
<td>The user data pointer set, or <a
2647
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2488
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2489
<td> The user data pointer set, or <a
 
2490
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2648
2491
><code class="literal">NULL</code></a>
2649
 
 
2650
 
 
2651
2492
</td>
2652
2493
</tr>
2653
2494
</tbody>
2655
2496
</div>
2656
2497
<hr>
2657
2498
<div class="refsect2" lang="en">
2658
 
<a name="id2866314"></a><h3>
2659
 
<a name="g-object-set-property"></a>g_object_set_property ()</h3>
2660
 
<a class="indexterm" name="id2866327"></a><pre class="programlisting">void                g_object_set_property               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2499
<a name="g-object-set-property"></a><h3>g_object_set_property ()</h3>
 
2500
<pre class="programlisting">void                g_object_set_property               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2661
2501
                                                         const <a
2662
2502
href="./../glib/glib/glib-Basic-Types.html#gchar"
2663
2503
>gchar</a> *property_name,
2664
 
                                                         const <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value);</pre>
2665
 
<p>
2666
 
Sets a property on an object.
 
2504
                                                         const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value);</pre>
 
2505
<p>
 
2506
Sets a property on an object.</p>
 
2507
<p>
2667
2508
</p>
2668
2509
<div class="variablelist"><table border="0">
2669
2510
<col align="left" valign="top">
2670
2511
<tbody>
2671
2512
<tr>
2672
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2673
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2674
 
</td>
2675
 
</tr>
2676
 
<tr>
2677
 
<td><p><span class="term"><em class="parameter"><code>property_name</code></em>&#160;:</span></p></td>
2678
 
<td>the name of the property to set
2679
 
</td>
2680
 
</tr>
2681
 
<tr>
2682
 
<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
2683
 
<td>the value
2684
 
 
2685
 
 
 
2513
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2514
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2515
</td>
 
2516
</tr>
 
2517
<tr>
 
2518
<td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
 
2519
<td> the name of the property to set
 
2520
</td>
 
2521
</tr>
 
2522
<tr>
 
2523
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
 
2524
<td> the value
2686
2525
</td>
2687
2526
</tr>
2688
2527
</tbody>
2690
2529
</div>
2691
2530
<hr>
2692
2531
<div class="refsect2" lang="en">
2693
 
<a name="id2866426"></a><h3>
2694
 
<a name="g-object-get-property"></a>g_object_get_property ()</h3>
2695
 
<a class="indexterm" name="id2866440"></a><pre class="programlisting">void                g_object_get_property               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2532
<a name="g-object-get-property"></a><h3>g_object_get_property ()</h3>
 
2533
<pre class="programlisting">void                g_object_get_property               (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2696
2534
                                                         const <a
2697
2535
href="./../glib/glib/glib-Basic-Types.html#gchar"
2698
2536
>gchar</a> *property_name,
2699
 
                                                         <a class="link" href="gobject-Generic-values.html#GValue">GValue</a> *value);</pre>
 
2537
                                                         <a class="link" href="gobject-Generic-values.html#GValue" title="GValue">GValue</a> *value);</pre>
2700
2538
<p>
2701
2539
Gets a property of an object.
2702
2540
</p>
2703
2541
<p>
2704
2542
In general, a copy is made of the property contents and the caller is
2705
 
responsible for freeing the memory by calling <a class="link" href="gobject-Generic-values.html#g-value-unset"><code class="function">g_value_unset()</code></a>.
 
2543
responsible for freeing the memory by calling <a class="link" href="gobject-Generic-values.html#g-value-unset" title="g_value_unset ()"><code class="function">g_value_unset()</code></a>.
2706
2544
</p>
2707
2545
<p>
2708
 
Note that <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property"><code class="function">g_object_get_property()</code></a> is really intended for language
2709
 
bindings, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get"><code class="function">g_object_get()</code></a> is much more convenient for C programming.
 
2546
Note that <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property" title="g_object_get_property ()"><code class="function">g_object_get_property()</code></a> is really intended for language
 
2547
bindings, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a> is much more convenient for C programming.</p>
 
2548
<p>
2710
2549
</p>
2711
2550
<div class="variablelist"><table border="0">
2712
2551
<col align="left" valign="top">
2713
2552
<tbody>
2714
2553
<tr>
2715
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2716
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2717
 
</td>
2718
 
</tr>
2719
 
<tr>
2720
 
<td><p><span class="term"><em class="parameter"><code>property_name</code></em>&#160;:</span></p></td>
2721
 
<td>the name of the property to get
2722
 
</td>
2723
 
</tr>
2724
 
<tr>
2725
 
<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
2726
 
<td>return location for the property value
2727
 
 
2728
 
 
 
2554
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2555
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2556
</td>
 
2557
</tr>
 
2558
<tr>
 
2559
<td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
 
2560
<td> the name of the property to get
 
2561
</td>
 
2562
</tr>
 
2563
<tr>
 
2564
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
 
2565
<td> return location for the property value
2729
2566
</td>
2730
2567
</tr>
2731
2568
</tbody>
2733
2570
</div>
2734
2571
<hr>
2735
2572
<div class="refsect2" lang="en">
2736
 
<a name="id2866582"></a><h3>
2737
 
<a name="g-object-new-valist"></a>g_object_new_valist ()</h3>
2738
 
<a class="indexterm" name="id2866595"></a><pre class="programlisting"><a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>*            g_object_new_valist                 (<a class="link" href="gobject-Type-Information.html#GType">GType</a> object_type,
 
2573
<a name="g-object-new-valist"></a><h3>g_object_new_valist ()</h3>
 
2574
<pre class="programlisting"><a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>*            g_object_new_valist                 (<a class="link" href="gobject-Type-Information.html#GType" title="GType">GType</a> object_type,
2739
2575
                                                         const <a
2740
2576
href="./../glib/glib/glib-Basic-Types.html#gchar"
2741
2577
>gchar</a> *first_property_name,
2744
2580
Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
2745
2581
</p>
2746
2582
<p>
2747
 
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>) 
2748
 
which are not explicitly specified are set to their default values.
2749
 
</p>
2750
 
<div class="variablelist"><table border="0">
2751
 
<col align="left" valign="top">
2752
 
<tbody>
2753
 
<tr>
2754
 
<td><p><span class="term"><em class="parameter"><code>object_type</code></em>&#160;:</span></p></td>
2755
 
<td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
2756
 
</td>
2757
 
</tr>
2758
 
<tr>
2759
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
2760
 
<td>the name of the first property
2761
 
</td>
2762
 
</tr>
2763
 
<tr>
2764
 
<td><p><span class="term"><em class="parameter"><code>var_args</code></em>&#160;:</span></p></td>
2765
 
<td>the value of the first property, followed optionally by more
2766
 
     name/value pairs, followed by <a
2767
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
2768
 
><code class="literal">NULL</code></a>
2769
 
</td>
2770
 
</tr>
2771
 
<tr>
2772
 
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2773
 
<td>a new instance of <em class="parameter"><code>object_type</code></em>
2774
 
 
2775
 
 
2776
 
</td>
2777
 
</tr>
2778
 
</tbody>
2779
 
</table></div>
2780
 
</div>
2781
 
<hr>
2782
 
<div class="refsect2" lang="en">
2783
 
<a name="id2866752"></a><h3>
2784
 
<a name="g-object-set-valist"></a>g_object_set_valist ()</h3>
2785
 
<a class="indexterm" name="id2866766"></a><pre class="programlisting">void                g_object_set_valist                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2786
 
                                                         const <a
2787
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
2788
 
>gchar</a> *first_property_name,
2789
 
                                                         va_list var_args);</pre>
2790
 
<p>
2791
 
Sets properties on an object.
2792
 
</p>
2793
 
<div class="variablelist"><table border="0">
2794
 
<col align="left" valign="top">
2795
 
<tbody>
2796
 
<tr>
2797
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2798
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2799
 
</td>
2800
 
</tr>
2801
 
<tr>
2802
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
2803
 
<td>name of the first property to set
2804
 
</td>
2805
 
</tr>
2806
 
<tr>
2807
 
<td><p><span class="term"><em class="parameter"><code>var_args</code></em>&#160;:</span></p></td>
2808
 
<td>value for the first property, followed optionally by more
2809
 
           name/value pairs, followed by <a
2810
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
2811
 
><code class="literal">NULL</code></a>
2812
 
 
2813
 
 
2814
 
</td>
2815
 
</tr>
2816
 
</tbody>
2817
 
</table></div>
2818
 
</div>
2819
 
<hr>
2820
 
<div class="refsect2" lang="en">
2821
 
<a name="id2866875"></a><h3>
2822
 
<a name="g-object-get-valist"></a>g_object_get_valist ()</h3>
2823
 
<a class="indexterm" name="id2866888"></a><pre class="programlisting">void                g_object_get_valist                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2824
 
                                                         const <a
2825
 
href="./../glib/glib/glib-Basic-Types.html#gchar"
2826
 
>gchar</a> *first_property_name,
2827
 
                                                         va_list var_args);</pre>
2828
 
<p>
2829
 
Gets properties of an object. 
2830
 
</p>
2831
 
<p>
2832
 
In general, a copy is made of the property contents and the caller is
2833
 
responsible for freeing the memory in the appropriate manner for the type, 
2834
 
for instance by calling <a
 
2583
Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT--CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY--CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
 
2584
which are not explicitly specified are set to their default values.</p>
 
2585
<p>
 
2586
</p>
 
2587
<div class="variablelist"><table border="0">
 
2588
<col align="left" valign="top">
 
2589
<tbody>
 
2590
<tr>
 
2591
<td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
 
2592
<td> the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
 
2593
</td>
 
2594
</tr>
 
2595
<tr>
 
2596
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
2597
<td> the name of the first property
 
2598
</td>
 
2599
</tr>
 
2600
<tr>
 
2601
<td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
 
2602
<td> the value of the first property, followed optionally by more
 
2603
 name/value pairs, followed by <a
 
2604
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
2605
><code class="literal">NULL</code></a>
 
2606
</td>
 
2607
</tr>
 
2608
<tr>
 
2609
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
 
2610
<td> a new instance of <em class="parameter"><code>object_type</code></em>
 
2611
</td>
 
2612
</tr>
 
2613
</tbody>
 
2614
</table></div>
 
2615
</div>
 
2616
<hr>
 
2617
<div class="refsect2" lang="en">
 
2618
<a name="g-object-set-valist"></a><h3>g_object_set_valist ()</h3>
 
2619
<pre class="programlisting">void                g_object_set_valist                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2620
                                                         const <a
 
2621
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
2622
>gchar</a> *first_property_name,
 
2623
                                                         va_list var_args);</pre>
 
2624
<p>
 
2625
Sets properties on an object.</p>
 
2626
<p>
 
2627
</p>
 
2628
<div class="variablelist"><table border="0">
 
2629
<col align="left" valign="top">
 
2630
<tbody>
 
2631
<tr>
 
2632
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2633
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2634
</td>
 
2635
</tr>
 
2636
<tr>
 
2637
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
2638
<td> name of the first property to set
 
2639
</td>
 
2640
</tr>
 
2641
<tr>
 
2642
<td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
 
2643
<td> value for the first property, followed optionally by more
 
2644
 name/value pairs, followed by <a
 
2645
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
 
2646
><code class="literal">NULL</code></a>
 
2647
</td>
 
2648
</tr>
 
2649
</tbody>
 
2650
</table></div>
 
2651
</div>
 
2652
<hr>
 
2653
<div class="refsect2" lang="en">
 
2654
<a name="g-object-get-valist"></a><h3>g_object_get_valist ()</h3>
 
2655
<pre class="programlisting">void                g_object_get_valist                 (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2656
                                                         const <a
 
2657
href="./../glib/glib/glib-Basic-Types.html#gchar"
 
2658
>gchar</a> *first_property_name,
 
2659
                                                         va_list var_args);</pre>
 
2660
<p>
 
2661
Gets properties of an object.
 
2662
</p>
 
2663
<p>
 
2664
In general, a copy is made of the property contents and the caller
 
2665
is responsible for freeing the memory in the appropriate manner for
 
2666
the type, for instance by calling <a
2835
2667
href="./../glib/glib/glib-Memory-Allocation.html#g-free"
2836
 
><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>.
 
2668
><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a>.
2837
2669
</p>
2838
2670
<p>
2839
 
See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get"><code class="function">g_object_get()</code></a>.
 
2671
See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a>.</p>
 
2672
<p>
2840
2673
</p>
2841
2674
<div class="variablelist"><table border="0">
2842
2675
<col align="left" valign="top">
2843
2676
<tbody>
2844
2677
<tr>
2845
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2846
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2847
 
</td>
2848
 
</tr>
2849
 
<tr>
2850
 
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em>&#160;:</span></p></td>
2851
 
<td>name of the first property to get
2852
 
</td>
2853
 
</tr>
2854
 
<tr>
2855
 
<td><p><span class="term"><em class="parameter"><code>var_args</code></em>&#160;:</span></p></td>
2856
 
<td>return location for the first property, followed optionally by more
2857
 
           name/return location pairs, followed by <a
2858
 
href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"
 
2678
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2679
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
 
2680
</td>
 
2681
</tr>
 
2682
<tr>
 
2683
<td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
 
2684
<td> name of the first property to get
 
2685
</td>
 
2686
</tr>
 
2687
<tr>
 
2688
<td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
 
2689
<td> return location for the first property, followed optionally by more
 
2690
 name/return location pairs, followed by <a
 
2691
href="./../glib/glib/glib-Standard-Macros.html#NULL--CAPS"
2859
2692
><code class="literal">NULL</code></a>
2860
 
 
2861
 
 
2862
2693
</td>
2863
2694
</tr>
2864
2695
</tbody>
2866
2697
</div>
2867
2698
<hr>
2868
2699
<div class="refsect2" lang="en">
2869
 
<a name="id2867039"></a><h3>
2870
 
<a name="g-object-watch-closure"></a>g_object_watch_closure ()</h3>
2871
 
<a class="indexterm" name="id2867052"></a><pre class="programlisting">void                g_object_watch_closure              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
2872
 
                                                         <a class="link" href="gobject-Closures.html#GClosure">GClosure</a> *closure);</pre>
2873
 
<p>
2874
 
This function essentially limits the life time of the <em class="parameter"><code>closure</code></em>
2875
 
to the life time of the object. That is, when the object is finalized,
2876
 
the <em class="parameter"><code>closure</code></em> is invalidated by calling <a class="link" href="gobject-Closures.html#g-closure-invalidate"><code class="function">g_closure_invalidate()</code></a> on it,
2877
 
in order to prevent invocations of the closure with a finalized 
2878
 
(nonexisting) object. Also, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref"><code class="function">g_object_ref()</code></a> and <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a> are added
2879
 
as marshal guards to the <em class="parameter"><code>closure</code></em>, to ensure that an extra reference
2880
 
count is held on <em class="parameter"><code>object</code></em> during invocation of the <em class="parameter"><code>closure</code></em>.
2881
 
Usually, this function will be called on closures that use this <em class="parameter"><code>object</code></em>
2882
 
as closure data.
 
2700
<a name="g-object-watch-closure"></a><h3>g_object_watch_closure ()</h3>
 
2701
<pre class="programlisting">void                g_object_watch_closure              (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object,
 
2702
                                                         <a class="link" href="gobject-Closures.html#GClosure" title="GClosure">GClosure</a> *closure);</pre>
 
2703
<p>
 
2704
This function essentially limits the life time of the <em class="parameter"><code>closure</code></em> to
 
2705
the life time of the object. That is, when the object is finalized,
 
2706
the <em class="parameter"><code>closure</code></em> is invalidated by calling <a class="link" href="gobject-Closures.html#g-closure-invalidate" title="g_closure_invalidate ()"><code class="function">g_closure_invalidate()</code></a> on
 
2707
it, in order to prevent invocations of the closure with a finalized
 
2708
(nonexisting) object. Also, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> and <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a> are
 
2709
added as marshal guards to the <em class="parameter"><code>closure</code></em>, to ensure that an extra
 
2710
reference count is held on <em class="parameter"><code>object</code></em> during invocation of the
 
2711
<em class="parameter"><code>closure</code></em>.  Usually, this function will be called on closures that
 
2712
use this <em class="parameter"><code>object</code></em> as closure data.</p>
 
2713
<p>
2883
2714
</p>
2884
2715
<div class="variablelist"><table border="0">
2885
2716
<col align="left" valign="top">
2886
2717
<tbody>
2887
2718
<tr>
2888
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
 
2719
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2889
2720
<td> GObject restricting lifetime of <em class="parameter"><code>closure</code></em>
2890
2721
</td>
2891
2722
</tr>
2892
2723
<tr>
2893
 
<td><p><span class="term"><em class="parameter"><code>closure</code></em>&#160;:</span></p></td>
2894
 
<td>GClosure to watch
2895
 
 
2896
 
 
 
2724
<td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
 
2725
<td> GClosure to watch
2897
2726
</td>
2898
2727
</tr>
2899
2728
</tbody>
2901
2730
</div>
2902
2731
<hr>
2903
2732
<div class="refsect2" lang="en">
2904
 
<a name="id2867203"></a><h3>
2905
 
<a name="g-object-run-dispose"></a>g_object_run_dispose ()</h3>
2906
 
<a class="indexterm" name="id2867216"></a><pre class="programlisting">void                g_object_run_dispose                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
 
2733
<a name="g-object-run-dispose"></a><h3>g_object_run_dispose ()</h3>
 
2734
<pre class="programlisting">void                g_object_run_dispose                (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a> *object);</pre>
2907
2735
<p>
2908
 
Releases all references to other objects. This can be used to break 
 
2736
Releases all references to other objects. This can be used to break
2909
2737
reference cycles.
2910
2738
</p>
2911
 
<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
2912
 
<h3 class="title">Note</h3>
2913
 
<p>
2914
 
This functions should only be called from object system implementations.
 
2739
<p>
 
2740
This functions should only be called from object system implementations.</p>
 
2741
<p>
2915
2742
</p>
2916
 
</div>
2917
2743
<div class="variablelist"><table border="0">
2918
2744
<col align="left" valign="top">
2919
2745
<tbody><tr>
2920
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2921
 
<td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2922
 
 
2923
 
 
 
2746
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2747
<td> a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2924
2748
</td>
2925
2749
</tr></tbody>
2926
2750
</table></div>
2927
2751
</div>
2928
2752
<hr>
2929
2753
<div class="refsect2" lang="en">
2930
 
<a name="id2867278"></a><h3>
2931
 
<a name="G-OBJECT-WARN-INVALID-PROPERTY-ID:CAPS"></a>G_OBJECT_WARN_INVALID_PROPERTY_ID()</h3>
2932
 
<a class="indexterm" name="id2867292"></a><pre class="programlisting">#define             G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec)</pre>
 
2754
<a name="G-OBJECT-WARN-INVALID-PROPERTY-ID--CAPS"></a><h3>G_OBJECT_WARN_INVALID_PROPERTY_ID()</h3>
 
2755
<pre class="programlisting">#define             G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec)</pre>
2933
2756
<p>
2934
2757
This macro should be used to emit a standard warning about unexpected 
2935
 
properties in <code class="function">set_property()</code> and <code class="function">get_property()</code> implementations.
 
2758
properties in <code class="function">set_property()</code> and <code class="function">get_property()</code> implementations.</p>
 
2759
<p>
2936
2760
</p>
2937
2761
<div class="variablelist"><table border="0">
2938
2762
<col align="left" valign="top">
2939
2763
<tbody>
2940
2764
<tr>
2941
 
<td><p><span class="term"><em class="parameter"><code>object</code></em>&#160;:</span></p></td>
2942
 
<td>the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> on which <code class="function">set_property()</code> or <code class="function">get_property()</code> was called
2943
 
</td>
2944
 
</tr>
2945
 
<tr>
2946
 
<td><p><span class="term"><em class="parameter"><code>property_id</code></em>&#160;:</span></p></td>
2947
 
<td>the numeric id of the property
2948
 
</td>
2949
 
</tr>
2950
 
<tr>
2951
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
2952
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> of the property
2953
 
 
2954
 
 
 
2765
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
 
2766
<td> the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> on which <code class="function">set_property()</code> or <code class="function">get_property()</code> was called
 
2767
</td>
 
2768
</tr>
 
2769
<tr>
 
2770
<td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
 
2771
<td> the numeric id of the property
 
2772
</td>
 
2773
</tr>
 
2774
<tr>
 
2775
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
2776
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the property
2955
2777
</td>
2956
2778
</tr>
2957
2779
</tbody>
2959
2781
</div>
2960
2782
</div>
2961
2783
<div class="refsect1" lang="en">
2962
 
<a name="id2867418"></a><h2>Signal Details</h2>
 
2784
<a name="gobject-The-Base-Object-Type.signal-details"></a><h2>Signal Details</h2>
2963
2785
<div class="refsect2" lang="en">
2964
 
<a name="id2867429"></a><h3>
2965
 
<a name="GObject-notify"></a>The <code class="literal">"notify"</code> signal</h3>
2966
 
<a class="indexterm" name="id2867445"></a><pre class="programlisting">void                user_function                      (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>    *gobject,
2967
 
                                                        <a class="link" href="gobject-GParamSpec.html#GParamSpec">GParamSpec</a> *arg1,
 
2786
<a name="GObject-notify"></a><h3>The <code class="literal">"notify"</code> signal</h3>
 
2787
<pre class="programlisting">void                user_function                      (<a class="link" href="gobject-The-Base-Object-Type.html#GObject">GObject</a>    *pspec,
 
2788
                                                        <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec">GParamSpec</a> *gobject,
2968
2789
                                                        <a
2969
2790
href="./../glib/glib/glib-Basic-Types.html#gpointer"
2970
2791
>gpointer</a>    user_data)      : Run First / No Recursion / Has Details / Action / No Hooks</pre>
2971
2792
<p>
2972
 
The notify signal is emitted on an object when one of its properties 
2973
 
has been changed. Note that getting this signal doesn't guarantee that the
2974
 
value of the property has actually changed, it may also be emitted when
2975
 
the setter for the property is called to reinstate the previous value.
 
2793
The notify signal is emitted on an object when one of its
 
2794
properties has been changed. Note that getting this signal
 
2795
doesn't guarantee that the value of the property has actually
 
2796
changed, it may also be emitted when the setter for the property
 
2797
is called to reinstate the previous value.
2976
2798
</p>
2977
2799
<p>
2978
 
This signal is typically used to obtain change notification for a 
 
2800
This signal is typically used to obtain change notification for a
2979
2801
single property, by specifying the property name as a detail in the
2980
 
<a class="link" href="gobject-Signals.html#g-signal-connect"><code class="function">g_signal_connect()</code></a> call, like this:
 
2802
<a class="link" href="gobject-Signals.html#g-signal-connect" title="g_signal_connect()"><code class="function">g_signal_connect()</code></a> call, like this:
2981
2803
</p>
2982
2804
<div class="informalexample"><pre class="programlisting">
2983
2805
g_signal_connect (text_view-&gt;buffer, "notify::paste-target-list",
2985
2807
                  text_view)
2986
2808
</pre></div>
2987
2809
<p>
2988
 
It is important to note that you must use 
 
2810
It is important to note that you must use
2989
2811
<a class="link" href="gobject-GParamSpec.html#canonical-parameter-name">canonical</a> parameter names as
2990
 
detail strings for the notify signal.
 
2812
detail strings for the notify signal.</p>
 
2813
<p>
2991
2814
</p>
2992
2815
<div class="variablelist"><table border="0">
2993
2816
<col align="left" valign="top">
2994
2817
<tbody>
2995
2818
<tr>
2996
 
<td><p><span class="term"><em class="parameter"><code>pspec</code></em>&#160;:</span></p></td>
2997
 
<td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec"><span class="type">GParamSpec</span></a> of the property which changed
2998
 
</td>
2999
 
</tr>
3000
 
<tr>
3001
 
<td><p><span class="term"><em class="parameter"><code>gobject</code></em>&#160;:</span></p></td>
3002
 
<td>the object which received the signal.
3003
 
 
3004
 
</td>
3005
 
</tr>
3006
 
<tr>
3007
 
<td><p><span class="term"><em class="parameter"><code>user_data</code></em>&#160;:</span></p></td>
 
2819
<td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
 
2820
<td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the property which changed
 
2821
</td>
 
2822
</tr>
 
2823
<tr>
 
2824
<td><p><span class="term"><em class="parameter"><code>gobject</code></em> :</span></p></td>
 
2825
<td> the object which received the signal.
 
2826
</td>
 
2827
</tr>
 
2828
<tr>
 
2829
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
3008
2830
<td>user data set when the signal handler was connected.</td>
3009
2831
</tr>
3010
2832
</tbody>
3012
2834
</div>
3013
2835
</div>
3014
2836
<div class="refsect1" lang="en">
3015
 
<a name="id2867587"></a><h2>See Also</h2>
3016
 
<p>
3017
 
<a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecObject"><span class="type">GParamSpecObject</span></a>, <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-object"><code class="function">g_param_spec_object()</code></a>
3018
 
</p>
3019
 
</div>
3020
 
<div class="refsect1" lang="en">
3021
 
<a name="id2867618"></a><div class="refsect2" lang="en"><a name="id2867619"></a></div>
 
2837
<a name="gobject-The-Base-Object-Type.see-also"></a><h2>See Also</h2>
 
2838
#GParamSpecObject, <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-object" title="g_param_spec_object ()"><code class="function">g_param_spec_object()</code></a>
 
2839
</div>
 
2840
</div>
 
2841
<div class="footer">
3022
2842
<hr>
3023
 
<div class="refsect2" lang="en"><a name="id2867620"></a></div>
3024
 
</div>
3025
 
</div>
 
2843
          Generated by GTK-Doc V1.11</div>
3026
2844
</body>
3027
2845
</html>