+Tue Nov 13 21:31:58 2001 Tim Janik <timj@gtk.org>
+
+ * gobject/tmp/param_value_types.sgml: list parameter and
+ value types.
+
+ * gobject/tmpl/gparamspec.sgml: more docs for g_param_spec*()
+ functions.
+
+ * gobject/*: section cleanups.
+
Tue Nov 13 19:49:16 2001 Tim Janik <timj@gtk.org>
* gobject/tmpl/gparamspec.sgml: param spec updates.
<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
-<!entity gobject-GType SYSTEM "sgml/types.sgml">
+<!entity gobject-GType SYSTEM "sgml/gtype.sgml">
<!entity gobject-GTypePlugin SYSTEM "sgml/gtypeplugin.sgml">
<!entity gobject-GTypeModule SYSTEM "sgml/gtypemodule.sgml">
<!entity gobject-The-Base-Object-Type SYSTEM "sgml/objects.sgml">
<!entity gobject-Enumeration-and-Flag-Types SYSTEM "sgml/enumerations_flags.sgml">
<!entity gobject-Boxed-Types SYSTEM "sgml/gboxed.sgml">
<!entity gobject-Generic-values SYSTEM "sgml/generic_values.sgml">
-<!entity gobject-Standard-value-types SYSTEM "sgml/value_types.sgml">
+<!entity gobject-param-value-types SYSTEM "sgml/param_value_types.sgml">
<!entity gobject-GParamSpec SYSTEM "sgml/gparamspec.sgml">
-<!entity gobject-Standard-Parameter-Types SYSTEM "sgml/standard_params.sgml">
<!entity gobject-Varargs-Value-Collection SYSTEM "sgml/value_collection.sgml">
<!entity gobject-Signals SYSTEM "sgml/signals.sgml">
-<!entity gobject-Closures SYSTEM "sgml/closures.sgml">
+<!entity gobject-Closures SYSTEM "sgml/gclosure.sgml">
<!entity gobject-Value-Arrays SYSTEM "sgml/value_arrays.sgml">
]>
<book id="index">
&gobject-Enumeration-and-Flag-Types;
&gobject-Boxed-Types;
&gobject-Generic-values;
- &gobject-Standard-value-types;
+ &gobject-param-value-types;
&gobject-Varargs-Value-Collection;
&gobject-GParamSpec;
- &gobject-Standard-Parameter-Types;
&gobject-Signals;
&gobject-Closures;
&gobject-Value-Arrays;
<INCLUDE>gobject.h</INCLUDE>
<SECTION>
+<FILE>gtype</FILE>
<TITLE>Type Information</TITLE>
-<FILE>types</FILE>
GType
G_TYPE_FUNDAMENTAL
G_TYPE_FUNDAMENTAL_MAX
GTypeInfo
GTypeFundamentalInfo
GInterfaceInfo
-
+GTypeValueTable
<TITLE>GType</TITLE>
G_TYPE_FROM_INSTANCE
G_TYPE_FROM_CLASS
g_type_class_unref
g_type_class_peek_parent
g_type_interface_peek
+g_type_interface_peek_parent
g_type_children
g_type_interfaces
g_type_set_qdata
g_type_get_plugin
g_type_interface_get_plugin
g_type_fundamental_last
-g_type_check_flags
g_type_create_instance
g_type_free_instance
g_type_add_class_cache_func
g_type_remove_class_cache_func
g_type_class_unref_uncached
+g_type_value_table_peek
+<SUBSECTION Private>
g_type_check_instance
g_type_check_instance_cast
-g_type_instance_is_a
+g_type_check_instance_is_a
g_type_check_class_cast
-g_type_class_is_a
+g_type_check_class_is_a
+g_type_check_is_value_type
g_type_check_value
-g_type_value_is_a
-g_type_value_table_peek
-<SUBSECTION Private>
+g_type_check_value_holds
+g_type_test_flags
+g_type_name_from_instance
+g_type_name_from_class
</SECTION>
<SECTION>
<FILE>objects</FILE>
GObject
GObjectClass
-GObjectConstructParam
GObjectGetPropertyFunc
GObjectSetPropertyFunc
GObjectFinalizeFunc
G_OBJECT_TYPE_NAME
G_OBJECT_CLASS_TYPE
G_OBJECT_CLASS_NAME
-G_VALUE_HOLDS_OBJECT
g_object_class_install_property
g_object_class_find_property
g_object_class_list_properties
g_object_newv
g_object_ref
g_object_unref
+GWeakNotify
g_object_weak_ref
g_object_weak_unref
g_object_add_weak_pointer
g_object_get_valist
g_object_watch_closure
g_object_run_dispose
-g_value_set_object
-g_value_get_object
-g_value_dup_object
G_OBJECT_WARN_INVALID_PROPERTY_ID
+<SUBSECTION Private>
+GObjectConstructParam
</SECTION>
<SECTION>
G_IS_FLAGS_CLASS
G_FLAGS_CLASS_TYPE
G_FLAGS_CLASS_TYPE_NAME
-G_VALUE_HOLDS_ENUM
-G_VALUE_HOLDS_FLAGS
GEnumValue
GFlagsValue
g_enum_get_value
g_flags_get_first_value
g_flags_get_value_by_name
g_flags_get_value_by_nick
-g_value_set_enum
-g_value_get_enum
-g_value_set_flags
-g_value_get_flags
g_enum_register_static
g_flags_register_static
g_enum_complete_type_info
<SECTION>
<FILE>gboxed</FILE>
<TITLE>Boxed Types</TITLE>
-GBoxed
-GBoxedInitFunc
GBoxedCopyFunc
GBoxedFreeFunc
g_boxed_copy
g_boxed_free
-g_value_set_boxed
-g_value_set_static_boxed
-g_value_set_boxed_take_ownership
-g_value_get_boxed
-g_value_dup_boxed
g_boxed_type_register_static
+g_pointer_type_register_static
<SUBSECTION Standard>
-G_VALUE_HOLDS_BOXED
G_TYPE_IS_BOXED
</SECTION>
g_value_unset
g_value_fits_pointer
g_value_peek_pointer
-g_value_convert
-g_values_exchange
-g_value_types_exchangable
-g_value_register_exchange_func
-GTypeValueTable
+g_value_type_compatible
+g_value_type_transformable
+g_value_transform
+GValueTransform
+g_value_register_transform_func
</SECTION>
<SECTION>
g_value_array_new
g_value_array_copy
g_value_array_free
-g_value_array_index
g_value_array_append
g_value_array_prepend
g_value_array_insert
</SECTION>
<SECTION>
-<TITLE>Standard value types</TITLE>
-<FILE>value_types</FILE>
-G_VALUE_HOLDS_CHAR
-G_VALUE_HOLDS_UCHAR
-G_VALUE_HOLDS_BOOLEAN
-G_VALUE_HOLDS_INT
-G_VALUE_HOLDS_UINT
-G_VALUE_HOLDS_LONG
-G_VALUE_HOLDS_ULONG
-G_VALUE_HOLDS_FLOAT
-G_VALUE_HOLDS_DOUBLE
-G_VALUE_HOLDS_STRING
-G_VALUE_HOLDS_POINTER
-G_VALUE_HOLDS_PARAM
-g_value_set_char
-g_value_get_char
-g_value_set_uchar
-g_value_get_uchar
-g_value_set_boolean
-g_value_get_boolean
-g_value_set_int
-g_value_get_int
-g_value_set_uint
-g_value_get_uint
-g_value_set_long
-g_value_get_long
-g_value_set_ulong
-g_value_get_ulong
-g_value_set_float
-g_value_get_float
-g_value_set_double
-g_value_get_double
-g_value_set_string
-g_value_set_static_string
-g_value_set_string_take_ownership
-g_value_get_string
-g_value_dup_string
-g_value_set_param
-g_value_get_param
-g_value_dup_param
-g_value_get_pointer
-g_value_set_pointer
-g_value_set_instance
-</SECTION>
-
-<SECTION>
<TITLE>GParamSpec</TITLE>
<FILE>gparamspec</FILE>
-G_PARAM_SPEC_TYPE
+G_TYPE_PARAM
G_TYPE_IS_PARAM
G_PARAM_SPEC
G_IS_PARAM_SPEC
G_PARAM_SPEC_CLASS
G_IS_PARAM_SPEC_CLASS
G_PARAM_SPEC_GET_CLASS
+G_PARAM_SPEC_TYPE
G_PARAM_SPEC_TYPE_NAME
G_PARAM_SPEC_VALUE_TYPE
GParamSpec
g_param_spec_set_qdata
g_param_spec_set_qdata_full
g_param_spec_steal_qdata
+g_param_spec_internal
GParamSpecTypeInfo
g_param_type_register_static
GParamSpecPool
g_param_spec_pool_insert
g_param_spec_pool_remove
g_param_spec_pool_lookup
-g_param_spec_internal
+g_param_spec_pool_list
</SECTION>
<SECTION>
-<TITLE>Standard Parameter Types</TITLE>
-<FILE>standard_params</FILE>
+<TITLE>Standard Parameter and Value Types</TITLE>
+<FILE>param_value_types</FILE>
+
+<SUBSECTION gboolean>
+G_IS_PARAM_SPEC_BOOLEAN
+G_PARAM_SPEC_BOOLEAN
+G_VALUE_HOLDS_BOOLEAN
+GParamSpecBoolean
+g_param_spec_boolean
+g_value_set_boolean
+g_value_get_boolean
+
+<SUBSECTION gchar>
G_IS_PARAM_SPEC_CHAR
G_PARAM_SPEC_CHAR
+G_VALUE_HOLDS_CHAR
+GParamSpecChar
+g_param_spec_char
+g_value_set_char
+g_value_get_char
+
+<SUBSECTION guchar>
G_IS_PARAM_SPEC_UCHAR
G_PARAM_SPEC_UCHAR
-G_IS_PARAM_SPEC_BOOLEAN
-G_PARAM_SPEC_BOOLEAN
+G_VALUE_HOLDS_UCHAR
+GParamSpecUChar
+g_param_spec_uchar
+g_value_set_uchar
+g_value_get_uchar
+
+<SUBSECTION gint>
G_IS_PARAM_SPEC_INT
G_PARAM_SPEC_INT
+G_VALUE_HOLDS_INT
+GParamSpecInt
+g_param_spec_int
+g_value_set_int
+g_value_get_int
+
+<SUBSECTION guint>
G_IS_PARAM_SPEC_UINT
G_PARAM_SPEC_UINT
+G_VALUE_HOLDS_UINT
+GParamSpecUInt
+g_param_spec_uint
+g_value_set_uint
+g_value_get_uint
+
+<SUBSECTION glong>
G_IS_PARAM_SPEC_LONG
G_PARAM_SPEC_LONG
+G_VALUE_HOLDS_LONG
+GParamSpecLong
+g_param_spec_long
+g_value_set_long
+g_value_get_long
+
+<SUBSECTION gulong>
G_IS_PARAM_SPEC_ULONG
G_PARAM_SPEC_ULONG
-G_IS_PARAM_SPEC_ENUM
-G_PARAM_SPEC_ENUM
-G_IS_PARAM_SPEC_FLAGS
-G_PARAM_SPEC_FLAGS
+G_VALUE_HOLDS_ULONG
+GParamSpecULong
+g_param_spec_ulong
+g_value_set_ulong
+g_value_get_ulong
+
+<SUBSECTION gint64>
+G_IS_PARAM_SPEC_INT64
+G_PARAM_SPEC_INT64
+G_VALUE_HOLDS_INT64
+GParamSpecInt64
+g_param_spec_int64
+g_value_set_int64
+g_value_get_int64
+
+<SUBSECTION guint64>
+G_IS_PARAM_SPEC_UINT64
+G_PARAM_SPEC_UINT64
+G_VALUE_HOLDS_UINT64
+GParamSpecUInt64
+g_param_spec_uint64
+g_value_set_uint64
+g_value_get_uint64
+
+<SUBSECTION gfloat>
G_IS_PARAM_SPEC_FLOAT
G_PARAM_SPEC_FLOAT
+G_VALUE_HOLDS_FLOAT
+GParamSpecFloat
+g_param_spec_float
+g_value_set_float
+g_value_get_float
+
+<SUBSECTION gdouble>
G_IS_PARAM_SPEC_DOUBLE
G_PARAM_SPEC_DOUBLE
+G_VALUE_HOLDS_DOUBLE
+GParamSpecDouble
+g_param_spec_double
+g_value_set_double
+g_value_get_double
+
+<SUBSECTION GEnum>
+G_IS_PARAM_SPEC_ENUM
+G_PARAM_SPEC_ENUM
+G_VALUE_HOLDS_ENUM
+GParamSpecEnum
+g_param_spec_enum
+g_value_set_enum
+g_value_get_enum
+
+<SUBSECTION GFLags>
+G_IS_PARAM_SPEC_FLAGS
+G_PARAM_SPEC_FLAGS
+G_VALUE_HOLDS_FLAGS
+GParamSpecFlags
+g_param_spec_flags
+g_value_set_flags
+g_value_get_flags
+
+<SUBSECTION gchararray>
G_IS_PARAM_SPEC_STRING
G_PARAM_SPEC_STRING
+G_VALUE_HOLDS_STRING
+GParamSpecString
+g_param_spec_string
+g_value_set_string
+g_value_set_static_string
+g_value_set_string_take_ownership
+g_value_get_string
+g_value_dup_string
+
+<SUBSECTION GParamSpec>
G_IS_PARAM_SPEC_PARAM
G_PARAM_SPEC_PARAM
+G_VALUE_HOLDS_PARAM
+GParamSpecParam
+g_param_spec_param
+g_value_set_param
+g_value_get_param
+g_value_dup_param
+
+<SUBSECTION GBoxed>
G_IS_PARAM_SPEC_BOXED
G_PARAM_SPEC_BOXED
+G_VALUE_HOLDS_BOXED
+GParamSpecBoxed
+g_param_spec_boxed
+g_value_set_boxed
+g_value_set_static_boxed
+g_value_set_boxed_take_ownership
+g_value_get_boxed
+g_value_dup_boxed
+
+<SUBSECTION gpointer>
G_IS_PARAM_SPEC_POINTER
G_PARAM_SPEC_POINTER
-G_IS_PARAM_SPEC_VALUE_ARRAY
-G_PARAM_SPEC_VALUE_ARRAY
-G_IS_PARAM_SPEC_CLOSURE
-G_PARAM_SPEC_CLOSURE
+G_VALUE_HOLDS_POINTER
+GParamSpecPointer
+g_param_spec_pointer
+g_value_set_pointer
+g_value_get_pointer
+
+<SUBSECTION GObject>
G_IS_PARAM_SPEC_OBJECT
G_PARAM_SPEC_OBJECT
-GParamSpecChar
-GParamSpecUChar
-GParamSpecBoolean
-GParamSpecInt
-GParamSpecUInt
-GParamSpecLong
-GParamSpecULong
-GParamSpecUnichar
-GParamSpecEnum
-GParamSpecFlags
-GParamSpecFloat
-GParamSpecDouble
-GParamSpecString
-GParamSpecParam
-GParamSpecBoxed
-GParamSpecPointer
-GParamSpecValueArray
-GParamSpecClosure
+G_VALUE_HOLDS_OBJECT
GParamSpecObject
-g_param_spec_char
-g_param_spec_uchar
-g_param_spec_boolean
-g_param_spec_int
-g_param_spec_uint
-g_param_spec_long
-g_param_spec_ulong
+g_param_spec_object
+g_value_set_object
+g_value_get_object
+g_value_dup_object
+
+<SUBSECTION gunichar>
+G_IS_PARAM_SPEC_UNICHAR
+G_PARAM_SPEC_UNICHAR
+GParamSpecUnichar
g_param_spec_unichar
-g_param_spec_enum
-g_param_spec_flags
-g_param_spec_float
-g_param_spec_double
-g_param_spec_string
-g_param_spec_param
-g_param_spec_boxed
-g_param_spec_pointer
+
+<SUBSECTION GValueArray>
+G_IS_PARAM_SPEC_VALUE_ARRAY
+G_PARAM_SPEC_VALUE_ARRAY
+GParamSpecValueArray
g_param_spec_value_array
-g_param_spec_closure
-g_param_spec_object
+
+<SUBSECTION Private>
+g_value_set_instance
</SECTION>
<SECTION>
g_signal_emit_by_name
g_signal_emitv
g_signal_emit_valist
-g_signal_connect_data
g_signal_connect
g_signal_connect_after
g_signal_connect_swapped
g_signal_connect_object
+GConnectFlags
+g_signal_connect_data
g_signal_connect_closure
g_signal_connect_closure_by_id
g_signal_handler_block
g_signal_stop_emission
g_signal_stop_emission_by_name
g_signal_add_emission_hook
-g_signal_add_emission_hook_full
g_signal_remove_emission_hook
g_signal_parse_name
g_signal_handlers_destroy
</SECTION>
<SECTION>
+<FILE>gclosure</FILE>
<TITLE>Closures</TITLE>
-<FILE>closures</FILE>
G_CLOSURE_NEEDS_MARSHAL
G_CCLOSURE_SWAP_DATA
G_CALLBACK
@class:
-<!-- ##### MACRO G_VALUE_HOLDS_ENUM ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_FLAGS ##### -->
-<para>
-
-</para>
-
-@value:
-
-
<!-- ##### STRUCT GEnumValue ##### -->
<para>
@Returns:
-<!-- ##### FUNCTION g_value_set_enum ##### -->
-<para>
-
-</para>
-
-@value:
-@v_enum:
-
-
-<!-- ##### FUNCTION g_value_get_enum ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_flags ##### -->
-<para>
-
-</para>
-
-@value:
-@v_flags:
-
-
-<!-- ##### FUNCTION g_value_get_flags ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
<!-- ##### FUNCTION g_enum_register_static ##### -->
<para>
@boxed: The boxed structure to be freed.
-<!-- ##### FUNCTION g_value_set_boxed ##### -->
-<para>
-Assign a #GValue which is initialized with a certain boxed type a
-boxed structure of that very same type.
-</para>
-
-@value: The #GValue to be assigned a value to.
-@boxed: The boxed structure which has to be of the same type the #GValue got initialized with.
-
-
-<!-- ##### FUNCTION g_value_set_static_boxed ##### -->
-<para>
-
-</para>
-
-@value:
-@boxed:
-
-
-<!-- ##### FUNCTION g_value_set_boxed_take_ownership ##### -->
-<para>
-This is an internal function introduced mainly for C marshallers.
-</para>
-
-@value:
-@boxed:
-
-
-<!-- ##### FUNCTION g_value_get_boxed ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_dup_boxed ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
<!-- ##### FUNCTION g_boxed_type_register_static ##### -->
<para>
This function creates a new %G_TYPE_BOXED derived type id for a new
@is_refcounted:
+<!-- ##### FUNCTION g_pointer_type_register_static ##### -->
+<para>
+
+</para>
+
+@name:
+@Returns:
+
+
@Returns: #TRUE if @value will fit inside a pointer value.
-<!-- ##### STRUCT GTypeValueTable ##### -->
+<!-- ##### FUNCTION g_value_type_compatible ##### -->
<para>
-The #GTypeValueTable provides the functions required by the #GValue implementation,
-to serve as a container for values of a type.
+
+</para>
+
+@src_type:
+@dest_type:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_type_transformable ##### -->
+<para>
+
+</para>
+
+@src_type:
+@dest_type:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_transform ##### -->
+<para>
+
</para>
-@value_init: Default initialize @values contents by poking values
- directly into the value->data array. The data array of
- the #GValue passed into this function was zero-filled
- with memset, so no care has to be taken to free any
- old contents. E.g. for the implementation of a string
- value that may never be NULL, the implementation might
- look like:
-<msgtext><programlisting>
-{
- value->data[0].v_pointer = g_strdup ("");
-}
-</programlisting></msgtext>
-@value_free: Free any old contents that might be left in the
- data array of the passed in @value. No resources may
- remain allocated through the #GValue contents after
- this function returns. E.g. for our above string type:
-<msgtext><programlisting>
-{
- /* only free strings without a specific flag for static storage */
- if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS))
- g_free (value->data[0].v_pointer);
-}
-</programlisting></msgtext>
-@value_copy: @dest_value is a #GValue with zero-filled data section
- and @src_value is a properly setup #GValue of same or
- derived type.
- The purpose of this function is to copy the contents of
- @src_value into @dest_value in a way, that even after
- @src_value has been freed, the contents of @dest_value
- remain valid. String type example:
-<msgtext><programlisting>
-{
- dest_value->data[0].v_pointer = g_strdup (src_value->data[0].v_pointer);
-}
-</programlisting></msgtext>
-@value_peek_pointer: If the value contents fit into a pointer, such as objects
- or strings, return this pointer, so the caller can peek at
- the current contents. To extend on our above string example:
-<msgtext><programlisting>
-{
- return value->data[0].v_pointer;
-}
-</programlisting></msgtext>
-@collect_format: A string format describing how to collect the contents of
- this value, bit-by-bit. Each character in the format represents
- an argument to be collected, the characters themselves indicate
- the type of the argument. Currently supported arguments are:
-<msgtext><variablelist>
- <varlistentry><term></term><listitem><para>
- 'i' - Integers. passed as collect_values[].v_int.
- </para></listitem></varlistentry>
- <varlistentry><term></term><listitem><para>
- 'l' - Longs. passed as collect_values[].v_long.
- </para></listitem></varlistentry>
- <varlistentry><term></term><listitem><para>
- 'd' - Doubles. passed as collect_values[].v_double.
- </para></listitem></varlistentry>
- <varlistentry><term></term><listitem><para>
- 'p' - Pointers. passed as collect_values[].v_pointer.
- </para></listitem></varlistentry>
-</variablelist></msgtext>
- It should be noted, that for variable argument list construction,
- ANSI C promotes every type smaller than an integer to an int, and
- floats to doubles. So for collection of short int or char, 'i'
- needs to be used, and for collection of floats 'd'.
-@collect_value: The collect_value() function is responsible for converting the
- values collected from a variable argument list into contents
- suitable for storage in a GValue. This function should setup
- @value similar to value_init(), e.g. for a string value that
- does not allow NULL pointers, it needs to either spew an error,
- or do an implicit conversion by storing an empty string.
- The @value passed in to this function has a zero-filled data
- array, so just like for @value_init it is guaranteed to not
- contain any old contents that might need freeing.
- @n_collect_values is exactly the string length of @collect_format,
- and @collect_values is an array of unions #GTypeCValue with
- length @n_collect_values, containing the collected values
- according to @collect_format.
- @collect_flags is an argument provided as a hint by the caller,
- which may contain the flag #G_VALUE_NOCOPY_CONTENTS indicating,
- that the collected value contents may be considered "static"
- for the duration of the #@value lifetime.
- Thus an extra copy of the contents stored in @collect_values is
- not required for assignment to @value.
- For our above string example, we continue with:
-<msgtext><programlisting>
-{
- if (!collect_values[0].v_pointer)
- value->data[0].v_pointer = g_strdup ("");
- else if (collect_flags & G_VALUE_NOCOPY_CONTENTS)
- {
- value->data[0].v_pointer = collect_values[0].v_pointer;
- /* keep a flag for the value_free() implementation to not free this string */
- value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS;
- }
- else
- value->data[0].v_pointer = g_strdup (collect_values[0].v_pointer);
-
- return NULL;
-}
-</programlisting></msgtext>
- It should be noted, that it is generally a bad idea to follow the
- #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to
- reentrancy requirements and reference count assertions performed
- by the GSignal code, reference counts should always be incremented
- for reference counted contents stored in the value->data array.
- To deviate from our string example for a moment, and taking a look
- at an exemplary implementation for collect_value() of #GObject:
-<msgtext><programlisting>
-{
- if (collect_values[0].v_pointer)
- {
- GObject *object = G_OBJECT (collect_values[0].v_pointer);
-
- /* never honour G_VALUE_NOCOPY_CONTENTS for ref-counted types */
- value->data[0].v_pointer = g_object_ref (object);
- return NULL;
- }
- else
- return g_strdup_printf ("Object passed as invalid NULL pointer");
-}
-</programlisting></msgtext>
- The reference count for valid objects is always incremented,
- regardless of @collect_flags. For invalid objects, the example
- returns a newly allocated string without altering @value.
- Upon success, collect_value() needs to return NULL, if however
- a malicious condition occurred, collect_value() may spew an
- error by returning a newly allocated non-NULL string, giving
- a suitable description of the error condition.
- The calling code makes no assumptions about the @value
- contents being valid upon error returns, @value
- is simply thrown away without further freeing. As such, it is
- a good idea to not allocate #GValue contents, prior to returning
- an error, however, collect_values() is not obliged to return
- a correctly setup @value for error returns, simply because
- any non-NULL return is considered a fatal condition so further
- program behaviour is undefined.
-@lcopy_format: Format description of the arguments to collect for @lcopy_value,
- analogous to @collect_format. Usually, @lcopy_format string consists
- only of 'p's to provide lcopy_value() with pointers to storage locations.
-@lcopy_value: This function is responsible for storing the @value contents into
- arguments passed through a variable argument list which got
- collected into @collect_values according to @lcopy_format.
- @n_collect_values equals the string length of @lcopy_format,
- and @collect_flags may contain #G_VALUE_NOCOPY_CONTENTS.
- In contrast to collect_value(), lcopy_value() is obliged to
- always properly support #G_VALUE_NOCOPY_CONTENTS.
- Similar to collect_value() the function may prematurely abort
- by returning a newly allocated string describing an error condition.
- To complete the string example:
-<msgtext><programlisting>
-{
- gchar **string_p = collect_values[0].v_pointer;
-
- if (!string_p)
- return g_strdup_printf ("string location passed as NULL");
-
- if (collect_flags & G_VALUE_NOCOPY_CONTENTS)
- *string_p = value->data[0].v_pointer;
- else
- *string_p = g_strdup (value->data[0].v_pointer);
-
-}
-</programlisting></msgtext>
- And an exemplary version of lcopy_value() for
- reference-counted types:
-<msgtext><programlisting>
-{
- GObject **object_p = collect_values[0].v_pointer;
-
- if (!object_p)
- return g_strdup_printf ("object location passed as NULL");
- if (!value->data[0].v_pointer)
- *object_p = NULL;
- else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) /* always honour */
- *object_p = value->data[0].v_pointer;
- else
- *object_p = g_object_ref (value->data[0].v_pointer);
- return NULL;
-}
-</programlisting></msgtext>
+@src_value:
+@dest_value:
+@Returns:
+
+
+<!-- ##### USER_FUNCTION GValueTransform ##### -->
+<para>
+
+</para>
+
+@src_value:
+@dest_value:
+
+
+<!-- ##### FUNCTION g_value_register_transform_func ##### -->
+<para>
+
+</para>
+
+@src_type:
+@dest_type:
+@transform_func:
+
@Returns:
+<!-- ##### STRUCT GObjectConstructParam ##### -->
+<para>
+
+</para>
+
+@pspec:
+@value:
+
+<!-- ##### STRUCT GParamSpecClosure ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_CLOSURE ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+<!-- ##### MACRO G_PARAM_SPEC_CLOSURE ##### -->
+<para>
+
+</para>
+
+@pspec:
+
<!-- ##### FUNCTION g_closure_add_fnotify ##### -->
<para>
@notify_data:
@notify_func:
+<!-- ##### FUNCTION g_param_spec_closure ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@flags:
+@Returns:
+
<!-- ##### FUNCTION g_param_spec_string_c ##### -->
<para>
@n_params:
@Varargs:
+<!-- ##### FUNCTION g_type_check_class_cast ##### -->
+<para>
+</para>
+
+@g_class:
+@is_a_type:
+@Returns:
+
+<!-- ##### FUNCTION g_type_check_flags ##### -->
+<para>
+Determines whether a given set of #GTypeFlags and #GTypeFundamentalFlags
+are set for @type.
+</para>
+
+@type: The type to check for flags.
+@flags: Bitwise combination of #GTypeFlags and #GTypeFundamentalFlags.
+@Returns: #TRUE if all @flags are set for @type, #FALSE otherwise.
+
+<!-- ##### FUNCTION g_type_check_instance ##### -->
+<para>
+Private helper function to aid implementation of the G_TYPE_CHECK_INSTANCE()
+macro.
+</para>
+
+@instance: A valid #GTypeInstance structure.
+@Returns: #TRUE if @instance is valid, #FALSE otherwise.
+
+<!-- ##### FUNCTION g_type_check_instance_cast ##### -->
+<para>
+</para>
+
+@instance:
+@iface_type:
+@Returns:
+
+<!-- ##### FUNCTION g_type_check_value ##### -->
+<para>
+</para>
+
+@value:
+@Returns:
+
+<!-- ##### FUNCTION g_type_class_is_a ##### -->
+<para>
+</para>
+
+@g_class:
+@is_a_type:
+@Returns:
+
+<!-- ##### FUNCTION g_type_instance_is_a ##### -->
+<para>
+Determines if @instance adheres to the interface exported
+by @iface_type. @iface_type is either a type that @instance
+is derived from, or an interface type that is supported by
+the anchestry of @instance.
+</para>
+
+@instance: A valid #GTypeInstance structure.
+@iface_type: A #GType value.
+@Returns: #TRUE if @instance conforms to @iface_type, #FALSE otherwise.
+
+<!-- ##### FUNCTION g_type_test_flags ##### -->
+<para>
+
+</para>
+
+@type:
+@flags:
+@Returns:
+
<!-- ##### FUNCTION g_type_value_is_a ##### -->
<para>
Determines if @value is a #GValue whose type conforms to @type.
<!-- ##### SECTION Title ##### -->
-
+GParamSpec
<!-- ##### SECTION Short_Description ##### -->
-Parameter Specifications
+Meta data object for parameter specifications.
<!-- ##### SECTION Long_Description ##### -->
<para>
<!-- ##### SECTION See_Also ##### -->
<para>
g_object_class_install_property(), g_object_set(), g_object_get(),
-g_object_set_property(), g_object_get_property()
-</para>
-
-<!-- ##### MACRO G_PARAM_SPEC_TYPE ##### -->
-<para>
-Retrive the #GType of this @pspec.
+g_object_set_property(), g_object_get_property(), g_value_register_transform_func()
</para>
-@pspec: a valid #GParamSpec
-
-
<!-- ##### MACRO G_TYPE_IS_PARAM ##### -->
<para>
-
+Returns whether @type "is a" %G_TYPE_PARAM.
</para>
-@type:
+@type: a #GType ID
<!-- ##### MACRO G_PARAM_SPEC ##### -->
<!-- ##### MACRO G_IS_PARAM_SPEC ##### -->
<para>
+Check whether @pspec "is a" valid #GParamSpec structure of type %G_TYPE_PARAM
+or derived.
+</para>
+
+@pspec: a #GParamSpec
+
+<!-- ##### MACRO G_PARAM_SPEC_CLASS ##### -->
+<para>
+Cast a derived #GParamSpecClass structure into a #GParamSpecClass structure.
</para>
-@pspec: a valid #GParamSpec
+@pclass: a valid #GParamSpecClass
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_CLASS ##### -->
+<para>
+Check whether @pclass "is a" valid #GParamSpecClass structure of type %G_TYPE_PARAM
+or derived.
+</para>
+
+@pclass: a #GParamSpecClass
<!-- ##### MACRO G_PARAM_SPEC_GET_CLASS ##### -->
<para>
+Retrieve the #GParamSpecClass of a #GParamSpec.
+</para>
+
+@pspec: a valid #GParamSpec
+
+<!-- ##### MACRO G_PARAM_SPEC_TYPE ##### -->
+<para>
+Retrive the #GType of this @pspec.
</para>
@pspec: a valid #GParamSpec
<!-- ##### FUNCTION g_param_value_set_default ##### -->
<para>
-
+Set @value to its default value as specified in @pspec.
</para>
-@pspec:
-@value:
+@pspec: a valid #GParamSpec
+@value: a #GValue of correct type for @pspec
<!-- ##### FUNCTION g_param_value_defaults ##### -->
<para>
-
+Check whether @value contains the default value as specified in @pspec.
</para>
-@pspec:
-@value:
-@Returns:
+@pspec: a valid #GParamSpec
+@value: a #GValue of correct type for @pspec
+@Returns: whether @value contains the canonical defualt for this @pspec
<!-- ##### FUNCTION g_param_value_validate ##### -->
<para>
-
+Ensure that the contents of @value comply with the specifications
+set out by @pspec. For example, a #GParamSpecInt might require
+that integers stored in @value may not be smaller than -42 and not be
+greater than +42. If @value contains an integer outside of this range,
+it is modified accordingly, so the resulting value will fit into the
+range -42 .. +42.
</para>
-@pspec:
-@value:
-@Returns:
+@pspec: a valid #GParamSpec
+@value: a #GValue of correct type for @pspec
+@Returns: whether modifying @value was necessary to ensure validity
<!-- ##### FUNCTION g_param_value_convert ##### -->
<para>
+This function transforms @src_value into @dest_value if possible,
+and then validates @dest_value, in order for it to conform to
+@pspec.
+If @strict_validation is %TRUE this function will only suceed if
+the transformed @dest_value complied to @pspec without modifications.
+See also g_value_type_transformable(), g_value_transform() and
+g_param_value_validate().
</para>
-@dest_value_spec:
-@src_value:
-@dest_value:
-@strict_validation:
-@Returns:
+@pspec: a valid #GParamSpec
+@src_value: souce #GValue
+@dest_value: destination #GValue of correct type for @pspec
+@strict_validation: $TRUE requires @dest_value to conform to @pspec without modifications
+@Returns: %TRUE if transformation and validation were successfull,
+ %FALSE otherwise and @dest_value is left untouched.
<!-- ##### FUNCTION g_param_values_cmp ##### -->
<para>
-
+Compare @value1 with @value2 according to @pspec, and return -1, 0 or +1,
+if @value1 is found to be less than, equal to or greater than @value2, respectively.
</para>
-@pspec:
-@value1:
-@value2:
-@Returns:
+@pspec: a valid #GParamSpec
+@value1: a #GValue of correct type for @pspec
+@value2: a #GValue of correct type for @pspec
+@Returns: -1, 0 or +1, for a less than, equal to or greater than result
<!-- ##### FUNCTION g_param_spec_get_qdata ##### -->
@Returns:
+<!-- ##### FUNCTION g_param_spec_internal ##### -->
+<para>
+
+</para>
+
+@param_type:
+@name:
+@nick:
+@blurb:
+@flags:
+@Returns:
+
+
<!-- ##### STRUCT GParamSpecTypeInfo ##### -->
<para>
@trailer_p:
-<!-- ##### FUNCTION g_param_spec_internal ##### -->
+<!-- ##### FUNCTION g_param_spec_pool_list ##### -->
<para>
</para>
-@param_type:
-@name:
-@nick:
-@blurb:
-@flags:
+@pool:
+@owner_type:
+@n_pspecs_p:
@Returns:
@interface_data: Location of user data passed to the @interface_init and
@interface_finalize functions (optional).
+<!-- ##### STRUCT GTypeValueTable ##### -->
+<para>
+The #GTypeValueTable provides the functions required by the #GValue implementation,
+to serve as a container for values of a type.
+</para>
+
+@value_init: Default initialize @values contents by poking values
+ directly into the value->data array. The data array of
+ the #GValue passed into this function was zero-filled
+ with memset, so no care has to be taken to free any
+ old contents. E.g. for the implementation of a string
+ value that may never be NULL, the implementation might
+ look like:
+<msgtext><programlisting>
+{
+ value->data[0].v_pointer = g_strdup ("");
+}
+</programlisting></msgtext>
+@value_free: Free any old contents that might be left in the
+ data array of the passed in @value. No resources may
+ remain allocated through the #GValue contents after
+ this function returns. E.g. for our above string type:
+<msgtext><programlisting>
+{
+ /* only free strings without a specific flag for static storage */
+ if (!(value->data[1].v_uint & G_VALUE_NOCOPY_CONTENTS))
+ g_free (value->data[0].v_pointer);
+}
+</programlisting></msgtext>
+@value_copy: @dest_value is a #GValue with zero-filled data section
+ and @src_value is a properly setup #GValue of same or
+ derived type.
+ The purpose of this function is to copy the contents of
+ @src_value into @dest_value in a way, that even after
+ @src_value has been freed, the contents of @dest_value
+ remain valid. String type example:
+<msgtext><programlisting>
+{
+ dest_value->data[0].v_pointer = g_strdup (src_value->data[0].v_pointer);
+}
+</programlisting></msgtext>
+@value_peek_pointer: If the value contents fit into a pointer, such as objects
+ or strings, return this pointer, so the caller can peek at
+ the current contents. To extend on our above string example:
+<msgtext><programlisting>
+{
+ return value->data[0].v_pointer;
+}
+</programlisting></msgtext>
+@collect_format: A string format describing how to collect the contents of
+ this value, bit-by-bit. Each character in the format represents
+ an argument to be collected, the characters themselves indicate
+ the type of the argument. Currently supported arguments are:
+<msgtext><variablelist>
+ <varlistentry><term></term><listitem><para>
+ 'i' - Integers. passed as collect_values[].v_int.
+ </para></listitem></varlistentry>
+ <varlistentry><term></term><listitem><para>
+ 'l' - Longs. passed as collect_values[].v_long.
+ </para></listitem></varlistentry>
+ <varlistentry><term></term><listitem><para>
+ 'd' - Doubles. passed as collect_values[].v_double.
+ </para></listitem></varlistentry>
+ <varlistentry><term></term><listitem><para>
+ 'p' - Pointers. passed as collect_values[].v_pointer.
+ </para></listitem></varlistentry>
+</variablelist></msgtext>
+ It should be noted, that for variable argument list construction,
+ ANSI C promotes every type smaller than an integer to an int, and
+ floats to doubles. So for collection of short int or char, 'i'
+ needs to be used, and for collection of floats 'd'.
+@collect_value: The collect_value() function is responsible for converting the
+ values collected from a variable argument list into contents
+ suitable for storage in a GValue. This function should setup
+ @value similar to value_init(), e.g. for a string value that
+ does not allow NULL pointers, it needs to either spew an error,
+ or do an implicit conversion by storing an empty string.
+ The @value passed in to this function has a zero-filled data
+ array, so just like for @value_init it is guaranteed to not
+ contain any old contents that might need freeing.
+ @n_collect_values is exactly the string length of @collect_format,
+ and @collect_values is an array of unions #GTypeCValue with
+ length @n_collect_values, containing the collected values
+ according to @collect_format.
+ @collect_flags is an argument provided as a hint by the caller,
+ which may contain the flag #G_VALUE_NOCOPY_CONTENTS indicating,
+ that the collected value contents may be considered "static"
+ for the duration of the #@value lifetime.
+ Thus an extra copy of the contents stored in @collect_values is
+ not required for assignment to @value.
+ For our above string example, we continue with:
+<msgtext><programlisting>
+{
+ if (!collect_values[0].v_pointer)
+ value->data[0].v_pointer = g_strdup ("");
+ else if (collect_flags & G_VALUE_NOCOPY_CONTENTS)
+ {
+ value->data[0].v_pointer = collect_values[0].v_pointer;
+ /* keep a flag for the value_free() implementation to not free this string */
+ value->data[1].v_uint = G_VALUE_NOCOPY_CONTENTS;
+ }
+ else
+ value->data[0].v_pointer = g_strdup (collect_values[0].v_pointer);
+
+ return NULL;
+}
+</programlisting></msgtext>
+ It should be noted, that it is generally a bad idea to follow the
+ #G_VALUE_NOCOPY_CONTENTS hint for reference counted types. Due to
+ reentrancy requirements and reference count assertions performed
+ by the GSignal code, reference counts should always be incremented
+ for reference counted contents stored in the value->data array.
+ To deviate from our string example for a moment, and taking a look
+ at an exemplary implementation for collect_value() of #GObject:
+<msgtext><programlisting>
+{
+ if (collect_values[0].v_pointer)
+ {
+ GObject *object = G_OBJECT (collect_values[0].v_pointer);
+
+ /* never honour G_VALUE_NOCOPY_CONTENTS for ref-counted types */
+ value->data[0].v_pointer = g_object_ref (object);
+ return NULL;
+ }
+ else
+ return g_strdup_printf ("Object passed as invalid NULL pointer");
+}
+</programlisting></msgtext>
+ The reference count for valid objects is always incremented,
+ regardless of @collect_flags. For invalid objects, the example
+ returns a newly allocated string without altering @value.
+ Upon success, collect_value() needs to return NULL, if however
+ a malicious condition occurred, collect_value() may spew an
+ error by returning a newly allocated non-NULL string, giving
+ a suitable description of the error condition.
+ The calling code makes no assumptions about the @value
+ contents being valid upon error returns, @value
+ is simply thrown away without further freeing. As such, it is
+ a good idea to not allocate #GValue contents, prior to returning
+ an error, however, collect_values() is not obliged to return
+ a correctly setup @value for error returns, simply because
+ any non-NULL return is considered a fatal condition so further
+ program behaviour is undefined.
+@lcopy_format: Format description of the arguments to collect for @lcopy_value,
+ analogous to @collect_format. Usually, @lcopy_format string consists
+ only of 'p's to provide lcopy_value() with pointers to storage locations.
+@lcopy_value: This function is responsible for storing the @value contents into
+ arguments passed through a variable argument list which got
+ collected into @collect_values according to @lcopy_format.
+ @n_collect_values equals the string length of @lcopy_format,
+ and @collect_flags may contain #G_VALUE_NOCOPY_CONTENTS.
+ In contrast to collect_value(), lcopy_value() is obliged to
+ always properly support #G_VALUE_NOCOPY_CONTENTS.
+ Similar to collect_value() the function may prematurely abort
+ by returning a newly allocated string describing an error condition.
+ To complete the string example:
+<msgtext><programlisting>
+{
+ gchar **string_p = collect_values[0].v_pointer;
+
+ if (!string_p)
+ return g_strdup_printf ("string location passed as NULL");
+
+ if (collect_flags & G_VALUE_NOCOPY_CONTENTS)
+ *string_p = value->data[0].v_pointer;
+ else
+ *string_p = g_strdup (value->data[0].v_pointer);
+
+}
+</programlisting></msgtext>
+ And an exemplary version of lcopy_value() for
+ reference-counted types:
+<msgtext><programlisting>
+{
+ GObject **object_p = collect_values[0].v_pointer;
+
+ if (!object_p)
+ return g_strdup_printf ("object location passed as NULL");
+ if (!value->data[0].v_pointer)
+ *object_p = NULL;
+ else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) /* always honour */
+ *object_p = value->data[0].v_pointer;
+ else
+ *object_p = g_object_ref (value->data[0].v_pointer);
+ return NULL;
+}
+</programlisting></msgtext>
+
<!-- ##### MACRO G_TYPE_FROM_INSTANCE ##### -->
<para>
Returns the type identifier from a given @instance structure.
@Returns:
+<!-- ##### FUNCTION g_type_interface_peek_parent ##### -->
+<para>
+
+</para>
+
+@g_iface:
+@Returns:
+
+
<!-- ##### FUNCTION g_type_children ##### -->
<para>
Return a newly allocated and 0 terminated array of type IDs, listing the
@Returns: The nextmost not registered fundamental type ID.
-<!-- ##### FUNCTION g_type_check_flags ##### -->
-<para>
-Determines whether a given set of #GTypeFlags and #GTypeFundamentalFlags
-are set for @type.
-</para>
-
-@type: The type to check for flags.
-@flags: Bitwise combination of #GTypeFlags and #GTypeFundamentalFlags.
-@Returns: #TRUE if all @flags are set for @type, #FALSE otherwise.
-
-
<!-- ##### FUNCTION g_type_create_instance ##### -->
<para>
Creates and initializes an instance of @type if @type is valid and can
should be created via g_object_new() and <emphasis>never</emphasis>
directly through g_type_create_instance() which doesn't handle
things like singleton objects or object construction.
+Note: Do <emphasis>not</emphasis> use this function, unless you're
+implementing a fundamental type. Also language bindings should <emphasis>not</emphasis>
+use this function but g_object_new() instead.
</para>
@type: An instantiabtable type to create an instance for.
@g_class:
-<!-- ##### FUNCTION g_type_check_instance ##### -->
-<para>
-Private helper function to aid implementation of the G_TYPE_CHECK_INSTANCE()
-macro.
-</para>
-
-@instance: A valid #GTypeInstance structure.
-@Returns: #TRUE if @instance is valid, #FALSE otherwise.
-
-
-<!-- ##### FUNCTION g_type_check_instance_cast ##### -->
-<para>
-</para>
-
-@instance:
-@iface_type:
-@Returns:
-
-
-<!-- ##### FUNCTION g_type_instance_is_a ##### -->
-<para>
-Determines if @instance adheres to the interface exported
-by @iface_type. @iface_type is either a type that @instance
-is derived from, or an interface type that is supported by
-the anchestry of @instance.
-</para>
-
-@instance: A valid #GTypeInstance structure.
-@iface_type: A #GType value.
-@Returns: #TRUE if @instance conforms to @iface_type, #FALSE otherwise.
-
-
-<!-- ##### FUNCTION g_type_check_class_cast ##### -->
-<para>
-</para>
-
-@g_class:
-@is_a_type:
-@Returns:
-
-
-<!-- ##### FUNCTION g_type_class_is_a ##### -->
-<para>
-</para>
-
-@g_class:
-@is_a_type:
-@Returns:
-
-
-<!-- ##### FUNCTION g_type_check_value ##### -->
-<para>
-</para>
-
-@value:
-@Returns:
-
-
<!-- ##### FUNCTION g_type_value_table_peek ##### -->
<para>
Returns the location of the #GTypeValueTable associated with @type.
</para>
-<!-- ##### STRUCT GObjectConstructParam ##### -->
-<para>
-
-</para>
-
-@pspec:
-@value:
-
<!-- ##### USER_FUNCTION GObjectGetPropertyFunc ##### -->
<para>
@class:
-<!-- ##### MACRO G_VALUE_HOLDS_OBJECT ##### -->
-<para>
-
-</para>
-
-@value:
-
-
<!-- ##### FUNCTION g_object_class_install_property ##### -->
<para>
@object:
+<!-- ##### USER_FUNCTION GWeakNotify ##### -->
+<para>
+
+</para>
+
+@data:
+@where_the_object_was:
+
+
<!-- ##### FUNCTION g_object_weak_ref ##### -->
<para>
@object:
-<!-- ##### FUNCTION g_value_set_object ##### -->
-<para>
-
-</para>
-
-@value:
-@v_object:
-
-
-<!-- ##### FUNCTION g_value_get_object ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_dup_object ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
<!-- ##### MACRO G_OBJECT_WARN_INVALID_PROPERTY_ID ##### -->
<para>
<!-- ##### SECTION Title ##### -->
-Standard Parameter Types
+Standard Parameter and Value Types
<!-- ##### SECTION Short_Description ##### -->
</para>
-<!-- ##### MACRO G_IS_PARAM_SPEC_CHAR ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_BOOLEAN ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_PARAM_SPEC_CHAR ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_BOOLEAN ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_IS_PARAM_SPEC_UCHAR ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_BOOLEAN ##### -->
<para>
</para>
-@pspec:
+@value:
-<!-- ##### MACRO G_PARAM_SPEC_UCHAR ##### -->
+<!-- ##### STRUCT GParamSpecBoolean ##### -->
<para>
</para>
-@pspec:
-
+@parent_instance:
+@default_value:
-<!-- ##### MACRO G_IS_PARAM_SPEC_BOOLEAN ##### -->
+<!-- ##### FUNCTION g_param_spec_boolean ##### -->
<para>
</para>
-@pspec:
+@name:
+@nick:
+@blurb:
+@default_value:
+@flags:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_BOOLEAN ##### -->
+<!-- ##### FUNCTION g_value_set_boolean ##### -->
<para>
</para>
-@pspec:
+@value:
+@v_boolean:
-<!-- ##### MACRO G_IS_PARAM_SPEC_INT ##### -->
+<!-- ##### FUNCTION g_value_get_boolean ##### -->
<para>
</para>
-@pspec:
+@value:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_INT ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_CHAR ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_IS_PARAM_SPEC_UINT ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_CHAR ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_PARAM_SPEC_UINT ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_CHAR ##### -->
<para>
</para>
-@pspec:
+@value:
-<!-- ##### MACRO G_IS_PARAM_SPEC_LONG ##### -->
+<!-- ##### STRUCT GParamSpecChar ##### -->
<para>
</para>
-@pspec:
-
+@parent_instance:
+@minimum:
+@maximum:
+@default_value:
-<!-- ##### MACRO G_PARAM_SPEC_LONG ##### -->
+<!-- ##### FUNCTION g_param_spec_char ##### -->
<para>
</para>
-@pspec:
+@name:
+@nick:
+@blurb:
+@minimum:
+@maximum:
+@default_value:
+@flags:
+@Returns:
-<!-- ##### MACRO G_IS_PARAM_SPEC_ULONG ##### -->
+<!-- ##### FUNCTION g_value_set_char ##### -->
<para>
</para>
-@pspec:
+@value:
+@v_char:
-<!-- ##### MACRO G_PARAM_SPEC_ULONG ##### -->
+<!-- ##### FUNCTION g_value_get_char ##### -->
<para>
</para>
-@pspec:
+@value:
+@Returns:
-<!-- ##### MACRO G_IS_PARAM_SPEC_ENUM ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_UCHAR ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_PARAM_SPEC_ENUM ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_UCHAR ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_IS_PARAM_SPEC_FLAGS ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_UCHAR ##### -->
<para>
</para>
-@pspec:
+@value:
-<!-- ##### MACRO G_PARAM_SPEC_FLAGS ##### -->
+<!-- ##### STRUCT GParamSpecUChar ##### -->
<para>
</para>
-@pspec:
-
+@parent_instance:
+@minimum:
+@maximum:
+@default_value:
-<!-- ##### MACRO G_IS_PARAM_SPEC_FLOAT ##### -->
+<!-- ##### FUNCTION g_param_spec_uchar ##### -->
<para>
</para>
-@pspec:
+@name:
+@nick:
+@blurb:
+@minimum:
+@maximum:
+@default_value:
+@flags:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_FLOAT ##### -->
+<!-- ##### FUNCTION g_value_set_uchar ##### -->
<para>
</para>
-@pspec:
+@value:
+@v_uchar:
-<!-- ##### MACRO G_IS_PARAM_SPEC_DOUBLE ##### -->
+<!-- ##### FUNCTION g_value_get_uchar ##### -->
<para>
</para>
-@pspec:
+@value:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_DOUBLE ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_INT ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_IS_PARAM_SPEC_STRING ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_INT ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_PARAM_SPEC_STRING ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_INT ##### -->
<para>
</para>
-@pspec:
+@value:
-<!-- ##### MACRO G_IS_PARAM_SPEC_PARAM ##### -->
+<!-- ##### STRUCT GParamSpecInt ##### -->
<para>
</para>
-@pspec:
-
+@parent_instance:
+@minimum:
+@maximum:
+@default_value:
-<!-- ##### MACRO G_PARAM_SPEC_PARAM ##### -->
+<!-- ##### FUNCTION g_param_spec_int ##### -->
<para>
</para>
-@pspec:
+@name:
+@nick:
+@blurb:
+@minimum:
+@maximum:
+@default_value:
+@flags:
+@Returns:
-<!-- ##### MACRO G_IS_PARAM_SPEC_BOXED ##### -->
+<!-- ##### FUNCTION g_value_set_int ##### -->
<para>
</para>
-@pspec:
+@value:
+@v_int:
-<!-- ##### MACRO G_PARAM_SPEC_BOXED ##### -->
+<!-- ##### FUNCTION g_value_get_int ##### -->
<para>
</para>
-@pspec:
+@value:
+@Returns:
-<!-- ##### MACRO G_IS_PARAM_SPEC_POINTER ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_UINT ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_PARAM_SPEC_POINTER ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_UINT ##### -->
<para>
</para>
@pspec:
-<!-- ##### MACRO G_IS_PARAM_SPEC_VALUE_ARRAY ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_UINT ##### -->
<para>
</para>
-@pspec:
+@value:
-<!-- ##### MACRO G_PARAM_SPEC_VALUE_ARRAY ##### -->
+<!-- ##### STRUCT GParamSpecUInt ##### -->
<para>
</para>
-@pspec:
-
+@parent_instance:
+@minimum:
+@maximum:
+@default_value:
-<!-- ##### MACRO G_IS_PARAM_SPEC_CLOSURE ##### -->
+<!-- ##### FUNCTION g_param_spec_uint ##### -->
<para>
</para>
-@pspec:
+@name:
+@nick:
+@blurb:
+@minimum:
+@maximum:
+@default_value:
+@flags:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_CLOSURE ##### -->
+<!-- ##### FUNCTION g_value_set_uint ##### -->
<para>
</para>
-@pspec:
+@value:
+@v_uint:
-<!-- ##### MACRO G_IS_PARAM_SPEC_OBJECT ##### -->
+<!-- ##### FUNCTION g_value_get_uint ##### -->
<para>
</para>
-@pspec:
+@value:
+@Returns:
-<!-- ##### MACRO G_PARAM_SPEC_OBJECT ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_LONG ##### -->
<para>
</para>
@pspec:
-<!-- ##### STRUCT GParamSpecChar ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_LONG ##### -->
<para>
</para>
-@parent_instance:
-@minimum:
-@maximum:
-@default_value:
-
-<!-- ##### STRUCT GParamSpecUChar ##### -->
-<para>
-
-</para>
+@pspec:
-@parent_instance:
-@minimum:
-@maximum:
-@default_value:
-<!-- ##### STRUCT GParamSpecBoolean ##### -->
+<!-- ##### MACRO G_VALUE_HOLDS_LONG ##### -->
<para>
</para>
-@parent_instance:
-@default_value:
+@value:
-<!-- ##### STRUCT GParamSpecInt ##### -->
+
+<!-- ##### STRUCT GParamSpecLong ##### -->
<para>
</para>
@maximum:
@default_value:
-<!-- ##### STRUCT GParamSpecUInt ##### -->
+<!-- ##### FUNCTION g_param_spec_long ##### -->
<para>
</para>
-@parent_instance:
+@name:
+@nick:
+@blurb:
@minimum:
@maximum:
@default_value:
+@flags:
+@Returns:
-<!-- ##### STRUCT GParamSpecLong ##### -->
+
+<!-- ##### FUNCTION g_value_set_long ##### -->
<para>
</para>
-@parent_instance:
-@minimum:
-@maximum:
-@default_value:
+@value:
+@v_long:
-<!-- ##### STRUCT GParamSpecULong ##### -->
+
+<!-- ##### FUNCTION g_value_get_long ##### -->
<para>
</para>
-@parent_instance:
-@minimum:
-@maximum:
-@default_value:
+@value:
+@Returns:
-<!-- ##### STRUCT GParamSpecUnichar ##### -->
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_ULONG ##### -->
<para>
</para>
-@parent_instance:
-@default_value:
+@pspec:
-<!-- ##### STRUCT GParamSpecEnum ##### -->
+
+<!-- ##### MACRO G_PARAM_SPEC_ULONG ##### -->
<para>
</para>
-@parent_instance:
-@enum_class:
-@default_value:
+@pspec:
-<!-- ##### STRUCT GParamSpecFlags ##### -->
+
+<!-- ##### MACRO G_VALUE_HOLDS_ULONG ##### -->
<para>
</para>
-@parent_instance:
-@flags_class:
-@default_value:
+@value:
-<!-- ##### STRUCT GParamSpecFloat ##### -->
+
+<!-- ##### STRUCT GParamSpecULong ##### -->
<para>
</para>
@minimum:
@maximum:
@default_value:
-@epsilon:
-<!-- ##### STRUCT GParamSpecDouble ##### -->
+<!-- ##### FUNCTION g_param_spec_ulong ##### -->
<para>
</para>
-@parent_instance:
+@name:
+@nick:
+@blurb:
@minimum:
@maximum:
@default_value:
-@epsilon:
-
-<!-- ##### STRUCT GParamSpecString ##### -->
-<para>
-
-</para>
+@flags:
+@Returns:
-@parent_instance:
-@default_value:
-@cset_first:
-@cset_nth:
-@substitutor:
-@null_fold_if_empty:
-@ensure_non_null:
-<!-- ##### STRUCT GParamSpecParam ##### -->
+<!-- ##### FUNCTION g_value_set_ulong ##### -->
<para>
</para>
-@parent_instance:
+@value:
+@v_ulong:
-<!-- ##### STRUCT GParamSpecBoxed ##### -->
+
+<!-- ##### FUNCTION g_value_get_ulong ##### -->
<para>
</para>
-@parent_instance:
+@value:
+@Returns:
-<!-- ##### STRUCT GParamSpecPointer ##### -->
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_INT64 ##### -->
<para>
</para>
-@parent_instance:
+@pspec:
-<!-- ##### STRUCT GParamSpecValueArray ##### -->
+
+<!-- ##### MACRO G_PARAM_SPEC_INT64 ##### -->
<para>
</para>
-@parent_instance:
-@element_spec:
-@fixed_n_elements:
+@pspec:
-<!-- ##### STRUCT GParamSpecClosure ##### -->
+
+<!-- ##### MACRO G_VALUE_HOLDS_INT64 ##### -->
<para>
</para>
-@parent_instance:
+@value:
-<!-- ##### STRUCT GParamSpecObject ##### -->
+
+<!-- ##### STRUCT GParamSpecInt64 ##### -->
<para>
</para>
@parent_instance:
+@minimum:
+@maximum:
+@default_value:
-<!-- ##### FUNCTION g_param_spec_char ##### -->
+<!-- ##### FUNCTION g_param_spec_int64 ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION g_param_spec_uchar ##### -->
+<!-- ##### FUNCTION g_value_set_int64 ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@minimum:
-@maximum:
-@default_value:
-@flags:
-@Returns:
+@value:
+@v_int64:
-<!-- ##### FUNCTION g_param_spec_boolean ##### -->
+<!-- ##### FUNCTION g_value_get_int64 ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@default_value:
-@flags:
+@value:
@Returns:
-<!-- ##### FUNCTION g_param_spec_int ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_UINT64 ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_UINT64 ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_UINT64 ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecUInt64 ##### -->
+<para>
+
+</para>
+
+@parent_instance:
@minimum:
@maximum:
@default_value:
-@flags:
-@Returns:
-
-<!-- ##### FUNCTION g_param_spec_uint ##### -->
+<!-- ##### FUNCTION g_param_spec_uint64 ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION g_param_spec_long ##### -->
+<!-- ##### FUNCTION g_value_set_uint64 ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
+@value:
+@v_uint64:
+
+
+<!-- ##### FUNCTION g_value_get_uint64 ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_FLOAT ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_FLOAT ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_FLOAT ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecFloat ##### -->
+<para>
+
+</para>
+
+@parent_instance:
@minimum:
@maximum:
@default_value:
-@flags:
-@Returns:
-
+@epsilon:
-<!-- ##### FUNCTION g_param_spec_ulong ##### -->
+<!-- ##### FUNCTION g_param_spec_float ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION g_param_spec_unichar ##### -->
+<!-- ##### FUNCTION g_value_set_float ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@default_value:
-@flags:
-@Returns:
+@value:
+@v_float:
-<!-- ##### FUNCTION g_param_spec_enum ##### -->
+<!-- ##### FUNCTION g_value_get_float ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@enum_type:
-@default_value:
-@flags:
+@value:
@Returns:
-<!-- ##### FUNCTION g_param_spec_flags ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_DOUBLE ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@flags_type:
-@default_value:
-@flags:
-@Returns:
+@pspec:
-<!-- ##### FUNCTION g_param_spec_float ##### -->
+<!-- ##### MACRO G_PARAM_SPEC_DOUBLE ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_DOUBLE ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecDouble ##### -->
+<para>
+
+</para>
+
+@parent_instance:
@minimum:
@maximum:
@default_value:
-@flags:
-@Returns:
-
+@epsilon:
<!-- ##### FUNCTION g_param_spec_double ##### -->
<para>
@Returns:
-<!-- ##### FUNCTION g_param_spec_string ##### -->
+<!-- ##### FUNCTION g_value_set_double ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@default_value:
-@flags:
-@Returns:
+@value:
+@v_double:
-<!-- ##### FUNCTION g_param_spec_param ##### -->
+<!-- ##### FUNCTION g_value_get_double ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@param_type:
-@flags:
+@value:
@Returns:
-<!-- ##### FUNCTION g_param_spec_boxed ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_ENUM ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_ENUM ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_ENUM ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecEnum ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@enum_class:
+@default_value:
+
+<!-- ##### FUNCTION g_param_spec_enum ##### -->
<para>
</para>
@name:
@nick:
@blurb:
-@boxed_type:
+@enum_type:
+@default_value:
@flags:
@Returns:
-<!-- ##### FUNCTION g_param_spec_pointer ##### -->
+<!-- ##### FUNCTION g_value_set_enum ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@flags:
+@value:
+@v_enum:
+
+
+<!-- ##### FUNCTION g_value_get_enum ##### -->
+<para>
+
+</para>
+
+@value:
@Returns:
-<!-- ##### FUNCTION g_param_spec_value_array ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_FLAGS ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_FLAGS ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_FLAGS ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecFlags ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@flags_class:
+@default_value:
+
+<!-- ##### FUNCTION g_param_spec_flags ##### -->
<para>
</para>
@name:
@nick:
@blurb:
-@element_spec:
+@flags_type:
+@default_value:
@flags:
@Returns:
-<!-- ##### FUNCTION g_param_spec_closure ##### -->
+<!-- ##### FUNCTION g_value_set_flags ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@flags:
+@value:
+@v_flags:
+
+
+<!-- ##### FUNCTION g_value_get_flags ##### -->
+<para>
+
+</para>
+
+@value:
@Returns:
-<!-- ##### FUNCTION g_param_spec_object ##### -->
+<!-- ##### MACRO G_IS_PARAM_SPEC_STRING ##### -->
<para>
</para>
-@name:
-@nick:
-@blurb:
-@object_type:
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_STRING ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_STRING ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecString ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@default_value:
+@cset_first:
+@cset_nth:
+@substitutor:
+@null_fold_if_empty:
+@ensure_non_null:
+
+<!-- ##### FUNCTION g_param_spec_string ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@default_value:
+@flags:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_set_string ##### -->
+<para>
+
+</para>
+
+@value:
+@v_string:
+
+
+<!-- ##### FUNCTION g_value_set_static_string ##### -->
+<para>
+
+</para>
+
+@value:
+@v_string:
+
+
+<!-- ##### FUNCTION g_value_set_string_take_ownership ##### -->
+<para>
+
+</para>
+
+@value:
+@v_string:
+
+
+<!-- ##### FUNCTION g_value_get_string ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_dup_string ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_PARAM ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_PARAM ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_PARAM ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecParam ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+
+<!-- ##### FUNCTION g_param_spec_param ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@param_type:
+@flags:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_set_param ##### -->
+<para>
+
+</para>
+
+@value:
+@param:
+
+
+<!-- ##### FUNCTION g_value_get_param ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_dup_param ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_BOXED ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_BOXED ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_BOXED ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecBoxed ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+
+<!-- ##### FUNCTION g_param_spec_boxed ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@boxed_type:
+@flags:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_set_boxed ##### -->
+<para>
+Assign a #GValue which is initialized with a certain boxed type a
+boxed structure of that very same type.
+</para>
+
+@value: The #GValue to be assigned a value to.
+@boxed: The boxed structure which has to be of the same type the #GValue got initialized with.
+
+
+<!-- ##### FUNCTION g_value_set_static_boxed ##### -->
+<para>
+
+</para>
+
+@value:
+@boxed:
+
+
+<!-- ##### FUNCTION g_value_set_boxed_take_ownership ##### -->
+<para>
+This is an internal function introduced mainly for C marshallers.
+</para>
+
+@value:
+@boxed:
+
+
+<!-- ##### FUNCTION g_value_get_boxed ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_dup_boxed ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_POINTER ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_POINTER ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_POINTER ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecPointer ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+
+<!-- ##### FUNCTION g_param_spec_pointer ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@flags:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_set_pointer ##### -->
+<para>
+
+</para>
+
+@value:
+@v_pointer:
+
+
+<!-- ##### FUNCTION g_value_get_pointer ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_OBJECT ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_OBJECT ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_VALUE_HOLDS_OBJECT ##### -->
+<para>
+
+</para>
+
+@value:
+
+
+<!-- ##### STRUCT GParamSpecObject ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+
+<!-- ##### FUNCTION g_param_spec_object ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@object_type:
+@flags:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_set_object ##### -->
+<para>
+
+</para>
+
+@value:
+@v_object:
+
+
+<!-- ##### FUNCTION g_value_get_object ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### FUNCTION g_value_dup_object ##### -->
+<para>
+
+</para>
+
+@value:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_UNICHAR ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_UNICHAR ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### STRUCT GParamSpecUnichar ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@default_value:
+
+<!-- ##### FUNCTION g_param_spec_unichar ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@default_value:
+@flags:
+@Returns:
+
+
+<!-- ##### MACRO G_IS_PARAM_SPEC_VALUE_ARRAY ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### MACRO G_PARAM_SPEC_VALUE_ARRAY ##### -->
+<para>
+
+</para>
+
+@pspec:
+
+
+<!-- ##### STRUCT GParamSpecValueArray ##### -->
+<para>
+
+</para>
+
+@parent_instance:
+@element_spec:
+@fixed_n_elements:
+
+<!-- ##### FUNCTION g_param_spec_value_array ##### -->
+<para>
+
+</para>
+
+@name:
+@nick:
+@blurb:
+@element_spec:
@flags:
@Returns:
@var_args:
-<!-- ##### FUNCTION g_signal_connect_data ##### -->
+<!-- ##### MACRO g_signal_connect ##### -->
<para>
</para>
@detailed_signal:
@c_handler:
@data:
-@destroy_data:
-@connect_flags:
-@Returns:
-<!-- # Unused Parameters # -->
-@swapped:
-@after:
-<!-- ##### MACRO g_signal_connect ##### -->
+<!-- ##### MACRO g_signal_connect_after ##### -->
<para>
</para>
@data:
-<!-- ##### MACRO g_signal_connect_after ##### -->
+<!-- ##### MACRO g_signal_connect_swapped ##### -->
<para>
</para>
@data:
-<!-- ##### MACRO g_signal_connect_swapped ##### -->
+<!-- ##### FUNCTION g_signal_connect_object ##### -->
<para>
</para>
@instance:
@detailed_signal:
@c_handler:
-@data:
+@gobject:
+@connect_flags:
+@Returns:
+<!-- # Unused Parameters # -->
+@swapped:
+@after:
-<!-- ##### FUNCTION g_signal_connect_object ##### -->
+<!-- ##### ENUM GConnectFlags ##### -->
+<para>
+
+</para>
+
+@G_CONNECT_AFTER:
+@G_CONNECT_SWAPPED:
+
+<!-- ##### FUNCTION g_signal_connect_data ##### -->
<para>
</para>
@instance:
@detailed_signal:
@c_handler:
-@gobject:
+@data:
+@destroy_data:
@connect_flags:
@Returns:
<!-- # Unused Parameters # -->
+++ /dev/null
-<!-- ##### SECTION Title ##### -->
-Standard value types
-
-<!-- ##### SECTION Short_Description ##### -->
-
-
-<!-- ##### SECTION Long_Description ##### -->
-<para>
-
-</para>
-
-<!-- ##### SECTION See_Also ##### -->
-<para>
-
-</para>
-
-<!-- ##### MACRO G_VALUE_HOLDS_CHAR ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_UCHAR ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_BOOLEAN ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_INT ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_UINT ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_LONG ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_ULONG ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_FLOAT ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_DOUBLE ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_STRING ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_POINTER ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### MACRO G_VALUE_HOLDS_PARAM ##### -->
-<para>
-
-</para>
-
-@value:
-
-
-<!-- ##### FUNCTION g_value_set_char ##### -->
-<para>
-
-</para>
-
-@value:
-@v_char:
-
-
-<!-- ##### FUNCTION g_value_get_char ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_uchar ##### -->
-<para>
-
-</para>
-
-@value:
-@v_uchar:
-
-
-<!-- ##### FUNCTION g_value_get_uchar ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_boolean ##### -->
-<para>
-
-</para>
-
-@value:
-@v_boolean:
-
-
-<!-- ##### FUNCTION g_value_get_boolean ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_int ##### -->
-<para>
-
-</para>
-
-@value:
-@v_int:
-
-
-<!-- ##### FUNCTION g_value_get_int ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_uint ##### -->
-<para>
-
-</para>
-
-@value:
-@v_uint:
-
-
-<!-- ##### FUNCTION g_value_get_uint ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_long ##### -->
-<para>
-
-</para>
-
-@value:
-@v_long:
-
-
-<!-- ##### FUNCTION g_value_get_long ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_ulong ##### -->
-<para>
-
-</para>
-
-@value:
-@v_ulong:
-
-
-<!-- ##### FUNCTION g_value_get_ulong ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_float ##### -->
-<para>
-
-</para>
-
-@value:
-@v_float:
-
-
-<!-- ##### FUNCTION g_value_get_float ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_double ##### -->
-<para>
-
-</para>
-
-@value:
-@v_double:
-
-
-<!-- ##### FUNCTION g_value_get_double ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_string ##### -->
-<para>
-
-</para>
-
-@value:
-@v_string:
-
-
-<!-- ##### FUNCTION g_value_set_static_string ##### -->
-<para>
-
-</para>
-
-@value:
-@v_string:
-
-
-<!-- ##### FUNCTION g_value_set_string_take_ownership ##### -->
-<para>
-This is an internal function introduced mainly for C marshallers.
-</para>
-
-@value:
-@v_string:
-
-
-<!-- ##### FUNCTION g_value_get_string ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_dup_string ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_param ##### -->
-<para>
-
-</para>
-
-@value:
-@param:
-
-
-<!-- ##### FUNCTION g_value_get_param ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_dup_param ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_get_pointer ##### -->
-<para>
-
-</para>
-
-@value:
-@Returns:
-
-
-<!-- ##### FUNCTION g_value_set_pointer ##### -->
-<para>
-
-</para>
-
-@value:
-@v_pointer:
-
-
-<!-- ##### FUNCTION g_value_set_instance ##### -->
-<para>
-
-</para>
-
-@value:
-@instance:
-
-