disconnect_matched
Description:
public uint disconnect_matched (void* instance, SignalMatchType mask, uint signal_id, Quark detail, Closure? closure, void* func, void* data)
Disconnects all handlers on an instance that match a certain selection criteria.
The criteria mask is passed as a combination of SignalMatchType flags, and
the criteria values are passed as arguments. A handler must match on all flags set in mask
to be disconnected (i.e. the match is
conjunctive).
Passing at least one of the g_signal_match_id, g_signal_match_closure, g_signal_match_func or g_signal_match_data match flags is required for successful matches. If no handlers were found, 0 is returned, the number of disconnected handlers otherwise.
Support for g_signal_match_id was added in GLib 2.78.
Parameters:
instance |
The instance to remove handlers from. |
mask |
Mask indicating which of |
signal_id |
Signal the handlers have to be connected to. |
detail |
Signal detail the handlers have to be connected to. |
closure |
The closure the handlers will invoke. |
func |
The C closure callback of the handlers (useless for non-C closures). |
data |
The closure data of the handlers' closures. |
Returns:
The number of handlers that matched. |