mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-09-27 17:52:58 +02:00
changed prototype of g_boxed_type_register_static() to contain an optional
Wed Mar 7 09:36:33 2001 Tim Janik <timj@gtk.org> * gboxed.[hc]: changed prototype of g_boxed_type_register_static() to contain an optional init function and a hint at whether the boxed structure uses ref counting internally. added g_value_set_boxed_take_ownership(). made G_TYPE_BOXED an abstract value type. * genums.[hc]: made G_TYPE_ENUM and G_TYPE_FLAGS abstract value types. * glib-genmarshal.c: argument type changes, preparation for third-party arg specification. * gobject.[hc]: cleaned up get/set property code. added g_strdup_value_contents() to improve warnings. * gparam.[hc]: added g_param_value_convert(), taking over responsibility of the old g_value_convert(). added G_PARAM_LAX_VALIDATION flag so validation alterations may be valid a part of the property setting process. * gparamspecs.[hc]: made value comparisons stable (for sort applications). added GParamSpecValueArray, a param spec for value arrays and GParamSpecClosure. nuked the value exchange functions and GParamSpecCCallback. * gtype.[hc]: catch unintialized usages of the type system with g_return_val_if_uninitialized(). introduced G_TYPE_FLAG_VALUE_ABSTRACT to flag types that introduce a value table, but can't be used for g_value_init(). cleaned up reserved type ids. * gvalue.[hc]: code cleanups and saner checking. nuked the value exchange API. implemented value transformations, we can't really "convert" values, rather transforms are an anylogy to C casts, real conversions need a param spec for validation, which is why g_param_value_convert() does real conversions now. * gvaluearray.[hc]: new files that implement a GValueArray, a struct that can hold inhomogeneous arrays of value (to that extend that it also allowes undefined values, i.e. G_VALUE_TYPE(value)==0). this is exposed to the type system as a boxed type. * gvaluetransform.c: new file implementing most of the former value exchange functions as single-sided transformations. * gvaluetypes.[hc]: nuked G_TYPE_CCALLBACK, added g_value_set_string_take_ownership(). * *.h: s/G_IS_VALUE_/G_VALUE_HOLDS_/. * *.[hc]: many fixes and cleanups. * many warning improvements. Tue Feb 27 18:35:15 2001 Tim Janik <timj@gtk.org> * gobject.c (g_object_get_valist): urg, pass G_VALUE_NOCOPY_CONTENTS into G_VALUE_LCOPY(), this needs proper documenting. * gparam.c: fixed G_PARAM_USER_MASK. * gtype.c (type_data_make_W): (type_data_last_unref_Wm): fixed invalid memory freeing. * gobject.c (g_object_last_unref): destroy signal handlers associated with object, right before finalization. * gsignal.c (g_signal_parse_name): catch destroyed nodes or signals that don't actually support details. * gobject.[hc]: got rid of property trailers. nuked GObject properties "data" and the "signal" variants. (g_object_connect): new convenience function to do multiple signal connections at once. (g_object_disconnect): likewise, for disconnections. * gparam.[hc] (g_param_spec_pool_lookup): took out trailer support. * gvalue.[hc]: marked g_value_fits_pointer() and g_value_peek_pointer() as private (the latter got renamed from g_value_get_as_pointer()). Wed Mar 7 09:32:06 2001 Tim Janik <timj@gtk.org> * glib-object.h: add gvaluearray.h. * gstring.[hc]: fixup naming of g_string_sprint*. * gtypes.h: fixed GCompareDataFunc naming. Wed Mar 7 09:33:27 2001 Tim Janik <timj@gtk.org> * gobject/Makefile.am: shuffled rules to avoid excessive rebuilds. * gobject/gobject-sections.txt: updates. * gobject/tmpl/*: bunch of updates, added another patch from Eric Lemings <eric.b.lemings@lmco.com>.
This commit is contained in:
@@ -1,3 +1,13 @@
|
||||
Wed Mar 7 09:33:27 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gobject/Makefile.am: shuffled rules to avoid excessive
|
||||
rebuilds.
|
||||
|
||||
* gobject/gobject-sections.txt: updates.
|
||||
|
||||
* gobject/tmpl/*: bunch of updates, added another patch
|
||||
from Eric Lemings <eric.b.lemings@lmco.com>.
|
||||
|
||||
2001-03-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
|
||||
|
||||
* glib/glib-sections.txt, glib/tmpl/messages.sgml: Removed
|
||||
|
@@ -1,3 +1,13 @@
|
||||
<!-- ##### USER_FUNCTION GCompareFuncData ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@a:
|
||||
@b:
|
||||
@user_data:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### USER_FUNCTION GCompletionStrcmpFunc ##### -->
|
||||
<para>
|
||||
|
||||
|
@@ -278,17 +278,6 @@ and has no return value. It is not currently used in GLib or GTK+.
|
||||
@data:
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GCompareFuncData ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@a:
|
||||
@b:
|
||||
@user_data:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_qsort_with_data ##### -->
|
||||
<para>
|
||||
|
||||
|
@@ -78,7 +78,7 @@ you do not have to worry about having enough space to copy the string.
|
||||
@Returns: the destination #GString.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_string_sprintf ##### -->
|
||||
<!-- ##### MACRO g_string_sprintf ##### -->
|
||||
<para>
|
||||
Writes a formatted string into a #GString.
|
||||
This is similar to the standard <function>sprintf()</function> function,
|
||||
@@ -86,19 +86,21 @@ except that the GString buffer automatically expands to contain the results.
|
||||
The previous contents of the GString are destroyed.
|
||||
</para>
|
||||
|
||||
<!-- # Unused Parameters # -->
|
||||
@string: a #GString.
|
||||
@format: the string format. See the <function>sprintf()</function>
|
||||
documentation.
|
||||
@Varargs: the parameters to insert into the format string.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_string_sprintfa ##### -->
|
||||
<!-- ##### MACRO g_string_sprintfa ##### -->
|
||||
<para>
|
||||
Appends a formatted string onto the end of a #GString.
|
||||
This function is is similar to g_string_sprintf() except that
|
||||
the text is appended to the GString.
|
||||
</para>
|
||||
|
||||
<!-- # Unused Parameters # -->
|
||||
@string: a #GString.
|
||||
@format: the string format. See the <function>sprintf()</function>
|
||||
documentation.
|
||||
|
@@ -2,47 +2,36 @@
|
||||
|
||||
# The name of the module.
|
||||
DOC_MODULE=gobject
|
||||
|
||||
# The top-level SGML file.
|
||||
DOC_MAIN_SGML_FILE=gobject-docs.sgml
|
||||
|
||||
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
|
||||
EXTRA_DIST +=
|
||||
# The directory containing the source code. Relative to $(srcdir)
|
||||
DOC_SOURCE_DIR=../../../gobject
|
||||
|
||||
# Extra options to supply to gtkdoc-scan
|
||||
SCAN_OPTIONS=
|
||||
|
||||
# Extra options to supply to gtkdoc-mkdb
|
||||
MKDB_OPTIONS=
|
||||
|
||||
# Extra options to supply to gtkdoc-fixref
|
||||
FIXXREF_OPTIONS=--extra-dir=$(srcdir)/../glib/html
|
||||
# Images to copy into HTML directory
|
||||
HTML_IMAGES =
|
||||
|
||||
# Used for dependencies
|
||||
HFILE_GLOB=$(top_srcdir)/gobject/*.h
|
||||
CFILE_GLOB=$(top_srcdir)/gobject/*.c
|
||||
|
||||
# Headers to ignore
|
||||
IGNORE_HFILES= \
|
||||
.saved \
|
||||
glib-genmarshal.c \
|
||||
gbsearcharray.h
|
||||
|
||||
# Extra files to add when scanning
|
||||
EXTRA_HFILES=
|
||||
|
||||
# Images to copy into HTML directory
|
||||
HTML_IMAGES =
|
||||
|
||||
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
|
||||
content_files =
|
||||
|
||||
# Other files to distribute
|
||||
extra_files =
|
||||
|
||||
# CFLAGS and LDFLAGS for compiling scan program. Only needed
|
||||
# if $(DOC_MODULE).types is non-empty.
|
||||
GTKDOC_CFLAGS =
|
||||
GTKDOC_LIBS =
|
||||
|
||||
# Commands for compiling and linking
|
||||
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
|
||||
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
|
||||
@@ -54,29 +43,29 @@ GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
|
||||
|
||||
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(content_files) \
|
||||
$(extra_files) \
|
||||
$(HTML_IMAGES) \
|
||||
$(DOC_MAIN_SGML_FILE) \
|
||||
$(DOC_MODULE).types \
|
||||
$(DOC_MODULE)-sections.txt \
|
||||
$(DOC_MODULE)-overrides.txt
|
||||
DOC_STAMPS = $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp \
|
||||
build-scan.stamp build-tmpl.stamp build-sgml.stamp build-html.stamp
|
||||
# gtkdoc-mktmpl: creates, and on changes touches: tmpl.stamp
|
||||
# gtkdoc-mkdb: creates, and on changes touches: sgml.stamp
|
||||
# gtkdoc-mkhtml: creates, and on changes touches: html.stamp
|
||||
|
||||
DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp
|
||||
|
||||
.PHONY: gtkdoc-build-all
|
||||
|
||||
if ENABLE_GTK_DOC
|
||||
all-local: html-build.stamp
|
||||
|
||||
SCANOBJ_FILES = \
|
||||
$(DOC_MODULE).args \
|
||||
$(DOC_MODULE).hierarchy \
|
||||
$(DOC_MODULE).signal
|
||||
|
||||
scan-build.stamp: $(HFILE_GLOB)
|
||||
all-local: gtkdoc-build-all
|
||||
|
||||
gtkdoc-build-all: build-sgml.stamp build-html.stamp
|
||||
@true
|
||||
build-scan.stamp: $(HFILE_GLOB)
|
||||
@echo '*** Scanning header files ***'
|
||||
cd $(srcdir) && ( \
|
||||
if grep -l '^.+$$' $(DOC_MODULE).types > /dev/null ; then \
|
||||
if grep -l '^.+$$' $(DOC_MODULE).types > /dev/null 2>/dev/null ; then \
|
||||
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj --module=$(DOC_MODULE) ; \
|
||||
else \
|
||||
for i in $(SCANOBJ_FILES) ; do \
|
||||
@@ -85,46 +74,32 @@ scan-build.stamp: $(HFILE_GLOB)
|
||||
fi )
|
||||
cd $(srcdir) && \
|
||||
gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
|
||||
touch scan-build.stamp
|
||||
|
||||
check_scan:
|
||||
$(MAKE) scan-build.stamp
|
||||
|
||||
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): check_scan
|
||||
|
||||
tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
|
||||
touch build-scan.stamp
|
||||
build-tmpl.stamp: build-scan.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(srcdir)/tmpl/*.sgml
|
||||
@echo '*** Rebuilding template files ***'
|
||||
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
|
||||
touch tmpl-build.stamp
|
||||
|
||||
check_templates:
|
||||
$(MAKE) tmpl-build.stamp
|
||||
|
||||
tmpl.stamp: check_templates
|
||||
|
||||
sgml-build.stamp: tmpl.stamp $(CFILE_GLOB)
|
||||
touch build-tmpl.stamp
|
||||
tmpl.stamp: build-tmpl.stamp
|
||||
@true
|
||||
build-sgml.stamp: tmpl.stamp $(CFILE_GLOB)
|
||||
@echo '*** Building SGML ***'
|
||||
cd $(srcdir) && \
|
||||
gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) $(MKDB_OPTIONS)
|
||||
touch sgml-build.stamp
|
||||
|
||||
check_sgml:
|
||||
$(MAKE) sgml-build.stamp
|
||||
|
||||
sgml.stamp: check_sgml
|
||||
|
||||
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE)
|
||||
touch build-sgml.stamp
|
||||
sgml.stamp: build-sgml.stamp
|
||||
@true
|
||||
build-html.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE)
|
||||
@echo '*** Building HTML ***'
|
||||
test -d $(srcdir)/html || mkdir $(srcdir)/html
|
||||
cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
|
||||
test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
|
||||
@echo '-- Fixing Crossreferences'
|
||||
cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
|
||||
touch html-build.stamp
|
||||
touch build-html.stamp
|
||||
endif
|
||||
|
||||
clean-local:
|
||||
rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS) $(srcdir)/sgml.stamp
|
||||
rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
|
||||
|
||||
maintainer-clean-local: clean
|
||||
cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
|
||||
@@ -167,4 +142,12 @@ dist-hook: dist-check-gtkdoc dist-hook-local
|
||||
cp $(srcdir)/$$i $(distdir)/html ; \
|
||||
done
|
||||
|
||||
.PHONY : check_sgml check_templates check_scan dist-hook-local
|
||||
.PHONY: dist-hook-local
|
||||
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(HTML_IMAGES) \
|
||||
$(DOC_MAIN_SGML_FILE) \
|
||||
$(DOC_MODULE).types \
|
||||
$(DOC_MODULE)-sections.txt \
|
||||
$(DOC_MODULE)-overrides.txt
|
||||
|
@@ -24,7 +24,6 @@ GTypeInstance
|
||||
GTypeInfo
|
||||
GTypeFundamentalInfo
|
||||
GInterfaceInfo
|
||||
GTypeValueTable
|
||||
|
||||
<TITLE>GType</TITLE>
|
||||
G_TYPE_FROM_INSTANCE
|
||||
@@ -141,45 +140,47 @@ GObjectClass
|
||||
GObjectConstructParam
|
||||
GObjectGetPropertyFunc
|
||||
GObjectSetPropertyFunc
|
||||
GObjectFinalizeFunc
|
||||
G_TYPE_IS_OBJECT
|
||||
G_OBJECT
|
||||
G_IS_OBJECT
|
||||
G_OBJECT_CLASS
|
||||
G_IS_OBJECT_CLASS
|
||||
G_OBJECT_GET_CLASS
|
||||
G_OBJECT_TYPE
|
||||
G_OBJECT_TYPE_NAME
|
||||
G_OBJECT_CLASS_TYPE
|
||||
G_OBJECT_CLASS_NAME
|
||||
G_IS_VALUE_OBJECT
|
||||
G_TYPE_IS_OBJECT
|
||||
G_IS_OBJECT
|
||||
G_OBJECT_CLASS
|
||||
G_IS_OBJECT_CLASS
|
||||
GObjectFinalizeFunc
|
||||
G_VALUE_HOLDS_OBJECT
|
||||
g_object_class_install_property
|
||||
g_object_class_find_property
|
||||
g_object_new
|
||||
g_object_new_valist
|
||||
g_object_set
|
||||
g_object_get
|
||||
g_object_set_valist
|
||||
g_object_get_valist
|
||||
g_object_set_property
|
||||
g_object_get_property
|
||||
g_object_freeze_notify
|
||||
g_object_notify
|
||||
g_object_thaw_notify
|
||||
g_object_ref
|
||||
g_object_unref
|
||||
g_object_get_qdata
|
||||
g_object_set_qdata
|
||||
g_object_set_qdata_full
|
||||
g_object_steal_qdata
|
||||
g_object_connect
|
||||
g_object_disconnect
|
||||
g_object_set
|
||||
g_object_get
|
||||
g_object_notify
|
||||
g_object_freeze_notify
|
||||
g_object_thaw_notify
|
||||
g_object_get_data
|
||||
g_object_set_data
|
||||
g_object_set_data_full
|
||||
g_object_steal_data
|
||||
g_object_get_qdata
|
||||
g_object_set_qdata
|
||||
g_object_set_qdata_full
|
||||
g_object_steal_qdata
|
||||
g_object_set_property
|
||||
g_object_get_property
|
||||
g_object_new_valist
|
||||
g_object_set_valist
|
||||
g_object_get_valist
|
||||
g_object_watch_closure
|
||||
g_value_set_object
|
||||
g_value_get_object
|
||||
g_value_dup_object
|
||||
g_object_watch_closure
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID
|
||||
</SECTION>
|
||||
|
||||
@@ -198,8 +199,8 @@ G_FLAGS_CLASS
|
||||
G_IS_FLAGS_CLASS
|
||||
G_FLAGS_CLASS_TYPE
|
||||
G_FLAGS_CLASS_TYPE_NAME
|
||||
G_IS_VALUE_ENUM
|
||||
G_IS_VALUE_FLAGS
|
||||
G_VALUE_HOLDS_ENUM
|
||||
G_VALUE_HOLDS_FLAGS
|
||||
GEnumValue
|
||||
GFlagsValue
|
||||
g_enum_get_value
|
||||
@@ -228,11 +229,12 @@ 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
|
||||
<SUBSECTION Standard>
|
||||
G_IS_VALUE_BOXED
|
||||
G_VALUE_HOLDS_BOXED
|
||||
G_TYPE_IS_BOXED
|
||||
</SECTION>
|
||||
|
||||
@@ -248,31 +250,48 @@ GValueExchange
|
||||
GValue
|
||||
g_value_init
|
||||
g_value_copy
|
||||
g_value_convert
|
||||
g_value_reset
|
||||
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
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<TITLE>Value arrays</TITLE>
|
||||
<FILE>value_types</FILE>
|
||||
GValueArray
|
||||
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
|
||||
g_value_array_remove
|
||||
g_value_array_sort
|
||||
g_value_array_sort_with_data
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
<TITLE>Standard value types</TITLE>
|
||||
<FILE>value_types</FILE>
|
||||
G_IS_VALUE_CHAR
|
||||
G_IS_VALUE_UCHAR
|
||||
G_IS_VALUE_BOOLEAN
|
||||
G_IS_VALUE_INT
|
||||
G_IS_VALUE_UINT
|
||||
G_IS_VALUE_LONG
|
||||
G_IS_VALUE_ULONG
|
||||
G_IS_VALUE_FLOAT
|
||||
G_IS_VALUE_DOUBLE
|
||||
G_IS_VALUE_STRING
|
||||
G_IS_VALUE_POINTER
|
||||
G_IS_VALUE_CCALLBACK
|
||||
G_IS_VALUE_PARAM
|
||||
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
|
||||
@@ -293,16 +312,14 @@ 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_ccallback
|
||||
g_value_get_pointer
|
||||
g_value_set_pointer
|
||||
g_value_get_as_pointer
|
||||
g_value_set_ccallback
|
||||
g_value_set_instance
|
||||
</SECTION>
|
||||
|
||||
@@ -374,8 +391,6 @@ G_IS_PARAM_SPEC_POINTER
|
||||
G_PARAM_SPEC_POINTER
|
||||
G_IS_PARAM_SPEC_BOXED
|
||||
G_PARAM_SPEC_BOXED
|
||||
G_IS_PARAM_SPEC_CCALLBACK
|
||||
G_PARAM_SPEC_CCALLBACK
|
||||
G_IS_PARAM_SPEC_PARAM
|
||||
G_PARAM_SPEC_PARAM
|
||||
G_IS_PARAM_SPEC_OBJECT
|
||||
@@ -393,7 +408,6 @@ GParamSpecFloat
|
||||
GParamSpecDouble
|
||||
GParamSpecString
|
||||
GParamSpecBoxed
|
||||
GParamSpecCCallback
|
||||
GParamSpecParam
|
||||
GParamSpecPointer
|
||||
GParamSpecObject
|
||||
@@ -411,7 +425,6 @@ g_param_spec_double
|
||||
g_param_spec_string
|
||||
g_param_spec_string_c
|
||||
g_param_spec_boxed
|
||||
g_param_spec_ccallback
|
||||
g_param_spec_param
|
||||
g_param_spec_pointer
|
||||
g_param_spec_object
|
||||
@@ -435,6 +448,9 @@ GSignalEmissionHook
|
||||
GSignalFlags
|
||||
GSignalMatchType
|
||||
GSignalQuery
|
||||
G_SIGNAL_TYPE_STATIC_SCOPE
|
||||
G_SIGNAL_MATCH_MASK
|
||||
G_SIGNAL_FLAGS_MASK
|
||||
g_signal_newc
|
||||
g_signal_newv
|
||||
g_signal_new_valist
|
||||
|
@@ -106,7 +106,7 @@ Enumeration and Flag Types
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_ENUM ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_ENUM ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -114,7 +114,7 @@ Enumeration and Flag Types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_FLAGS ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_FLAGS ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
@@ -74,6 +74,15 @@ gboxed
|
||||
@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>
|
||||
|
||||
@@ -98,8 +107,10 @@ gboxed
|
||||
</para>
|
||||
|
||||
@name:
|
||||
@boxed_init:
|
||||
@boxed_copy:
|
||||
@boxed_free:
|
||||
@is_refcounted:
|
||||
@Returns:
|
||||
|
||||
|
||||
|
@@ -1,58 +1,75 @@
|
||||
<!-- ##### SECTION Title ##### -->
|
||||
Generic values
|
||||
Generic Values
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
|
||||
A polymorphic type that can hold values of any other type.
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
|
||||
The #GValue structure is basically a variable container that consists
|
||||
of a type identifier and a specific value of that type.
|
||||
The type identifier within a #GValue structure always determines the
|
||||
type of the associated value.
|
||||
To create a undefined #GValue structure, simply create a zero-filled
|
||||
#GValue structure. To intialize the #GValue, use the g_value_init()
|
||||
function. A #GValue cannot be used until it is initialized.
|
||||
The basic type operations (such as freeing and copying) are determined
|
||||
by the #GTypeValueTable associated with the type ID stored in the #GValue.
|
||||
Other #GValue operations (such as converting values between types) are
|
||||
provided by this interface.
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
The fundamental types which all support #GValue operations and thus
|
||||
can be used as a type initializer for g_value_init() are defined by
|
||||
a separate interface. See the Standard Values API for details.
|
||||
</para>
|
||||
|
||||
<!-- ##### MACRO G_VALUE_HOLDS ##### -->
|
||||
<para>
|
||||
|
||||
Returns #TRUE if @value holds (or contains) a value of @type.
|
||||
This macro will also check for @value != #NULL and issue a
|
||||
warning if the check fails.
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@g_type:
|
||||
@type:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_VALUE_TYPE ##### -->
|
||||
<para>
|
||||
|
||||
Returns the type identifier of @value.
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@value: A #GValue structure.
|
||||
|
||||
|
||||
<!-- ##### MACRO G_VALUE_TYPE_NAME ##### -->
|
||||
<para>
|
||||
|
||||
Returns the type name of @value.
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@value: A #GValue structure.
|
||||
|
||||
|
||||
<!-- ##### MACRO G_TYPE_IS_VALUE ##### -->
|
||||
<para>
|
||||
|
||||
Return whether the passed in type ID can be used for g_value_init().
|
||||
That is, this macro checks whether this type provides an implementation
|
||||
of the #GTypeValueTable functions required for a type to create a #GValue of.
|
||||
</para>
|
||||
|
||||
@type:
|
||||
@type: A #GType value.
|
||||
@Returns: Whether @type is suitable as a #GValue type.
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE ##### -->
|
||||
<para>
|
||||
|
||||
Returns #TRUE if @value is a valid and initialized #GValue structure.
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@value: A #GValue structure.
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GValueExchange ##### -->
|
||||
@@ -66,26 +83,72 @@ Generic values
|
||||
|
||||
<!-- ##### STRUCT GValue ##### -->
|
||||
<para>
|
||||
|
||||
A mostly opaque structure used to hold a #GValue object. Mostly because
|
||||
the data within the structure has protected scope: it is accessible only
|
||||
to functions within a #GTypeValueTable structure, or implementations of
|
||||
the g_value_*() API.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_init ##### -->
|
||||
<para>
|
||||
|
||||
Initializes @value with the default value of @type.
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@g_type:
|
||||
@value: A zero-filled (uninitialized) #GValue structure.
|
||||
@g_type: Type the #GValue should hold values of.
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_copy ##### -->
|
||||
<para>
|
||||
|
||||
Copies the value of @src_value into @dest_value.
|
||||
</para>
|
||||
|
||||
@src_value:
|
||||
@dest_value:
|
||||
@src_value: An initialized #GValue structure.
|
||||
@dest_value: An initialized #GValue structure of the same type as @src_value.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_reset ##### -->
|
||||
<para>
|
||||
Clears the current value in @value and resets it to the default value
|
||||
(as if the value had just been initialized).
|
||||
</para>
|
||||
|
||||
@value: An initialized #GValue structure.
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_unset ##### -->
|
||||
<para>
|
||||
Clears the current value in @value and "unsets" the type,
|
||||
this releases all resources associated with this GValue.
|
||||
An unset value is the same as an uninitialized (zero-filled)
|
||||
#GValue structure.
|
||||
</para>
|
||||
|
||||
@value: An initialized #GValue structure.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_fits_pointer ##### -->
|
||||
<para>
|
||||
Determines if @value will fit inside the size of a pointer value.
|
||||
This is an internal function introduced mainly for C marshallers.
|
||||
</para>
|
||||
|
||||
@value: An initialized #GValue structure.
|
||||
@Returns: #TRUE if @value will fit inside a pointer value.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_peek_pointer ##### -->
|
||||
<para>
|
||||
Return the value contents as pointer. This function asserts that
|
||||
g_value_fits_pointer() returned #TRUE for the passed in value.
|
||||
This is an internal function introduced mainly for C marshallers.
|
||||
</para>
|
||||
|
||||
@value: An initialized #GValue structure.
|
||||
@Returns: #TRUE if @value will fit inside a pointer value.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_convert ##### -->
|
||||
@@ -98,58 +161,191 @@ Generic values
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_reset ##### -->
|
||||
<!-- ##### 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:
|
||||
@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 guarranteed 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);
|
||||
|
||||
<!-- ##### FUNCTION g_value_unset ##### -->
|
||||
<para>
|
||||
/* 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 occoured, 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 consist
|
||||
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;
|
||||
|
||||
</para>
|
||||
if (!string_p)
|
||||
return g_strdup_printf ("string location passed as NULL");
|
||||
|
||||
@value:
|
||||
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;
|
||||
|
||||
<!-- ##### FUNCTION g_value_fits_pointer ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_values_exchange ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value1:
|
||||
@value2:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_types_exchangable ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value_type1:
|
||||
@value_type2:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_register_exchange_func ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value_type1:
|
||||
@value_type2:
|
||||
@func:
|
||||
|
||||
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>
|
||||
|
||||
|
@@ -1,350 +1,36 @@
|
||||
<!-- ##### SECTION ./tmpl/closures.sgml:Long_Description ##### -->
|
||||
<!-- ##### FUNCTION g_type_value_is_a ##### -->
|
||||
<para>
|
||||
Determines if @value is a #GValue whose type conforms to @type.
|
||||
</para>
|
||||
|
||||
@value: A valid #GValue structure.
|
||||
@type: A #GType value.
|
||||
@Returns: #TRUE if @value is a #GValue of @type or #FALSE if not.
|
||||
|
||||
<!-- ##### FUNCTION g_value_register_exchange_func ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value_type1:
|
||||
@value_type2:
|
||||
@func:
|
||||
|
||||
<!-- ##### SECTION ./tmpl/closures.sgml:See_Also ##### -->
|
||||
<!-- ##### FUNCTION g_value_types_exchangable ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/closures.sgml:Short_Description ##### -->
|
||||
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/closures.sgml:Title ##### -->
|
||||
Closures
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/gtypemodule.sgml.sgml:Long_Description ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/gtypemodule.sgml.sgml:See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/gtypemodule.sgml.sgml:Short_Description ##### -->
|
||||
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/gtypemodule.sgml.sgml:Title ##### -->
|
||||
gtypemodule.sgml
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/signals.sgml:Long_Description ##### -->
|
||||
<para>
|
||||
The basic concept of the signal system is that of the <emphasis>emission</emphasis>
|
||||
of a signal.
|
||||
Signals are introduced per-type and are identified through strings.
|
||||
Signals introduced for a parent type are availale in derived types as well,
|
||||
so basically they are a per-type facility that is inherited.
|
||||
A signal emission mainly involves invocation of a certain set of callbacks in
|
||||
precisely defined manner. There are two main categories of such callbacks,
|
||||
per-object
|
||||
<footnote><para> Although signals can deal with any kind of type, i'm
|
||||
referring to those types as "object types" in the following, simply
|
||||
because that is the context most users will encounter signals in.
|
||||
</para></footnote>
|
||||
ones and user provided ones.
|
||||
The per-object callbacks are most often referred to as "object method
|
||||
handler" or "default (signal) handler", while user provided callbacks are
|
||||
usually just called "signal handler".
|
||||
The object method handler is provided at signal creation time (this most
|
||||
frequently happens at the end of an object class' creation), while user
|
||||
provided handlers are frequently connected and disconnected to/from a certain
|
||||
signal on certain object instances.
|
||||
</para>
|
||||
<para>
|
||||
A signal emission consists of five stages, unless prematurely stopped:
|
||||
<variablelist>
|
||||
<varlistentry><term></term><listitem><para>
|
||||
1 - Invocation of the object method handler for %G_SIGNAL_RUN_FIRST signals
|
||||
</para></listitem></varlistentry>
|
||||
<varlistentry><term></term><listitem><para>
|
||||
2 - Invocation of normal user-provided signal handlers (<emphasis>after</emphasis> flag %FALSE)
|
||||
</para></listitem></varlistentry>
|
||||
<varlistentry><term></term><listitem><para>
|
||||
3 - Invocation of the object method handler for %G_SIGNAL_RUN_LAST signals
|
||||
</para></listitem></varlistentry>
|
||||
<varlistentry><term></term><listitem><para>
|
||||
4 - Invocation of user provided signal handlers, connected with an <emphasis>after</emphasis> flag of %TRUE
|
||||
</para></listitem></varlistentry>
|
||||
<varlistentry><term></term><listitem><para>
|
||||
5 - Invocation of the object method handler for %G_SIGNAL_RUN_CLEANUP signals
|
||||
</para></listitem></varlistentry>
|
||||
</variablelist>
|
||||
The user provided signal handlers are called in the order they were
|
||||
connected in.
|
||||
All handlers may prematurely stop a signal emission, and any number of
|
||||
handlers may be connected, disconnected, blocked or unblocked during
|
||||
a signal emission.
|
||||
There are certain criteria for skipping user handlers in stages 2 and 4
|
||||
of a signal emission.
|
||||
First, user handlers may be <emphasis>blocked</emphasis>, blocked handlers are omitted
|
||||
during callback invocation, to return from the "blocked" state, a
|
||||
handler has to get unblocked exactly the same amount of times
|
||||
it has been blocked before.
|
||||
Second, upon emission of a %G_SIGNAL_DETAILED signal, an additional
|
||||
"detail" argument passed in to g_signal_emit() has to match the detail
|
||||
argument of the signal handler currently subject to invocation.
|
||||
Specification of no detail argument for signal handlers (omission of the
|
||||
detail part of the signal specification upon connection) serves as a
|
||||
wildcard and matches any detail argument passed in to emission.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/signals.sgml:See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/signals.sgml:Short_Description ##### -->
|
||||
Signals provide a means for customization of object behaviour and are used
|
||||
as general purpose notification mechanism.
|
||||
|
||||
|
||||
<!-- ##### SECTION ./tmpl/signals.sgml:Title ##### -->
|
||||
Signals
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GObjectGetParamFunc ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_id:
|
||||
@value:
|
||||
@pspec:
|
||||
@trailer:
|
||||
|
||||
<!-- ##### USER_FUNCTION GObjectSetParamFunc ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_id:
|
||||
@value:
|
||||
@pspec:
|
||||
@trailer:
|
||||
|
||||
<!-- ##### ENUM GSignalType ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@G_SIGNAL_RUN_FIRST:
|
||||
@G_SIGNAL_RUN_LAST:
|
||||
@G_SIGNAL_RUN_CLEANUP:
|
||||
@G_SIGNAL_NO_RECURSE:
|
||||
@G_SIGNAL_ACTION:
|
||||
@G_SIGNAL_NO_HOOKS:
|
||||
|
||||
<!-- ##### USER_FUNCTION GTypePluginFillInterfaceInfo ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@plugin:
|
||||
@interface_type:
|
||||
@instance_type:
|
||||
@info:
|
||||
|
||||
<!-- ##### USER_FUNCTION GTypePluginFillTypeInfo ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@plugin:
|
||||
@g_type:
|
||||
@info:
|
||||
@value_table:
|
||||
|
||||
<!-- ##### USER_FUNCTION GTypePluginRef ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@plugin:
|
||||
|
||||
<!-- ##### USER_FUNCTION GTypePluginUnRef ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@plugin:
|
||||
|
||||
<!-- ##### STRUCT GTypePluginVTable ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@plugin_ref:
|
||||
@plugin_unref:
|
||||
@complete_type_info:
|
||||
@complete_interface_info:
|
||||
|
||||
<!-- ##### MACRO G_IS_PARAM_VALUE ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@pspec:
|
||||
@value:
|
||||
|
||||
<!-- ##### MACRO G_NOTIFY_PRIORITY ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### MACRO G_WARN_INVALID_PARAM_ID ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_id:
|
||||
@pspec:
|
||||
|
||||
<!-- ##### FUNCTION g_object_class_find_param_spec ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@oclass:
|
||||
@param_name:
|
||||
@value_type1:
|
||||
@value_type2:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_object_class_install_param ##### -->
|
||||
<!-- ##### FUNCTION g_values_exchange ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@oclass:
|
||||
@param_id:
|
||||
@pspec:
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_param ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_name:
|
||||
@value:
|
||||
|
||||
<!-- ##### FUNCTION g_object_queue_param_changed ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_name:
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_param ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@param_name:
|
||||
@value:
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_hash_table_insert ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@hash_table:
|
||||
@pspec:
|
||||
@owner_type:
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_hash_table_lookup ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@hash_table:
|
||||
@param_name:
|
||||
@owner_type:
|
||||
@try_ancestors:
|
||||
@trailer:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_hash_table_new ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_hash_table_remove ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@hash_table:
|
||||
@pspec:
|
||||
|
||||
<!-- ##### FUNCTION g_signal_type_closure_new ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@itype:
|
||||
@struct_offset:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_signals_destroy ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@itype:
|
||||
|
||||
<!-- ##### FUNCTION g_type_conforms_to ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@type:
|
||||
@iface_type:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_type_instance_conforms_to ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@instance:
|
||||
@iface_type:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_type_is_dynamic ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@type:
|
||||
@flags:
|
||||
@Returns:
|
||||
|
||||
<!-- ##### FUNCTION g_type_value_conforms_to ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@type:
|
||||
@value1:
|
||||
@value2:
|
||||
@Returns:
|
||||
|
||||
|
@@ -34,7 +34,6 @@ The Base Object Type
|
||||
|
||||
@pspec:
|
||||
@value:
|
||||
@trailer:
|
||||
|
||||
<!-- ##### USER_FUNCTION GObjectGetPropertyFunc ##### -->
|
||||
<para>
|
||||
@@ -45,6 +44,7 @@ The Base Object Type
|
||||
@property_id:
|
||||
@value:
|
||||
@pspec:
|
||||
<!-- # Unused Parameters # -->
|
||||
@trailer:
|
||||
|
||||
|
||||
@@ -57,9 +57,26 @@ The Base Object Type
|
||||
@property_id:
|
||||
@value:
|
||||
@pspec:
|
||||
<!-- # Unused Parameters # -->
|
||||
@trailer:
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GObjectFinalizeFunc ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_TYPE_IS_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@type:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
@@ -68,6 +85,30 @@ The Base Object Type
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_OBJECT_CLASS ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_OBJECT_CLASS ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_OBJECT_GET_CLASS ##### -->
|
||||
<para>
|
||||
|
||||
@@ -108,7 +149,7 @@ The Base Object Type
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_OBJECT ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -116,46 +157,6 @@ The Base Object Type
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_TYPE_IS_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@type:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_OBJECT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_OBJECT_CLASS ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_OBJECT_CLASS ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@class:
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GObjectFinalizeFunc ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_class_install_property ##### -->
|
||||
<para>
|
||||
|
||||
@@ -189,112 +190,6 @@ The Base Object Type
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_new_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object_type:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
@Returns:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@Varargs:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@Varargs:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_property ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_property ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_freeze_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_thaw_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_ref ##### -->
|
||||
<para>
|
||||
|
||||
@@ -312,47 +207,78 @@ The Base Object Type
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_qdata ##### -->
|
||||
<!-- ##### FUNCTION g_object_connect ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@signal_spec:
|
||||
@Varargs:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_qdata ##### -->
|
||||
<!-- ##### FUNCTION g_object_disconnect ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_qdata_full ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_steal_qdata ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@signal_spec:
|
||||
@Varargs:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@Varargs:
|
||||
@Returns:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@Varargs:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_freeze_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_thaw_notify ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_data ##### -->
|
||||
<para>
|
||||
|
||||
@@ -394,6 +320,113 @@ The Base Object Type
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_qdata ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_qdata ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_qdata_full ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_steal_qdata ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@quark:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_property ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_property ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@property_name:
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_new_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object_type:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
@Returns:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_set_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_get_valist ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@first_property_name:
|
||||
@var_args:
|
||||
<!-- # Unused Parameters # -->
|
||||
@first_param_name:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_watch_closure ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@closure:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_set_object ##### -->
|
||||
<para>
|
||||
|
||||
@@ -421,15 +454,6 @@ The Base Object Type
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_object_watch_closure ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@object:
|
||||
@closure:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_OBJECT_WARN_INVALID_PROPERTY_ID ##### -->
|
||||
<para>
|
||||
|
||||
|
@@ -118,6 +118,7 @@ Parameter Specifications
|
||||
@G_PARAM_WRITABLE:
|
||||
@G_PARAM_CONSTRUCT:
|
||||
@G_PARAM_CONSTRUCT_ONLY:
|
||||
@G_PARAM_LAX_VALIDATION:
|
||||
@G_PARAM_PRIVATE:
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_ref ##### -->
|
||||
@@ -293,8 +294,9 @@ Parameter Specifications
|
||||
@param_name:
|
||||
@owner_type:
|
||||
@walk_ancestors:
|
||||
@trailer_p:
|
||||
@Returns:
|
||||
<!-- # Unused Parameters # -->
|
||||
@trailer_p:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_internal ##### -->
|
||||
|
@@ -15,8 +15,8 @@ so basically they are a per-type facility that is inherited.
|
||||
A signal emission mainly involves invocation of a certain set of callbacks in
|
||||
precisely defined manner. There are two main categories of such callbacks,
|
||||
per-object
|
||||
<footnote><para> Although signals can deal with any kind of type, i'm
|
||||
referring to those types as "object types" in the following, simply
|
||||
<footnote><para> Although signals can deal with any kind of instantiatable type,
|
||||
i'm referring to those types as "object types" in the following, simply
|
||||
because that is the context most users will encounter signals in.
|
||||
</para></footnote>
|
||||
ones and user provided ones.
|
||||
@@ -182,6 +182,27 @@ filled in by the g_signal_query() function.
|
||||
#gpointer data2);
|
||||
</programlisting></msgtext>
|
||||
|
||||
<!-- ##### MACRO G_SIGNAL_TYPE_STATIC_SCOPE ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
|
||||
<!-- ##### MACRO G_SIGNAL_MATCH_MASK ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
|
||||
<!-- ##### MACRO G_SIGNAL_FLAGS_MASK ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_signal_newc ##### -->
|
||||
<para>
|
||||
|
||||
|
@@ -238,22 +238,6 @@ Standard Parameter Types
|
||||
@pspec:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_PARAM_SPEC_CCALLBACK ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@pspec:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_PARAM_SPEC_CCALLBACK ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@pspec:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_PARAM_SPEC_PARAM ##### -->
|
||||
<para>
|
||||
|
||||
@@ -414,13 +398,6 @@ Standard Parameter Types
|
||||
|
||||
@parent_instance:
|
||||
|
||||
<!-- ##### STRUCT GParamSpecCCallback ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@parent_instance:
|
||||
|
||||
<!-- ##### STRUCT GParamSpecParam ##### -->
|
||||
<para>
|
||||
|
||||
@@ -642,18 +619,6 @@ Standard Parameter Types
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_ccallback ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@name:
|
||||
@nick:
|
||||
@blurb:
|
||||
@flags:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_param_spec_param ##### -->
|
||||
<para>
|
||||
|
||||
|
@@ -178,50 +178,48 @@ interfaces and C++ classes containing only pure virtual functions.
|
||||
The predefined identifiers of the reserved fundamental types.
|
||||
</para>
|
||||
|
||||
@G_TYPE_INVALID: Usually a return value indicating an error.
|
||||
@G_TYPE_NONE: A synonym for the "void" type in C.
|
||||
@G_TYPE_INTERFACE: Root type of all interface types.
|
||||
@G_TYPE_CHAR: Identifier for the built-in type "gchar".
|
||||
@G_TYPE_UCHAR: Identifier for the built-in type "guchar".
|
||||
@G_TYPE_BOOLEAN: Identifier for the built-in type "gboolean".
|
||||
@G_TYPE_INT: Identifier for the built-in type "gint".
|
||||
@G_TYPE_UINT: Identifier for the built-in type "guint".
|
||||
@G_TYPE_LONG: Identifier for the built-in type "glong".
|
||||
@G_TYPE_ULONG: Identifier for the built-in type "gulong".
|
||||
@G_TYPE_ENUM: Identifier for the "#GEnum" type.
|
||||
@G_TYPE_FLAGS: Identifier for the "#GFlags" type.
|
||||
@G_TYPE_FLOAT: Identifier for the built-in type "gfloat".
|
||||
@G_TYPE_INVALID: Usually a return value indicating an error.
|
||||
@G_TYPE_NONE: A synonym for the "void" type in C.
|
||||
@G_TYPE_INTERFACE: Root type of all interface types.
|
||||
@G_TYPE_CHAR: Identifier for the built-in type "gchar".
|
||||
@G_TYPE_UCHAR: Identifier for the built-in type "guchar".
|
||||
@G_TYPE_BOOLEAN: Identifier for the built-in type "gboolean".
|
||||
@G_TYPE_INT: Identifier for the built-in type "gint".
|
||||
@G_TYPE_UINT: Identifier for the built-in type "guint".
|
||||
@G_TYPE_LONG: Identifier for the built-in type "glong".
|
||||
@G_TYPE_ULONG: Identifier for the built-in type "gulong".
|
||||
@G_TYPE_ENUM: Identifier for the "#GEnum" type.
|
||||
@G_TYPE_FLAGS: Identifier for the "#GFlags" type.
|
||||
@G_TYPE_FLOAT: Identifier for the built-in type "gfloat".
|
||||
@G_TYPE_DOUBLE: Identifier for the built-in type "gdouble".
|
||||
@G_TYPE_STRING: Identifier for a pointer to a null-terminated string "gchar*".
|
||||
@G_TYPE_PARAM: Identifier for the "#GParam" type.
|
||||
@G_TYPE_BOXED: Identifier for the "#GBoxed" type.
|
||||
@G_TYPE_POINTER: Identifier for anonymous pointers "void*".
|
||||
@G_TYPE_CCALLBACK: Identifier for a pointer to a C function.
|
||||
@G_TYPE_POINTER: Identifier for anonymous pointers "void*".
|
||||
@G_TYPE_BOXED: Identifier for the "#GBoxed" type.
|
||||
@G_TYPE_PARAM: Identifier for the "#GParam" type.
|
||||
@G_TYPE_OBJECT: Identifier for the "#GObject" type.
|
||||
@G_TYPE_GTK_SIGNAL: Reserved for use by the Gtk+ software package.
|
||||
@G_TYPE_BSE_PROCEDURE: Reserved for use by the BSE software package.
|
||||
@G_TYPE_BSE_TIME: Reserved for use by the BSE software package.
|
||||
@G_TYPE_BSE_NOTE: Reserved for use by the BSE software package.
|
||||
@G_TYPE_BSE_DOTS: Reserved for use by the BSE software package.
|
||||
@G_TYPE_GLE_GOBJECT: Reserved for use by the GLE software package.
|
||||
@G_TYPE_LAST_RESERVED_FUNDAMENTAL: New third-party fundamental types have to use IDs higher than this.
|
||||
@G_TYPE_PARAM_CHAR: Identifier for the "#GParamSpecChar" type.
|
||||
@G_TYPE_PARAM_UCHAR: Identifier for the "#GParamSpecUChar" type.
|
||||
@G_TYPE_PARAM_BOOLEAN: Identifier for the "#GParamSpecBoolean" type.
|
||||
@G_TYPE_PARAM_INT: Identifier for the "#GParamSpecInt" type.
|
||||
@G_TYPE_PARAM_UINT: Identifier for the "#GParamSpecUInt" type.
|
||||
@G_TYPE_PARAM_LONG: Identifier for the "#GParamSpecLong" type.
|
||||
@G_TYPE_PARAM_ULONG: Identifier for the "#GParamSpecULong" type.
|
||||
@G_TYPE_PARAM_ENUM: Identifier for the "#GParamSpecEnum" type.
|
||||
@G_TYPE_PARAM_FLAGS: Identifier for the "#GParamSpecFlags" type.
|
||||
@G_TYPE_PARAM_FLOAT: Identifier for the "#GParamSpecFloat" type.
|
||||
@G_TYPE_PARAM_DOUBLE: Identifier for the "#GParamSpecDouble" type.
|
||||
@G_TYPE_PARAM_STRING: Identifier for the "#GParamSpecString" type.
|
||||
@G_TYPE_PARAM_PARAM: Identifier for the "#GParamSpecParam" type.
|
||||
@G_TYPE_PARAM_POINTER: Identifier for the "#GParamSpecPointer" type.
|
||||
@G_TYPE_PARAM_CCALLBACK: Identifier for the "#GParamSpecCCallback" type.
|
||||
@G_TYPE_PARAM_BOXED: Identifier for the "#GParamSpecBoxed" type.
|
||||
@G_TYPE_PARAM_OBJECT: Identifier for the "#GParamSpecObject" type.
|
||||
@G_TYPE_RESERVED_BSE_FIRST: First fundamental type ID reserved for BSE.
|
||||
@G_TYPE_RESERVED_BSE_LAST: Last fundamental type ID reserved for BSE.
|
||||
@G_TYPE_RESERVED_LAST_FUNDAMENTAL: Last reserved fundamental type ID.
|
||||
@G_TYPE_CLOSURE:
|
||||
@G_TYPE_VALUE_ARRAY:
|
||||
@G_TYPE_PARAM_CHAR: Identifier for the "#GParamSpecChar" type.
|
||||
@G_TYPE_PARAM_UCHAR: Identifier for the "#GParamSpecUChar" type.
|
||||
@G_TYPE_PARAM_BOOLEAN: Identifier for the "#GParamSpecBoolean" type.
|
||||
@G_TYPE_PARAM_INT: Identifier for the "#GParamSpecInt" type.
|
||||
@G_TYPE_PARAM_UINT: Identifier for the "#GParamSpecUInt" type.
|
||||
@G_TYPE_PARAM_LONG: Identifier for the "#GParamSpecLong" type.
|
||||
@G_TYPE_PARAM_ULONG: Identifier for the "#GParamSpecULong" type.
|
||||
@G_TYPE_PARAM_ENUM: Identifier for the "#GParamSpecEnum" type.
|
||||
@G_TYPE_PARAM_FLAGS: Identifier for the "#GParamSpecFlags" type.
|
||||
@G_TYPE_PARAM_FLOAT: Identifier for the "#GParamSpecFloat" type.
|
||||
@G_TYPE_PARAM_DOUBLE: Identifier for the "#GParamSpecDouble" type.
|
||||
@G_TYPE_PARAM_STRING: Identifier for the "#GParamSpecString" type.
|
||||
@G_TYPE_PARAM_PARAM: Identifier for the "#GParamSpecParam" type.
|
||||
@G_TYPE_PARAM_BOXED: Identifier for the "#GParamSpecBoxed" type.
|
||||
@G_TYPE_PARAM_POINTER: Identifier for the "#GParamSpecPointer" type.
|
||||
@G_TYPE_PARAM_VALUE_ARRAY: Identifier for the "#GParamSpecValueArray" type.
|
||||
@G_TYPE_PARAM_CLOSURE: Identifier for the "#GParamClosure" type.
|
||||
@G_TYPE_PARAM_OBJECT: Identifier for the "#GParamSpecObject" type.
|
||||
|
||||
<!-- ##### STRUCT GTypeInterface ##### -->
|
||||
<para>
|
||||
@@ -256,8 +254,8 @@ across invocation of g_type_register_static().
|
||||
@instance_size: Size of the instance (object) structure (required for instantiatable types only).
|
||||
@n_preallocs: Number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching).
|
||||
@instance_init: Location of the instance initialization function (optional, for instantiatable types only).
|
||||
@value_table: Function table for generic handling of GValues of this type (usualy only usefull for
|
||||
fundamental types).
|
||||
@value_table: A #GTypeValueTable function table for generic handling of GValues of this type (usualy only
|
||||
usefull for fundamental types).
|
||||
|
||||
<!-- ##### STRUCT GTypeFundamentalInfo ##### -->
|
||||
<para>
|
||||
@@ -278,20 +276,6 @@ used specifically for managing interface types.
|
||||
@interface_data: Location of user data passed to the @interface_init and
|
||||
@interface_finalize functions (optional).
|
||||
|
||||
<!-- ##### STRUCT GTypeValueTable ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value_init:
|
||||
@value_free:
|
||||
@value_copy:
|
||||
@value_peek_pointer:
|
||||
@collect_format:
|
||||
@collect_value:
|
||||
@lcopy_format:
|
||||
@lcopy_value:
|
||||
|
||||
<!-- ##### MACRO G_TYPE_FROM_INSTANCE ##### -->
|
||||
<para>
|
||||
Returns the type identifier from a given @instance structure.
|
||||
@@ -423,8 +407,8 @@ Return the unique name that is assigned to a type ID (this is the preferred meth
|
||||
to find out whether a specific type has been registered for the passed in ID yet).
|
||||
</para>
|
||||
|
||||
@type: Type to return name for.
|
||||
@Returns: Static type name or NULL.
|
||||
@type: Type to return name for.
|
||||
@Returns: Static type name or NULL.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_type_qname ##### -->
|
||||
@@ -458,17 +442,17 @@ If the passed in type has no parent, i.e. is a fundamental type, 0 is returned.
|
||||
|
||||
<!-- ##### FUNCTION g_type_next_base ##### -->
|
||||
<para>
|
||||
Given a @type and a @base_type which is contained in its anchestry, return
|
||||
the type that @base_type is the direct parent type for.
|
||||
In other words, for a given type branch, e.g. Root-Derived1-Derived2-Leaf, specified
|
||||
through @type=Leaf, return the nextmost child of @base_type. In this example, for
|
||||
@base_type=Derived1, the returned value would be Derived2, for @base_type=Root, the
|
||||
returned value would be Derived1.
|
||||
Given a @leaf_type and a @root_type which is contained in its anchestry, return
|
||||
the type that @root_type is the immediate parent of.
|
||||
In other words, this function determines the type that is derived directly from
|
||||
@root_type which is also a base class of @leaf_type. Given a root type and a
|
||||
leaf type, this function can be used to determine the types and order in which
|
||||
the leaf type is descended from the root type.
|
||||
</para>
|
||||
|
||||
@type: Descendant of @base_type and the type to be returned.
|
||||
@base_type: Direct parent of the returned type.
|
||||
@Returns: Immediate child of @base_type and anchestor of @type.
|
||||
@leaf_type: Descendant of @root_type and the type to be returned.
|
||||
@root_type: Immediate parent of the returned type.
|
||||
@Returns: Immediate child of @root_type and anchestor of @leaf_type.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_type_is_a ##### -->
|
||||
@@ -799,6 +783,7 @@ Bit masks used to check or determine characteristics of a type.
|
||||
|
||||
@G_TYPE_FLAG_ABSTRACT: Indicates an abstract type. No instances can be
|
||||
created for an abstract type.
|
||||
@G_TYPE_FLAG_VALUE_ABSTRACT:
|
||||
|
||||
<!-- ##### ENUM GTypeFundamentalFlags ##### -->
|
||||
<para>
|
||||
@@ -1034,16 +1019,6 @@ the anchestry of @instance.
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_type_value_is_a ##### -->
|
||||
<para>
|
||||
Determines if @value is a #GValue whose type conforms to @type.
|
||||
</para>
|
||||
|
||||
@value: A valid #GValue structure.
|
||||
@type: A #GType value.
|
||||
@Returns: #TRUE if @value is a #GValue of @type or #FALSE if not.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_type_value_table_peek ##### -->
|
||||
<para>
|
||||
Returns the location of the #GTypeValueTable associated with @type.
|
||||
|
@@ -9,12 +9,14 @@ Standard value types
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_CHAR ##### -->
|
||||
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_CHAR ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -22,7 +24,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_UCHAR ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_UCHAR ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -30,7 +32,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_BOOLEAN ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_BOOLEAN ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -38,7 +40,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_INT ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_INT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -46,7 +48,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_UINT ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_UINT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -54,7 +56,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_LONG ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_LONG ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -62,7 +64,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_ULONG ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_ULONG ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -70,7 +72,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_FLOAT ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_FLOAT ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -78,7 +80,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_DOUBLE ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_DOUBLE ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -86,7 +88,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_STRING ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_STRING ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -94,7 +96,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_POINTER ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_POINTER ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -102,15 +104,7 @@ Standard value types
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_CCALLBACK ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
|
||||
|
||||
<!-- ##### MACRO G_IS_VALUE_PARAM ##### -->
|
||||
<!-- ##### MACRO G_VALUE_HOLDS_PARAM ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
@@ -298,6 +292,15 @@ Standard value types
|
||||
@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>
|
||||
|
||||
@@ -343,16 +346,6 @@ Standard value types
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_get_ccallback ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@callback_func:
|
||||
@callback_data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_get_pointer ##### -->
|
||||
<para>
|
||||
|
||||
@@ -371,25 +364,6 @@ Standard value types
|
||||
@v_pointer:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_get_as_pointer ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_set_ccallback ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@value:
|
||||
@callback_func:
|
||||
@callback_data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION g_value_set_instance ##### -->
|
||||
<para>
|
||||
|
||||
|
Reference in New Issue
Block a user