Beispiel #1
0
func (v *GObject) HandlerDisconnect(call_id int) {
	value, found := callback_contexts.Get(call_id)
	if !found {
		return
	}
	context := value.(*CallbackContext)
	c_call_id := C._g_signal_callback_id((*C.callback_info)(context.cbi))
	C.g_signal_handler_disconnect((C.gpointer)(v.Object), c_call_id)
	callback_contexts.Remove(call_id)
}
Beispiel #2
0
// HandlerDisconnect is a wrapper around g_signal_handler_disconnect().
func (v *Object) HandlerDisconnect(handle SignalHandle) {
	C.g_signal_handler_disconnect(C.gpointer(v.GObject), C.gulong(handle))
	C.g_closure_invalidate(signals[handle])
	delete(closures.m, signals[handle])
	delete(signals, handle)
}
Beispiel #3
0
func (v *GObject) HandlerDisconnect(call_id int) {
	c_call_id := C._g_signal_callback_id((*C.callback_info)(callback_contexts[call_id].cbi))
	C.g_signal_handler_disconnect((C.gpointer)(v.Object), c_call_id)
}
Beispiel #4
0
// HandlerDisconnect() is a wrapper around g_signal_handler_disconnect().
func (v *Object) HandlerDisconnect(callID int) {
	callbackContexts.RLock()
	id := C.cbinfo_get_id((*C.cbinfo)(callbackContexts.s[callID].cbi))
	callbackContexts.RUnlock()
	C.g_signal_handler_disconnect((C.gpointer)(v.GObject), id)
}