Why are signal names strings and not enums?

We are using code like

   g_signal_connect(G_OBJECT(btn), "clicked", 
      G_CALLBACK(gtk_main_quit), G_OBJECT(window));

  g_signal_connect(G_OBJECT(window), "destroy", 
      G_CALLBACK(gtk_main_quit), NULL);

Why strings and not enums for clicked and destroy parameter?

I wondered about that myself when I started with GTK ten years ago and
recently someone suggested to do not use strings for my Nim GTK

Well, strings have the disadvantage that undefined signal names are not
discovered during compile process.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]