| 34 | | // Only one about window |
| 35 | | if(about_window != 0) |
| 36 | | { |
| 37 | | gdk_window_raise(about_window->window); |
| 38 | | return; |
| 39 | | } |
| 40 | | |
| 41 | | // Make the window now |
| 42 | | about_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
| 43 | | |
| 44 | | gtk_window_set_position(GTK_WINDOW(about_window), GTK_WIN_POS_CENTER); |
| 45 | | gtk_window_set_title(GTK_WINDOW(about_window), "About Licq"); |
| 46 | | |
| 47 | | // Window delete event |
| 48 | | g_signal_connect(GTK_OBJECT(about_window), "destroy", |
| 49 | | G_CALLBACK(close_about_window), 0); |
| 50 | | |
| 51 | | // A vertical box for the label and ok button |
| 52 | | GtkWidget *v_box = gtk_vbox_new(false, 5); |
| 53 | | gtk_container_add(GTK_CONTAINER(about_window), v_box); |
| 54 | | |
| 55 | | ICQOwner *o = gUserManager.FetchOwner(LOCK_R); |
| 59 | | // A label to be in the box.. with centered text |
| 60 | | GtkWidget *label = gtk_label_new( |
| 61 | | g_strdup_printf("Licq Version: %s\n" |
| 62 | | "Jon's GTK2 GUI Version: %s\n" |
| 63 | | "GTK+ Version: %d.%d.%d\n" |
| 64 | | "Compiled On: %s\n" |
| 65 | | "Currently Running On: %s %s [%s]\n\n" |
| 66 | | "Author: Jon Keating <jon@licq.org>\n" |
| 67 | | "http://jons-gtk-gui.sourceforge.net\n\n" |
| 68 | | "%s (%ld)\n" |
| 69 | | "%d Contacts", |
| 70 | | icq_daemon->Version(), VERSION, |
| 71 | | gtk_major_version, gtk_minor_version, |
| 72 | | gtk_micro_version, __DATE__, |
| 73 | | un.sysname, un.release, un.machine, |
| 74 | | o->GetAlias(), o->Uin(), gUserManager.NumUsers())); |
| | 35 | ICQOwner *o = gUserManager.FetchOwner(LOCK_R); |
| | 36 | |
| | 37 | GtkWidget *about = |
| | 38 | gtk_message_dialog_new( |
| | 39 | GTK_WINDOW(main_window), |
| | 40 | GTK_DIALOG_DESTROY_WITH_PARENT, |
| | 41 | GTK_MESSAGE_INFO, |
| | 42 | GTK_BUTTONS_OK, |
| | 43 | "Licq Version: %s\n" |
| | 44 | "Jon's GTK2 GUI Version: %s\n" |
| | 45 | "GTK+ Version: %d.%d.%d\n" |
| | 46 | "Compiled On: %s\n" |
| | 47 | "Currently Running On: %s %s [%s]\n\n" |
| | 48 | "Author: Jon Keating <jon@licq.org>\n" |
| | 49 | "http://jons-gtk-gui.sourceforge.net\n\n" |
| | 50 | "%s (%ld)\n" |
| | 51 | "%d Contacts", |
| | 52 | icq_daemon->Version(), VERSION, |
| | 53 | gtk_major_version, gtk_minor_version, |
| | 54 | gtk_micro_version, __DATE__, |
| | 55 | un.sysname, un.release, un.machine, |
| | 56 | o->GetAlias(), o->Uin(), gUserManager.NumUsers()); |
| 78 | | gtk_box_pack_start(GTK_BOX(v_box), label, false, false, 0); |
| 79 | | |
| 80 | | GtkWidget *ok = gtk_button_new_from_stock(GTK_STOCK_OK); |
| 81 | | g_signal_connect(GTK_OBJECT(ok), "clicked", |
| 82 | | G_CALLBACK(close_about_window), 0); |
| 83 | | |
| 84 | | gtk_box_pack_start(GTK_BOX(v_box), ok, true, true, 0); |
| 85 | | |
| 86 | | gtk_widget_show_all(about_window); |
| | 60 | gtk_dialog_run(GTK_DIALOG(about)); |
| | 61 | gtk_widget_destroy(about); |