/** collection.c **/ #include GtkWidget *makeTable(); GtkWidget *makeCheckButtons(); GtkWidget *makeTextEntry(); GtkWidget *makeButtonBox(); gint eventDelete(GtkWidget *widget, GdkEvent *event,gpointer data); gint eventDestroy(GtkWidget *widget, GdkEvent *event,gpointer data); int main(int argc,char *argv[]) { GtkWidget *window; GtkWidget *table; gnome_init("collection","1.0",argc,argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(eventDelete), NULL); gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(eventDestroy), NULL); table = makeTable(); gtk_container_add(GTK_CONTAINER(window),table); gtk_widget_show(window); gtk_main(); exit(0); } GtkWidget *makeTable() { GtkWidget *table; GtkWidget *checkButtons; GtkWidget *textEntry; GtkWidget *buttonBox; table = gtk_table_new(2,2,FALSE); gtk_widget_show(table); textEntry = makeTextEntry(); gtk_table_attach(GTK_TABLE(table),textEntry, 0,1,0,1, 0, 0, 5, 5); gtk_widget_show(textEntry); checkButtons = makeCheckButtons(); gtk_table_attach(GTK_TABLE(table),checkButtons, 1,2,0,1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 10, 0); gtk_widget_show(checkButtons); buttonBox = makeButtonBox(); gtk_table_attach(GTK_TABLE(table),buttonBox, 0,2,1,2, GTK_EXPAND | GTK_FILL, 0, 0, 8); gtk_widget_show(buttonBox); return(table); } GtkWidget *makeCheckButtons() { GtkWidget *vbox; GtkWidget *check; vbox = gtk_vbox_new(FALSE,0); check = gtk_check_button_new_with_label("Get Mad"); gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0); gtk_widget_show(check); check = gtk_check_button_new_with_label("Get Even"); gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0); gtk_widget_show(check); check = gtk_check_button_new_with_label("Get Down"); gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0); gtk_widget_show(check); check = gtk_check_button_new_with_label( "Reverse Neutron Polarity"); gtk_box_pack_start(GTK_BOX(vbox),check,FALSE,FALSE,0); gtk_widget_show(check); return(vbox); } GtkWidget *makeTextEntry() { GtkWidget *vbox; GtkWidget *label; GtkWidget *text; vbox = gtk_vbox_new(FALSE,0); label = gtk_label_new("Enter destination planet"); gtk_box_pack_start(GTK_BOX(vbox),label,FALSE,FALSE,0); gtk_widget_show(label); text = gtk_entry_new_with_max_length(32); gtk_box_pack_start(GTK_BOX(vbox),text,FALSE,FALSE,0); gtk_widget_show(text); return(vbox); } GtkWidget *makeButtonBox() { GtkWidget *hbox; GtkWidget *button; hbox = gtk_hbox_new(TRUE,0); button = gtk_button_new_with_label("OK"); gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0); gtk_widget_show(button); button = gtk_button_new_with_label("Apply"); gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0); gtk_widget_show(button); button = gtk_button_new_with_label("Cancel"); gtk_box_pack_start(GTK_BOX(hbox),button,FALSE,FALSE,0); gtk_widget_show(button); return(hbox); } gint eventDelete(GtkWidget *widget, GdkEvent *event,gpointer data) { return(FALSE); } gint eventDestroy(GtkWidget *widget, GdkEvent *event,gpointer data) { gtk_main_quit(); return(0); }