/** buttonwin.c **/ #include gint eventDelete(GtkWidget *widget, GdkEvent *event,gpointer data); gint eventDestroy(GtkWidget *widget, GdkEvent *event,gpointer data); void eventButton(GtkWidget *widget, GdkEvent *event,gpointer data); int main(int argc,char *argv[]) { GtkWidget *topLevelWindow; GtkWidget *pushMeButton; gtk_init(&argc,&argv); topLevelWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_signal_connect(GTK_OBJECT(topLevelWindow), "delete_event", GTK_SIGNAL_FUNC(eventDelete), NULL); gtk_signal_connect(GTK_OBJECT(topLevelWindow), "destroy", GTK_SIGNAL_FUNC(eventDestroy), NULL); pushMeButton = gtk_button_new_with_label("Push me!"); gtk_signal_connect(GTK_OBJECT(pushMeButton), "clicked", GTK_SIGNAL_FUNC(eventButton), NULL); gtk_container_add(GTK_CONTAINER(topLevelWindow), pushMeButton); gtk_container_set_border_width( GTK_CONTAINER(topLevelWindow),30); gtk_widget_show(topLevelWindow); gtk_widget_show(pushMeButton); gtk_main(); exit(0); } void eventButton(GtkWidget *widget, GdkEvent *event,gpointer data) { g_print("The button was pushed!\n"); } gint eventDelete(GtkWidget *widget, GdkEvent *event,gpointer data) { return(FALSE); } gint eventDestroy(GtkWidget *widget, GdkEvent *event,gpointer data) { gtk_main_quit(); return(0); }