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

« back to all changes in this revision

Viewing changes to docs/reference/gobject/xml/gparamspec.xml

  • 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
<refentry id="gobject-GParamSpec">
2
2
<refmeta>
3
 
<refentrytitle role="top_of_page">GParamSpec</refentrytitle>
 
3
<refentrytitle role="top_of_page" id="gobject-GParamSpec.top_of_page">GParamSpec</refentrytitle>
4
4
<manvolnum>3</manvolnum>
5
5
<refmiscinfo>GOBJECT Library</refmiscinfo>
6
6
</refmeta>
8
8
<refnamediv>
9
9
<refname>GParamSpec</refname>
10
10
<refpurpose>Metadata for parameter specifications</refpurpose>
11
 
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
12
11
</refnamediv>
13
12
 
14
 
<refsynopsisdiv role="synopsis">
 
13
<refsynopsisdiv id="gobject-GParamSpec.synopsis" role="synopsis">
15
14
<title role="synopsis.title">Synopsis</title>
16
15
 
17
16
<synopsis>
18
17
 
19
18
#include &lt;glib-object.h&gt;
20
19
 
21
 
 
22
 
#define             <link linkend="G-TYPE-IS-PARAM:CAPS">G_TYPE_IS_PARAM</link>                     (type)
23
 
#define             <link linkend="G-PARAM-SPEC:CAPS">G_PARAM_SPEC</link>                        (pspec)
24
 
#define             <link linkend="G-IS-PARAM-SPEC:CAPS">G_IS_PARAM_SPEC</link>                     (pspec)
25
 
#define             <link linkend="G-PARAM-SPEC-CLASS:CAPS">G_PARAM_SPEC_CLASS</link>                  (pclass)
26
 
#define             <link linkend="G-IS-PARAM-SPEC-CLASS:CAPS">G_IS_PARAM_SPEC_CLASS</link>               (pclass)
27
 
#define             <link linkend="G-PARAM-SPEC-GET-CLASS:CAPS">G_PARAM_SPEC_GET_CLASS</link>              (pspec)
28
 
#define             <link linkend="G-PARAM-SPEC-TYPE:CAPS">G_PARAM_SPEC_TYPE</link>                   (pspec)
29
 
#define             <link linkend="G-PARAM-SPEC-TYPE-NAME:CAPS">G_PARAM_SPEC_TYPE_NAME</link>              (pspec)
30
 
#define             <link linkend="G-PARAM-SPEC-VALUE-TYPE:CAPS">G_PARAM_SPEC_VALUE_TYPE</link>             (pspec)
 
20
#define             <link linkend="G-TYPE-IS-PARAM--CAPS">G_TYPE_IS_PARAM</link>                     (type)
 
21
#define             <link linkend="G-PARAM-SPEC--CAPS">G_PARAM_SPEC</link>                        (pspec)
 
22
#define             <link linkend="G-IS-PARAM-SPEC--CAPS">G_IS_PARAM_SPEC</link>                     (pspec)
 
23
#define             <link linkend="G-PARAM-SPEC-CLASS--CAPS">G_PARAM_SPEC_CLASS</link>                  (pclass)
 
24
#define             <link linkend="G-IS-PARAM-SPEC-CLASS--CAPS">G_IS_PARAM_SPEC_CLASS</link>               (pclass)
 
25
#define             <link linkend="G-PARAM-SPEC-GET-CLASS--CAPS">G_PARAM_SPEC_GET_CLASS</link>              (pspec)
 
26
#define             <link linkend="G-PARAM-SPEC-TYPE--CAPS">G_PARAM_SPEC_TYPE</link>                   (pspec)
 
27
#define             <link linkend="G-PARAM-SPEC-TYPE-NAME--CAPS">G_PARAM_SPEC_TYPE_NAME</link>              (pspec)
 
28
#define             <link linkend="G-PARAM-SPEC-VALUE-TYPE--CAPS">G_PARAM_SPEC_VALUE_TYPE</link>             (pspec)
31
29
                    <link linkend="GParamSpec">GParamSpec</link>;
32
30
                    <link linkend="GParamSpecClass">GParamSpecClass</link>;
33
31
enum                <link linkend="GParamFlags">GParamFlags</link>;
34
 
#define             <link linkend="G-PARAM-READWRITE:CAPS">G_PARAM_READWRITE</link>
35
 
#define             <link linkend="G-PARAM-STATIC-STRINGS:CAPS">G_PARAM_STATIC_STRINGS</link>
36
 
#define             <link linkend="G-PARAM-MASK:CAPS">G_PARAM_MASK</link>
37
 
#define             <link linkend="G-PARAM-USER-SHIFT:CAPS">G_PARAM_USER_SHIFT</link>
 
32
#define             <link linkend="G-PARAM-READWRITE--CAPS">G_PARAM_READWRITE</link>
 
33
#define             <link linkend="G-PARAM-STATIC-STRINGS--CAPS">G_PARAM_STATIC_STRINGS</link>
 
34
#define             <link linkend="G-PARAM-MASK--CAPS">G_PARAM_MASK</link>
 
35
#define             <link linkend="G-PARAM-USER-SHIFT--CAPS">G_PARAM_USER_SHIFT</link>
38
36
<link linkend="GParamSpec">GParamSpec</link>*         <link linkend="g-param-spec-ref">g_param_spec_ref</link>                    (<link linkend="GParamSpec">GParamSpec</link> *pspec);
39
37
<link linkend="void">void</link>                <link linkend="g-param-spec-unref">g_param_spec_unref</link>                  (<link linkend="GParamSpec">GParamSpec</link> *pspec);
40
38
<link linkend="void">void</link>                <link linkend="g-param-spec-sink">g_param_spec_sink</link>                   (<link linkend="GParamSpec">GParamSpec</link> *pspec);
102
100
 
103
101
 
104
102
 
105
 
<refsect1 role="desc">
 
103
<refsect1 id="gobject-GParamSpec.description" role="desc">
106
104
<title role="desc.title">Description</title>
107
105
<para>
108
106
<link linkend="GParamSpec"><type>GParamSpec</type></link> is an object structure that encapsulates the metadata
109
107
required to specify parameters, such as e.g. <link linkend="GObject"><type>GObject</type></link> properties.
110
108
</para>
 
109
<para>
111
110
<para id="canonical-parameter-name">
112
111
Parameter names need to start with a letter (a-z or A-Z). Subsequent
113
112
characters can be letters, numbers or a '-'.
114
113
All other characters are replaced by a '-' during construction.
115
114
The result of this replacement is called the canonical name of the
116
115
parameter.
 
116
</para></para>
 
117
<para>
117
118
</para>
118
119
</refsect1>
119
120
 
120
 
<refsect1 role="details">
 
121
<refsect1 id="gobject-GParamSpec.details" role="details">
121
122
<title role="details.title">Details</title>
122
 
<refsect2>
123
 
<title><anchor id="G-TYPE-IS-PARAM:CAPS" role="macro"/>G_TYPE_IS_PARAM()</title>
124
 
<indexterm><primary>G_TYPE_IS_PARAM</primary></indexterm><programlisting>#define G_TYPE_IS_PARAM(type)          (G_TYPE_FUNDAMENTAL (type) == G_TYPE_PARAM)
 
123
<refsect2 id="G-TYPE-IS-PARAM--CAPS" role="macro">
 
124
<title>G_TYPE_IS_PARAM()</title>
 
125
<indexterm zone="G-TYPE-IS-PARAM--CAPS"><primary sortas="G_TYPE_IS_PARAM">G_TYPE_IS_PARAM</primary></indexterm><programlisting>#define G_TYPE_IS_PARAM(type)            (G_TYPE_FUNDAMENTAL (type) == G_TYPE_PARAM)
125
126
</programlisting>
126
127
<para>
127
 
Returns whether <parameter>type</parameter> "is a" <link linkend="G-TYPE-PARAM:CAPS"><literal>G_TYPE_PARAM</literal></link>.
 
128
Checks whether <parameter>type</parameter> "is a" <link linkend="G-TYPE-PARAM--CAPS"><literal>G_TYPE_PARAM</literal></link>.</para>
 
129
<para>
128
130
</para><variablelist role="params">
129
 
<varlistentry><term><parameter>type</parameter>&nbsp;:</term>
130
 
<listitem><simpara>a <link linkend="GType"><type>GType</type></link> ID
131
 
 
132
 
 
 
131
<varlistentry><term><parameter>type</parameter>&#160;:</term>
 
132
<listitem><simpara> a <link linkend="GType"><type>GType</type></link> ID
133
133
</simpara></listitem></varlistentry>
134
134
</variablelist></refsect2>
135
 
<refsect2>
136
 
<title><anchor id="G-PARAM-SPEC:CAPS" role="macro"/>G_PARAM_SPEC()</title>
137
 
<indexterm><primary>G_PARAM_SPEC</primary></indexterm><programlisting>#define G_PARAM_SPEC(pspec)               (G_TYPE_CHECK_INSTANCE_CAST ((pspec), G_TYPE_PARAM, GParamSpec))
 
135
<refsect2 id="G-PARAM-SPEC--CAPS" role="macro">
 
136
<title>G_PARAM_SPEC()</title>
 
137
<indexterm zone="G-PARAM-SPEC--CAPS"><primary sortas="G_PARAM_SPEC">G_PARAM_SPEC</primary></indexterm><programlisting>#define G_PARAM_SPEC(pspec)               (G_TYPE_CHECK_INSTANCE_CAST ((pspec), G_TYPE_PARAM, GParamSpec))
138
138
</programlisting>
139
139
<para>
140
140
Casts a derived <link linkend="GParamSpec"><type>GParamSpec</type></link> object (e.g. of type <link linkend="GParamSpecInt"><type>GParamSpecInt</type></link>) into
141
 
a <link linkend="GParamSpec"><type>GParamSpec</type></link> object.
142
 
</para><variablelist role="params">
143
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
144
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
145
 
 
146
 
 
147
 
</simpara></listitem></varlistentry>
148
 
</variablelist></refsect2>
149
 
<refsect2>
150
 
<title><anchor id="G-IS-PARAM-SPEC:CAPS" role="macro"/>G_IS_PARAM_SPEC()</title>
151
 
<indexterm><primary>G_IS_PARAM_SPEC</primary></indexterm><programlisting>#define G_IS_PARAM_SPEC(pspec)         (G_TYPE_CHECK_INSTANCE_TYPE ((pspec), G_TYPE_PARAM))
152
 
</programlisting>
153
 
<para>
154
 
Checks whether <parameter>pspec</parameter> "is a" valid <link linkend="GParamSpec"><type>GParamSpec</type></link> structure of type <link linkend="G-TYPE-PARAM:CAPS"><literal>G_TYPE_PARAM</literal></link>
155
 
or derived.
156
 
</para><variablelist role="params">
157
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
158
 
<listitem><simpara>a <link linkend="GParamSpec"><type>GParamSpec</type></link>
159
 
 
160
 
 
161
 
</simpara></listitem></varlistentry>
162
 
</variablelist></refsect2>
163
 
<refsect2>
164
 
<title><anchor id="G-PARAM-SPEC-CLASS:CAPS" role="macro"/>G_PARAM_SPEC_CLASS()</title>
165
 
<indexterm><primary>G_PARAM_SPEC_CLASS</primary></indexterm><programlisting>#define G_PARAM_SPEC_CLASS(pclass)      (G_TYPE_CHECK_CLASS_CAST ((pclass), G_TYPE_PARAM, GParamSpecClass))
166
 
</programlisting>
167
 
<para>
168
 
Casts a derived <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> structure into a <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> structure.
169
 
</para><variablelist role="params">
170
 
<varlistentry><term><parameter>pclass</parameter>&nbsp;:</term>
171
 
<listitem><simpara>a valid <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link>
172
 
 
173
 
 
174
 
</simpara></listitem></varlistentry>
175
 
</variablelist></refsect2>
176
 
<refsect2>
177
 
<title><anchor id="G-IS-PARAM-SPEC-CLASS:CAPS" role="macro"/>G_IS_PARAM_SPEC_CLASS()</title>
178
 
<indexterm><primary>G_IS_PARAM_SPEC_CLASS</primary></indexterm><programlisting>#define G_IS_PARAM_SPEC_CLASS(pclass)   (G_TYPE_CHECK_CLASS_TYPE ((pclass), G_TYPE_PARAM))
 
141
a <link linkend="GParamSpec"><type>GParamSpec</type></link> object.</para>
 
142
<para>
 
143
</para><variablelist role="params">
 
144
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
145
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
146
</simpara></listitem></varlistentry>
 
147
</variablelist></refsect2>
 
148
<refsect2 id="G-IS-PARAM-SPEC--CAPS" role="macro">
 
149
<title>G_IS_PARAM_SPEC()</title>
 
150
<indexterm zone="G-IS-PARAM-SPEC--CAPS"><primary sortas="G_IS_PARAM_SPEC">G_IS_PARAM_SPEC</primary></indexterm><programlisting>#define G_IS_PARAM_SPEC(pspec)           (G_TYPE_CHECK_INSTANCE_TYPE ((pspec), G_TYPE_PARAM))
 
151
</programlisting>
 
152
<para>
 
153
Checks whether <parameter>pspec</parameter> "is a" valid <link linkend="GParamSpec"><type>GParamSpec</type></link> structure of type <link linkend="G-TYPE-PARAM--CAPS"><literal>G_TYPE_PARAM</literal></link>
 
154
or derived.</para>
 
155
<para>
 
156
</para><variablelist role="params">
 
157
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
158
<listitem><simpara> a <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
159
</simpara></listitem></varlistentry>
 
160
</variablelist></refsect2>
 
161
<refsect2 id="G-PARAM-SPEC-CLASS--CAPS" role="macro">
 
162
<title>G_PARAM_SPEC_CLASS()</title>
 
163
<indexterm zone="G-PARAM-SPEC-CLASS--CAPS"><primary sortas="G_PARAM_SPEC_CLASS">G_PARAM_SPEC_CLASS</primary></indexterm><programlisting>#define G_PARAM_SPEC_CLASS(pclass)      (G_TYPE_CHECK_CLASS_CAST ((pclass), G_TYPE_PARAM, GParamSpecClass))
 
164
</programlisting>
 
165
<para>
 
166
Casts a derived <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> structure into a <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> structure.</para>
 
167
<para>
 
168
</para><variablelist role="params">
 
169
<varlistentry><term><parameter>pclass</parameter>&#160;:</term>
 
170
<listitem><simpara> a valid <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link>
 
171
</simpara></listitem></varlistentry>
 
172
</variablelist></refsect2>
 
173
<refsect2 id="G-IS-PARAM-SPEC-CLASS--CAPS" role="macro">
 
174
<title>G_IS_PARAM_SPEC_CLASS()</title>
 
175
<indexterm zone="G-IS-PARAM-SPEC-CLASS--CAPS"><primary sortas="G_IS_PARAM_SPEC_CLASS">G_IS_PARAM_SPEC_CLASS</primary></indexterm><programlisting>#define G_IS_PARAM_SPEC_CLASS(pclass)   (G_TYPE_CHECK_CLASS_TYPE ((pclass), G_TYPE_PARAM))
179
176
</programlisting>
180
177
<para>
181
178
Checks whether <parameter>pclass</parameter> "is a" valid <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> structure of type 
182
 
<link linkend="G-TYPE-PARAM:CAPS"><literal>G_TYPE_PARAM</literal></link> or derived.
183
 
</para><variablelist role="params">
184
 
<varlistentry><term><parameter>pclass</parameter>&nbsp;:</term>
185
 
<listitem><simpara>a <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link>
186
 
 
187
 
 
188
 
</simpara></listitem></varlistentry>
189
 
</variablelist></refsect2>
190
 
<refsect2>
191
 
<title><anchor id="G-PARAM-SPEC-GET-CLASS:CAPS" role="macro"/>G_PARAM_SPEC_GET_CLASS()</title>
192
 
<indexterm><primary>G_PARAM_SPEC_GET_CLASS</primary></indexterm><programlisting>#define G_PARAM_SPEC_GET_CLASS(pspec)   (G_TYPE_INSTANCE_GET_CLASS ((pspec), G_TYPE_PARAM, GParamSpecClass))
193
 
</programlisting>
194
 
<para>
195
 
Retrieves the <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.
196
 
</para><variablelist role="params">
197
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
198
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
199
 
 
200
 
 
201
 
</simpara></listitem></varlistentry>
202
 
</variablelist></refsect2>
203
 
<refsect2>
204
 
<title><anchor id="G-PARAM-SPEC-TYPE:CAPS" role="macro"/>G_PARAM_SPEC_TYPE()</title>
205
 
<indexterm><primary>G_PARAM_SPEC_TYPE</primary></indexterm><programlisting>#define G_PARAM_SPEC_TYPE(pspec)     (G_TYPE_FROM_INSTANCE (pspec))
206
 
</programlisting>
207
 
<para>
208
 
Retrieves the <link linkend="GType"><type>GType</type></link> of this <parameter>pspec</parameter>.
209
 
</para><variablelist role="params">
210
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
211
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
212
 
 
213
 
 
214
 
</simpara></listitem></varlistentry>
215
 
</variablelist></refsect2>
216
 
<refsect2>
217
 
<title><anchor id="G-PARAM-SPEC-TYPE-NAME:CAPS" role="macro"/>G_PARAM_SPEC_TYPE_NAME()</title>
218
 
<indexterm><primary>G_PARAM_SPEC_TYPE_NAME</primary></indexterm><programlisting>#define G_PARAM_SPEC_TYPE_NAME(pspec)   (g_type_name (G_PARAM_SPEC_TYPE (pspec)))
219
 
</programlisting>
220
 
<para>
221
 
Retrieves the <link linkend="GType"><type>GType</type></link> name of this <parameter>pspec</parameter>.
222
 
</para><variablelist role="params">
223
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
224
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
225
 
 
226
 
 
227
 
</simpara></listitem></varlistentry>
228
 
</variablelist></refsect2>
229
 
<refsect2>
230
 
<title><anchor id="G-PARAM-SPEC-VALUE-TYPE:CAPS" role="macro"/>G_PARAM_SPEC_VALUE_TYPE()</title>
231
 
<indexterm><primary>G_PARAM_SPEC_VALUE_TYPE</primary></indexterm><programlisting>#define        G_PARAM_SPEC_VALUE_TYPE(pspec)  (G_PARAM_SPEC (pspec)-&gt;value_type)
232
 
</programlisting>
233
 
<para>
234
 
Retrieves the <link linkend="GType"><type>GType</type></link> to initialize a <link linkend="GValue"><type>GValue</type></link> for this parameter.
235
 
</para><variablelist role="params">
236
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
237
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
238
 
 
239
 
 
240
 
</simpara></listitem></varlistentry>
241
 
</variablelist></refsect2>
242
 
<refsect2>
243
 
<title><anchor id="GParamSpec" role="struct"/>GParamSpec</title>
244
 
<indexterm><primary>GParamSpec</primary></indexterm><programlisting>typedef struct {
 
179
<link linkend="G-TYPE-PARAM--CAPS"><literal>G_TYPE_PARAM</literal></link> or derived.</para>
 
180
<para>
 
181
</para><variablelist role="params">
 
182
<varlistentry><term><parameter>pclass</parameter>&#160;:</term>
 
183
<listitem><simpara> a <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link>
 
184
</simpara></listitem></varlistentry>
 
185
</variablelist></refsect2>
 
186
<refsect2 id="G-PARAM-SPEC-GET-CLASS--CAPS" role="macro">
 
187
<title>G_PARAM_SPEC_GET_CLASS()</title>
 
188
<indexterm zone="G-PARAM-SPEC-GET-CLASS--CAPS"><primary sortas="G_PARAM_SPEC_GET_CLASS">G_PARAM_SPEC_GET_CLASS</primary></indexterm><programlisting>#define G_PARAM_SPEC_GET_CLASS(pspec)       (G_TYPE_INSTANCE_GET_CLASS ((pspec), G_TYPE_PARAM, GParamSpecClass))
 
189
</programlisting>
 
190
<para>
 
191
Retrieves the <link linkend="GParamSpecClass"><type>GParamSpecClass</type></link> of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.</para>
 
192
<para>
 
193
</para><variablelist role="params">
 
194
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
195
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
196
</simpara></listitem></varlistentry>
 
197
</variablelist></refsect2>
 
198
<refsect2 id="G-PARAM-SPEC-TYPE--CAPS" role="macro">
 
199
<title>G_PARAM_SPEC_TYPE()</title>
 
200
<indexterm zone="G-PARAM-SPEC-TYPE--CAPS"><primary sortas="G_PARAM_SPEC_TYPE">G_PARAM_SPEC_TYPE</primary></indexterm><programlisting>#define G_PARAM_SPEC_TYPE(pspec)   (G_TYPE_FROM_INSTANCE (pspec))
 
201
</programlisting>
 
202
<para>
 
203
Retrieves the <link linkend="GType"><type>GType</type></link> of this <parameter>pspec</parameter>.</para>
 
204
<para>
 
205
</para><variablelist role="params">
 
206
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
207
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
208
</simpara></listitem></varlistentry>
 
209
</variablelist></refsect2>
 
210
<refsect2 id="G-PARAM-SPEC-TYPE-NAME--CAPS" role="macro">
 
211
<title>G_PARAM_SPEC_TYPE_NAME()</title>
 
212
<indexterm zone="G-PARAM-SPEC-TYPE-NAME--CAPS"><primary sortas="G_PARAM_SPEC_TYPE_NAME">G_PARAM_SPEC_TYPE_NAME</primary></indexterm><programlisting>#define G_PARAM_SPEC_TYPE_NAME(pspec)       (g_type_name (G_PARAM_SPEC_TYPE (pspec)))
 
213
</programlisting>
 
214
<para>
 
215
Retrieves the <link linkend="GType"><type>GType</type></link> name of this <parameter>pspec</parameter>.</para>
 
216
<para>
 
217
</para><variablelist role="params">
 
218
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
219
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
220
</simpara></listitem></varlistentry>
 
221
</variablelist></refsect2>
 
222
<refsect2 id="G-PARAM-SPEC-VALUE-TYPE--CAPS" role="macro">
 
223
<title>G_PARAM_SPEC_VALUE_TYPE()</title>
 
224
<indexterm zone="G-PARAM-SPEC-VALUE-TYPE--CAPS"><primary sortas="G_PARAM_SPEC_VALUE_TYPE">G_PARAM_SPEC_VALUE_TYPE</primary></indexterm><programlisting>#define  G_PARAM_SPEC_VALUE_TYPE(pspec)  (G_PARAM_SPEC (pspec)-&gt;value_type)
 
225
</programlisting>
 
226
<para>
 
227
Retrieves the <link linkend="GType"><type>GType</type></link> to initialize a <link linkend="GValue"><type>GValue</type></link> for this parameter.</para>
 
228
<para>
 
229
</para><variablelist role="params">
 
230
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
231
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
232
</simpara></listitem></varlistentry>
 
233
</variablelist></refsect2>
 
234
<refsect2 id="GParamSpec" role="struct">
 
235
<title>GParamSpec</title>
 
236
<indexterm zone="GParamSpec"><primary sortas="GParamSpec">GParamSpec</primary></indexterm><programlisting>typedef struct {
245
237
  GTypeInstance  g_type_instance;
246
238
 
247
239
  gchar         *name;
251
243
} GParamSpec;
252
244
</programlisting>
253
245
<para>
254
 
All fields of the <structname>GParamSpec</structname> struct are private and
255
 
should not be used directly, except for the following:
 
246
All other fields of the <structname>GParamSpec</structname> struct are private and
 
247
should not be used directly.</para>
 
248
<para>
256
249
</para><variablelist role="struct">
257
250
<varlistentry>
258
 
<term><link linkend="GTypeInstance">GTypeInstance</link>&nbsp;<structfield>g_type_instance</structfield>;</term>
259
 
<listitem><simpara>private <link linkend="GTypeInstance"><type>GTypeInstance</type></link> portion
260
 
</simpara></listitem>
261
 
</varlistentry>
262
 
<varlistentry>
263
 
<term><link linkend="gchar">gchar</link>&nbsp;*<structfield>name</structfield>;</term>
264
 
<listitem><simpara>           name of this parameter
265
 
</simpara></listitem>
266
 
</varlistentry>
267
 
<varlistentry>
268
 
<term><link linkend="GParamFlags">GParamFlags</link>&nbsp;<structfield>flags</structfield>;</term>
269
 
<listitem><simpara>          <link linkend="GParamFlags"><type>GParamFlags</type></link> flags for this parameter
270
 
</simpara></listitem>
271
 
</varlistentry>
272
 
<varlistentry>
273
 
<term><link linkend="GType">GType</link>&nbsp;<structfield>value_type</structfield>;</term>
274
 
<listitem><simpara>     the <link linkend="GValue"><type>GValue</type></link> type for this parameter
275
 
</simpara></listitem>
276
 
</varlistentry>
277
 
<varlistentry>
278
 
<term><link linkend="GType">GType</link>&nbsp;<structfield>owner_type</structfield>;</term>
279
 
<listitem><simpara>     <link linkend="GType"><type>GType</type></link> type that uses (introduces) this paremeter
280
 
 
 
251
<term><link linkend="GTypeInstance">GTypeInstance</link>&#160;<structfield>g_type_instance</structfield>;</term>
 
252
<listitem><simpara> private <link linkend="GTypeInstance"><type>GTypeInstance</type></link> portion
 
253
</simpara></listitem>
 
254
</varlistentry>
 
255
<varlistentry>
 
256
<term><link linkend="gchar">gchar</link>&#160;*<structfield>name</structfield>;</term>
 
257
<listitem><simpara> name of this parameter
 
258
</simpara></listitem>
 
259
</varlistentry>
 
260
<varlistentry>
 
261
<term><link linkend="GParamFlags">GParamFlags</link>&#160;<structfield>flags</structfield>;</term>
 
262
<listitem><simpara> <link linkend="GParamFlags"><type>GParamFlags</type></link> flags for this parameter
 
263
</simpara></listitem>
 
264
</varlistentry>
 
265
<varlistentry>
 
266
<term><link linkend="GType">GType</link>&#160;<structfield>value_type</structfield>;</term>
 
267
<listitem><simpara> the <link linkend="GValue"><type>GValue</type></link> type for this parameter
 
268
</simpara></listitem>
 
269
</varlistentry>
 
270
<varlistentry>
 
271
<term><link linkend="GType">GType</link>&#160;<structfield>owner_type</structfield>;</term>
 
272
<listitem><simpara> <link linkend="GType"><type>GType</type></link> type that uses (introduces) this paremeter
281
273
</simpara></listitem>
282
274
</varlistentry>
283
275
</variablelist></refsect2>
284
 
<refsect2>
285
 
<title><anchor id="GParamSpecClass" role="struct"/>GParamSpecClass</title>
286
 
<indexterm><primary>GParamSpecClass</primary></indexterm><programlisting>typedef struct {
 
276
<refsect2 id="GParamSpecClass" role="struct">
 
277
<title>GParamSpecClass</title>
 
278
<indexterm zone="GParamSpecClass"><primary sortas="GParamSpecClass">GParamSpecClass</primary></indexterm><programlisting>typedef struct {
287
279
  GTypeClass      g_type_class;
288
280
 
289
281
  GType           value_type;
303
295
<para>
304
296
The class structure for the <structname>GParamSpec</structname> type.
305
297
Normally, <structname>GParamSpec</structname> classes are filled by
306
 
<link linkend="g-param-type-register-static"><function>g_param_type_register_static()</function></link>.
 
298
<link linkend="g-param-type-register-static"><function>g_param_type_register_static()</function></link>.</para>
 
299
<para>
307
300
</para><variablelist role="struct">
308
301
<varlistentry>
309
 
<term><link linkend="GTypeClass">GTypeClass</link>&nbsp;<structfield>g_type_class</structfield>;</term>
310
 
<listitem><simpara>the parent class
311
 
</simpara></listitem>
312
 
</varlistentry>
313
 
<varlistentry>
314
 
<term><link linkend="GType">GType</link>&nbsp;<structfield>value_type</structfield>;</term>
315
 
<listitem><simpara>the <link linkend="GValue"><type>GValue</type></link> type for this parameter
316
 
</simpara></listitem>
317
 
</varlistentry>
318
 
<varlistentry>
319
 
<term><structfield>finalize</structfield>&nbsp;()</term>
320
 
<listitem><simpara>The instance finalization function (optional), should chain 
321
 
  up to the finalize method of the parent class.
322
 
</simpara></listitem>
323
 
</varlistentry>
324
 
<varlistentry>
325
 
<term><structfield>value_set_default</structfield>&nbsp;()</term>
326
 
<listitem><simpara>Resets a <parameter>value</parameter> to the default value for this type
327
 
  (recommended, the default is <link linkend="g-value-reset"><function>g_value_reset()</function></link>), see 
328
 
  <link linkend="g-param-value-set-default"><function>g_param_value_set_default()</function></link>.
329
 
</simpara></listitem>
330
 
</varlistentry>
331
 
<varlistentry>
332
 
<term><structfield>value_validate</structfield>&nbsp;()</term>
333
 
<listitem><simpara>Ensures that the contents of <parameter>value</parameter> comply with the 
334
 
  specifications set out by this type (optional), see 
335
 
  <link linkend="g-param-value-set-validate"><function>g_param_value_set_validate()</function></link>.
336
 
</simpara></listitem>
337
 
</varlistentry>
338
 
<varlistentry>
339
 
<term><structfield>values_cmp</structfield>&nbsp;()</term>
340
 
<listitem><simpara>Compares <parameter>value1</parameter> with <parameter>value2</parameter> according to this type
341
 
  (recommended, the default is <link linkend="memcmp"><function>memcmp()</function></link>), see <link linkend="g-param-values-cmp"><function>g_param_values_cmp()</function></link>.
342
 
 
 
302
<term><link linkend="GTypeClass">GTypeClass</link>&#160;<structfield>g_type_class</structfield>;</term>
 
303
<listitem><simpara> the parent class
 
304
</simpara></listitem>
 
305
</varlistentry>
 
306
<varlistentry>
 
307
<term><link linkend="GType">GType</link>&#160;<structfield>value_type</structfield>;</term>
 
308
<listitem><simpara> the <link linkend="GValue"><type>GValue</type></link> type for this parameter
 
309
</simpara></listitem>
 
310
</varlistentry>
 
311
<varlistentry>
 
312
<term><structfield>finalize</structfield>&#160;()</term>
 
313
<listitem><simpara> The instance finalization function (optional), should chain 
 
314
 up to the finalize method of the parent class.
 
315
</simpara></listitem>
 
316
</varlistentry>
 
317
<varlistentry>
 
318
<term><structfield>value_set_default</structfield>&#160;()</term>
 
319
<listitem><simpara> Resets a <parameter>value</parameter> to the default value for this type
 
320
 (recommended, the default is <link linkend="g-value-reset"><function>g_value_reset()</function></link>), see 
 
321
 <link linkend="g-param-value-set-default"><function>g_param_value_set_default()</function></link>.
 
322
</simpara></listitem>
 
323
</varlistentry>
 
324
<varlistentry>
 
325
<term><structfield>value_validate</structfield>&#160;()</term>
 
326
<listitem><simpara> Ensures that the contents of <parameter>value</parameter> comply with the 
 
327
 specifications set out by this type (optional), see 
 
328
 <link linkend="g-param-value-set-validate"><function>g_param_value_set_validate()</function></link>.
 
329
</simpara></listitem>
 
330
</varlistentry>
 
331
<varlistentry>
 
332
<term><structfield>values_cmp</structfield>&#160;()</term>
 
333
<listitem><simpara> Compares <parameter>value1</parameter> with <parameter>value2</parameter> according to this type
 
334
 (recommended, the default is <link linkend="memcmp"><function>memcmp()</function></link>), see <link linkend="g-param-values-cmp"><function>g_param_values_cmp()</function></link>.
343
335
</simpara></listitem>
344
336
</varlistentry>
345
337
</variablelist></refsect2>
346
 
<refsect2>
347
 
<title><anchor id="GParamFlags" role="enum"/>enum GParamFlags</title>
348
 
<indexterm><primary>GParamFlags</primary></indexterm><programlisting>typedef enum
 
338
<refsect2 id="GParamFlags" role="enum">
 
339
<title>enum GParamFlags</title>
 
340
<indexterm zone="GParamFlags"><primary sortas="GParamFlags">GParamFlags</primary></indexterm><programlisting>typedef enum
349
341
{
350
342
  G_PARAM_READABLE            = 1 &lt;&lt; 0,
351
343
  G_PARAM_WRITABLE            = 1 &lt;&lt; 1,
362
354
</programlisting>
363
355
<para>
364
356
Through the <link linkend="GParamFlags"><type>GParamFlags</type></link> flag values, certain aspects of parameters
365
 
can be configured.
 
357
can be configured.</para>
 
358
<para>
366
359
</para><variablelist role="enum">
367
 
<varlistentry>
368
 
<term><anchor id="G-PARAM-READABLE:CAPS" role="constant"/><literal>G_PARAM_READABLE</literal></term>
369
 
<listitem><simpara>      the parameter is readable
370
 
</simpara></listitem>
371
 
</varlistentry>
372
 
<varlistentry>
373
 
<term><anchor id="G-PARAM-WRITABLE:CAPS" role="constant"/><literal>G_PARAM_WRITABLE</literal></term>
374
 
<listitem><simpara>      the parameter is writable
375
 
</simpara></listitem>
376
 
</varlistentry>
377
 
<varlistentry>
378
 
<term><anchor id="G-PARAM-CONSTRUCT:CAPS" role="constant"/><literal>G_PARAM_CONSTRUCT</literal></term>
379
 
<listitem><simpara>     the parameter will be set upon object construction
380
 
</simpara></listitem>
381
 
</varlistentry>
382
 
<varlistentry>
383
 
<term><anchor id="G-PARAM-CONSTRUCT-ONLY:CAPS" role="constant"/><literal>G_PARAM_CONSTRUCT_ONLY</literal></term>
384
 
<listitem><simpara>the parameter will only be set upon object construction
385
 
</simpara></listitem>
386
 
</varlistentry>
387
 
<varlistentry>
388
 
<term><anchor id="G-PARAM-LAX-VALIDATION:CAPS" role="constant"/><literal>G_PARAM_LAX_VALIDATION</literal></term>
389
 
<listitem><simpara>upon parameter conversion (see <link linkend="g-param-value-convert"><function>g_param_value_convert()</function></link>)
390
 
                         strict validation is not required
391
 
</simpara></listitem>
392
 
</varlistentry>
393
 
<varlistentry>
394
 
<term><anchor id="G-PARAM-STATIC-NAME:CAPS" role="constant"/><literal>G_PARAM_STATIC_NAME</literal></term>
395
 
<listitem><simpara>   the string used as name when constructing the 
396
 
                         parameter is guaranteed to remain valid and
397
 
                         unmodified for the lifetime of the parameter. 
398
 
                         Since 2.8
399
 
</simpara></listitem>
400
 
</varlistentry>
401
 
<varlistentry>
402
 
<term><anchor id="G-PARAM-PRIVATE:CAPS" role="constant"/><literal>G_PARAM_PRIVATE</literal></term>
403
 
<listitem><simpara>
404
 
</simpara></listitem>
405
 
</varlistentry>
406
 
<varlistentry>
407
 
<term><anchor id="G-PARAM-STATIC-NICK:CAPS" role="constant"/><literal>G_PARAM_STATIC_NICK</literal></term>
408
 
<listitem><simpara>
409
 
</simpara></listitem>
410
 
</varlistentry>
411
 
<varlistentry>
412
 
<term><anchor id="G-PARAM-STATIC-BLURB:CAPS" role="constant"/><literal>G_PARAM_STATIC_BLURB</literal></term>
413
 
<listitem><simpara>  the string used as blurb when constructing the 
414
 
                         parameter is guaranteed to remain valid and 
415
 
                         unmodified for the lifetime of the parameter. 
416
 
                         Since 2.8
417
 
 
 
360
<varlistentry id="G-PARAM-READABLE--CAPS" role="constant">
 
361
<term><literal>G_PARAM_READABLE</literal></term>
 
362
<listitem><simpara> the parameter is readable
 
363
</simpara></listitem>
 
364
</varlistentry>
 
365
<varlistentry id="G-PARAM-WRITABLE--CAPS" role="constant">
 
366
<term><literal>G_PARAM_WRITABLE</literal></term>
 
367
<listitem><simpara> the parameter is writable
 
368
</simpara></listitem>
 
369
</varlistentry>
 
370
<varlistentry id="G-PARAM-CONSTRUCT--CAPS" role="constant">
 
371
<term><literal>G_PARAM_CONSTRUCT</literal></term>
 
372
<listitem><simpara> the parameter will be set upon object construction
 
373
</simpara></listitem>
 
374
</varlistentry>
 
375
<varlistentry id="G-PARAM-CONSTRUCT-ONLY--CAPS" role="constant">
 
376
<term><literal>G_PARAM_CONSTRUCT_ONLY</literal></term>
 
377
<listitem><simpara> the parameter will only be set upon object construction
 
378
</simpara></listitem>
 
379
</varlistentry>
 
380
<varlistentry id="G-PARAM-LAX-VALIDATION--CAPS" role="constant">
 
381
<term><literal>G_PARAM_LAX_VALIDATION</literal></term>
 
382
<listitem><simpara> upon parameter conversion (see <link linkend="g-param-value-convert"><function>g_param_value_convert()</function></link>)
 
383
 strict validation is not required
 
384
</simpara></listitem>
 
385
</varlistentry>
 
386
<varlistentry id="G-PARAM-STATIC-NAME--CAPS" role="constant">
 
387
<term><literal>G_PARAM_STATIC_NAME</literal></term>
 
388
<listitem><simpara> the string used as name when constructing the 
 
389
 parameter is guaranteed to remain valid and
 
390
 unmodified for the lifetime of the parameter. 
 
391
 Since 2.8
 
392
</simpara></listitem>
 
393
</varlistentry>
 
394
<varlistentry id="G-PARAM-PRIVATE--CAPS" role="constant">
 
395
<term><literal>G_PARAM_PRIVATE</literal></term>
 
396
<listitem><simpara> internal
 
397
</simpara></listitem>
 
398
</varlistentry>
 
399
<varlistentry id="G-PARAM-STATIC-NICK--CAPS" role="constant">
 
400
<term><literal>G_PARAM_STATIC_NICK</literal></term>
 
401
<listitem><simpara> the string used as nick when constructing the
 
402
 parameter is guaranteed to remain valid and
 
403
 unmmodified for the lifetime of the parameter.
 
404
 Since 2.8
 
405
</simpara></listitem>
 
406
</varlistentry>
 
407
<varlistentry id="G-PARAM-STATIC-BLURB--CAPS" role="constant">
 
408
<term><literal>G_PARAM_STATIC_BLURB</literal></term>
 
409
<listitem><simpara> the string used as blurb when constructing the 
 
410
 parameter is guaranteed to remain valid and 
 
411
 unmodified for the lifetime of the parameter. 
 
412
 Since 2.8
418
413
</simpara></listitem>
419
414
</varlistentry>
420
415
</variablelist></refsect2>
421
 
<refsect2>
422
 
<title><anchor id="G-PARAM-READWRITE:CAPS" role="macro"/>G_PARAM_READWRITE</title>
423
 
<indexterm><primary>G_PARAM_READWRITE</primary></indexterm><programlisting>#define      G_PARAM_READWRITE       (G_PARAM_READABLE | G_PARAM_WRITABLE)
424
 
</programlisting>
425
 
<para>
426
 
<link linkend="GParamFlags"><type>GParamFlags</type></link> value alias for <link linkend="G-PARAM-READABLE:CAPS"><literal>G_PARAM_READABLE</literal></link> | <link linkend="G-PARAM-WRITABLE:CAPS"><literal>G_PARAM_WRITABLE</literal></link>.
427
 
</para></refsect2>
428
 
<refsect2>
429
 
<title><anchor id="G-PARAM-STATIC-STRINGS:CAPS" role="macro"/>G_PARAM_STATIC_STRINGS</title>
430
 
<indexterm><primary>G_PARAM_STATIC_STRINGS</primary></indexterm><programlisting>#define G_PARAM_STATIC_STRINGS (G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)
431
 
</programlisting>
432
 
<para>
433
 
<link linkend="GParamFlags"><type>GParamFlags</type></link> value alias for <link linkend="G-PARAM-STATIC-NAME:CAPS"><literal>G_PARAM_STATIC_NAME</literal></link> | <link linkend="G-PARAM-STATIC-NICK:CAPS"><literal>G_PARAM_STATIC_NICK</literal></link> | <link linkend="G-PARAM-STATIC-BLURB:CAPS"><literal>G_PARAM_STATIC_BLURB</literal></link>.
434
 
 
435
 
Since 2.13.0
436
 
</para></refsect2>
437
 
<refsect2>
438
 
<title><anchor id="G-PARAM-MASK:CAPS" role="macro"/>G_PARAM_MASK</title>
439
 
<indexterm><primary>G_PARAM_MASK</primary></indexterm><programlisting>#define   G_PARAM_MASK            (0x000000ff)
440
 
</programlisting>
441
 
<para>
442
 
Mask containing the bits of <link linkend="GParamSpec"><type>GParamSpec</type></link>.flags which are reserved for GLib.
443
 
</para></refsect2>
444
 
<refsect2>
445
 
<title><anchor id="G-PARAM-USER-SHIFT:CAPS" role="macro"/>G_PARAM_USER_SHIFT</title>
446
 
<indexterm><primary>G_PARAM_USER_SHIFT</primary></indexterm><programlisting>#define     G_PARAM_USER_SHIFT      (8)
 
416
<refsect2 id="G-PARAM-READWRITE--CAPS" role="macro">
 
417
<title>G_PARAM_READWRITE</title>
 
418
<indexterm zone="G-PARAM-READWRITE--CAPS"><primary sortas="G_PARAM_READWRITE">G_PARAM_READWRITE</primary></indexterm><programlisting>#define    G_PARAM_READWRITE       (G_PARAM_READABLE | G_PARAM_WRITABLE)
 
419
</programlisting>
 
420
<para>
 
421
<link linkend="GParamFlags"><type>GParamFlags</type></link> value alias for <link linkend="G-PARAM-READABLE--CAPS"><literal>G_PARAM_READABLE</literal></link> | <link linkend="G-PARAM-WRITABLE--CAPS"><literal>G_PARAM_WRITABLE</literal></link>.</para>
 
422
<para>
 
423
</para></refsect2>
 
424
<refsect2 id="G-PARAM-STATIC-STRINGS--CAPS" role="macro">
 
425
<title>G_PARAM_STATIC_STRINGS</title>
 
426
<indexterm zone="G-PARAM-STATIC-STRINGS--CAPS"><primary sortas="G_PARAM_STATIC_STRINGS">G_PARAM_STATIC_STRINGS</primary></indexterm><programlisting>#define     G_PARAM_STATIC_STRINGS (G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB)
 
427
</programlisting>
 
428
<para>
 
429
<link linkend="GParamFlags"><type>GParamFlags</type></link> value alias for <link linkend="G-PARAM-STATIC-NAME--CAPS"><literal>G_PARAM_STATIC_NAME</literal></link> | <link linkend="G-PARAM-STATIC-NICK--CAPS"><literal>G_PARAM_STATIC_NICK</literal></link> | <link linkend="G-PARAM-STATIC-BLURB--CAPS"><literal>G_PARAM_STATIC_BLURB</literal></link>.
 
430
</para>
 
431
<para>
 
432
Since 2.13.0</para>
 
433
<para>
 
434
</para></refsect2>
 
435
<refsect2 id="G-PARAM-MASK--CAPS" role="macro">
 
436
<title>G_PARAM_MASK</title>
 
437
<indexterm zone="G-PARAM-MASK--CAPS"><primary sortas="G_PARAM_MASK">G_PARAM_MASK</primary></indexterm><programlisting>#define   G_PARAM_MASK            (0x000000ff)
 
438
</programlisting>
 
439
<para>
 
440
Mask containing the bits of <link linkend="GParamSpec"><type>GParamSpec</type></link>.flags which are reserved for GLib.</para>
 
441
<para>
 
442
</para></refsect2>
 
443
<refsect2 id="G-PARAM-USER-SHIFT--CAPS" role="macro">
 
444
<title>G_PARAM_USER_SHIFT</title>
 
445
<indexterm zone="G-PARAM-USER-SHIFT--CAPS"><primary sortas="G_PARAM_USER_SHIFT">G_PARAM_USER_SHIFT</primary></indexterm><programlisting>#define G_PARAM_USER_SHIFT      (8)
447
446
</programlisting>
448
447
<para>
449
448
Minimum shift count to be used for user defined flags, to be stored in
450
 
<link linkend="GParamSpec"><type>GParamSpec</type></link>.flags.
451
 
</para></refsect2>
452
 
<refsect2>
453
 
<title><anchor id="g-param-spec-ref" role="function"/>g_param_spec_ref ()</title>
454
 
<indexterm><primary>g_param_spec_ref</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_ref                    (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
455
 
<para>
456
 
Increments the reference count of <parameter>pspec</parameter>.
457
 
</para><variablelist role="params">
458
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
459
 
<listitem><simpara>  a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
460
 
</simpara></listitem></varlistentry>
461
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> that was passed into this function
462
 
 
463
 
 
464
 
</simpara></listitem></varlistentry>
465
 
</variablelist></refsect2>
466
 
<refsect2>
467
 
<title><anchor id="g-param-spec-unref" role="function"/>g_param_spec_unref ()</title>
468
 
<indexterm><primary>g_param_spec_unref</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_unref                  (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
469
 
<para>
470
 
Decrements the reference count of a <parameter>pspec</parameter>.
471
 
</para><variablelist role="params">
472
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
473
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
474
 
 
475
 
 
476
 
</simpara></listitem></varlistentry>
477
 
</variablelist></refsect2>
478
 
<refsect2>
479
 
<title><anchor id="g-param-spec-sink" role="function"/>g_param_spec_sink ()</title>
480
 
<indexterm><primary>g_param_spec_sink</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_sink                   (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
481
 
<para>
482
 
The initial reference count of a newly created <link linkend="GParamSpec"><type>GParamSpec</type></link> is 1, even 
483
 
though no one has explicitly called <link linkend="g-param-spec-ref"><function>g_param_spec_ref()</function></link> on it yet. So the 
484
 
initial reference count is flagged as "floating", until someone calls 
485
 
<literal>g_param_spec_ref (pspec); g_param_spec_sink (pspec);</literal>
486
 
in sequence on it, taking over the initial reference count (thus
487
 
ending up with a <parameter>pspec</parameter> that has a reference count of 1 still, but is
488
 
not flagged "floating" anymore).
489
 
</para><variablelist role="params">
490
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
491
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
492
 
 
493
 
 
494
 
</simpara></listitem></varlistentry>
495
 
</variablelist></refsect2>
496
 
<refsect2>
497
 
<title><anchor id="g-param-spec-ref-sink" role="function" condition="since:2.10"/>g_param_spec_ref_sink ()</title>
498
 
<indexterm role="2.10"><primary>g_param_spec_ref_sink</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_ref_sink               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
499
 
<para>
500
 
Convenience function to ref and sink a <link linkend="GParamSpec"><type>GParamSpec</type></link>.
501
 
</para><variablelist role="params">
502
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
503
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
504
 
</simpara></listitem></varlistentry>
505
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> that was passed into this function
506
 
</simpara></listitem></varlistentry>
507
 
</variablelist><para role="since">Since 2.10
508
 
 
509
 
 
510
 
</para></refsect2>
511
 
<refsect2>
512
 
<title><anchor id="g-param-value-set-default" role="function"/>g_param_value_set_default ()</title>
513
 
<indexterm><primary>g_param_value_set_default</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_value_set_default           (<link linkend="GParamSpec">GParamSpec</link> *pspec,
514
 
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
515
 
<para>
516
 
Sets <parameter>value</parameter> to its default value as specified in <parameter>pspec</parameter>.
517
 
</para><variablelist role="params">
518
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
519
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
520
 
</simpara></listitem></varlistentry>
521
 
<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
522
 
<listitem><simpara>a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
523
 
 
524
 
 
525
 
</simpara></listitem></varlistentry>
526
 
</variablelist></refsect2>
527
 
<refsect2>
528
 
<title><anchor id="g-param-value-defaults" role="function"/>g_param_value_defaults ()</title>
529
 
<indexterm><primary>g_param_value_defaults</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_defaults              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
530
 
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
531
 
<para>
532
 
Checks whether <parameter>value</parameter> contains the default value as specified in <parameter>pspec</parameter>.
533
 
</para><variablelist role="params">
534
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
535
 
<listitem><simpara>  a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
536
 
</simpara></listitem></varlistentry>
537
 
<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
538
 
<listitem><simpara>  a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
539
 
</simpara></listitem></varlistentry>
540
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>whether <parameter>value</parameter> contains the canonical default for this <parameter>pspec</parameter>
541
 
 
542
 
 
543
 
</simpara></listitem></varlistentry>
544
 
</variablelist></refsect2>
545
 
<refsect2>
546
 
<title><anchor id="g-param-value-validate" role="function"/>g_param_value_validate ()</title>
547
 
<indexterm><primary>g_param_value_validate</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_validate              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
449
<link linkend="GParamSpec"><type>GParamSpec</type></link>.flags.</para>
 
450
<para>
 
451
</para></refsect2>
 
452
<refsect2 id="g-param-spec-ref" role="function">
 
453
<title>g_param_spec_ref ()</title>
 
454
<indexterm zone="g-param-spec-ref"><primary sortas="g_param_spec_ref">g_param_spec_ref</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_ref                    (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
455
<para>
 
456
Increments the reference count of <parameter>pspec</parameter>.</para>
 
457
<para>
 
458
</para><variablelist role="params">
 
459
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
460
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
461
</simpara></listitem></varlistentry>
 
462
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> that was passed into this function
 
463
</simpara></listitem></varlistentry>
 
464
</variablelist></refsect2>
 
465
<refsect2 id="g-param-spec-unref" role="function">
 
466
<title>g_param_spec_unref ()</title>
 
467
<indexterm zone="g-param-spec-unref"><primary sortas="g_param_spec_unref">g_param_spec_unref</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_unref                  (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
468
<para>
 
469
Decrements the reference count of a <parameter>pspec</parameter>.</para>
 
470
<para>
 
471
</para><variablelist role="params">
 
472
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
473
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
474
</simpara></listitem></varlistentry>
 
475
</variablelist></refsect2>
 
476
<refsect2 id="g-param-spec-sink" role="function">
 
477
<title>g_param_spec_sink ()</title>
 
478
<indexterm zone="g-param-spec-sink"><primary sortas="g_param_spec_sink">g_param_spec_sink</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_sink                   (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
479
<para>
 
480
The initial reference count of a newly created <link linkend="GParamSpec"><type>GParamSpec</type></link> is 1,
 
481
even though no one has explicitly called <link linkend="g-param-spec-ref"><function>g_param_spec_ref()</function></link> on it
 
482
yet. So the initial reference count is flagged as "floating", until
 
483
someone calls <literal>g_param_spec_ref (pspec); g_param_spec_sink
 
484
(pspec);</literal> in sequence on it, taking over the initial
 
485
reference count (thus ending up with a <parameter>pspec</parameter> that has a reference
 
486
count of 1 still, but is not flagged "floating" anymore).</para>
 
487
<para>
 
488
</para><variablelist role="params">
 
489
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
490
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
491
</simpara></listitem></varlistentry>
 
492
</variablelist></refsect2>
 
493
<refsect2 id="g-param-spec-ref-sink" role="function" condition="since:2.10">
 
494
<title>g_param_spec_ref_sink ()</title>
 
495
<indexterm zone="g-param-spec-ref-sink" role="2.10"><primary sortas="g_param_spec_ref_sink">g_param_spec_ref_sink</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_ref_sink               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
496
<para>
 
497
Convenience function to ref and sink a <link linkend="GParamSpec"><type>GParamSpec</type></link>.</para>
 
498
<para>
 
499
</para><variablelist role="params">
 
500
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
501
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
502
</simpara></listitem></varlistentry>
 
503
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> that was passed into this function
 
504
</simpara></listitem></varlistentry>
 
505
</variablelist><para role="since">Since 2.10</para></refsect2>
 
506
<refsect2 id="g-param-value-set-default" role="function">
 
507
<title>g_param_value_set_default ()</title>
 
508
<indexterm zone="g-param-value-set-default"><primary sortas="g_param_value_set_default">g_param_value_set_default</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_value_set_default           (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
509
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
 
510
<para>
 
511
Sets <parameter>value</parameter> to its default value as specified in <parameter>pspec</parameter>.</para>
 
512
<para>
 
513
</para><variablelist role="params">
 
514
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
515
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
516
</simpara></listitem></varlistentry>
 
517
<varlistentry><term><parameter>value</parameter>&#160;:</term>
 
518
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
519
</simpara></listitem></varlistentry>
 
520
</variablelist></refsect2>
 
521
<refsect2 id="g-param-value-defaults" role="function">
 
522
<title>g_param_value_defaults ()</title>
 
523
<indexterm zone="g-param-value-defaults"><primary sortas="g_param_value_defaults">g_param_value_defaults</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_defaults              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
524
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
 
525
<para>
 
526
Checks whether <parameter>value</parameter> contains the default value as specified in <parameter>pspec</parameter>.</para>
 
527
<para>
 
528
</para><variablelist role="params">
 
529
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
530
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
531
</simpara></listitem></varlistentry>
 
532
<varlistentry><term><parameter>value</parameter>&#160;:</term>
 
533
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
534
</simpara></listitem></varlistentry>
 
535
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> whether <parameter>value</parameter> contains the canonical default for this <parameter>pspec</parameter>
 
536
</simpara></listitem></varlistentry>
 
537
</variablelist></refsect2>
 
538
<refsect2 id="g-param-value-validate" role="function">
 
539
<title>g_param_value_validate ()</title>
 
540
<indexterm zone="g-param-value-validate"><primary sortas="g_param_value_validate">g_param_value_validate</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_validate              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
548
541
                                                         <link linkend="GValue">GValue</link> *value);</programlisting>
549
542
<para>
550
543
Ensures that the contents of <parameter>value</parameter> comply with the specifications
552
545
that integers stored in <parameter>value</parameter> may not be smaller than -42 and not be
553
546
greater than +42. If <parameter>value</parameter> contains an integer outside of this range,
554
547
it is modified accordingly, so the resulting value will fit into the
555
 
range -42 .. +42.
 
548
range -42 .. +42.</para>
 
549
<para>
556
550
</para><variablelist role="params">
557
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
558
 
<listitem><simpara>  a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
559
 
</simpara></listitem></varlistentry>
560
 
<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
561
 
<listitem><simpara>  a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
562
 
</simpara></listitem></varlistentry>
563
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>whether modifying <parameter>value</parameter> was necessary to ensure validity
564
 
 
565
 
 
 
551
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
552
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
553
</simpara></listitem></varlistentry>
 
554
<varlistentry><term><parameter>value</parameter>&#160;:</term>
 
555
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
556
</simpara></listitem></varlistentry>
 
557
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> whether modifying <parameter>value</parameter> was necessary to ensure validity
566
558
</simpara></listitem></varlistentry>
567
559
</variablelist></refsect2>
568
 
<refsect2>
569
 
<title><anchor id="g-param-value-convert" role="function"/>g_param_value_convert ()</title>
570
 
<indexterm><primary>g_param_value_convert</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_convert               (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
560
<refsect2 id="g-param-value-convert" role="function">
 
561
<title>g_param_value_convert ()</title>
 
562
<indexterm zone="g-param-value-convert"><primary sortas="g_param_value_convert">g_param_value_convert</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            g_param_value_convert               (<link linkend="GParamSpec">GParamSpec</link> *pspec,
571
563
                                                         const <link linkend="GValue">GValue</link> *src_value,
572
564
                                                         <link linkend="GValue">GValue</link> *dest_value,
573
565
                                                         <link linkend="gboolean">gboolean</link> strict_validation);</programlisting>
574
566
<para>
575
 
Transforms <parameter>src_value</parameter> into <parameter>dest_value</parameter> if possible, and then validates 
576
 
<parameter>dest_value</parameter>, in order for it to conform to <parameter>pspec</parameter>.
577
 
If <parameter>strict_validation</parameter> is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> this function will only succeed if
578
 
the transformed <parameter>dest_value</parameter> complied to <parameter>pspec</parameter> without modifications.
579
 
 
 
567
Transforms <parameter>src_value</parameter> into <parameter>dest_value</parameter> if possible, and then
 
568
validates <parameter>dest_value</parameter>, in order for it to conform to <parameter>pspec</parameter>.  If
 
569
<parameter>strict_validation</parameter> is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> this function will only succeed if the
 
570
transformed <parameter>dest_value</parameter> complied to <parameter>pspec</parameter> without modifications.
 
571
</para>
 
572
<para>
580
573
See also <link linkend="g-value-type-transformable"><function>g_value_type_transformable()</function></link>, <link linkend="g-value-transform"><function>g_value_transform()</function></link> and
581
 
<link linkend="g-param-value-validate"><function>g_param_value_validate()</function></link>.
 
574
<link linkend="g-param-value-validate"><function>g_param_value_validate()</function></link>.</para>
 
575
<para>
582
576
</para><variablelist role="params">
583
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
584
 
<listitem><simpara>            a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
585
 
</simpara></listitem></varlistentry>
586
 
<varlistentry><term><parameter>src_value</parameter>&nbsp;:</term>
587
 
<listitem><simpara>        souce <link linkend="GValue"><type>GValue</type></link>
588
 
</simpara></listitem></varlistentry>
589
 
<varlistentry><term><parameter>dest_value</parameter>&nbsp;:</term>
590
 
<listitem><simpara>       destination <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
591
 
</simpara></listitem></varlistentry>
592
 
<varlistentry><term><parameter>strict_validation</parameter>&nbsp;:</term>
593
 
<listitem><simpara><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> requires <parameter>dest_value</parameter> to conform to <parameter>pspec</parameter> without modifications
594
 
</simpara></listitem></varlistentry>
595
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>          <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if transformation and validation were successful,
596
 
                    <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise and <parameter>dest_value</parameter> is left untouched.
597
 
 
598
 
 
 
577
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
578
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
579
</simpara></listitem></varlistentry>
 
580
<varlistentry><term><parameter>src_value</parameter>&#160;:</term>
 
581
<listitem><simpara> souce <link linkend="GValue"><type>GValue</type></link>
 
582
</simpara></listitem></varlistentry>
 
583
<varlistentry><term><parameter>dest_value</parameter>&#160;:</term>
 
584
<listitem><simpara> destination <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
585
</simpara></listitem></varlistentry>
 
586
<varlistentry><term><parameter>strict_validation</parameter>&#160;:</term>
 
587
<listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> requires <parameter>dest_value</parameter> to conform to <parameter>pspec</parameter>
 
588
without modifications
 
589
</simpara></listitem></varlistentry>
 
590
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> <link linkend="TRUE--CAPS"><literal>TRUE</literal></link> if transformation and validation were successful,
 
591
 <link linkend="FALSE--CAPS"><literal>FALSE</literal></link> otherwise and <parameter>dest_value</parameter> is left untouched.
599
592
</simpara></listitem></varlistentry>
600
593
</variablelist></refsect2>
601
 
<refsect2>
602
 
<title><anchor id="g-param-values-cmp" role="function"/>g_param_values_cmp ()</title>
603
 
<indexterm><primary>g_param_values_cmp</primary></indexterm><programlisting><link linkend="gint">gint</link>                g_param_values_cmp                  (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
594
<refsect2 id="g-param-values-cmp" role="function">
 
595
<title>g_param_values_cmp ()</title>
 
596
<indexterm zone="g-param-values-cmp"><primary sortas="g_param_values_cmp">g_param_values_cmp</primary></indexterm><programlisting><link linkend="gint">gint</link>                g_param_values_cmp                  (<link linkend="GParamSpec">GParamSpec</link> *pspec,
604
597
                                                         const <link linkend="GValue">GValue</link> *value1,
605
598
                                                         const <link linkend="GValue">GValue</link> *value2);</programlisting>
606
599
<para>
607
600
Compares <parameter>value1</parameter> with <parameter>value2</parameter> according to <parameter>pspec</parameter>, and return -1, 0 or +1,
608
 
if <parameter>value1</parameter> is found to be less than, equal to or greater than <parameter>value2</parameter>, 
609
 
respectively.
610
 
</para><variablelist role="params">
611
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
612
 
<listitem><simpara>  a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
613
 
</simpara></listitem></varlistentry>
614
 
<varlistentry><term><parameter>value1</parameter>&nbsp;:</term>
615
 
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
616
 
</simpara></listitem></varlistentry>
617
 
<varlistentry><term><parameter>value2</parameter>&nbsp;:</term>
618
 
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
619
 
</simpara></listitem></varlistentry>
620
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>-1, 0 or +1, for a less than, equal to or greater than result
621
 
 
622
 
 
623
 
</simpara></listitem></varlistentry>
624
 
</variablelist></refsect2>
625
 
<refsect2>
626
 
<title><anchor id="g-param-spec-get-name" role="function"/>g_param_spec_get_name ()</title>
627
 
<indexterm><primary>g_param_spec_get_name</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_name               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
628
 
<para>
629
 
Returns the name of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.
630
 
</para><variablelist role="params">
631
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
632
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
633
 
</simpara></listitem></varlistentry>
634
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the name of <parameter>pspec</parameter>.
635
 
 
636
 
 
637
 
</simpara></listitem></varlistentry>
638
 
</variablelist></refsect2>
639
 
<refsect2>
640
 
<title><anchor id="g-param-spec-get-nick" role="function"/>g_param_spec_get_nick ()</title>
641
 
<indexterm><primary>g_param_spec_get_nick</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_nick               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
642
 
<para>
643
 
Returns the nickname of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.
644
 
</para><variablelist role="params">
645
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
646
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
647
 
</simpara></listitem></varlistentry>
648
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the nickname of <parameter>pspec</parameter>.
649
 
 
650
 
 
651
 
</simpara></listitem></varlistentry>
652
 
</variablelist></refsect2>
653
 
<refsect2>
654
 
<title><anchor id="g-param-spec-get-blurb" role="function"/>g_param_spec_get_blurb ()</title>
655
 
<indexterm><primary>g_param_spec_get_blurb</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_blurb              (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
656
 
<para>
657
 
Returns the short description of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.
658
 
</para><variablelist role="params">
659
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
660
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
661
 
</simpara></listitem></varlistentry>
662
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the short description of <parameter>pspec</parameter>.
663
 
 
664
 
 
665
 
</simpara></listitem></varlistentry>
666
 
</variablelist></refsect2>
667
 
<refsect2>
668
 
<title><anchor id="g-param-spec-get-qdata" role="function"/>g_param_spec_get_qdata ()</title>
669
 
<indexterm><primary>g_param_spec_get_qdata</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_get_qdata              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
601
if <parameter>value1</parameter> is found to be less than, equal to or greater than <parameter>value2</parameter>,
 
602
respectively.</para>
 
603
<para>
 
604
</para><variablelist role="params">
 
605
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
606
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
607
</simpara></listitem></varlistentry>
 
608
<varlistentry><term><parameter>value1</parameter>&#160;:</term>
 
609
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
610
</simpara></listitem></varlistentry>
 
611
<varlistentry><term><parameter>value2</parameter>&#160;:</term>
 
612
<listitem><simpara> a <link linkend="GValue"><type>GValue</type></link> of correct type for <parameter>pspec</parameter>
 
613
</simpara></listitem></varlistentry>
 
614
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> -1, 0 or +1, for a less than, equal to or greater than result
 
615
</simpara></listitem></varlistentry>
 
616
</variablelist></refsect2>
 
617
<refsect2 id="g-param-spec-get-name" role="function">
 
618
<title>g_param_spec_get_name ()</title>
 
619
<indexterm zone="g-param-spec-get-name"><primary sortas="g_param_spec_get_name">g_param_spec_get_name</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_name               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
620
<para>
 
621
Get the name of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.</para>
 
622
<para>
 
623
</para><variablelist role="params">
 
624
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
625
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
626
</simpara></listitem></varlistentry>
 
627
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the name of <parameter>pspec</parameter>.
 
628
</simpara></listitem></varlistentry>
 
629
</variablelist></refsect2>
 
630
<refsect2 id="g-param-spec-get-nick" role="function">
 
631
<title>g_param_spec_get_nick ()</title>
 
632
<indexterm zone="g-param-spec-get-nick"><primary sortas="g_param_spec_get_nick">g_param_spec_get_nick</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_nick               (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
633
<para>
 
634
Get the nickname of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.</para>
 
635
<para>
 
636
</para><variablelist role="params">
 
637
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
638
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
639
</simpara></listitem></varlistentry>
 
640
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the nickname of <parameter>pspec</parameter>.
 
641
</simpara></listitem></varlistentry>
 
642
</variablelist></refsect2>
 
643
<refsect2 id="g-param-spec-get-blurb" role="function">
 
644
<title>g_param_spec_get_blurb ()</title>
 
645
<indexterm zone="g-param-spec-get-blurb"><primary sortas="g_param_spec_get_blurb">g_param_spec_get_blurb</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>*        g_param_spec_get_blurb              (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
646
<para>
 
647
Get the short description of a <link linkend="GParamSpec"><type>GParamSpec</type></link>.</para>
 
648
<para>
 
649
</para><variablelist role="params">
 
650
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
651
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
652
</simpara></listitem></varlistentry>
 
653
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the short description of <parameter>pspec</parameter>.
 
654
</simpara></listitem></varlistentry>
 
655
</variablelist></refsect2>
 
656
<refsect2 id="g-param-spec-get-qdata" role="function">
 
657
<title>g_param_spec_get_qdata ()</title>
 
658
<indexterm zone="g-param-spec-get-qdata"><primary sortas="g_param_spec_get_qdata">g_param_spec_get_qdata</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_get_qdata              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
670
659
                                                         <link linkend="GQuark">GQuark</link> quark);</programlisting>
671
660
<para>
672
 
Gets back user data pointers stored via <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link>.
 
661
Gets back user data pointers stored via <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link>.</para>
 
662
<para>
673
663
</para><variablelist role="params">
674
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
675
 
<listitem><simpara>a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
676
 
</simpara></listitem></varlistentry>
677
 
<varlistentry><term><parameter>quark</parameter>&nbsp;:</term>
678
 
<listitem><simpara>a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
679
 
</simpara></listitem></varlistentry>
680
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the user data pointer set, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
681
 
 
682
 
 
 
664
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
665
<listitem><simpara> a valid <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
666
</simpara></listitem></varlistentry>
 
667
<varlistentry><term><parameter>quark</parameter>&#160;:</term>
 
668
<listitem><simpara> a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
 
669
</simpara></listitem></varlistentry>
 
670
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the user data pointer set, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
683
671
</simpara></listitem></varlistentry>
684
672
</variablelist></refsect2>
685
 
<refsect2>
686
 
<title><anchor id="g-param-spec-set-qdata" role="function"/>g_param_spec_set_qdata ()</title>
687
 
<indexterm><primary>g_param_spec_set_qdata</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_set_qdata              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
673
<refsect2 id="g-param-spec-set-qdata" role="function">
 
674
<title>g_param_spec_set_qdata ()</title>
 
675
<indexterm zone="g-param-spec-set-qdata"><primary sortas="g_param_spec_set_qdata">g_param_spec_set_qdata</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_set_qdata              (<link linkend="GParamSpec">GParamSpec</link> *pspec,
688
676
                                                         <link linkend="GQuark">GQuark</link> quark,
689
677
                                                         <link linkend="gpointer">gpointer</link> data);</programlisting>
690
678
<para>
691
 
Sets an opaque, named pointer on a <link linkend="GParamSpec"><type>GParamSpec</type></link>. The name is specified 
692
 
through a <link linkend="GQuark"><type>GQuark</type></link> (retrieved e.g. via <link linkend="g-quark-from-static-string"><function>g_quark_from_static_string()</function></link>), and 
693
 
the pointer can be gotten back from the <parameter>pspec</parameter> with <link linkend="g-param-spec-get-qdata"><function>g_param_spec_get_qdata()</function></link>.
694
 
Setting a previously set user data pointer, overrides (frees)
695
 
the old pointer set, using <link linkend="NULL:CAPS"><literal>NULL</literal></link> as pointer essentially
696
 
removes the data stored.
 
679
Sets an opaque, named pointer on a <link linkend="GParamSpec"><type>GParamSpec</type></link>. The name is
 
680
specified through a <link linkend="GQuark"><type>GQuark</type></link> (retrieved e.g. via
 
681
<link linkend="g-quark-from-static-string"><function>g_quark_from_static_string()</function></link>), and the pointer can be gotten back
 
682
from the <parameter>pspec</parameter> with <link linkend="g-param-spec-get-qdata"><function>g_param_spec_get_qdata()</function></link>.  Setting a
 
683
previously set user data pointer, overrides (frees) the old pointer
 
684
set, using <link linkend="NULL--CAPS"><literal>NULL</literal></link> as pointer essentially removes the data stored.</para>
 
685
<para>
697
686
</para><variablelist role="params">
698
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
699
 
<listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> to set store a user data pointer
700
 
</simpara></listitem></varlistentry>
701
 
<varlistentry><term><parameter>quark</parameter>&nbsp;:</term>
702
 
<listitem><simpara>a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
703
 
</simpara></listitem></varlistentry>
704
 
<varlistentry><term><parameter>data</parameter>&nbsp;:</term>
705
 
<listitem><simpara>an opaque user data pointer
706
 
 
707
 
 
 
687
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
688
<listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> to set store a user data pointer
 
689
</simpara></listitem></varlistentry>
 
690
<varlistentry><term><parameter>quark</parameter>&#160;:</term>
 
691
<listitem><simpara> a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
 
692
</simpara></listitem></varlistentry>
 
693
<varlistentry><term><parameter>data</parameter>&#160;:</term>
 
694
<listitem><simpara> an opaque user data pointer
708
695
</simpara></listitem></varlistentry>
709
696
</variablelist></refsect2>
710
 
<refsect2>
711
 
<title><anchor id="g-param-spec-set-qdata-full" role="function"/>g_param_spec_set_qdata_full ()</title>
712
 
<indexterm><primary>g_param_spec_set_qdata_full</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_set_qdata_full         (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
697
<refsect2 id="g-param-spec-set-qdata-full" role="function">
 
698
<title>g_param_spec_set_qdata_full ()</title>
 
699
<indexterm zone="g-param-spec-set-qdata-full"><primary sortas="g_param_spec_set_qdata_full">g_param_spec_set_qdata_full</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_set_qdata_full         (<link linkend="GParamSpec">GParamSpec</link> *pspec,
713
700
                                                         <link linkend="GQuark">GQuark</link> quark,
714
701
                                                         <link linkend="gpointer">gpointer</link> data,
715
702
                                                         <link linkend="GDestroyNotify">GDestroyNotify</link> destroy);</programlisting>
716
703
<para>
717
 
This function works like <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link>, but in addition, 
718
 
a <literal>void (*destroy) (gpointer)</literal> function may be 
719
 
specified which is called with <parameter>data</parameter> as argument when the <parameter>pspec</parameter> is 
720
 
finalized, or the data is being overwritten by a call to 
721
 
<link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link> with the same <parameter>quark</parameter>.
 
704
This function works like <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link>, but in addition,
 
705
a <literal>void (*destroy) (gpointer)</literal> function may be
 
706
specified which is called with <parameter>data</parameter> as argument when the <parameter>pspec</parameter> is
 
707
finalized, or the data is being overwritten by a call to
 
708
<link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link> with the same <parameter>quark</parameter>.</para>
 
709
<para>
722
710
</para><variablelist role="params">
723
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
724
 
<listitem><simpara>  the <link linkend="GParamSpec"><type>GParamSpec</type></link> to set store a user data pointer
725
 
</simpara></listitem></varlistentry>
726
 
<varlistentry><term><parameter>quark</parameter>&nbsp;:</term>
727
 
<listitem><simpara>  a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
728
 
</simpara></listitem></varlistentry>
729
 
<varlistentry><term><parameter>data</parameter>&nbsp;:</term>
730
 
<listitem><simpara>   an opaque user data pointer
731
 
</simpara></listitem></varlistentry>
732
 
<varlistentry><term><parameter>destroy</parameter>&nbsp;:</term>
733
 
<listitem><simpara>function to invoke with <parameter>data</parameter> as argument, when <parameter>data</parameter> needs to
734
 
          be freed
735
 
 
736
 
 
 
711
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
712
<listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> to set store a user data pointer
 
713
</simpara></listitem></varlistentry>
 
714
<varlistentry><term><parameter>quark</parameter>&#160;:</term>
 
715
<listitem><simpara> a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
 
716
</simpara></listitem></varlistentry>
 
717
<varlistentry><term><parameter>data</parameter>&#160;:</term>
 
718
<listitem><simpara> an opaque user data pointer
 
719
</simpara></listitem></varlistentry>
 
720
<varlistentry><term><parameter>destroy</parameter>&#160;:</term>
 
721
<listitem><simpara> function to invoke with <parameter>data</parameter> as argument, when <parameter>data</parameter> needs to
 
722
 be freed
737
723
</simpara></listitem></varlistentry>
738
724
</variablelist></refsect2>
739
 
<refsect2>
740
 
<title><anchor id="g-param-spec-steal-qdata" role="function"/>g_param_spec_steal_qdata ()</title>
741
 
<indexterm><primary>g_param_spec_steal_qdata</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_steal_qdata            (<link linkend="GParamSpec">GParamSpec</link> *pspec,
 
725
<refsect2 id="g-param-spec-steal-qdata" role="function">
 
726
<title>g_param_spec_steal_qdata ()</title>
 
727
<indexterm zone="g-param-spec-steal-qdata"><primary sortas="g_param_spec_steal_qdata">g_param_spec_steal_qdata</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_steal_qdata            (<link linkend="GParamSpec">GParamSpec</link> *pspec,
742
728
                                                         <link linkend="GQuark">GQuark</link> quark);</programlisting>
743
729
<para>
744
 
Gets back user data pointers stored via <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link> and 
745
 
removes the <parameter>data</parameter> from <parameter>pspec</parameter> without invoking it's <link linkend="destroy"><function>destroy()</function></link> function 
746
 
(if any was set).
747
 
Usually, calling this function is only required to update
748
 
user data pointers with a destroy notifier.
 
730
Gets back user data pointers stored via <link linkend="g-param-spec-set-qdata"><function>g_param_spec_set_qdata()</function></link>
 
731
and removes the <parameter>data</parameter> from <parameter>pspec</parameter> without invoking it's <link linkend="destroy"><function>destroy()</function></link>
 
732
function (if any was set).  Usually, calling this function is only
 
733
required to update user data pointers with a destroy notifier.</para>
 
734
<para>
749
735
</para><variablelist role="params">
750
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
751
 
<listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> to get a stored user data pointer from
752
 
</simpara></listitem></varlistentry>
753
 
<varlistentry><term><parameter>quark</parameter>&nbsp;:</term>
754
 
<listitem><simpara>a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
755
 
</simpara></listitem></varlistentry>
756
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>the user data pointer set, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
757
 
 
758
 
 
 
736
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
737
<listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> to get a stored user data pointer from
 
738
</simpara></listitem></varlistentry>
 
739
<varlistentry><term><parameter>quark</parameter>&#160;:</term>
 
740
<listitem><simpara> a <link linkend="GQuark"><type>GQuark</type></link>, naming the user data pointer
 
741
</simpara></listitem></varlistentry>
 
742
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> the user data pointer set, or <link linkend="NULL--CAPS"><literal>NULL</literal></link>
759
743
</simpara></listitem></varlistentry>
760
744
</variablelist></refsect2>
761
 
<refsect2>
762
 
<title><anchor id="g-param-spec-get-redirect-target" role="function" condition="since:2.4"/>g_param_spec_get_redirect_target ()</title>
763
 
<indexterm role="2.4"><primary>g_param_spec_get_redirect_target</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_get_redirect_target    (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
 
745
<refsect2 id="g-param-spec-get-redirect-target" role="function" condition="since:2.4">
 
746
<title>g_param_spec_get_redirect_target ()</title>
 
747
<indexterm zone="g-param-spec-get-redirect-target" role="2.4"><primary sortas="g_param_spec_get_redirect_target">g_param_spec_get_redirect_target</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_get_redirect_target    (<link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
764
748
<para>
765
749
If the paramspec redirects operations to another paramspec,
766
750
returns that paramspec. Redirect is used typically for
768
752
type while preserving all the properties from the parent
769
753
type. Redirection is established by creating a property
770
754
of type <link linkend="GParamSpecOverride"><type>GParamSpecOverride</type></link>. See <link linkend="g-object-class-override-property"><function>g_object_class_override_property()</function></link>
771
 
for an example of the use of this capability.
 
755
for an example of the use of this capability.</para>
 
756
<para>
772
757
</para><variablelist role="params">
773
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
774
 
<listitem><simpara>a <link linkend="GParamSpec"><type>GParamSpec</type></link>
775
 
</simpara></listitem></varlistentry>
776
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>paramspec to which requests on this paramspec should
777
 
  be redirected, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if none.
778
 
</simpara></listitem></varlistentry>
779
 
</variablelist><para role="since">Since 2.4
780
 
 
781
 
 
782
 
</para></refsect2>
783
 
<refsect2>
784
 
<title><anchor id="g-param-spec-internal" role="function"/>g_param_spec_internal ()</title>
785
 
<indexterm><primary>g_param_spec_internal</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_internal               (<link linkend="GType">GType</link> param_type,
 
758
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
759
<listitem><simpara> a <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
760
</simpara></listitem></varlistentry>
 
761
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> paramspec to which requests on this paramspec should
 
762
         be redirected, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if none.
 
763
</simpara></listitem></varlistentry>
 
764
</variablelist><para role="since">Since 2.4</para></refsect2>
 
765
<refsect2 id="g-param-spec-internal" role="function">
 
766
<title>g_param_spec_internal ()</title>
 
767
<indexterm zone="g-param-spec-internal"><primary sortas="g_param_spec_internal">g_param_spec_internal</primary></indexterm><programlisting><link linkend="gpointer">gpointer</link>            g_param_spec_internal               (<link linkend="GType">GType</link> param_type,
786
768
                                                         const <link linkend="gchar">gchar</link> *name,
787
769
                                                         const <link linkend="gchar">gchar</link> *nick,
788
770
                                                         const <link linkend="gchar">gchar</link> *blurb,
794
776
A property name consists of segments consisting of ASCII letters and
795
777
digits, separated by either the '-' or '_' character. The first
796
778
character of a property name must be a letter. Names which violate these
797
 
rules lead to undefined behaviour. 
798
 
</para>
799
 
<para>
800
 
When creating and looking up a <link linkend="GParamSpec"><type>GParamSpec</type></link>, either separator can be used, 
801
 
but they cannot be mixed. Using '-' is considerably more efficient and in 
802
 
fact required when using property names as detail strings for signals.
 
779
rules lead to undefined behaviour.
 
780
</para>
 
781
<para>
 
782
When creating and looking up a <link linkend="GParamSpec"><type>GParamSpec</type></link>, either separator can be
 
783
used, but they cannot be mixed. Using '-' is considerably more
 
784
efficient and in fact required when using property names as detail
 
785
strings for signals.
 
786
</para>
 
787
<para>
 
788
Beyond the name, <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s have two more descriptive
 
789
strings associated with them, the <parameter>nick</parameter>, which should be suitable
 
790
for use as a label for the property in a property editor, and the
 
791
<parameter>blurb</parameter>, which should be a somewhat longer description, suitable for
 
792
e.g. a tooltip. The <parameter>nick</parameter> and <parameter>blurb</parameter> should ideally be localized.</para>
 
793
<para>
803
794
</para><variablelist role="params">
804
 
<varlistentry><term><parameter>param_type</parameter>&nbsp;:</term>
805
 
<listitem><simpara>the <link linkend="GType"><type>GType</type></link> for the property; must be derived from <link linkend="G-TYPE-PARAM:CAPS"><type>G_TYPE_PARAM</type></link>
806
 
</simpara></listitem></varlistentry>
807
 
<varlistentry><term><parameter>name</parameter>&nbsp;:</term>
808
 
<listitem><simpara>the canonical name of the property
809
 
</simpara></listitem></varlistentry>
810
 
<varlistentry><term><parameter>nick</parameter>&nbsp;:</term>
811
 
<listitem><simpara>the nickname of the property
812
 
</simpara></listitem></varlistentry>
813
 
<varlistentry><term><parameter>blurb</parameter>&nbsp;:</term>
814
 
<listitem><simpara>a short description of the property
815
 
</simpara></listitem></varlistentry>
816
 
<varlistentry><term><parameter>flags</parameter>&nbsp;:</term>
817
 
<listitem><simpara>a combination of <link linkend="GParamFlags"><type>GParamFlags</type></link>
818
 
</simpara></listitem></varlistentry>
819
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>a newly allocated <link linkend="GParamSpec"><type>GParamSpec</type></link> instance
820
 
 
821
 
 
 
795
<varlistentry><term><parameter>param_type</parameter>&#160;:</term>
 
796
<listitem><simpara> the <link linkend="GType"><type>GType</type></link> for the property; must be derived from <link linkend="G-TYPE-PARAM--CAPS"><type>G_TYPE_PARAM</type></link>
 
797
</simpara></listitem></varlistentry>
 
798
<varlistentry><term><parameter>name</parameter>&#160;:</term>
 
799
<listitem><simpara> the canonical name of the property
 
800
</simpara></listitem></varlistentry>
 
801
<varlistentry><term><parameter>nick</parameter>&#160;:</term>
 
802
<listitem><simpara> the nickname of the property
 
803
</simpara></listitem></varlistentry>
 
804
<varlistentry><term><parameter>blurb</parameter>&#160;:</term>
 
805
<listitem><simpara> a short description of the property
 
806
</simpara></listitem></varlistentry>
 
807
<varlistentry><term><parameter>flags</parameter>&#160;:</term>
 
808
<listitem><simpara> a combination of <link linkend="GParamFlags"><type>GParamFlags</type></link>
 
809
</simpara></listitem></varlistentry>
 
810
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a newly allocated <link linkend="GParamSpec"><type>GParamSpec</type></link> instance
822
811
</simpara></listitem></varlistentry>
823
812
</variablelist></refsect2>
824
 
<refsect2>
825
 
<title><anchor id="GParamSpecTypeInfo" role="struct"/>GParamSpecTypeInfo</title>
826
 
<indexterm><primary>GParamSpecTypeInfo</primary></indexterm><programlisting>typedef struct {
 
813
<refsect2 id="GParamSpecTypeInfo" role="struct">
 
814
<title>GParamSpecTypeInfo</title>
 
815
<indexterm zone="GParamSpecTypeInfo"><primary sortas="GParamSpecTypeInfo">GParamSpecTypeInfo</primary></indexterm><programlisting>typedef struct {
827
816
  /* type system portion */
828
817
  guint16         instance_size;                               /* obligatory */
829
818
  guint16         n_preallocs;                                 /* optional */
848
837
The initialized structure is passed to the <link linkend="g-param-type-register-static"><function>g_param_type_register_static()</function></link> 
849
838
The type system will perform a deep copy of this structure, so it's memory 
850
839
does not need to be persistent across invocation of 
851
 
<link linkend="g-param-type-register-static"><function>g_param_type_register_static()</function></link>.
 
840
<link linkend="g-param-type-register-static"><function>g_param_type_register_static()</function></link>.</para>
 
841
<para>
852
842
</para><variablelist role="struct">
853
843
<varlistentry>
854
 
<term><link linkend="guint16">guint16</link>&nbsp;<structfield>instance_size</structfield>;</term>
855
 
<listitem><simpara>Size of the instance (object) structure.
856
 
</simpara></listitem>
857
 
</varlistentry>
858
 
<varlistentry>
859
 
<term><link linkend="guint16">guint16</link>&nbsp;<structfield>n_preallocs</structfield>;</term>
860
 
<listitem><simpara>Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
861
 
</simpara></listitem>
862
 
</varlistentry>
863
 
<varlistentry>
864
 
<term><structfield>instance_init</structfield>&nbsp;()</term>
865
 
<listitem><simpara>Location of the instance initialization function (optional).
866
 
</simpara></listitem>
867
 
</varlistentry>
868
 
<varlistentry>
869
 
<term><link linkend="GType">GType</link>&nbsp;<structfield>value_type</structfield>;</term>
870
 
<listitem><simpara>The <link linkend="GType"><type>GType</type></link> of values conforming to this <link linkend="GParamSpec"><type>GParamSpec</type></link>
871
 
</simpara></listitem>
872
 
</varlistentry>
873
 
<varlistentry>
874
 
<term><structfield>finalize</structfield>&nbsp;()</term>
875
 
<listitem><simpara>The instance finalization function (optional).
876
 
</simpara></listitem>
877
 
</varlistentry>
878
 
<varlistentry>
879
 
<term><structfield>value_set_default</structfield>&nbsp;()</term>
880
 
<listitem><simpara>Resets a <parameter>value</parameter> to the default value for <parameter>pspec</parameter> 
881
 
  (recommended, the default is <link linkend="g-value-reset"><function>g_value_reset()</function></link>), see 
882
 
  <link linkend="g-param-value-set-default"><function>g_param_value_set_default()</function></link>.
883
 
</simpara></listitem>
884
 
</varlistentry>
885
 
<varlistentry>
886
 
<term><structfield>value_validate</structfield>&nbsp;()</term>
887
 
<listitem><simpara>Ensures that the contents of <parameter>value</parameter> comply with the 
888
 
  specifications set out by <parameter>pspec</parameter> (optional), see 
889
 
  <link linkend="g-param-value-set-validate"><function>g_param_value_set_validate()</function></link>.
890
 
</simpara></listitem>
891
 
</varlistentry>
892
 
<varlistentry>
893
 
<term><structfield>values_cmp</structfield>&nbsp;()</term>
894
 
<listitem><simpara>Compares <parameter>value1</parameter> with <parameter>value2</parameter> according to <parameter>pspec</parameter> 
895
 
  (recommended, the default is <link linkend="memcmp"><function>memcmp()</function></link>), see <link linkend="g-param-values-cmp"><function>g_param_values_cmp()</function></link>.
896
 
 
 
844
<term><link linkend="guint16">guint16</link>&#160;<structfield>instance_size</structfield>;</term>
 
845
<listitem><simpara> Size of the instance (object) structure.
 
846
</simpara></listitem>
 
847
</varlistentry>
 
848
<varlistentry>
 
849
<term><link linkend="guint16">guint16</link>&#160;<structfield>n_preallocs</structfield>;</term>
 
850
<listitem><simpara> Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the <link linkend="glib-Memory-Slices">slice allocator</link> now.
 
851
</simpara></listitem>
 
852
</varlistentry>
 
853
<varlistentry>
 
854
<term><structfield>instance_init</structfield>&#160;()</term>
 
855
<listitem><simpara> Location of the instance initialization function (optional).
 
856
</simpara></listitem>
 
857
</varlistentry>
 
858
<varlistentry>
 
859
<term><link linkend="GType">GType</link>&#160;<structfield>value_type</structfield>;</term>
 
860
<listitem><simpara> The <link linkend="GType"><type>GType</type></link> of values conforming to this <link linkend="GParamSpec"><type>GParamSpec</type></link>
 
861
</simpara></listitem>
 
862
</varlistentry>
 
863
<varlistentry>
 
864
<term><structfield>finalize</structfield>&#160;()</term>
 
865
<listitem><simpara> The instance finalization function (optional).
 
866
</simpara></listitem>
 
867
</varlistentry>
 
868
<varlistentry>
 
869
<term><structfield>value_set_default</structfield>&#160;()</term>
 
870
<listitem><simpara> Resets a <parameter>value</parameter> to the default value for <parameter>pspec</parameter> 
 
871
 (recommended, the default is <link linkend="g-value-reset"><function>g_value_reset()</function></link>), see 
 
872
 <link linkend="g-param-value-set-default"><function>g_param_value_set_default()</function></link>.
 
873
</simpara></listitem>
 
874
</varlistentry>
 
875
<varlistentry>
 
876
<term><structfield>value_validate</structfield>&#160;()</term>
 
877
<listitem><simpara> Ensures that the contents of <parameter>value</parameter> comply with the 
 
878
 specifications set out by <parameter>pspec</parameter> (optional), see 
 
879
 <link linkend="g-param-value-set-validate"><function>g_param_value_set_validate()</function></link>.
 
880
</simpara></listitem>
 
881
</varlistentry>
 
882
<varlistentry>
 
883
<term><structfield>values_cmp</structfield>&#160;()</term>
 
884
<listitem><simpara> Compares <parameter>value1</parameter> with <parameter>value2</parameter> according to <parameter>pspec</parameter> 
 
885
 (recommended, the default is <link linkend="memcmp"><function>memcmp()</function></link>), see <link linkend="g-param-values-cmp"><function>g_param_values_cmp()</function></link>.
897
886
</simpara></listitem>
898
887
</varlistentry>
899
888
</variablelist></refsect2>
900
 
<refsect2>
901
 
<title><anchor id="g-param-type-register-static" role="function"/>g_param_type_register_static ()</title>
902
 
<indexterm><primary>g_param_type_register_static</primary></indexterm><programlisting><link linkend="GType">GType</link>               g_param_type_register_static        (const <link linkend="gchar">gchar</link> *name,
 
889
<refsect2 id="g-param-type-register-static" role="function">
 
890
<title>g_param_type_register_static ()</title>
 
891
<indexterm zone="g-param-type-register-static"><primary sortas="g_param_type_register_static">g_param_type_register_static</primary></indexterm><programlisting><link linkend="GType">GType</link>               g_param_type_register_static        (const <link linkend="gchar">gchar</link> *name,
903
892
                                                         const <link linkend="GParamSpecTypeInfo">GParamSpecTypeInfo</link> *pspec_info);</programlisting>
904
893
<para>
905
894
Registers <parameter>name</parameter> as the name of a new static type derived from
906
 
<link linkend="G-TYPE-PARAM:CAPS"><type>G_TYPE_PARAM</type></link>. The type system uses the information contained in the
907
 
<link linkend="GParamSpecTypeInfo"><type>GParamSpecTypeInfo</type></link> structure pointed to by <parameter>info</parameter> to manage the <link linkend="GParamSpec"><type>GParamSpec</type></link> 
908
 
type and its instances. 
 
895
<link linkend="G-TYPE-PARAM--CAPS"><type>G_TYPE_PARAM</type></link>. The type system uses the information contained in
 
896
the <link linkend="GParamSpecTypeInfo"><type>GParamSpecTypeInfo</type></link> structure pointed to by <parameter>info</parameter> to manage the
 
897
<link linkend="GParamSpec"><type>GParamSpec</type></link> type and its instances.</para>
 
898
<para>
909
899
</para><variablelist role="params">
910
 
<varlistentry><term><parameter>name</parameter>&nbsp;:</term>
911
 
<listitem><simpara>0-terminated string used as the name of the new <link linkend="GParamSpec"><type>GParamSpec</type></link> type.
912
 
</simpara></listitem></varlistentry>
913
 
<varlistentry><term><parameter>pspec_info</parameter>&nbsp;:</term>
914
 
<listitem><simpara>The <link linkend="GParamSpecTypeInfo"><type>GParamSpecTypeInfo</type></link> for this <link linkend="GParamSpec"><type>GParamSpec</type></link> type.
915
 
</simpara></listitem></varlistentry>
916
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>The new type identifier.
917
 
 
918
 
 
 
900
<varlistentry><term><parameter>name</parameter>&#160;:</term>
 
901
<listitem><simpara> 0-terminated string used as the name of the new <link linkend="GParamSpec"><type>GParamSpec</type></link> type.
 
902
</simpara></listitem></varlistentry>
 
903
<varlistentry><term><parameter>pspec_info</parameter>&#160;:</term>
 
904
<listitem><simpara> The <link linkend="GParamSpecTypeInfo"><type>GParamSpecTypeInfo</type></link> for this <link linkend="GParamSpec"><type>GParamSpec</type></link> type.
 
905
</simpara></listitem></varlistentry>
 
906
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The new type identifier.
919
907
</simpara></listitem></varlistentry>
920
908
</variablelist></refsect2>
921
 
<refsect2>
922
 
<title><anchor id="GParamSpecPool" role="struct"/>GParamSpecPool</title>
923
 
<indexterm><primary>GParamSpecPool</primary></indexterm><programlisting>typedef struct _GParamSpecPool GParamSpecPool;</programlisting>
 
909
<refsect2 id="GParamSpecPool" role="struct">
 
910
<title>GParamSpecPool</title>
 
911
<indexterm zone="GParamSpecPool"><primary sortas="GParamSpecPool">GParamSpecPool</primary></indexterm><programlisting>typedef struct _GParamSpecPool GParamSpecPool;</programlisting>
924
912
<para>
925
913
A <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link> maintains a collection of <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s which can be
926
914
quickly accessed by owner and name. The implementation of the <link linkend="GObject"><type>GObject</type></link> property
927
915
system uses such a pool to store the <link linkend="GParamSpecs"><type>GParamSpecs</type></link> of the properties all object
928
 
types. 
 
916
types.</para>
 
917
<para>
929
918
</para></refsect2>
930
 
<refsect2>
931
 
<title><anchor id="g-param-spec-pool-new" role="function"/>g_param_spec_pool_new ()</title>
932
 
<indexterm><primary>g_param_spec_pool_new</primary></indexterm><programlisting><link linkend="GParamSpecPool">GParamSpecPool</link>*     g_param_spec_pool_new               (<link linkend="gboolean">gboolean</link> type_prefixing);</programlisting>
 
919
<refsect2 id="g-param-spec-pool-new" role="function">
 
920
<title>g_param_spec_pool_new ()</title>
 
921
<indexterm zone="g-param-spec-pool-new"><primary sortas="g_param_spec_pool_new">g_param_spec_pool_new</primary></indexterm><programlisting><link linkend="GParamSpecPool">GParamSpecPool</link>*     g_param_spec_pool_new               (<link linkend="gboolean">gboolean</link> type_prefixing);</programlisting>
933
922
<para>
934
923
Creates a new <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>.
935
924
</para>
936
925
<para>
937
 
If <parameter>type_prefixing</parameter> is <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, lookups in the newly created pool will
938
 
allow to specify the owner as a colon-separated prefix of the property name, 
939
 
like "GtkContainer:border-width". This feature is deprecated, so you should 
940
 
always set <parameter>type_prefixing</parameter> to <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>.
 
926
If <parameter>type_prefixing</parameter> is <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, lookups in the newly created pool will
 
927
allow to specify the owner as a colon-separated prefix of the
 
928
property name, like "GtkContainer:border-width". This feature is
 
929
deprecated, so you should always set <parameter>type_prefixing</parameter> to <link linkend="FALSE--CAPS"><literal>FALSE</literal></link>.</para>
 
930
<para>
941
931
</para><variablelist role="params">
942
 
<varlistentry><term><parameter>type_prefixing</parameter>&nbsp;:</term>
943
 
<listitem><simpara>Whether the pool will support type-prefixed property names.
 
932
<varlistentry><term><parameter>type_prefixing</parameter>&#160;:</term>
 
933
<listitem><simpara> Whether the pool will support type-prefixed property names.
944
934
</simpara></listitem></varlistentry>
945
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>a newly allocated <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>.
946
 
 
947
 
 
 
935
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a newly allocated <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>.
948
936
</simpara></listitem></varlistentry>
949
937
</variablelist></refsect2>
950
 
<refsect2>
951
 
<title><anchor id="g-param-spec-pool-insert" role="function"/>g_param_spec_pool_insert ()</title>
952
 
<indexterm><primary>g_param_spec_pool_insert</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_pool_insert            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
 
938
<refsect2 id="g-param-spec-pool-insert" role="function">
 
939
<title>g_param_spec_pool_insert ()</title>
 
940
<indexterm zone="g-param-spec-pool-insert"><primary sortas="g_param_spec_pool_insert">g_param_spec_pool_insert</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_pool_insert            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
953
941
                                                         <link linkend="GParamSpec">GParamSpec</link> *pspec,
954
942
                                                         <link linkend="GType">GType</link> owner_type);</programlisting>
955
943
<para>
956
 
Inserts a <link linkend="GParamSpec"><type>GParamSpec</type></link> in the pool.
 
944
Inserts a <link linkend="GParamSpec"><type>GParamSpec</type></link> in the pool.</para>
 
945
<para>
957
946
</para><variablelist role="params">
958
 
<varlistentry><term><parameter>pool</parameter>&nbsp;:</term>
959
 
<listitem><simpara>a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>.
960
 
</simpara></listitem></varlistentry>
961
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
962
 
<listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> to insert
963
 
</simpara></listitem></varlistentry>
964
 
<varlistentry><term><parameter>owner_type</parameter>&nbsp;:</term>
965
 
<listitem><simpara>a <link linkend="GType"><type>GType</type></link> identifying the owner of <parameter>pspec</parameter>
966
 
 
967
 
 
 
947
<varlistentry><term><parameter>pool</parameter>&#160;:</term>
 
948
<listitem><simpara> a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>.
 
949
</simpara></listitem></varlistentry>
 
950
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
951
<listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> to insert
 
952
</simpara></listitem></varlistentry>
 
953
<varlistentry><term><parameter>owner_type</parameter>&#160;:</term>
 
954
<listitem><simpara> a <link linkend="GType"><type>GType</type></link> identifying the owner of <parameter>pspec</parameter>
968
955
</simpara></listitem></varlistentry>
969
956
</variablelist></refsect2>
970
 
<refsect2>
971
 
<title><anchor id="g-param-spec-pool-remove" role="function"/>g_param_spec_pool_remove ()</title>
972
 
<indexterm><primary>g_param_spec_pool_remove</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_pool_remove            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
 
957
<refsect2 id="g-param-spec-pool-remove" role="function">
 
958
<title>g_param_spec_pool_remove ()</title>
 
959
<indexterm zone="g-param-spec-pool-remove"><primary sortas="g_param_spec_pool_remove">g_param_spec_pool_remove</primary></indexterm><programlisting><link linkend="void">void</link>                g_param_spec_pool_remove            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
973
960
                                                         <link linkend="GParamSpec">GParamSpec</link> *pspec);</programlisting>
974
961
<para>
975
 
Removes a <link linkend="GParamSpec"><type>GParamSpec</type></link> from the pool.
 
962
Removes a <link linkend="GParamSpec"><type>GParamSpec</type></link> from the pool.</para>
 
963
<para>
976
964
</para><variablelist role="params">
977
 
<varlistentry><term><parameter>pool</parameter>&nbsp;:</term>
978
 
<listitem><simpara>a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
 
965
<varlistentry><term><parameter>pool</parameter>&#160;:</term>
 
966
<listitem><simpara> a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
979
967
</simpara></listitem></varlistentry>
980
 
<varlistentry><term><parameter>pspec</parameter>&nbsp;:</term>
981
 
<listitem><simpara>the <link linkend="GParamSpec"><type>GParamSpec</type></link> to remove
982
 
 
983
 
 
 
968
<varlistentry><term><parameter>pspec</parameter>&#160;:</term>
 
969
<listitem><simpara> the <link linkend="GParamSpec"><type>GParamSpec</type></link> to remove
984
970
</simpara></listitem></varlistentry>
985
971
</variablelist></refsect2>
986
 
<refsect2>
987
 
<title><anchor id="g-param-spec-pool-lookup" role="function"/>g_param_spec_pool_lookup ()</title>
988
 
<indexterm><primary>g_param_spec_pool_lookup</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_pool_lookup            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
 
972
<refsect2 id="g-param-spec-pool-lookup" role="function">
 
973
<title>g_param_spec_pool_lookup ()</title>
 
974
<indexterm zone="g-param-spec-pool-lookup"><primary sortas="g_param_spec_pool_lookup">g_param_spec_pool_lookup</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>*         g_param_spec_pool_lookup            (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
989
975
                                                         const <link linkend="gchar">gchar</link> *param_name,
990
976
                                                         <link linkend="GType">GType</link> owner_type,
991
977
                                                         <link linkend="gboolean">gboolean</link> walk_ancestors);</programlisting>
992
978
<para>
993
 
Looks up a <link linkend="GParamSpec"><type>GParamSpec</type></link> in the pool.
 
979
Looks up a <link linkend="GParamSpec"><type>GParamSpec</type></link> in the pool.</para>
 
980
<para>
994
981
</para><variablelist role="params">
995
 
<varlistentry><term><parameter>pool</parameter>&nbsp;:</term>
996
 
<listitem><simpara>a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
997
 
</simpara></listitem></varlistentry>
998
 
<varlistentry><term><parameter>param_name</parameter>&nbsp;:</term>
999
 
<listitem><simpara>the name to look for
1000
 
</simpara></listitem></varlistentry>
1001
 
<varlistentry><term><parameter>owner_type</parameter>&nbsp;:</term>
1002
 
<listitem><simpara>the owner to look for
1003
 
</simpara></listitem></varlistentry>
1004
 
<varlistentry><term><parameter>walk_ancestors</parameter>&nbsp;:</term>
1005
 
<listitem><simpara>If <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, also try to find a <link linkend="GParamSpec"><type>GParamSpec</type></link> with <parameter>param_name</parameter> 
1006
 
  owned by an ancestor of <parameter>owner_type</parameter>.
1007
 
</simpara></listitem></varlistentry>
1008
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>The found <link linkend="GParamSpec"><type>GParamSpec</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if no matching <link linkend="GParamSpec"><type>GParamSpec</type></link> was found.
1009
 
 
1010
 
 
 
982
<varlistentry><term><parameter>pool</parameter>&#160;:</term>
 
983
<listitem><simpara> a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
 
984
</simpara></listitem></varlistentry>
 
985
<varlistentry><term><parameter>param_name</parameter>&#160;:</term>
 
986
<listitem><simpara> the name to look for
 
987
</simpara></listitem></varlistentry>
 
988
<varlistentry><term><parameter>owner_type</parameter>&#160;:</term>
 
989
<listitem><simpara> the owner to look for
 
990
</simpara></listitem></varlistentry>
 
991
<varlistentry><term><parameter>walk_ancestors</parameter>&#160;:</term>
 
992
<listitem><simpara> If <link linkend="TRUE--CAPS"><literal>TRUE</literal></link>, also try to find a <link linkend="GParamSpec"><type>GParamSpec</type></link> with <parameter>param_name</parameter>
 
993
 owned by an ancestor of <parameter>owner_type</parameter>.
 
994
</simpara></listitem></varlistentry>
 
995
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> The found <link linkend="GParamSpec"><type>GParamSpec</type></link>, or <link linkend="NULL--CAPS"><literal>NULL</literal></link> if no matching <link linkend="GParamSpec"><type>GParamSpec</type></link> was found.
1011
996
</simpara></listitem></varlistentry>
1012
997
</variablelist></refsect2>
1013
 
<refsect2>
1014
 
<title><anchor id="g-param-spec-pool-list" role="function"/>g_param_spec_pool_list ()</title>
1015
 
<indexterm><primary>g_param_spec_pool_list</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>**        g_param_spec_pool_list              (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
 
998
<refsect2 id="g-param-spec-pool-list" role="function">
 
999
<title>g_param_spec_pool_list ()</title>
 
1000
<indexterm zone="g-param-spec-pool-list"><primary sortas="g_param_spec_pool_list">g_param_spec_pool_list</primary></indexterm><programlisting><link linkend="GParamSpec">GParamSpec</link>**        g_param_spec_pool_list              (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
1016
1001
                                                         <link linkend="GType">GType</link> owner_type,
1017
1002
                                                         <link linkend="guint">guint</link> *n_pspecs_p);</programlisting>
1018
1003
<para>
1019
 
Gets an array of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in the pool. 
 
1004
Gets an array of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in
 
1005
the pool.</para>
 
1006
<para>
1020
1007
</para><variablelist role="params">
1021
 
<varlistentry><term><parameter>pool</parameter>&nbsp;:</term>
1022
 
<listitem><simpara>a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
1023
 
</simpara></listitem></varlistentry>
1024
 
<varlistentry><term><parameter>owner_type</parameter>&nbsp;:</term>
1025
 
<listitem><simpara>the owner to look for
1026
 
</simpara></listitem></varlistentry>
1027
 
<varlistentry><term><parameter>n_pspecs_p</parameter>&nbsp;:</term>
1028
 
<listitem><simpara>return location for the length of the returned array
1029
 
</simpara></listitem></varlistentry>
1030
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>a newly allocated array containing pointers to all 
1031
 
  <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in the pool
1032
 
 
1033
 
 
 
1008
<varlistentry><term><parameter>pool</parameter>&#160;:</term>
 
1009
<listitem><simpara> a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
 
1010
</simpara></listitem></varlistentry>
 
1011
<varlistentry><term><parameter>owner_type</parameter>&#160;:</term>
 
1012
<listitem><simpara> the owner to look for
 
1013
</simpara></listitem></varlistentry>
 
1014
<varlistentry><term><parameter>n_pspecs_p</parameter>&#160;:</term>
 
1015
<listitem><simpara> return location for the length of the returned array
 
1016
</simpara></listitem></varlistentry>
 
1017
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a newly allocated array containing pointers to all
 
1018
         <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in the pool
1034
1019
</simpara></listitem></varlistentry>
1035
1020
</variablelist></refsect2>
1036
 
<refsect2>
1037
 
<title><anchor id="g-param-spec-pool-list-owned" role="function"/>g_param_spec_pool_list_owned ()</title>
1038
 
<indexterm><primary>g_param_spec_pool_list_owned</primary></indexterm><programlisting><link linkend="GList">GList</link>*              g_param_spec_pool_list_owned        (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
 
1021
<refsect2 id="g-param-spec-pool-list-owned" role="function">
 
1022
<title>g_param_spec_pool_list_owned ()</title>
 
1023
<indexterm zone="g-param-spec-pool-list-owned"><primary sortas="g_param_spec_pool_list_owned">g_param_spec_pool_list_owned</primary></indexterm><programlisting><link linkend="GList">GList</link>*              g_param_spec_pool_list_owned        (<link linkend="GParamSpecPool">GParamSpecPool</link> *pool,
1039
1024
                                                         <link linkend="GType">GType</link> owner_type);</programlisting>
1040
1025
<para>
1041
 
Gets an <link linkend="GList"><type>GList</type></link> of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in the pool. 
 
1026
Gets an <link linkend="GList"><type>GList</type></link> of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in
 
1027
the pool.</para>
 
1028
<para>
1042
1029
</para><variablelist role="params">
1043
 
<varlistentry><term><parameter>pool</parameter>&nbsp;:</term>
1044
 
<listitem><simpara>a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
1045
 
</simpara></listitem></varlistentry>
1046
 
<varlistentry><term><parameter>owner_type</parameter>&nbsp;:</term>
1047
 
<listitem><simpara>the owner to look for
1048
 
</simpara></listitem></varlistentry>
1049
 
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara>a <link linkend="GList"><type>GList</type></link> of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter> in 
1050
 
  the pool<link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s.
1051
 
 
1052
 
 
 
1030
<varlistentry><term><parameter>pool</parameter>&#160;:</term>
 
1031
<listitem><simpara> a <link linkend="GParamSpecPool"><type>GParamSpecPool</type></link>
 
1032
</simpara></listitem></varlistentry>
 
1033
<varlistentry><term><parameter>owner_type</parameter>&#160;:</term>
 
1034
<listitem><simpara> the owner to look for
 
1035
</simpara></listitem></varlistentry>
 
1036
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a <link linkend="GList"><type>GList</type></link> of all <link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s owned by <parameter>owner_type</parameter>
 
1037
         in the pool<link linkend="GParamSpec"><type>GParamSpec</type></link><!-- -->s.
1053
1038
</simpara></listitem></varlistentry>
1054
1039
</variablelist></refsect2>
1055
1040
 
1057
1042
 
1058
1043
 
1059
1044
 
1060
 
<refsect1>
 
1045
<refsect1 id="gobject-GParamSpec.see-also">
1061
1046
<title>See Also</title>
1062
 
<para>
1063
 
<link linkend="g-object-class-install-property"><function>g_object_class_install_property()</function></link>, <link linkend="g-object-set"><function>g_object_set()</function></link>, <link linkend="g-object-get"><function>g_object_get()</function></link>,
1064
 
<link linkend="g-object-set-property"><function>g_object_set_property()</function></link>, <link linkend="g-object-get-property"><function>g_object_get_property()</function></link>, <link linkend="g-value-register-transform-func"><function>g_value_register_transform_func()</function></link>
1065
 
</para>
 
1047
<link linkend="g-object-class-install-property"><function>g_object_class_install_property()</function></link>, <link linkend="g-object-set"><function>g_object_set()</function></link>,
 
1048
    <link linkend="g-object-get"><function>g_object_get()</function></link>, <link linkend="g-object-set-property"><function>g_object_set_property()</function></link>, <link linkend="g-object-get-property"><function>g_object_get_property()</function></link>,
 
1049
    <link linkend="g-value-register-transform-func"><function>g_value_register_transform_func()</function></link>
1066
1050
</refsect1>
1067
1051
 
1068
 
 
1069
 
<refsect1><refsect2 /><refsect2 /></refsect1>
1070
1052
</refentry>