Function
GObjectSignalAccumulator
Declaration
gboolean
(* GSignalAccumulator) (
GSignalInvocationHint* ihint,
GValue* return_accu,
const GValue* handler_return,
gpointer data
)
Description [src]
The signal accumulator is a special callback function that can be used to collect return values of the various callbacks that are called during a signal emission.
The signal accumulator is specified at signal creation time, if it is
left NULL
, no accumulation of callback return values is performed.
The return value of signal emissions is then the value returned by the
last callback.
Parameters
ihint
-
Type:
GSignalInvocationHint
Signal invocation hint, see
GSignalInvocationHint
.The data is owned by the caller of the function. return_accu
-
Type:
GValue
Accumulator to collect callback return values in, this is the return value of the current signal emission.
The data is owned by the caller of the function. handler_return
-
Type:
GValue
A
GValue
holding the return value of the signal handler.The data is owned by the caller of the function. data
-
Type:
gpointer
Callback data that was specified when creating the signal.
The argument can be NULL
.The data is owned by the caller of the function.
Return value
Type: gboolean
The accumulator function returns whether the signal emission
should be aborted. Returning TRUE
will continue with
the signal emission. Returning FALSE
will abort the current emission.
Since 2.62, returning FALSE
will skip to the CLEANUP stage. In this case,
emission will occur as normal in the CLEANUP stage and the handler’s
return value will be accumulated.