mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 06:56:14 +01:00
Add g_type_module_register_enum() and g_type_module_register_flags().
Tue Jul 6 00:54:38 2004 Matthias Clasen <maclas@gmx.de> * gobject/gobject-sections.txt: * gobject/tmpl/gtypemodule.sgml: Add g_type_module_register_enum() and g_type_module_register_flags().
This commit is contained in:
parent
b3b1c3b3eb
commit
8414d97c5b
@ -1,3 +1,9 @@
|
|||||||
|
Tue Jul 6 00:54:38 2004 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* gobject/gobject-sections.txt:
|
||||||
|
* gobject/tmpl/gtypemodule.sgml: Add g_type_module_register_enum()
|
||||||
|
and g_type_module_register_flags().
|
||||||
|
|
||||||
Mon Jul 5 18:49:56 2004 Matthias Clasen <maclas@gmx.de>
|
Mon Jul 5 18:49:56 2004 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
* glib/tmpl/messages.sgml:
|
* glib/tmpl/messages.sgml:
|
||||||
|
@ -185,6 +185,8 @@ g_type_module_unuse
|
|||||||
g_type_module_set_name
|
g_type_module_set_name
|
||||||
g_type_module_register_type
|
g_type_module_register_type
|
||||||
g_type_module_add_interface
|
g_type_module_add_interface
|
||||||
|
g_type_module_register_enum
|
||||||
|
g_type_module_register_flags
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
G_TYPE_MODULE
|
G_TYPE_MODULE
|
||||||
G_IS_TYPE_MODULE
|
G_IS_TYPE_MODULE
|
||||||
|
@ -145,3 +145,42 @@ not be unloaded.
|
|||||||
@interface_info: type information structure
|
@interface_info: type information structure
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION g_type_module_register_enum ##### -->
|
||||||
|
<para>
|
||||||
|
Looks up or registers an enumeration that is implemented with a particular
|
||||||
|
type plugin. If a type with name @type_name was previously registered,
|
||||||
|
the #GType identifier for the type is returned, otherwise the type
|
||||||
|
is newly registered, and the resulting #GType identifier returned.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
As long as any instances of the type exist, the type plugin will
|
||||||
|
not be unloaded.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@module: a #GTypeModule
|
||||||
|
@name: name for the type
|
||||||
|
@const_static_values: an array of #GEnumValue structs for the possible
|
||||||
|
enumeration values. The array is terminated by a struct with all
|
||||||
|
members being 0.
|
||||||
|
@Returns: the new or existing type ID
|
||||||
|
@Since: 2.6
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION g_type_module_register_flags ##### -->
|
||||||
|
<para>
|
||||||
|
Looks up or registers a flags type that is implemented with a particular
|
||||||
|
type plugin. If a type with name @type_name was previously registered,
|
||||||
|
the #GType identifier for the type is returned, otherwise the type
|
||||||
|
is newly registered, and the resulting #GType identifier returned.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
As long as any instances of the type exist, the type plugin will
|
||||||
|
not be unloaded.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@module: a #GTypeModule
|
||||||
|
@name: name for the type
|
||||||
|
@const_static_values: an array of #GFlagsValue structs for the possible
|
||||||
|
flags values. The array is terminated by a struct with all
|
||||||
|
members being 0.
|
||||||
|
@Returns: the new or existing type ID
|
||||||
|
@Since: 2.6
|
||||||
|
@ -1,7 +1,15 @@
|
|||||||
|
Tue Jul 6 00:46:43 2004 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
|
* gtypemodule.h:
|
||||||
|
* gtypemodule.c (g_type_module_register_flags):
|
||||||
|
* gtypemodule.c (g_type_module_register_enum): New
|
||||||
|
functions to register enum and flags types from a
|
||||||
|
GTypeModule. (#145396, Sven Neumann)
|
||||||
|
|
||||||
Wed Jun 23 12:55:34 2004 Matthias Clasen <maclas@gmx.de>
|
Wed Jun 23 12:55:34 2004 Matthias Clasen <maclas@gmx.de>
|
||||||
|
|
||||||
* gtype.h (G_DEFINE_TYPE_EXTENDED): Add an initializer for
|
* gtype.h (G_DEFINE_TYPE_EXTENDED): Add an initializer for
|
||||||
the g_define_type_info.value_table. (#144678,Mariano
|
the g_define_type_info.value_table. (#144678, Mariano
|
||||||
Suárez-Alvarez)
|
Suárez-Alvarez)
|
||||||
|
|
||||||
Tue Jun 22 21:50:47 2004 Matthias Clasen <maclas@gmx.de>
|
Tue Jun 22 21:50:47 2004 Matthias Clasen <maclas@gmx.de>
|
||||||
|
@ -387,3 +387,39 @@ g_type_module_add_interface (GTypeModule *module,
|
|||||||
module_interface_info->loaded = TRUE;
|
module_interface_info->loaded = TRUE;
|
||||||
module_interface_info->info = *interface_info;
|
module_interface_info->info = *interface_info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
g_type_module_register_enum (GTypeModule *module,
|
||||||
|
const gchar *name,
|
||||||
|
const GEnumValue *const_static_values)
|
||||||
|
{
|
||||||
|
GTypeInfo enum_type_info = { 0, };
|
||||||
|
|
||||||
|
g_return_val_if_fail (G_IS_TYPE_MODULE (module), 0);
|
||||||
|
g_return_val_if_fail (name != NULL, 0);
|
||||||
|
g_return_val_if_fail (const_static_values != NULL, 0);
|
||||||
|
|
||||||
|
g_enum_complete_type_info (G_TYPE_ENUM,
|
||||||
|
&enum_type_info, const_static_values);
|
||||||
|
|
||||||
|
return g_type_module_register_type (G_TYPE_MODULE (module),
|
||||||
|
G_TYPE_ENUM, name, &enum_type_info, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
g_type_module_register_flags (GTypeModule *module,
|
||||||
|
const gchar *name,
|
||||||
|
const GFlagsValue *const_static_values)
|
||||||
|
{
|
||||||
|
GTypeInfo flags_type_info = { 0, };
|
||||||
|
|
||||||
|
g_return_val_if_fail (G_IS_TYPE_MODULE (module), 0);
|
||||||
|
g_return_val_if_fail (name != NULL, 0);
|
||||||
|
g_return_val_if_fail (const_static_values != NULL, 0);
|
||||||
|
|
||||||
|
g_flags_complete_type_info (G_TYPE_FLAGS,
|
||||||
|
&flags_type_info, const_static_values);
|
||||||
|
|
||||||
|
return g_type_module_register_type (G_TYPE_MODULE (module),
|
||||||
|
G_TYPE_FLAGS, name, &flags_type_info, 0);
|
||||||
|
}
|
||||||
|
@ -65,20 +65,26 @@ struct _GTypeModuleClass
|
|||||||
void (*reserved4) (void);
|
void (*reserved4) (void);
|
||||||
};
|
};
|
||||||
|
|
||||||
GType g_type_module_get_type (void);
|
GType g_type_module_get_type (void);
|
||||||
gboolean g_type_module_use (GTypeModule *module);
|
gboolean g_type_module_use (GTypeModule *module);
|
||||||
void g_type_module_unuse (GTypeModule *module);
|
void g_type_module_unuse (GTypeModule *module);
|
||||||
void g_type_module_set_name (GTypeModule *module,
|
void g_type_module_set_name (GTypeModule *module,
|
||||||
const gchar *name);
|
const gchar *name);
|
||||||
GType g_type_module_register_type (GTypeModule *module,
|
GType g_type_module_register_type (GTypeModule *module,
|
||||||
GType parent_type,
|
GType parent_type,
|
||||||
const gchar *type_name,
|
const gchar *type_name,
|
||||||
const GTypeInfo *type_info,
|
const GTypeInfo *type_info,
|
||||||
GTypeFlags flags);
|
GTypeFlags flags);
|
||||||
void g_type_module_add_interface (GTypeModule *module,
|
void g_type_module_add_interface (GTypeModule *module,
|
||||||
GType instance_type,
|
GType instance_type,
|
||||||
GType interface_type,
|
GType interface_type,
|
||||||
const GInterfaceInfo *interface_info);
|
const GInterfaceInfo *interface_info);
|
||||||
|
void g_type_module_register_enum (GTypeModule *module,
|
||||||
|
const gchar *name,
|
||||||
|
const GEnumValue *const_static_values);
|
||||||
|
void g_type_module_register_flags (GTypeModule *module,
|
||||||
|
const gchar *name,
|
||||||
|
const GFlagsValue *const_static_values);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user