Changeset 3323 for trunk/jons-gtk2-gui

Show
Ignore:
Timestamp:
03/01/03 09:33:13 (6 years ago)
Author:
bostjanlah
Message:

Use a much simpler gtk_dialog for this

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/jons-gtk2-gui/src/about_window.cpp

    r3299 r3323  
    2828#include <sys/utsname.h> 
    2929 
    30 GtkWidget *about_window = 0; 
    31  
    3230void create_about_window() 
    3331{ 
    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); 
    5632    struct utsname un; 
    5733    uname(&un); 
    5834 
    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()); 
    7557 
    7658    gUserManager.DropOwner(); 
    7759 
    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); 
    8762} 
    88  
    89 void close_about_window(GtkWidget *widget, gpointer data) 
    90 { 
    91     gtk_widget_destroy(about_window); 
    92     about_window = 0; 
    93 }