Petit extrait de code pour créer un timeout avec GTKmm. À adapter proprement pour l'utilisation.

// Variable globale (sale) pointant sur le timeout
Glib::RefPtr<Glib::TimeoutSource> ts;

// Définition du callback
bool timeout() {
  std::cerr << "Callback timeout" << std::endl;
  // Détruit le timeout, évitant de futures notifications
  ts->destroy();
}

// ...

// le callback sera appelé toutes les 500ms environ (dans la mainloop Gtk)
ts = Glib::TimeoutSource::create(500);
// Indique le callback à appeler
ts->connect(sigc::ptr_fun(&timeout));
// Attache la source au contexte ce qui déclenche
// l'exéccution périodique du callback à partir de l'entrée dans la mainloop
ts->attach();

// ...