comparison src/dialogs.c @ 5024:8e55a4d362a3

[gaim-migrate @ 5361] Patch by Rob McQueen, NEWS and CREDITS updates. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Sat, 05 Apr 2003 05:01:47 +0000
parents 307c16c4b57e
children dfec167391a5
comparison
equal deleted inserted replaced
5023:e218d2d2b7e9 5024:8e55a4d362a3
51 #include "gtklist.h" 51 #include "gtklist.h"
52 52
53 #ifdef _WIN32 53 #ifdef _WIN32
54 #include "win32dep.h" 54 #include "win32dep.h"
55 #endif 55 #endif
56
57 #include "pixmaps/gnome_preferences.xpm"
58 #include "pixmaps/cancel.xpm"
59 #include "pixmaps/save.xpm"
60 #include "pixmaps/ok.xpm"
61 #include "pixmaps/add.xpm"
62 #include "pixmaps/close.xpm"
63 56
64 #define PATHSIZE 1024 57 #define PATHSIZE 1024
65 58
66 GdkColor bgcolor; 59 GdkColor bgcolor;
67 GdkColor fgcolor; 60 GdkColor fgcolor;
358 g_free(w); 351 g_free(w);
359 } 352 }
360 353
361 void show_warn_dialog(struct gaim_connection *gc, char *who) 354 void show_warn_dialog(struct gaim_connection *gc, char *who)
362 { 355 {
363 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_warning.png", NULL);
364 char *labeltext; 356 char *labeltext;
365 GtkWidget *hbox, *vbox; 357 GtkWidget *hbox, *vbox;
366 GtkWidget *label; 358 GtkWidget *label;
367 GtkWidget *img = gtk_image_new_from_file(filename); 359 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG);
368 struct gaim_conversation *c = gaim_find_conversation(who); 360 struct gaim_conversation *c = gaim_find_conversation(who);
369 361
370 struct warning *w = g_new0(struct warning, 1); 362 struct warning *w = g_new0(struct warning, 1);
371 w->who = who; 363 w->who = who;
372 w->gc = gc; 364 w->gc = gc;
373 365
374 g_free(filename);
375 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); 366 gtk_misc_set_alignment(GTK_MISC(img), 0, 0);
376 367
377 w->window = gtk_dialog_new_with_buttons(_("Warn User"), GTK_WINDOW(c->window), GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, _("_Warn"), GTK_RESPONSE_OK, NULL); 368 w->window = gtk_dialog_new_with_buttons(_("Warn User"), GTK_WINDOW(c->window), GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, _("_Warn"), GTK_RESPONSE_OK, NULL);
378 gtk_dialog_set_default_response (GTK_DIALOG(w->window), GTK_RESPONSE_OK); 369 gtk_dialog_set_default_response (GTK_DIALOG(w->window), GTK_RESPONSE_OK);
379 g_signal_connect(G_OBJECT(w->window), "response", G_CALLBACK(do_warn), w); 370 g_signal_connect(G_OBJECT(w->window), "response", G_CALLBACK(do_warn), w);
490 GtkWidget *d; 481 GtkWidget *d;
491 GtkWidget *label; 482 GtkWidget *label;
492 GtkWidget *img = NULL; 483 GtkWidget *img = NULL;
493 GtkWidget *hbox; 484 GtkWidget *hbox;
494 char labeltext[1024 * 2]; 485 char labeltext[1024 * 2];
495 char *filename = NULL; 486 const char *name = NULL;
496 487
497 /* These are the GTK stock dialog icons with our little Gaim logo on top. 488 /* These are the GTK stock dialog icons with our little Gaim logo on top.
498 * Inspired by the GIMP. */ 489 * Inspired by the GIMP. */
499 switch (type){ 490 switch (type){
500 case GAIM_LOGO: 491 case GAIM_LOGO:
501 filename = g_build_filename(DATADIR, "pixmaps", "gaim", "gaim.png", NULL); 492 name = GAIM_STOCK_ICON_ONLINE;
502 break; 493 break;
503 case GAIM_INFO: 494 case GAIM_INFO:
504 filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_info.png", NULL); 495 name = GAIM_STOCK_DIALOG_INFO;
505 break; 496 break;
506 case GAIM_WARNING: 497 case GAIM_WARNING:
507 filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_warning.png", NULL); 498 name = GAIM_STOCK_DIALOG_WARNING;
508 break; 499 break;
509 case GAIM_ERROR: 500 case GAIM_ERROR:
510 filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_error.png", NULL); 501 name = GAIM_STOCK_DIALOG_ERROR;
511 break; 502 break;
512 /* case GAIM_QUESTION: 503 }
513 filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 504
514 break; 505 if (name) {
515 */ 506 img = gtk_image_new_from_stock(name, GTK_ICON_SIZE_DIALOG);
516 }
517 if (filename) {
518 img = gtk_image_new_from_file(filename);
519 g_free(filename);
520 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); 507 gtk_misc_set_alignment(GTK_MISC(img), 0, 0);
521 } 508 }
509
522 d = gtk_dialog_new_with_buttons("", NULL, 0, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); 510 d = gtk_dialog_new_with_buttons("", NULL, 0, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL);
523 g_signal_connect(d, "response", G_CALLBACK(gtk_widget_destroy), NULL); 511 g_signal_connect(d, "response", G_CALLBACK(gtk_widget_destroy), NULL);
524 512
525 gtk_container_set_border_width (GTK_CONTAINER(d), 6); 513 gtk_container_set_border_width (GTK_CONTAINER(d), 6);
526 gtk_window_set_resizable(GTK_WINDOW(d), FALSE); 514 gtk_window_set_resizable(GTK_WINDOW(d), FALSE);
527 gtk_dialog_set_has_separator(GTK_DIALOG(d), FALSE); 515 gtk_dialog_set_has_separator(GTK_DIALOG(d), FALSE);
528 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(d)->vbox), 12); 516 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(d)->vbox), 12);
529 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(d)->vbox), 6); 517 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(d)->vbox), 6);
530 518
531 hbox = gtk_hbox_new(FALSE, 12); 519 hbox = gtk_hbox_new(FALSE, 12);
532 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(d)->vbox), hbox); 520 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(d)->vbox), hbox);
533 if (filename) { 521 if (img) {
534 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); 522 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0);
535 } 523 }
536 gtk_widget_show(img);
537 524
538 g_snprintf(labeltext, sizeof(labeltext), "<span weight=\"bold\" size=\"larger\">%s</span>\n\n%s", primary, secondary ? secondary : ""); 525 g_snprintf(labeltext, sizeof(labeltext), "<span weight=\"bold\" size=\"larger\">%s</span>\n\n%s", primary, secondary ? secondary : "");
539 526
540 label = gtk_label_new(NULL); 527 label = gtk_label_new(NULL);
541 gtk_label_set_markup(GTK_LABEL(label), labeltext); 528 gtk_label_set_markup(GTK_LABEL(label), labeltext);
542 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); 529 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
543 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); 530 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
544 gtk_widget_show(label);
545 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 531 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
546 532
547 gtk_widget_show(hbox); 533 gtk_widget_show_all(d);
548 534
549 gtk_widget_show(d);
550 return d; 535 return d;
551 } 536 }
552
553
554 537
555 static void do_im(GtkWidget *widget, int resp, struct getuserinfo *info) 538 static void do_im(GtkWidget *widget, int resp, struct getuserinfo *info)
556 { 539 {
557 const char *who; 540 const char *who;
558 struct gaim_conversation *conv; 541 struct gaim_conversation *conv;
610 { 593 {
611 GtkWidget *window; 594 GtkWidget *window;
612 GtkWidget *hbox; 595 GtkWidget *hbox;
613 GtkWidget *label; 596 GtkWidget *label;
614 struct gaim_gtk_buddy_list *gtkblist; 597 struct gaim_gtk_buddy_list *gtkblist;
615 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_cool.png", NULL); 598 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_COOL, GTK_ICON_SIZE_DIALOG);
616 GtkWidget *img = gtk_image_new_from_file(filename);
617 599
618 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 600 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
619 601
620 label = gtk_label_new(NULL); 602 label = gtk_label_new(NULL);
621 if (ee == 0) 603 if (ee == 0)
686 GtkWidget *table, *menu, *opt; 668 GtkWidget *table, *menu, *opt;
687 GSList *g = connections; 669 GSList *g = connections;
688 struct gaim_connection *c; 670 struct gaim_connection *c;
689 struct gaim_gtk_buddy_list *gtkblist; 671 struct gaim_gtk_buddy_list *gtkblist;
690 char buf[256]; 672 char buf[256];
691 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 673 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
692 GtkWidget *img = gtk_image_new_from_file(filename);
693 struct getuserinfo *info = NULL; 674 struct getuserinfo *info = NULL;
694 675
695 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 676 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
696
697 g_free(filename);
698 677
699 if (!imdialog) { 678 if (!imdialog) {
700 info = g_new0(struct getuserinfo, 1); 679 info = g_new0(struct getuserinfo, 1);
701 info->gc = connections->data; 680 info->gc = connections->data;
702 imdialog = gtk_dialog_new_with_buttons(_("New Message"), gtkblist ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL, 681 imdialog = gtk_dialog_new_with_buttons(_("New Message"), gtkblist ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL,
787 766
788 void show_info_dialog() 767 void show_info_dialog()
789 { 768 {
790 GtkWidget *window, *hbox, *vbox; 769 GtkWidget *window, *hbox, *vbox;
791 GtkWidget *label; 770 GtkWidget *label;
792 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 771 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
793 GtkWidget *img = gtk_image_new_from_file(filename);
794 GtkWidget *table, *menu, *opt; 772 GtkWidget *table, *menu, *opt;
795 GSList *g = connections; 773 GSList *g = connections;
796 struct gaim_connection *c; 774 struct gaim_connection *c;
797 struct getuserinfo *info = g_new0(struct getuserinfo, 1); 775 struct getuserinfo *info = g_new0(struct getuserinfo, 1);
798 struct gaim_gtk_buddy_list *gtkblist; 776 struct gaim_gtk_buddy_list *gtkblist;
799 char buf[256]; 777 char buf[256];
800 778
801 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 779 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
802 780
803 g_free(filename);
804 info->gc = connections->data; 781 info->gc = connections->data;
805 782
806 window = gtk_dialog_new_with_buttons(_("Get User Info"), gtkblist->window ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL, 783 window = gtk_dialog_new_with_buttons(_("Get User Info"), gtkblist->window ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL,
807 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); 784 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
808 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK); 785 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK);
990 { 967 {
991 968
992 GtkWidget *hbox, *vbox; 969 GtkWidget *hbox, *vbox;
993 GtkWidget *label; 970 GtkWidget *label;
994 struct gaim_gtk_buddy_list *gtkblist; 971 struct gaim_gtk_buddy_list *gtkblist;
995 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 972 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
996 GtkWidget *img = gtk_image_new_from_file(filename);
997 struct addbuddy *a = g_new0(struct addbuddy, 1); 973 struct addbuddy *a = g_new0(struct addbuddy, 1);
998 974
999 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 975 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
1000 976
1001 g_free(filename);
1002 a->gc = gc; 977 a->gc = gc;
1003 978
1004 a->window = gtk_dialog_new_with_buttons(_("Add Group"), GTK_WINDOW(gtkblist->window), GTK_DIALOG_MODAL, 979 a->window = gtk_dialog_new_with_buttons(_("Add Group"), GTK_WINDOW(gtkblist->window), GTK_DIALOG_MODAL,
1005 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_ADD, GTK_RESPONSE_OK, NULL); 980 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_ADD, GTK_RESPONSE_OK, NULL);
1006 gtk_dialog_set_default_response (GTK_DIALOG(a->window), GTK_RESPONSE_OK); 981 gtk_dialog_set_default_response (GTK_DIALOG(a->window), GTK_RESPONSE_OK);
1100 GtkWidget *table; 1075 GtkWidget *table;
1101 GtkWidget *label; 1076 GtkWidget *label;
1102 GtkWidget *hbox; 1077 GtkWidget *hbox;
1103 GtkWidget *vbox; 1078 GtkWidget *vbox;
1104 struct gaim_gtk_buddy_list *gtkblist; 1079 struct gaim_gtk_buddy_list *gtkblist;
1105 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 1080 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
1106 GtkWidget *img = gtk_image_new_from_file(filename);
1107 struct addbuddy *a = g_new0(struct addbuddy, 1); 1081 struct addbuddy *a = g_new0(struct addbuddy, 1);
1108 a->gc = gc ? gc : connections->data; 1082 a->gc = gc ? gc : connections->data;
1109 1083
1110 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 1084 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
1111
1112 g_free(filename);
1113 1085
1114 GAIM_DIALOG(a->window); 1086 GAIM_DIALOG(a->window);
1115 a->window = gtk_dialog_new_with_buttons(_("Add Buddy"), gtkblist->window ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL, 1087 a->window = gtk_dialog_new_with_buttons(_("Add Buddy"), gtkblist->window ? GTK_WINDOW(gtkblist->window) : NULL, GTK_DIALOG_MODAL,
1116 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_ADD, GTK_RESPONSE_OK, NULL); 1088 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_ADD, GTK_RESPONSE_OK, NULL);
1117 1089
1842 1814
1843 /* And add the buttons */ 1815 /* And add the buttons */
1844 1816
1845 bot = gtk_hbox_new(FALSE, 5); 1817 bot = gtk_hbox_new(FALSE, 5);
1846 gtk_box_pack_start(GTK_BOX(fbox), bot, FALSE, FALSE, 0); 1818 gtk_box_pack_start(GTK_BOX(fbox), bot, FALSE, FALSE, 0);
1847 gtk_widget_show(bot); 1819
1848 1820 b->save = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL);
1849 b->save = picture_button(b->window, _("Save"), save_xpm);
1850 gtk_box_pack_end(GTK_BOX(bot), b->save, FALSE, FALSE, 0); 1821 gtk_box_pack_end(GTK_BOX(bot), b->save, FALSE, FALSE, 0);
1851 g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_set_dir), b); 1822 g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_set_dir), b);
1852 1823
1853 b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm); 1824 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
1854 gtk_box_pack_end(GTK_BOX(bot), b->cancel, FALSE, FALSE, 0); 1825 gtk_box_pack_end(GTK_BOX(bot), b->cancel, FALSE, FALSE, 0);
1855 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); 1826 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
1856 1827
1857 gtk_window_set_focus(GTK_WINDOW(b->window), b->first); 1828 gtk_window_set_focus(GTK_WINDOW(b->window), b->first);
1858 1829
1859 gtk_widget_show(b->window); 1830 gtk_widget_show_all(b->window);
1860 } 1831 }
1861 1832
1862 void do_change_password(GtkWidget *widget, struct passwddlg *b) 1833 void do_change_password(GtkWidget *widget, struct passwddlg *b)
1863 { 1834 {
1864 const gchar *orig, *new1, *new2; 1835 const gchar *orig, *new1, *new2;
1906 dialogwindows = g_list_prepend(dialogwindows, b->window); 1877 dialogwindows = g_list_prepend(dialogwindows, b->window);
1907 1878
1908 fbox = gtk_vbox_new(FALSE, 5); 1879 fbox = gtk_vbox_new(FALSE, 5);
1909 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); 1880 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5);
1910 gtk_container_add(GTK_CONTAINER(b->window), fbox); 1881 gtk_container_add(GTK_CONTAINER(b->window), fbox);
1911 gtk_widget_show(fbox);
1912 1882
1913 frame = gtk_frame_new(_("Change Password")); 1883 frame = gtk_frame_new(_("Change Password"));
1914 gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0); 1884 gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0);
1915 gtk_widget_show(frame);
1916 1885
1917 vbox = gtk_vbox_new(FALSE, 5); 1886 vbox = gtk_vbox_new(FALSE, 5);
1918 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); 1887 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
1919 gtk_container_add(GTK_CONTAINER(frame), vbox); 1888 gtk_container_add(GTK_CONTAINER(frame), vbox);
1920 gtk_widget_show(vbox);
1921 1889
1922 g_snprintf(buf, sizeof(buf), _("Changing password for %s:"), gc->username); 1890 g_snprintf(buf, sizeof(buf), _("Changing password for %s:"), gc->username);
1923 label = gtk_label_new(buf); 1891 label = gtk_label_new(buf);
1924 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); 1892 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
1925 gtk_widget_show(label);
1926 1893
1927 /* First Line */ 1894 /* First Line */
1928 hbox = gtk_hbox_new(FALSE, 5); 1895 hbox = gtk_hbox_new(FALSE, 5);
1929 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 1896 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
1930 gtk_widget_show(hbox);
1931 1897
1932 label = gtk_label_new(_("Original Password")); 1898 label = gtk_label_new(_("Original Password"));
1933 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 1899 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
1934 gtk_widget_show(label);
1935 1900
1936 b->original = gtk_entry_new(); 1901 b->original = gtk_entry_new();
1937 gtk_entry_set_visibility(GTK_ENTRY(b->original), FALSE); 1902 gtk_entry_set_visibility(GTK_ENTRY(b->original), FALSE);
1938 gtk_box_pack_end(GTK_BOX(hbox), b->original, FALSE, FALSE, 0); 1903 gtk_box_pack_end(GTK_BOX(hbox), b->original, FALSE, FALSE, 0);
1939 gtk_widget_show(b->original);
1940 1904
1941 /* Next Line */ 1905 /* Next Line */
1942 hbox = gtk_hbox_new(FALSE, 5); 1906 hbox = gtk_hbox_new(FALSE, 5);
1943 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 1907 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
1944 gtk_widget_show(hbox);
1945 1908
1946 label = gtk_label_new(_("New Password")); 1909 label = gtk_label_new(_("New Password"));
1947 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 1910 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
1948 gtk_widget_show(label);
1949 1911
1950 b->new1 = gtk_entry_new(); 1912 b->new1 = gtk_entry_new();
1951 gtk_entry_set_visibility(GTK_ENTRY(b->new1), FALSE); 1913 gtk_entry_set_visibility(GTK_ENTRY(b->new1), FALSE);
1952 gtk_box_pack_end(GTK_BOX(hbox), b->new1, FALSE, FALSE, 0); 1914 gtk_box_pack_end(GTK_BOX(hbox), b->new1, FALSE, FALSE, 0);
1953 gtk_widget_show(b->new1);
1954 1915
1955 /* Next Line */ 1916 /* Next Line */
1956 hbox = gtk_hbox_new(FALSE, 5); 1917 hbox = gtk_hbox_new(FALSE, 5);
1957 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 1918 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
1958 gtk_widget_show(hbox);
1959 1919
1960 label = gtk_label_new(_("New Password (again)")); 1920 label = gtk_label_new(_("New Password (again)"));
1961 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 1921 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
1962 gtk_widget_show(label);
1963 1922
1964 b->new2 = gtk_entry_new(); 1923 b->new2 = gtk_entry_new();
1965 gtk_entry_set_visibility(GTK_ENTRY(b->new2), FALSE); 1924 gtk_entry_set_visibility(GTK_ENTRY(b->new2), FALSE);
1966 gtk_box_pack_end(GTK_BOX(hbox), b->new2, FALSE, FALSE, 0); 1925 gtk_box_pack_end(GTK_BOX(hbox), b->new2, FALSE, FALSE, 0);
1967 gtk_widget_show(b->new2);
1968 1926
1969 /* Now do our row of buttons */ 1927 /* Now do our row of buttons */
1970 hbox = gtk_hbox_new(FALSE, 5); 1928 hbox = gtk_hbox_new(FALSE, 5);
1971 gtk_box_pack_start(GTK_BOX(fbox), hbox, FALSE, FALSE, 0); 1929 gtk_box_pack_start(GTK_BOX(fbox), hbox, FALSE, FALSE, 0);
1972 gtk_widget_show(hbox); 1930
1973 1931 b->ok = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
1974 b->ok = picture_button(b->window, _("OK"), ok_xpm);
1975 gtk_box_pack_end(GTK_BOX(hbox), b->ok, FALSE, FALSE, 0); 1932 gtk_box_pack_end(GTK_BOX(hbox), b->ok, FALSE, FALSE, 0);
1976 g_signal_connect(GTK_OBJECT(b->ok), "clicked", G_CALLBACK(do_change_password), b); 1933 g_signal_connect(GTK_OBJECT(b->ok), "clicked", G_CALLBACK(do_change_password), b);
1977 1934
1978 b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm); 1935 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
1979 gtk_box_pack_end(GTK_BOX(hbox), b->cancel, FALSE, FALSE, 0); 1936 gtk_box_pack_end(GTK_BOX(hbox), b->cancel, FALSE, FALSE, 0);
1980 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); 1937 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
1981 1938
1982 gtk_widget_show(b->window); 1939 gtk_widget_show_all(b->window);
1983 } 1940 }
1984 1941
1985 void show_set_info(struct gaim_connection *gc) 1942 void show_set_info(struct gaim_connection *gc)
1986 { 1943 {
1987 GtkWidget *buttons; 1944 GtkWidget *buttons;
2004 gtk_widget_realize(b->window); 1961 gtk_widget_realize(b->window);
2005 1962
2006 vbox = gtk_vbox_new(FALSE, 5); 1963 vbox = gtk_vbox_new(FALSE, 5);
2007 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); 1964 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
2008 gtk_container_add(GTK_CONTAINER(b->window), vbox); 1965 gtk_container_add(GTK_CONTAINER(b->window), vbox);
2009 gtk_widget_show(vbox);
2010 1966
2011 buf = g_malloc(256); 1967 buf = g_malloc(256);
2012 g_snprintf(buf, 256, _("Changing info for %s:"), account->username); 1968 g_snprintf(buf, 256, _("Changing info for %s:"), account->username);
2013 label = gtk_label_new(buf); 1969 label = gtk_label_new(buf);
2014 g_free(buf); 1970 g_free(buf);
2015 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); 1971 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
2016 gtk_widget_show(label);
2017 1972
2018 frame = gtk_frame_new(NULL); 1973 frame = gtk_frame_new(NULL);
2019 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN); 1974 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
2020 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); 1975 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0);
2021 gtk_widget_show(frame);
2022 1976
2023 b->text = gtk_text_view_new(); 1977 b->text = gtk_text_view_new();
2024 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(b->text), GTK_WRAP_WORD); 1978 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(b->text), GTK_WRAP_WORD);
2025 gtk_widget_set_size_request(b->text, 300, 200); 1979 gtk_widget_set_size_request(b->text, 300, 200);
2026 buf = g_malloc(strlen(account->user_info) + 1); 1980 buf = g_malloc(strlen(account->user_info) + 1);
2027 strncpy_nohtml(buf, account->user_info, strlen(account->user_info) + 1); 1981 strncpy_nohtml(buf, account->user_info, strlen(account->user_info) + 1);
2028 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(b->text)); 1982 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(b->text));
2029 gtk_text_buffer_set_text(buffer, buf, -1); 1983 gtk_text_buffer_set_text(buffer, buf, -1);
2030 g_free(buf); 1984 g_free(buf);
2031 gtk_container_add(GTK_CONTAINER(frame), b->text); 1985 gtk_container_add(GTK_CONTAINER(frame), b->text);
2032 gtk_widget_show(b->text);
2033 gtk_window_set_focus(GTK_WINDOW(b->window), b->text); 1986 gtk_window_set_focus(GTK_WINDOW(b->window), b->text);
2034 1987
2035 buttons = gtk_hbox_new(FALSE, 5); 1988 buttons = gtk_hbox_new(FALSE, 5);
2036 gtk_box_pack_start(GTK_BOX(vbox), buttons, FALSE, FALSE, 0); 1989 gtk_box_pack_start(GTK_BOX(vbox), buttons, FALSE, FALSE, 0);
2037 gtk_widget_show(buttons); 1990
2038 1991 b->save = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL);
2039 b->save = picture_button(b->window, _("Save"), save_xpm);
2040 gtk_box_pack_end(GTK_BOX(buttons), b->save, FALSE, FALSE, 0); 1992 gtk_box_pack_end(GTK_BOX(buttons), b->save, FALSE, FALSE, 0);
2041 g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_save_info), b); 1993 g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_save_info), b);
2042 1994
2043 b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm); 1995 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
2044 gtk_box_pack_end(GTK_BOX(buttons), b->cancel, FALSE, FALSE, 0); 1996 gtk_box_pack_end(GTK_BOX(buttons), b->cancel, FALSE, FALSE, 0);
2045 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); 1997 g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
2046 1998
2047 gtk_widget_show(b->window); 1999 gtk_widget_show_all(b->window);
2048
2049 } 2000 }
2050 2001
2051 /*------------------------------------------------------------------------*/ 2002 /*------------------------------------------------------------------------*/
2052 /* The dialog for the info requests */ 2003 /* The dialog for the info requests */
2053 /*------------------------------------------------------------------------*/ 2004 /*------------------------------------------------------------------------*/
2107 b->text = text; 2058 b->text = text;
2108 gtk_container_add(GTK_CONTAINER(sw), text); 2059 gtk_container_add(GTK_CONTAINER(sw), text);
2109 gtk_widget_set_size_request(sw, 300, 250); 2060 gtk_widget_set_size_request(sw, 300, 250);
2110 gaim_setup_imhtml(text); 2061 gaim_setup_imhtml(text);
2111 2062
2112 ok = picture_button(b->window, _("OK"), ok_xpm); 2063 ok = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
2113 g_signal_connect_swapped(GTK_OBJECT(ok), "clicked", G_CALLBACK(gtk_widget_destroy), 2064 g_signal_connect_swapped(GTK_OBJECT(ok), "clicked", G_CALLBACK(gtk_widget_destroy),
2114 GTK_OBJECT(b->window)); 2065 GTK_OBJECT(b->window));
2115 gtk_box_pack_start(GTK_BOX(bbox), ok, FALSE, FALSE, 0); 2066 gtk_box_pack_start(GTK_BOX(bbox), ok, FALSE, FALSE, 0);
2116 2067
2117 gtk_widget_show_all(b->window); 2068 gtk_widget_show_all(b->window);
2198 p->entry = gtk_entry_new(); 2149 p->entry = gtk_entry_new();
2199 2150
2200 /* Build Add Button */ 2151 /* Build Add Button */
2201 2152
2202 if (permit) 2153 if (permit)
2203 add = picture_button(p->window, _("Permit"), add_xpm); 2154 add = gaim_pixbuf_button_from_stock(_("Permit"), GTK_STOCK_ADD, GAIM_BUTTON_HORIZONTAL);
2204 else 2155 else
2205 add = picture_button(p->window, _("Deny"), add_xpm); 2156 add = gaim_pixbuf_button_from_stock(_("Deny"), GTK_STOCK_ADD, GAIM_BUTTON_HORIZONTAL);
2206 cancel = picture_button(p->window, _("Cancel"), cancel_xpm); 2157 cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
2207 2158
2208 /* End of Cancel Button */ 2159 /* End of Cancel Button */
2209 if (who != NULL) 2160 if (who != NULL)
2210 gtk_entry_set_text(GTK_ENTRY(p->entry), who); 2161 gtk_entry_set_text(GTK_ENTRY(p->entry), who);
2211 2162
2213 2164
2214 gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 5); 2165 gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 5);
2215 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 5); 2166 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 5);
2216 2167
2217 label = gtk_label_new(_("Add")); 2168 label = gtk_label_new(_("Add"));
2218 gtk_widget_show(label);
2219 gtk_box_pack_start(GTK_BOX(topbox), label, FALSE, FALSE, 5); 2169 gtk_box_pack_start(GTK_BOX(topbox), label, FALSE, FALSE, 5);
2220 gtk_box_pack_start(GTK_BOX(topbox), p->entry, FALSE, FALSE, 5); 2170 gtk_box_pack_start(GTK_BOX(topbox), p->entry, FALSE, FALSE, 5);
2221 /* And the boxes in the box */ 2171 /* And the boxes in the box */
2222 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5); 2172 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5);
2223 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 5); 2173 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 5);
2224 gtk_widget_show(topbox);
2225 topbox=gtk_hbox_new(FALSE, 5); 2174 topbox=gtk_hbox_new(FALSE, 5);
2226 gtk_box_pack_start(GTK_BOX(topbox), vbox, FALSE, FALSE, 5); 2175 gtk_box_pack_start(GTK_BOX(topbox), vbox, FALSE, FALSE, 5);
2227 2176
2228 2177
2229 /* Handle closes right */ 2178 /* Handle closes right */
2231 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), p->window); 2180 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), p->window);
2232 g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_add_perm), p); 2181 g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_add_perm), p);
2233 g_signal_connect(GTK_OBJECT(p->entry), "activate", G_CALLBACK(do_add_perm), p); 2182 g_signal_connect(GTK_OBJECT(p->entry), "activate", G_CALLBACK(do_add_perm), p);
2234 2183
2235 /* Finish up */ 2184 /* Finish up */
2236 gtk_widget_show(add);
2237 gtk_widget_show(cancel);
2238 gtk_widget_show(p->entry);
2239 gtk_widget_show(topbox);
2240 gtk_widget_show(bbox);
2241 gtk_widget_show(vbox);
2242 if (permit) 2185 if (permit)
2243 gtk_window_set_title(GTK_WINDOW(p->window), _("Add Permit")); 2186 gtk_window_set_title(GTK_WINDOW(p->window), _("Add Permit"));
2244 else 2187 else
2245 gtk_window_set_title(GTK_WINDOW(p->window), _("Add Deny")); 2188 gtk_window_set_title(GTK_WINDOW(p->window), _("Add Deny"));
2246 gtk_window_set_focus(GTK_WINDOW(p->window), p->entry); 2189 gtk_window_set_focus(GTK_WINDOW(p->window), p->entry);
2247 gtk_container_add(GTK_CONTAINER(p->window), topbox); 2190 gtk_container_add(GTK_CONTAINER(p->window), topbox);
2248 gtk_widget_realize(p->window); 2191 gtk_widget_realize(p->window);
2249 2192
2250 gtk_widget_show(p->window); 2193 gtk_widget_show_all(p->window);
2251 } 2194 }
2252 2195
2253 2196
2254 /*------------------------------------------------------------------------*/ 2197 /*------------------------------------------------------------------------*/
2255 /* Functions Called To Add A Log */ 2198 /* Functions Called To Add A Log */
2386 struct findbyinfo *b = g_new0(struct findbyinfo, 1); 2329 struct findbyinfo *b = g_new0(struct findbyinfo, 1);
2387 b->gc = gc; 2330 b->gc = gc;
2388 GAIM_DIALOG(b->window); 2331 GAIM_DIALOG(b->window);
2389 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE); 2332 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE);
2390 gtk_window_set_role(GTK_WINDOW(b->window), "find_info"); 2333 gtk_window_set_role(GTK_WINDOW(b->window), "find_info");
2391 gtk_widget_show(b->window);
2392 2334
2393 dialogwindows = g_list_prepend(dialogwindows, b->window); 2335 dialogwindows = g_list_prepend(dialogwindows, b->window);
2394 2336
2395 frame = gtk_frame_new(_("Search for Buddy")); 2337 frame = gtk_frame_new(_("Search for Buddy"));
2396 fbox = gtk_vbox_new(FALSE, 5); 2338 fbox = gtk_vbox_new(FALSE, 5);
2397 2339
2398 /* Build OK Button */ 2340 /* Build OK Button */
2399 2341
2400 ok = picture_button(b->window, _("OK"), ok_xpm); 2342 ok = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
2401 cancel = picture_button(b->window, _("Cancel"), cancel_xpm); 2343 cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
2402 2344
2403 bbox = gtk_hbox_new(FALSE, 5); 2345 bbox = gtk_hbox_new(FALSE, 5);
2404 vbox = gtk_vbox_new(FALSE, 5); 2346 vbox = gtk_vbox_new(FALSE, 5);
2405 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); 2347 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
2406 2348
2415 gtk_box_pack_end(GTK_BOX(bbox), ok, FALSE, FALSE, 0); 2357 gtk_box_pack_end(GTK_BOX(bbox), ok, FALSE, FALSE, 0);
2416 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0); 2358 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0);
2417 2359
2418 /* Line 1 */ 2360 /* Line 1 */
2419 label = gtk_label_new(_("First Name")); 2361 label = gtk_label_new(_("First Name"));
2420 gtk_widget_show(label);
2421 2362
2422 hbox = gtk_hbox_new(FALSE, 5); 2363 hbox = gtk_hbox_new(FALSE, 5);
2423 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2364 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2424 gtk_box_pack_end(GTK_BOX(hbox), b->firstentry, FALSE, FALSE, 0); 2365 gtk_box_pack_end(GTK_BOX(hbox), b->firstentry, FALSE, FALSE, 0);
2425 2366
2426 gtk_widget_show(hbox);
2427 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2367 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2428 2368
2429 /* Line 2 */ 2369 /* Line 2 */
2430 2370
2431 label = gtk_label_new(_("Middle Name")); 2371 label = gtk_label_new(_("Middle Name"));
2432 gtk_widget_show(label);
2433 2372
2434 hbox = gtk_hbox_new(FALSE, 5); 2373 hbox = gtk_hbox_new(FALSE, 5);
2435 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2374 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2436 gtk_box_pack_end(GTK_BOX(hbox), b->middleentry, FALSE, FALSE, 0); 2375 gtk_box_pack_end(GTK_BOX(hbox), b->middleentry, FALSE, FALSE, 0);
2437 2376
2438 gtk_widget_show(hbox);
2439 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2377 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2440 2378
2441 /* Line 3 */ 2379 /* Line 3 */
2442 2380
2443 label = gtk_label_new(_("Last Name")); 2381 label = gtk_label_new(_("Last Name"));
2444 gtk_widget_show(label);
2445 2382
2446 hbox = gtk_hbox_new(FALSE, 5); 2383 hbox = gtk_hbox_new(FALSE, 5);
2447 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2384 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2448 gtk_box_pack_end(GTK_BOX(hbox), b->lastentry, FALSE, FALSE, 0); 2385 gtk_box_pack_end(GTK_BOX(hbox), b->lastentry, FALSE, FALSE, 0);
2449 2386
2450 gtk_widget_show(hbox);
2451 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2387 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2452 2388
2453 /* Line 4 */ 2389 /* Line 4 */
2454 2390
2455 label = gtk_label_new(_("Maiden Name")); 2391 label = gtk_label_new(_("Maiden Name"));
2456 gtk_widget_show(label);
2457 2392
2458 hbox = gtk_hbox_new(FALSE, 5); 2393 hbox = gtk_hbox_new(FALSE, 5);
2459 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2394 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2460 gtk_box_pack_end(GTK_BOX(hbox), b->maidenentry, FALSE, FALSE, 0); 2395 gtk_box_pack_end(GTK_BOX(hbox), b->maidenentry, FALSE, FALSE, 0);
2461 2396
2462 gtk_widget_show(hbox);
2463 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2397 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2464 2398
2465 /* Line 5 */ 2399 /* Line 5 */
2466 2400
2467 label = gtk_label_new(_("City")); 2401 label = gtk_label_new(_("City"));
2468 gtk_widget_show(label);
2469 2402
2470 hbox = gtk_hbox_new(FALSE, 5); 2403 hbox = gtk_hbox_new(FALSE, 5);
2471 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2404 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2472 gtk_box_pack_end(GTK_BOX(hbox), b->cityentry, FALSE, FALSE, 0); 2405 gtk_box_pack_end(GTK_BOX(hbox), b->cityentry, FALSE, FALSE, 0);
2473 2406
2474 gtk_widget_show(hbox);
2475 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2407 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2476 2408
2477 /* Line 6 */ 2409 /* Line 6 */
2478 label = gtk_label_new(_("State")); 2410 label = gtk_label_new(_("State"));
2479 gtk_widget_show(label);
2480 2411
2481 hbox = gtk_hbox_new(FALSE, 5); 2412 hbox = gtk_hbox_new(FALSE, 5);
2482 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2413 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2483 gtk_box_pack_end(GTK_BOX(hbox), b->stateentry, FALSE, FALSE, 0); 2414 gtk_box_pack_end(GTK_BOX(hbox), b->stateentry, FALSE, FALSE, 0);
2484 2415
2485 gtk_widget_show(hbox);
2486 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2416 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2487 2417
2488 /* Line 7 */ 2418 /* Line 7 */
2489 label = gtk_label_new(_("Country")); 2419 label = gtk_label_new(_("Country"));
2490 gtk_widget_show(label);
2491 2420
2492 hbox = gtk_hbox_new(FALSE, 5); 2421 hbox = gtk_hbox_new(FALSE, 5);
2493 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 2422 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
2494 gtk_box_pack_end(GTK_BOX(hbox), b->countryentry, FALSE, FALSE, 0); 2423 gtk_box_pack_end(GTK_BOX(hbox), b->countryentry, FALSE, FALSE, 0);
2495 2424
2496 gtk_widget_show(hbox);
2497 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 2425 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
2498 2426
2499 /* Merge The Boxes */ 2427 /* Merge The Boxes */
2500 2428
2501 gtk_container_add(GTK_CONTAINER(frame), vbox); 2429 gtk_container_add(GTK_CONTAINER(frame), vbox);
2503 gtk_box_pack_start(GTK_BOX(fbox), bbox, FALSE, FALSE, 0); 2431 gtk_box_pack_start(GTK_BOX(fbox), bbox, FALSE, FALSE, 0);
2504 2432
2505 g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); 2433 g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
2506 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); 2434 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
2507 g_signal_connect(GTK_OBJECT(ok), "clicked", G_CALLBACK(do_find_info), b); 2435 g_signal_connect(GTK_OBJECT(ok), "clicked", G_CALLBACK(do_find_info), b);
2508
2509 gtk_widget_show(ok);
2510 gtk_widget_show(cancel);
2511 gtk_widget_show(b->firstentry);
2512 gtk_widget_show(b->middleentry);
2513 gtk_widget_show(b->lastentry);
2514 gtk_widget_show(b->maidenentry);
2515 gtk_widget_show(b->cityentry);
2516 gtk_widget_show(b->stateentry);
2517 gtk_widget_show(b->countryentry);
2518 gtk_widget_show(bbox);
2519 gtk_widget_show(vbox);
2520 gtk_widget_show(frame);
2521 gtk_widget_show(fbox);
2522 2436
2523 gtk_window_set_title(GTK_WINDOW(b->window), _("Find Buddy By Info")); 2437 gtk_window_set_title(GTK_WINDOW(b->window), _("Find Buddy By Info"));
2524 gtk_window_set_focus(GTK_WINDOW(b->window), b->firstentry); 2438 gtk_window_set_focus(GTK_WINDOW(b->window), b->firstentry);
2525 gtk_container_add(GTK_CONTAINER(b->window), fbox); 2439 gtk_container_add(GTK_CONTAINER(b->window), fbox);
2526 gtk_container_set_border_width(GTK_CONTAINER(b->window), 5); 2440 gtk_container_set_border_width(GTK_CONTAINER(b->window), 5);
2527 gtk_widget_realize(b->window); 2441 gtk_widget_realize(b->window);
2528 2442
2529 gtk_widget_show(b->window); 2443 gtk_widget_show_all(b->window);
2530 } 2444 }
2531 2445
2532 void show_find_email(struct gaim_connection *gc) 2446 void show_find_email(struct gaim_connection *gc)
2533 { 2447 {
2534 GtkWidget *label; 2448 GtkWidget *label;
2569 gtk_window_set_focus(GTK_WINDOW(b->window), b->emailentry); 2483 gtk_window_set_focus(GTK_WINDOW(b->window), b->emailentry);
2570 2484
2571 bbox = gtk_hbox_new(FALSE, 5); 2485 bbox = gtk_hbox_new(FALSE, 5);
2572 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); 2486 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0);
2573 2487
2574 button = picture_button(b->window, _("OK"), ok_xpm); 2488 button = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
2575 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_find_email), b); 2489 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_find_email), b);
2576 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 2490 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
2577 2491
2578 button = picture_button(b->window, _("Cancel"), cancel_xpm); 2492 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
2579 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), b->window); 2493 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), b->window);
2580 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 2494 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
2581 2495
2582 gtk_widget_show_all(b->window); 2496 gtk_widget_show_all(b->window);
2583 } 2497 }
2646 gtkconv = GAIM_GTK_CONVERSATION(c); 2560 gtkconv = GAIM_GTK_CONVERSATION(c);
2647 gtkwin = GAIM_GTK_WINDOW(gaim_conversation_get_window(c)); 2561 gtkwin = GAIM_GTK_WINDOW(gaim_conversation_get_window(c));
2648 2562
2649 if (gtkconv->dialogs.link == NULL) { 2563 if (gtkconv->dialogs.link == NULL) {
2650 struct linkdlg *a = g_new0(struct linkdlg, 1); 2564 struct linkdlg *a = g_new0(struct linkdlg, 1);
2651 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", 2565 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
2652 "dialogs", "gaim_question.png", NULL);
2653 GtkWidget *img = gtk_image_new_from_file(filename);
2654
2655 g_free(filename);
2656 2566
2657 a->c = c; 2567 a->c = c;
2658 a->window = gtk_dialog_new_with_buttons(_("Insert Link"), 2568 a->window = gtk_dialog_new_with_buttons(_("Insert Link"),
2659 GTK_WINDOW(gtkwin->window), GTK_DIALOG_MODAL, GTK_STOCK_CANCEL, 2569 GTK_WINDOW(gtkwin->window), GTK_DIALOG_MODAL, GTK_STOCK_CANCEL,
2660 GTK_RESPONSE_CANCEL, _("Insert"), GTK_RESPONSE_OK, NULL); 2570 GTK_RESPONSE_CANCEL, _("Insert"), GTK_RESPONSE_OK, NULL);
3156 G_CALLBACK(destroy_dialog), ca->window); 3066 G_CALLBACK(destroy_dialog), ca->window);
3157 gtk_widget_realize(ca->window); 3067 gtk_widget_realize(ca->window);
3158 3068
3159 tbox = gtk_vbox_new(FALSE, 5); 3069 tbox = gtk_vbox_new(FALSE, 5);
3160 gtk_container_add(GTK_CONTAINER(ca->window), tbox); 3070 gtk_container_add(GTK_CONTAINER(ca->window), tbox);
3161 gtk_widget_show(tbox);
3162 3071
3163 frame = gtk_frame_new(_("New away message")); 3072 frame = gtk_frame_new(_("New away message"));
3164 gtk_box_pack_start(GTK_BOX(tbox), frame, TRUE, TRUE, 0); 3073 gtk_box_pack_start(GTK_BOX(tbox), frame, TRUE, TRUE, 0);
3165 gtk_widget_show(frame);
3166 3074
3167 fbox = gtk_vbox_new(FALSE, 5); 3075 fbox = gtk_vbox_new(FALSE, 5);
3168 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); 3076 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5);
3169 gtk_container_add(GTK_CONTAINER(frame), fbox); 3077 gtk_container_add(GTK_CONTAINER(frame), fbox);
3170 gtk_widget_show(fbox);
3171 3078
3172 titlebox = gtk_hbox_new(FALSE, 5); 3079 titlebox = gtk_hbox_new(FALSE, 5);
3173 gtk_box_pack_start(GTK_BOX(fbox), titlebox, FALSE, FALSE, 0); 3080 gtk_box_pack_start(GTK_BOX(fbox), titlebox, FALSE, FALSE, 0);
3174 gtk_widget_show(titlebox);
3175 3081
3176 label = gtk_label_new(_("Away title: ")); 3082 label = gtk_label_new(_("Away title: "));
3177 gtk_box_pack_start(GTK_BOX(titlebox), label, FALSE, FALSE, 0); 3083 gtk_box_pack_start(GTK_BOX(titlebox), label, FALSE, FALSE, 0);
3178 gtk_widget_show(label);
3179 3084
3180 ca->entry = gtk_entry_new(); 3085 ca->entry = gtk_entry_new();
3181 gtk_box_pack_start(GTK_BOX(titlebox), ca->entry, TRUE, TRUE, 0); 3086 gtk_box_pack_start(GTK_BOX(titlebox), ca->entry, TRUE, TRUE, 0);
3182 gtk_widget_grab_focus(ca->entry); 3087 gtk_widget_grab_focus(ca->entry);
3183 gtk_widget_show(ca->entry);
3184 3088
3185 frame = gtk_frame_new(NULL); 3089 frame = gtk_frame_new(NULL);
3186 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN); 3090 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN);
3187 gtk_box_pack_start(GTK_BOX(fbox), frame, TRUE, TRUE, 0); 3091 gtk_box_pack_start(GTK_BOX(fbox), frame, TRUE, TRUE, 0);
3188 gtk_widget_show(frame); 3092
3189
3190 ca->text = gtk_text_view_new(); 3093 ca->text = gtk_text_view_new();
3191 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(ca->text), GTK_WRAP_WORD); 3094 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(ca->text), GTK_WRAP_WORD);
3192 3095
3193 gtk_container_add(GTK_CONTAINER(frame), ca->text); 3096 gtk_container_add(GTK_CONTAINER(frame), ca->text);
3194 gtk_widget_show(ca->text); 3097
3195
3196
3197 if (dummy) { 3098 if (dummy) {
3198 struct away_message *amt; 3099 struct away_message *amt;
3199 GtkTreeIter iter; 3100 GtkTreeIter iter;
3200 int pos = 0; 3101 int pos = 0;
3201 GtkListStore *ls = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(dummy))); 3102 GtkListStore *ls = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(dummy)));
3216 ca->mess = amt; 3117 ca->mess = amt;
3217 } 3118 }
3218 3119
3219 hbox = gtk_hbox_new(FALSE, 5); 3120 hbox = gtk_hbox_new(FALSE, 5);
3220 gtk_box_pack_start(GTK_BOX(tbox), hbox, FALSE, FALSE, 0); 3121 gtk_box_pack_start(GTK_BOX(tbox), hbox, FALSE, FALSE, 0);
3221 gtk_widget_show(hbox); 3122
3222 3123 button = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL);
3223 button = picture_button(ca->window, _("Save"), ok_xpm);
3224 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(save_away_mess), ca); 3124 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(save_away_mess), ca);
3225 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); 3125 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
3226 3126
3227 button = picture_button(ca->window, _("Save & Use"), add_xpm); 3127 button = gaim_pixbuf_button_from_stock(_("Save & Use"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
3228 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(su_away_mess), ca); 3128 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(su_away_mess), ca);
3229 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); 3129 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
3230 3130
3231 button = picture_button(ca->window, _("Use"), gnome_preferences_xpm); 3131 button = gaim_pixbuf_button_from_stock(_("Use"), GTK_STOCK_EXECUTE, GAIM_BUTTON_HORIZONTAL);
3232 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(use_away_mess), ca); 3132 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(use_away_mess), ca);
3233 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); 3133 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
3234 3134
3235 button = picture_button(ca->window, _("Cancel"), cancel_xpm); 3135 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
3236 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), ca->window); 3136 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), ca->window);
3237 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); 3137 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
3238 3138
3239 gtk_widget_show(ca->window); 3139 gtk_widget_show_all(ca->window);
3240 } 3140 }
3241 3141
3242 /* smiley dialog */ 3142 /* smiley dialog */
3243 3143
3244 void close_smiley_dialog(GtkWidget *widget, struct gaim_conversation *c) 3144 void close_smiley_dialog(GtkWidget *widget, struct gaim_conversation *c)
3405 aliasname = gtk_entry_new(); 3305 aliasname = gtk_entry_new();
3406 3306
3407 /* Make the buddy name box */ 3307 /* Make the buddy name box */
3408 bbox = gtk_hbox_new(FALSE, 5); 3308 bbox = gtk_hbox_new(FALSE, 5);
3409 label = gtk_label_new(_("Buddy")); 3309 label = gtk_label_new(_("Buddy"));
3410 gtk_widget_show(bbox);
3411 gtk_widget_show(label);
3412 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 5); 3310 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 5);
3413 gtk_box_pack_end(GTK_BOX(bbox), aliasentry, FALSE, FALSE, 5); 3311 gtk_box_pack_end(GTK_BOX(bbox), aliasentry, FALSE, FALSE, 5);
3414 gtk_editable_set_editable(GTK_EDITABLE(aliasentry), FALSE); 3312 gtk_editable_set_editable(GTK_EDITABLE(aliasentry), FALSE);
3415 gtk_box_pack_start(GTK_BOX(topbox), bbox, FALSE, FALSE, 0); 3313 gtk_box_pack_start(GTK_BOX(topbox), bbox, FALSE, FALSE, 0);
3416 3314
3417 /* And the buddy alias box */ 3315 /* And the buddy alias box */
3418 bbox = gtk_hbox_new(FALSE, 5); 3316 bbox = gtk_hbox_new(FALSE, 5);
3419 label = gtk_label_new(_("Alias")); 3317 label = gtk_label_new(_("Alias"));
3420 gtk_widget_show(bbox);
3421 gtk_widget_show(label);
3422 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 5); 3318 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 5);
3423 gtk_box_pack_end(GTK_BOX(bbox), aliasname, FALSE, FALSE, 5); 3319 gtk_box_pack_end(GTK_BOX(bbox), aliasname, FALSE, FALSE, 5);
3424 gtk_box_pack_start(GTK_BOX(topbox), bbox, FALSE, FALSE, 0); 3320 gtk_box_pack_start(GTK_BOX(topbox), bbox, FALSE, FALSE, 0);
3425 3321
3426 gtk_entry_set_text(GTK_ENTRY(aliasentry), b->name); 3322 gtk_entry_set_text(GTK_ENTRY(aliasentry), b->name);
3428 gtk_entry_set_text(GTK_ENTRY(aliasname), b->alias); 3324 gtk_entry_set_text(GTK_ENTRY(aliasname), b->alias);
3429 3325
3430 /* Put the buttons in the box */ 3326 /* Put the buttons in the box */
3431 bbox = gtk_hbox_new(FALSE, 5); 3327 bbox = gtk_hbox_new(FALSE, 5);
3432 3328
3433 add = picture_button(aliasdlg, _("Alias"), add_xpm); 3329 add = gaim_pixbuf_button_from_stock(_("Alias"), GTK_STOCK_ADD, GAIM_BUTTON_HORIZONTAL);
3434 cancel = picture_button(aliasdlg, _("Cancel"), cancel_xpm); 3330 cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
3435 gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 0); 3331 gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 0);
3436 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0); 3332 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0);
3437 3333
3438 /* And the boxes in the box */ 3334 /* And the boxes in the box */
3439 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5); 3335 gtk_box_pack_start(GTK_BOX(vbox), topbox, TRUE, TRUE, 5);
3443 g_signal_connect(GTK_OBJECT(aliasdlg), "destroy", G_CALLBACK(destroy_dialog), aliasdlg); 3339 g_signal_connect(GTK_OBJECT(aliasdlg), "destroy", G_CALLBACK(destroy_dialog), aliasdlg);
3444 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), aliasdlg); 3340 g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), aliasdlg);
3445 g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_alias_bud), b); 3341 g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_alias_bud), b);
3446 g_signal_connect(GTK_OBJECT(aliasname), "activate", G_CALLBACK(do_alias_bud), b); 3342 g_signal_connect(GTK_OBJECT(aliasname), "activate", G_CALLBACK(do_alias_bud), b);
3447 /* Finish up */ 3343 /* Finish up */
3448 gtk_widget_show(add);
3449 gtk_widget_show(cancel);
3450 gtk_widget_show(aliasentry);
3451 gtk_widget_show(aliasname);
3452 gtk_widget_show(topbox);
3453 gtk_widget_show(bbox);
3454 gtk_widget_show(vbox);
3455 gtk_window_set_title(GTK_WINDOW(aliasdlg), _("Alias Buddy")); 3344 gtk_window_set_title(GTK_WINDOW(aliasdlg), _("Alias Buddy"));
3456 gtk_window_set_focus(GTK_WINDOW(aliasdlg), aliasname); 3345 gtk_window_set_focus(GTK_WINDOW(aliasdlg), aliasname);
3457 gtk_container_add(GTK_CONTAINER(aliasdlg), vbox); 3346 gtk_container_add(GTK_CONTAINER(aliasdlg), vbox);
3458 gtk_container_set_border_width(GTK_CONTAINER(aliasdlg), 5); 3347 gtk_container_set_border_width(GTK_CONTAINER(aliasdlg), 5);
3459 gtk_widget_realize(aliasdlg); 3348 gtk_widget_realize(aliasdlg);
3460 3349
3461 gtk_widget_show(aliasdlg); 3350 gtk_widget_show_all(aliasdlg);
3462 } 3351 }
3463 3352
3464 3353
3465 static gboolean dont_destroy(gpointer a, gpointer b, gpointer c) 3354 static gboolean dont_destroy(gpointer a, gpointer b, gpointer c)
3466 { 3355 {
3585 hsep = gtk_hseparator_new(); 3474 hsep = gtk_hseparator_new();
3586 gtk_box_pack_start(GTK_BOX(box), hsep, FALSE, FALSE, 0); 3475 gtk_box_pack_start(GTK_BOX(box), hsep, FALSE, FALSE, 0);
3587 3476
3588 hbox = gtk_hbox_new(FALSE, 0); 3477 hbox = gtk_hbox_new(FALSE, 0);
3589 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); 3478 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0);
3590 gtk_widget_show(hbox); 3479
3591 3480 button = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
3592 button = picture_button(window, _("Okay"), ok_xpm);
3593 g_object_set_data(G_OBJECT(button), "log_window", g_object_get_data(G_OBJECT(w), 3481 g_object_set_data(G_OBJECT(button), "log_window", g_object_get_data(G_OBJECT(w),
3594 "log_window")); 3482 "log_window"));
3595 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_clear_log_file), name); 3483 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_clear_log_file), name);
3596 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window); 3484 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window);
3597 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5); 3485 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
3598 gtk_widget_show(button); 3486
3599 3487 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
3600 button = picture_button(window, _("Cancel"), cancel_xpm);
3601 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window); 3488 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window);
3602 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5); 3489 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
3603 gtk_widget_show(button);
3604 3490
3605 gtk_widget_show_all(window); 3491 gtk_widget_show_all(window);
3606 3492
3607 return; 3493 return;
3608 } 3494 }
3883 gaim_setup_imhtml(layout); 3769 gaim_setup_imhtml(layout);
3884 3770
3885 gtk_box_pack_start(GTK_BOX(box), bbox, FALSE, FALSE, 0); 3771 gtk_box_pack_start(GTK_BOX(box), bbox, FALSE, FALSE, 0);
3886 gtk_widget_set_sensitive(bbox, FALSE); 3772 gtk_widget_set_sensitive(bbox, FALSE);
3887 3773
3888 close_button = picture_button(window, _("Close"), cancel_xpm); 3774 close_button = gaim_pixbuf_button_from_stock(_("Close"), GTK_STOCK_CLOSE, GAIM_BUTTON_HORIZONTAL);
3889 gtk_box_pack_end(GTK_BOX(bbox), close_button, FALSE, FALSE, 5); 3775 gtk_box_pack_end(GTK_BOX(bbox), close_button, FALSE, FALSE, 5);
3890 g_signal_connect(GTK_OBJECT(close_button), "clicked", G_CALLBACK(destroy_dialog), window); 3776 g_signal_connect(GTK_OBJECT(close_button), "clicked", G_CALLBACK(destroy_dialog), window);
3891 3777
3892 clear_button = picture_button(window, _("Clear"), close_xpm); 3778 clear_button = gaim_pixbuf_button_from_stock(_("Clear"), GTK_STOCK_CLEAR, GAIM_BUTTON_HORIZONTAL);
3893 g_object_set_data(G_OBJECT(clear_button), "log_window", window); 3779 g_object_set_data(G_OBJECT(clear_button), "log_window", window);
3894 gtk_box_pack_end(GTK_BOX(bbox), clear_button, FALSE, FALSE, 5); 3780 gtk_box_pack_end(GTK_BOX(bbox), clear_button, FALSE, FALSE, 5);
3895 g_signal_connect(GTK_OBJECT(clear_button), "clicked", G_CALLBACK(show_clear_log), name); 3781 g_signal_connect(GTK_OBJECT(clear_button), "clicked", G_CALLBACK(show_clear_log), name);
3896 3782
3897 save_button = picture_button(window, _("Save"), save_xpm); 3783 save_button = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL);
3898 gtk_box_pack_end(GTK_BOX(bbox), save_button, FALSE, FALSE, 5); 3784 gtk_box_pack_end(GTK_BOX(bbox), save_button, FALSE, FALSE, 5);
3899 g_signal_connect(GTK_OBJECT(save_button), "clicked", G_CALLBACK(show_save_log), name); 3785 g_signal_connect(GTK_OBJECT(save_button), "clicked", G_CALLBACK(show_save_log), name);
3900 3786
3901 gtk_widget_show_all(window); 3787 gtk_widget_show_all(window);
3902 3788
3965 { 3851 {
3966 3852
3967 GtkWidget *hbox, *vbox; 3853 GtkWidget *hbox, *vbox;
3968 GtkWidget *label; 3854 GtkWidget *label;
3969 struct gaim_gtk_buddy_list *gtkblist; 3855 struct gaim_gtk_buddy_list *gtkblist;
3970 char *filename = g_build_filename(DATADIR, "pixmaps", "gaim", "dialogs", "gaim_question.png", NULL); 3856 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
3971 GtkWidget *img = gtk_image_new_from_file(filename);
3972 GtkWidget *name_entry = NULL; 3857 GtkWidget *name_entry = NULL;
3973
3974 g_free(filename);
3975 3858
3976 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); 3859 gtkblist = GAIM_GTK_BLIST(gaim_get_blist());
3977 3860
3978 if (!rename_dialog) { 3861 if (!rename_dialog) {
3979 rename_dialog = gtk_dialog_new_with_buttons(_("Rename Group"), GTK_WINDOW(gtkblist->window), GTK_DIALOG_MODAL, 3862 rename_dialog = gtk_dialog_new_with_buttons(_("Rename Group"), GTK_WINDOW(gtkblist->window), GTK_DIALOG_MODAL,
4097 gtk_widget_grab_focus(name_entry); 3980 gtk_widget_grab_focus(name_entry);
4098 3981
4099 bbox = gtk_hbox_new(FALSE, 5); 3982 bbox = gtk_hbox_new(FALSE, 5);
4100 gtk_box_pack_start(GTK_BOX(mainbox), bbox, FALSE, FALSE, 0); 3983 gtk_box_pack_start(GTK_BOX(mainbox), bbox, FALSE, FALSE, 0);
4101 3984
4102 button = picture_button(rename_bud_dialog, _("OK"), ok_xpm); 3985 button = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL);
4103 g_object_set_data(G_OBJECT(button), "buddy", b); 3986 g_object_set_data(G_OBJECT(button), "buddy", b);
4104 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 3987 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
4105 g_signal_connect(GTK_OBJECT(button), "clicked", 3988 g_signal_connect(GTK_OBJECT(button), "clicked",
4106 G_CALLBACK(do_rename_buddy), name_entry); 3989 G_CALLBACK(do_rename_buddy), name_entry);
4107 3990
4108 button = picture_button(rename_bud_dialog, _("Cancel"), cancel_xpm); 3991 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
4109 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); 3992 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
4110 g_signal_connect(GTK_OBJECT(button), "clicked", 3993 g_signal_connect(GTK_OBJECT(button), "clicked",
4111 G_CALLBACK(destroy_dialog), rename_bud_dialog); 3994 G_CALLBACK(destroy_dialog), rename_bud_dialog);
4112 } 3995 }
4113 3996
4131 4014
4132 gtk_widget_show_all(bbox); 4015 gtk_widget_show_all(bbox);
4133 return button; 4016 return button;
4134 } 4017 }
4135 4018
4136 GtkWidget *gaim_pixbuf_toolbar_button_from_file(char *icon)
4137 {
4138 GtkWidget *button, *image, *bbox;
4139 char *filename;
4140
4141 if (!icon)
4142 return NULL;
4143
4144 button = gtk_toggle_button_new();
4145 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
4146
4147 bbox = gtk_vbox_new(FALSE, 0);
4148
4149 gtk_container_add (GTK_CONTAINER(button), bbox);
4150
4151 filename = g_build_filename (DATADIR, "pixmaps", "gaim", "buttons", icon, NULL);
4152 debug_printf("Loading: %s\n", filename);
4153 image = gtk_image_new_from_file(filename);
4154 g_free(filename);
4155
4156 gtk_box_pack_start(GTK_BOX(bbox), image, FALSE, FALSE, 0);
4157
4158 gtk_widget_show_all(bbox);
4159 return button;
4160 }
4161
4162
4163 GtkWidget * 4019 GtkWidget *
4164 gaim_pixbuf_button_from_stock(const char *text, const char *icon, 4020 gaim_pixbuf_button_from_stock(const char *text, const char *icon,
4165 GaimButtonStyle style) 4021 GaimButtonStyle style)
4166 { 4022 {
4167 GtkWidget *button, *image, *label, *bbox; 4023 GtkWidget *button, *image, *label, *bbox, *ibox, *lbox;
4168 button = gtk_button_new(); 4024 button = gtk_button_new();
4169 4025
4170 if (style == GAIM_BUTTON_HORIZONTAL) 4026 if (style == GAIM_BUTTON_HORIZONTAL) {
4171 bbox = gtk_hbox_new(FALSE, 5); 4027 bbox = gtk_hbox_new(FALSE, 5);
4172 else 4028 ibox = gtk_hbox_new(FALSE, 0);
4173 bbox = gtk_vbox_new(FALSE, 0); 4029 lbox = gtk_hbox_new(FALSE, 0);
4030 } else {
4031 bbox = gtk_vbox_new(FALSE, 5);
4032 ibox = gtk_vbox_new(FALSE, 0);
4033 lbox = gtk_vbox_new(FALSE, 0);
4034 }
4174 4035
4175 gtk_container_add (GTK_CONTAINER(button), bbox); 4036 gtk_container_add (GTK_CONTAINER(button), bbox);
4037
4038 gtk_box_pack_start_defaults(GTK_BOX(bbox), ibox);
4039 gtk_box_pack_start_defaults(GTK_BOX(bbox), lbox);
4176 4040
4177 if (icon) { 4041 if (icon) {
4178 image = gtk_image_new_from_stock(icon, GTK_ICON_SIZE_BUTTON); 4042 image = gtk_image_new_from_stock(icon, GTK_ICON_SIZE_BUTTON);
4179 gtk_box_pack_start(GTK_BOX(bbox), image, FALSE, FALSE, 0); 4043 gtk_box_pack_end(GTK_BOX(ibox), image, FALSE, FALSE, 0);
4180 } 4044 }
4181 4045
4182 if (text) { 4046 if (text) {
4183 label = gtk_label_new(NULL); 4047 label = gtk_label_new(NULL);
4184 gtk_label_set_text_with_mnemonic(GTK_LABEL(label), text); 4048 gtk_label_set_text_with_mnemonic(GTK_LABEL(label), text);
4185 gtk_label_set_mnemonic_widget(GTK_LABEL(label), button); 4049 gtk_label_set_mnemonic_widget(GTK_LABEL(label), button);
4186 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 0); 4050 gtk_box_pack_start(GTK_BOX(lbox), label, FALSE, FALSE, 0);
4187 } 4051 }
4188 4052
4189 gtk_widget_show_all(bbox); 4053 gtk_widget_show_all(bbox);
4190 return button; 4054 return button;
4191 } 4055 }
4192 4056
4193 GtkWidget *gaim_pixbuf_button(char *text, char *iconfile, GaimButtonStyle style) 4057 GtkWidget *gaim_pixbuf_button(char *text, char *iconfile, GaimButtonStyle style)
4194 { 4058 {
4195 GtkWidget *button, *image, *label, *bbox; 4059 GtkWidget *button, *image, *label, *bbox, *ibox, *lbox;
4196 button = gtk_button_new(); 4060 button = gtk_button_new();
4197 4061
4198 if (style == GAIM_BUTTON_HORIZONTAL) 4062 if (style == GAIM_BUTTON_HORIZONTAL) {
4199 bbox = gtk_hbox_new(FALSE, 5); 4063 bbox = gtk_hbox_new(FALSE, 5);
4200 else 4064 ibox = gtk_hbox_new(FALSE, 0);
4201 bbox = gtk_vbox_new(FALSE, 0); 4065 lbox = gtk_hbox_new(FALSE, 0);
4066 } else {
4067 bbox = gtk_vbox_new(FALSE, 5);
4068 ibox = gtk_vbox_new(FALSE, 0);
4069 lbox = gtk_vbox_new(FALSE, 0);
4070 }
4202 4071
4203 gtk_container_add (GTK_CONTAINER(button), bbox); 4072 gtk_container_add (GTK_CONTAINER(button), bbox);
4073
4074 gtk_box_pack_start_defaults(GTK_BOX(bbox), ibox);
4075 gtk_box_pack_start_defaults(GTK_BOX(bbox), lbox);
4204 4076
4205 if (iconfile) { 4077 if (iconfile) {
4206 char *filename; 4078 char *filename;
4207 filename = g_build_filename (DATADIR, "pixmaps", "gaim", "buttons", iconfile, NULL); 4079 filename = g_build_filename (DATADIR, "pixmaps", "gaim", "buttons", iconfile, NULL);
4208 debug_printf("Loading: %s\n", filename); 4080 debug_printf("Loading: %s\n", filename);
4209 image = gtk_image_new_from_file(filename); 4081 image = gtk_image_new_from_file(filename);
4210 gtk_box_pack_start(GTK_BOX(bbox), image, FALSE, FALSE, 0); 4082 gtk_box_pack_end(GTK_BOX(ibox), image, FALSE, FALSE, 0);
4211 g_free(filename); 4083 g_free(filename);
4212 } 4084 }
4213 4085
4214 if (text) { 4086 if (text) {
4215 label = gtk_label_new(NULL); 4087 label = gtk_label_new(NULL);
4216 gtk_label_set_text_with_mnemonic(GTK_LABEL(label), text); 4088 gtk_label_set_text_with_mnemonic(GTK_LABEL(label), text);
4217 gtk_label_set_mnemonic_widget(GTK_LABEL(label), button); 4089 gtk_label_set_mnemonic_widget(GTK_LABEL(label), button);
4218 gtk_box_pack_start(GTK_BOX(bbox), label, FALSE, FALSE, 0); 4090 gtk_box_pack_start(GTK_BOX(lbox), label, FALSE, FALSE, 0);
4219 } 4091 }
4092
4220 gtk_widget_show_all(bbox); 4093 gtk_widget_show_all(bbox);
4221 return button;
4222 }
4223
4224 GtkWidget *picture_button(GtkWidget *window, char *text, char **xpm)
4225 {
4226 GtkWidget *button;
4227 GtkWidget *button_box, *button_box_2, *button_box_3;
4228 GtkWidget *label;
4229 GdkBitmap *mask;
4230 GdkPixmap *pm;
4231 GtkWidget *pixmap;
4232
4233 button = gtk_button_new();
4234
4235 button_box = gtk_hbox_new(FALSE, 5);
4236 gtk_container_add(GTK_CONTAINER(button), button_box);
4237
4238 button_box_2 = gtk_hbox_new(FALSE, 0);
4239 button_box_3 = gtk_hbox_new(FALSE, 0);
4240 gtk_box_pack_start(GTK_BOX(button_box), button_box_2, TRUE, TRUE, 0);
4241 gtk_box_pack_start(GTK_BOX(button_box), button_box_3, TRUE, TRUE, 0);
4242 pm = gdk_pixmap_create_from_xpm_d(window->window, &mask, NULL, xpm);
4243 pixmap = gtk_image_new_from_pixmap(pm, mask);
4244 gtk_box_pack_end(GTK_BOX(button_box_2), pixmap, FALSE, FALSE, 0);
4245
4246 if (text) {
4247 label = gtk_label_new(text);
4248 gtk_box_pack_start(GTK_BOX(button_box_3), label, FALSE, FALSE, 2);
4249 gtk_widget_show(label);
4250 }
4251
4252 gtk_widget_show(pixmap);
4253 gtk_widget_show(button_box_2);
4254 gtk_widget_show(button_box_3);
4255 gtk_widget_show(button_box);
4256
4257 /* this causes clipping on lots of buttons with long text */
4258 /* gtk_widget_set_size_request(button, 75, 30);*/
4259 gtk_widget_show(button);
4260 g_object_unref(G_OBJECT(pm));
4261 g_object_unref(G_OBJECT(mask));
4262
4263 return button;
4264 }
4265
4266 static GtkTooltips *button_tips = NULL;
4267 GtkWidget *picture_button2(GtkWidget *window, char *text, char **xpm, short dispstyle)
4268 {
4269 GtkWidget *button;
4270 GtkWidget *button_box, *button_box_2;
4271 GdkBitmap *mask;
4272 GdkPixmap *pm;
4273 GtkWidget *pixmap;
4274 GtkWidget *label;
4275
4276 if (!button_tips)
4277 button_tips = gtk_tooltips_new();
4278
4279 button = gtk_button_new();
4280
4281 button_box = gtk_hbox_new(FALSE, 0);
4282 gtk_container_add(GTK_CONTAINER(button), button_box);
4283
4284 button_box_2 = gtk_vbox_new(FALSE, 0);
4285
4286 gtk_box_pack_start(GTK_BOX(button_box), button_box_2, TRUE, TRUE, 0);
4287 gtk_widget_show(button_box_2);
4288 gtk_widget_show(button_box);
4289 if (dispstyle == 2 || dispstyle == 0) {
4290 pm = gdk_pixmap_create_from_xpm_d(window->window, &mask, NULL, xpm);
4291 pixmap = gtk_image_new_from_pixmap(pm, mask);
4292 gtk_box_pack_start(GTK_BOX(button_box_2), pixmap, FALSE, FALSE, 0);
4293
4294 gtk_widget_show(pixmap);
4295
4296 g_object_unref(G_OBJECT(pm));
4297 g_object_unref(G_OBJECT(mask));
4298 }
4299
4300 if (dispstyle == 2 || dispstyle == 1) {
4301 label = gtk_label_new(text);
4302 gtk_widget_show(label);
4303 gtk_box_pack_end(GTK_BOX(button_box_2), label, FALSE, FALSE, 0);
4304 }
4305
4306 gtk_tooltips_set_tip(button_tips, button, text, "Gaim");
4307 gtk_widget_show(button);
4308 return button; 4094 return button;
4309 } 4095 }
4310 4096
4311 int file_is_dir(const char *path, GtkWidget *w) 4097 int file_is_dir(const char *path, GtkWidget *w)
4312 { 4098 {
4756 gtk_box_pack_start(GTK_BOX (vbox), b->instructions->label, TRUE, TRUE, 5); 4542 gtk_box_pack_start(GTK_BOX (vbox), b->instructions->label, TRUE, TRUE, 5);
4757 re_show_multi_entry_instr(b->instructions); 4543 re_show_multi_entry_instr(b->instructions);
4758 4544
4759 b->entries_frame = gtk_frame_new(b->entries_title); 4545 b->entries_frame = gtk_frame_new(b->entries_title);
4760 gtk_box_pack_start(GTK_BOX (vbox), b->entries_frame, TRUE, TRUE, 5); 4546 gtk_box_pack_start(GTK_BOX (vbox), b->entries_frame, TRUE, TRUE, 5);
4761 gtk_widget_show(b->entries_frame);
4762 b->entries_table = NULL; 4547 b->entries_table = NULL;
4763 re_show_multi_entry_entries(&(b->entries_table), b->entries_frame, b->multi_entry_items); 4548 re_show_multi_entry_entries(&(b->entries_table), b->entries_frame, b->multi_entry_items);
4764 4549
4765 b->texts_obox = gtk_vbox_new(FALSE, 0); 4550 b->texts_obox = gtk_vbox_new(FALSE, 0);
4766 gtk_box_pack_start(GTK_BOX (vbox), b->texts_obox, TRUE, TRUE, 5); 4551 gtk_box_pack_start(GTK_BOX (vbox), b->texts_obox, TRUE, TRUE, 5);
4767 gtk_widget_show(b->texts_obox);
4768 b->texts_ibox = NULL; 4552 b->texts_ibox = NULL;
4769 re_show_multi_entry_textboxes(&(b->texts_ibox), b->texts_obox, b->multi_text_items); 4553 re_show_multi_entry_textboxes(&(b->texts_ibox), b->texts_obox, b->multi_text_items);
4770 4554
4771 hbox = gtk_hbox_new(FALSE, 0); 4555 hbox = gtk_hbox_new(FALSE, 0);
4772 gtk_box_pack_start(GTK_BOX (vbox), hbox, FALSE, FALSE, 5); 4556 gtk_box_pack_start(GTK_BOX (vbox), hbox, FALSE, FALSE, 5);
4773 gtk_widget_show(hbox); 4557
4774 4558 button = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL);
4775 button = picture_button(b->window, _("Save"), save_xpm);
4776 g_signal_connect(GTK_OBJECT (button), "clicked", 4559 g_signal_connect(GTK_OBJECT (button), "clicked",
4777 G_CALLBACK (b->ok), (gpointer) b); 4560 G_CALLBACK (b->ok), (gpointer) b);
4778 gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5); 4561 gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5);
4779 gtk_widget_show(button); 4562
4780 4563 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL);
4781 button = picture_button(b->window, _("Cancel"), cancel_xpm);
4782 4564
4783 /* Let "destroy handling" (set above) handle cleanup */ 4565 /* Let "destroy handling" (set above) handle cleanup */
4784 g_signal_connect_swapped(GTK_OBJECT (button), "clicked", 4566 g_signal_connect_swapped(GTK_OBJECT (button), "clicked",
4785 G_CALLBACK (gtk_widget_destroy), GTK_OBJECT (b->window)); 4567 G_CALLBACK (gtk_widget_destroy), GTK_OBJECT (b->window));
4786 gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5); 4568 gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5);
4787 gtk_widget_show(button); 4569
4788 4570 gtk_widget_show_all(b->window);
4789 gtk_widget_show(vbox);
4790 gtk_widget_show(b->window);
4791 } 4571 }
4792 4572
4793 4573
4794 /*------------------------------------*/ 4574 /*------------------------------------*/
4795 /* V-Card dialog specific support */ 4575 /* V-Card dialog specific support */