Signaux

gtkmm, comme la plupart des boîtes à outils GUI, est piloté par événements. Lorsqu'un événement survient, comme un clic de bouton de souris, le signal approprié est émis par l'élément graphique pointé. Chaque élément graphique dispose d'un jeu de signaux à émettre. Pour qu'un clic de bouton se traduise par une action, nous mettons en œuvre un gestionnaire de signal pour capturer le signal « clicked » du bouton.

gtkmm utilise la bibliothèque libsigc++ pour implémenter les signaux. Voici un exemple de ligne de code qui connecte le signal « clicked » émis par un Gtk::Button à un gestionnaire de signal nommé « on_button_clicked » :

m_button1.signal_clicked().connect( sigc::mem_fun(*this,
  &HelloWorld::on_button_clicked) );

Pour plus de détails à propos des signaux, consultez cette annexe.

Pour des informations sur l'implémentation de vos propres signaux au lieu d'une simple connexion aux signaux prédéfinis de gtkmm, consultez cette annexe.