函数
GObjectsignal_handlers_unblock_matched
声明 [src]
guint
g_signal_handlers_unblock_matched (
GObject* instance,
GSignalMatchType mask,
guint signal_id,
GQuark detail,
GClosure* closure,
gpointer func,
gpointer data
)
描述 [src]
取消阻止实例中与特定选择准则匹配的所有处理程序。
筛选条件掩码作为 GSignalMatchType
标记组合传递,筛选条件值作为自变量传递。处理程序必须与 mask
中设置的所有标记匹配才能被取消阻止(即,匹配为连接符)。
通过至少一个 G_SIGNAL_MATCH_ID
、G_SIGNAL_MATCH_CLOSURE
、G_SIGNAL_MATCH_FUNC
或 G_SIGNAL_MATCH_DATA
匹配标记进行传参对于成功匹配是必需的。如果没有找到处理程序,则返回 0,否则返回已取消阻止的处理程序数量。匹配条件不应应用于当前未阻止的任何处理程序。
在 GLib 2.78 中添加了对 G_SIGNAL_MATCH_ID
的支持。
参数
instance
-
类型:
GObject
用于取消阻止处理程序的实例。
数据归调用此函数的调用方所有。 mask
-
类型:
GSignalMatchType
掩码指示处理程序必须匹配
signal_id
、detail
、closure
、func
和/或data
中的哪些项。 signal_id
-
类型:
guint
处理程序必须连接到的信号。
detail
-
类型:
GQuark
处理程序必须连接到的信号详细信息。
closure
-
类型:
GClosure
处理程序将调用的闭包。
参数可以为 NULL
。数据归调用此函数的调用方所有。 func
-
类型:
gpointer
处理程序的 C 闭包回调(对非 C 闭包无用)。
参数可以为 NULL
。数据归调用此函数的调用方所有。 data
-
类型:
gpointer
处理程序闭包的闭包数据。
参数可以为 NULL
。数据归调用此函数的调用方所有。