g_signal_handlers_disconnect_matched (
  GObject* instance,
  GSignalMatchType mask,
  guint signal_id,
  GQuark detail,
  GClosure* closure,
  gpointer func,
  gpointer data


Disconnects all handlers on an instance that match a certain selection criteria. The criteria mask is passed as an OR-ed combination of GSignalMatchType flags, and the criteria values are passed as arguments. Passing at least one of the 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.


instance GObject

The instance to remove handlers from.

 The data is owned by the caller of the function.
mask GSignalMatchType

Mask indicating which of signal_id, detail, closure, func and/or data the handlers have to match.

signal_id guint

Signal the handlers have to be connected to.

detail GQuark

Signal detail the handlers have to be connected to.

closure GClosure

The closure the handlers will invoke.

 The argument can be NULL.
 The data is owned by the caller of the function.
func gpointer

The C closure callback of the handlers (useless for non-C closures).

 The argument can be NULL.
data gpointer

The closure data of the handlers’ closures.

 The argument can be NULL.

Return value

Returns: guint

The number of handlers that matched.