printf("%s ACTIVATE\n", (char*) d);
}
-void e_button_clicked(GtkWidget *wdg, gpointer d) {
+void e_widget_clicked(GtkWidget *wdg, gpointer d) {
printf(
"%s CLICKED\n",
gtk_buildable_get_name(GTK_BUILDABLE(wdg))
);
}
+// menu items get "activated" instead of clicked
+// (i.e. when running the mouse over an open menu bar)
+void e_mi_activate(GtkWidget *wdg, gpointer d) {
+ printf(
+ "%s ACTIVATE\n",
+ gtk_buildable_get_name(GTK_BUILDABLE(wdg))
+ );
+}
+
// Radio Buttons and Checkboxes are "Toggle Buttons"
void e_tb_toggled(GtkWidget *wdg, gpointer d) {
GtkToggleButton *t = GTK_TOGGLE_BUTTON(wdg);
);
}
+// Radio Buttons and Checkboxes within tool bars are "Toggle Tool Buttons"
+void e_ttb_toggled(GtkWidget *wdg, gpointer d) {
+ GtkToggleToolButton *t = GTK_TOGGLE_TOOL_BUTTON(wdg);
+ printf(
+ "%s TOGGLED %i\n",
+ gtk_buildable_get_name(GTK_BUILDABLE(wdg)),
+ gtk_toggle_tool_button_get_active(t)
+ );
+}
+
// Radio Buttons and Checkboxes within menus are "Check Menu Items"
void e_cmi_toggled(GtkWidget *wdg, gpointer d) {
GtkCheckMenuItem *c = GTK_CHECK_MENU_ITEM(wdg);
name = gtk_buildable_get_name(GTK_BUILDABLE(wp));
if (strncmp(name, "___", 3) == 0 ) return;
- else if (GTK_IS_TOGGLE_BUTTON(wdg)) g_signal_connect(wdg, "toggled", G_CALLBACK(e_tb_toggled), NULL);
- else if (GTK_IS_CHECK_MENU_ITEM(wdg)) g_signal_connect(wdg, "toggled", G_CALLBACK(e_cmi_toggled), NULL);
+ else if (GTK_IS_TOGGLE_BUTTON(wdg)) g_signal_connect(wdg, "toggled", G_CALLBACK(e_tb_toggled), NULL);
+ else if (GTK_IS_CHECK_MENU_ITEM(wdg)) g_signal_connect(wdg, "toggled", G_CALLBACK(e_cmi_toggled), NULL);
+ else if (GTK_IS_TOGGLE_TOOL_BUTTON(wdg)) g_signal_connect(wdg, "toggled", G_CALLBACK(e_ttb_toggled), NULL);
else if (GTK_IS_ENTRY(wdg) ) g_signal_connect(wdg, "changed", G_CALLBACK(e_entry_changed), NULL);
else if (GTK_IS_WINDOW(wdg)) g_signal_connect(wdg, "destroy", G_CALLBACK(app_quit), NULL);
- else if (GTK_IS_BUTTON(wdg)) g_signal_connect(wdg, "clicked", G_CALLBACK(e_button_clicked), NULL);
+ else if (GTK_IS_TOOL_BUTTON(wdg)) g_signal_connect(wdg, "clicked", G_CALLBACK(e_widget_clicked), NULL);
+ else if (GTK_IS_MENU_ITEM(wdg)) g_signal_connect(wdg, "activate",G_CALLBACK(e_mi_activate), NULL);
+ else if (GTK_IS_BUTTON(wdg)) g_signal_connect(wdg, "clicked", G_CALLBACK(e_widget_clicked), NULL);
else { printf("%s unknown\n", name); return; }
printf("%s loaded\n", name);