#include #include void clicked (void) { g_print ("clicked\n"); } int main (int argc, char *argv[]) { GtkWidget *win; GdkPixbuf *img; GdkPixmap *pixmap; GdkBitmap *mask; GtkWidget *image; GtkWidget *event_box; gtk_init (&argc, &argv); win = gtk_window_new (GTK_WINDOW_TOPLEVEL); img = gdk_pixbuf_new_from_file ("./pr0n.jpg"); gdk_pixbuf_render_pixmap_and_mask (img, &pixmap, &mask, 0); image = gtk_pixmap_new (pixmap, mask); event_box = gtk_event_box_new (); gtk_container_add (GTK_CONTAINER (win), event_box); gtk_container_add (GTK_CONTAINER (event_box), image); gtk_signal_connect(GTK_OBJECT(event_box), "button_press_event", GTK_SIGNAL_FUNC (clicked), NULL); gtk_widget_add_events(event_box, GDK_BUTTON_PRESS_MASK); gtk_widget_show_all (win); gtk_main (); return 0; }