mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-27 22:46:15 +01:00
girepository: Add g_interface_info_find_signal
Add the convenience method g_interface_info_find_signal, mirroring g_object_info_find_signal. https://bugzilla.gnome.org/show_bug.cgi?id=682672
This commit is contained in:
parent
3bcc0e43c6
commit
27f11b2e51
@ -292,6 +292,39 @@ g_interface_info_get_signal (GIInterfaceInfo *info,
|
|||||||
rinfo->typelib, offset);
|
rinfo->typelib, offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* g_interface_info_find_signal:
|
||||||
|
* @info: a #GIInterfaceInfo
|
||||||
|
* @name: Name of signal
|
||||||
|
*
|
||||||
|
* Returns: (transfer full): Info for the signal with name @name in @info, or
|
||||||
|
* %NULL on failure.
|
||||||
|
*
|
||||||
|
* Since: 1.34
|
||||||
|
*/
|
||||||
|
GISignalInfo *
|
||||||
|
g_interface_info_find_signal (GIInterfaceInfo *info,
|
||||||
|
const gchar *name)
|
||||||
|
{
|
||||||
|
gint n_signals;
|
||||||
|
gint i;
|
||||||
|
|
||||||
|
n_signals = g_interface_info_get_n_signals (info);
|
||||||
|
for (i = 0; i < n_signals; i++)
|
||||||
|
{
|
||||||
|
GISignalInfo *siginfo = g_interface_info_get_signal (info, i);
|
||||||
|
|
||||||
|
if (g_strcmp0 (g_base_info_get_name (siginfo), name) != 0)
|
||||||
|
{
|
||||||
|
g_base_info_unref ((GIBaseInfo*)siginfo);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
return siginfo;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* g_interface_info_get_n_vfuncs:
|
* g_interface_info_get_n_vfuncs:
|
||||||
* @info: a #GIInterfaceInfo
|
* @info: a #GIInterfaceInfo
|
||||||
|
@ -48,6 +48,8 @@ GIFunctionInfo * g_interface_info_find_method (GIInterfaceInfo *info,
|
|||||||
gint g_interface_info_get_n_signals (GIInterfaceInfo *info);
|
gint g_interface_info_get_n_signals (GIInterfaceInfo *info);
|
||||||
GISignalInfo * g_interface_info_get_signal (GIInterfaceInfo *info,
|
GISignalInfo * g_interface_info_get_signal (GIInterfaceInfo *info,
|
||||||
gint n);
|
gint n);
|
||||||
|
GISignalInfo * g_interface_info_find_signal (GIInterfaceInfo *info,
|
||||||
|
const gchar *name);
|
||||||
gint g_interface_info_get_n_vfuncs (GIInterfaceInfo *info);
|
gint g_interface_info_get_n_vfuncs (GIInterfaceInfo *info);
|
||||||
GIVFuncInfo * g_interface_info_get_vfunc (GIInterfaceInfo *info,
|
GIVFuncInfo * g_interface_info_get_vfunc (GIInterfaceInfo *info,
|
||||||
gint n);
|
gint n);
|
||||||
|
Loading…
Reference in New Issue
Block a user