подробнее об
обработчиках сигналов
вот вариант
объявления функции g_signal_connect().
gulong g_signal_connect( gpointer object,
const gchar *name,
gcallback func,
gpointer func_data );
|
обратите внимание,
возвращаемое значение имеет тип gulong?
это ярлык идентификации вашей функции
обратного вызова. как упоминалось выше,
вы можете вызывать любое количество
сигналов на объект и все они будут
созданы в порядке очереди прикрепления.
данный ярлык,
позволяет вам удалять сигнал при
использовании:
void g_signal_handler_disconnect( gpointer object,
gulong id );
|
при прохождении
виджета вы можете отключить обработчик,
вернув в функцию (signal_connect functions) пустое
значение.
вы также можете
временно отключать обработчики сигналов
из родственных функций g_signal_handler_block() и
g_signal_handler_unblock().
void g_signal_handler_block( gpointer object,
gulong id );
void g_signal_handlers_block_by_func( gpointer object,
gcallback func,
gpointer data );
void g_signal_handler_unblock( gpointer object,
gulong id );
void g_signal_handlers_unblock_by_func( gpointer object,
gcallback func,
gpointer data );
|
|