GTK+ 2.0 Tutorial
<<< Previous |  | Next >>>

# Advanced Event and Signal Handling

# Signal Functions

## Connecting and Disconnecting Signal Handlers

    gulong g_signal_connect( GObject     *object,
                             const gchar *name,
                             GCallback    func,
                             gpointer     func_data );

    gulong g_signal_connect_after( GObject       *object,
                                   const gchar   *name,
                                   GCallback      func,
                                   gpointer       func_data );

    gulong g_signal_connect_swapped( GObject       *object,
                                     const gchar   *name,
                                     GCallback      func,
                                     GObject       *slot_object );

    void g_signal_handler_disconnect( GObject *object,
                                      gulong   handler_id );

    void g_signal_handlers_disconnect_by_func( GObject   *object,
                                               GCallback  func,
                                               gpointer   data );

## Blocking and Unblocking Signal Handlers

    void g_signal_handler_block( GObject *object,
                                 gulong   handler_id);

    void g_signal_handlers_block_by_func( GObject   *object,
                                          GCallback  func,
                                          gpointer   data );

    void g_signal_handler_unblock( GObject *object,
                                   gulong   handler_id );

    void g_signal_handler_unblock_by_func( GObject   *object,
                                           GCallback  func,
                                           gpointer   data );

## Emitting and Stopping Signals

    void g_signal_emit( GObject *object,
                        guint      signal_id,
                        ... );

    void g_signal_emit_by_name( GObject     *object,
                                const gchar *name,
                                ... );

    void g_signal_emitv( const GValue *instance_and_params,
                         guint         signal_id,
                         GQuark        detail,
                         GValue       *return_value );

    void g_signal_stop_emission( GObject *object,
                                 guint    signal_id,
                                 GQuark   detail );

    void g_signal_stop_emission_by_name( GObject   *object,
                                         const gchar *detailed_signal );

<<< Previous | Home | Next >>>
Idle Functions |  | Signal Emission and Propagation