Advertisement
dsreyes1014

signal problems

Feb 14th, 2017
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.65 KB | None | 0 0
  1. .ui file section with signal:
  2.  
  3. <child>
  4. <object class="GtkEventBox" id="song-list-event-box">
  5. <property name="visible-window">true</property>
  6. <property name="height-request">4</property>
  7. <signal name="enter-notify-event" handler="enter_notify_cb"/>
  8. <signal name="leave-notify-event" handler="leave_notify_cb" after="no"/>
  9.  
  10. main function:
  11.  
  12. gint
  13. main (gint argc, gchar **argv)
  14. {
  15. GtkApplication *app;
  16. GtkBuilder *builder;
  17. gint status;
  18.  
  19. builder = gtk_builder_new ();
  20. app = gtk_application_new ("com.xxx",
  21. G_APPLICATION_FLAGS_NONE);
  22.  
  23. g_signal_connect (app, "startup", G_CALLBACK (startup_cb), builder);
  24. g_signal_connect (app, "activate", G_CALLBACK (activate_cb), builder);
  25. status = g_application_run (G_APPLICATION (app), argc, argv);
  26. gtk_builder_connect_signals (builder, builder);
  27.  
  28. g_object_unref (builder);
  29. g_object_unref (app);
  30.  
  31. return status;
  32. }
  33.  
  34. callback functions:
  35.  
  36. G_MODULE_EXPORT gboolean
  37. leave_notify_cb (GtkWidget *widget, GdkEvent *event, gpointer builder)
  38. {
  39. GObject *revealer;
  40.  
  41. revealer = gtk_builder_get_object (builder, "song-list-action-bar-revealer");
  42.  
  43. gtk_revealer_set_reveal_child (GTK_REVEALER (revealer), FALSE);
  44. g_print ("mouse left\n");
  45. return FALSE;
  46. }
  47.  
  48. G_MODULE_EXPORT gboolean
  49. enter_notify_cb (GtkWidget *widget, GdkEvent *event, gpointer builder)
  50. {
  51. GObject *revealer;
  52.  
  53. revealer = gtk_builder_get_object (builder, "song-list-action-bar-revealer");
  54.  
  55. gtk_revealer_set_reveal_child (GTK_REVEALER (revealer), TRUE);
  56. g_print ("mouse entered\n");
  57. return FALSE;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement