Mercurial > pidgin
comparison src/dialogs.c @ 1805:caa605e70917
[gaim-migrate @ 1815]
i have that sting song, the one they play in the mercedes commercial, stuck in my head. what the hell are the words to that song.
committer: Tailor Script <tailor@pidgin.im>
| author | Eric Warmenhoven <eric@warmenhoven.org> |
|---|---|
| date | Sat, 05 May 2001 10:36:08 +0000 |
| parents | d7cbedd1d651 |
| children | f15d449b3167 |
comparison
equal
deleted
inserted
replaced
| 1804:c7b288ea3892 | 1805:caa605e70917 |
|---|---|
| 794 add_buddy(a->gc, grp, who, whoalias); | 794 add_buddy(a->gc, grp, who, whoalias); |
| 795 serv_add_buddy(a->gc, who); | 795 serv_add_buddy(a->gc, who); |
| 796 } else if (connections) { | 796 } else if (connections) { |
| 797 add_buddy(connections->data, grp, who, whoalias); | 797 add_buddy(connections->data, grp, who, whoalias); |
| 798 serv_add_buddy(connections->data, who); | 798 serv_add_buddy(connections->data, who); |
| 799 a->gc = connections->data; | |
| 799 } | 800 } |
| 800 | 801 |
| 801 if (c != NULL) { | 802 if (c != NULL) { |
| 802 update_buttons_by_protocol(c); | 803 update_buttons_by_protocol(c); |
| 803 } | 804 } |
| 804 | 805 |
| 805 do_export( (GtkWidget *) NULL, 0 ); | 806 do_export(a->gc); |
| 806 | 807 |
| 807 destroy_dialog(NULL, a->window); | 808 destroy_dialog(NULL, a->window); |
| 808 } | 809 } |
| 809 | 810 |
| 810 void do_add_group(GtkWidget *w, struct addbuddy *a) | 811 void do_add_group(GtkWidget *w, struct addbuddy *a) |
| 812 char *grp; | 813 char *grp; |
| 813 | 814 |
| 814 grp = gtk_entry_get_text(GTK_ENTRY(a->entry)); | 815 grp = gtk_entry_get_text(GTK_ENTRY(a->entry)); |
| 815 | 816 |
| 816 if (a->gc) add_group(a->gc, grp); | 817 if (a->gc) add_group(a->gc, grp); |
| 817 else if (connections) add_group(connections->data, grp); | 818 else if (connections) { |
| 818 | 819 add_group(connections->data, grp); |
| 819 do_export( (GtkWidget *) NULL, 0 ); | 820 a->gc = connections->data; |
| 821 } | |
| 822 | |
| 823 do_export(a->gc); | |
| 820 | 824 |
| 821 destroy_dialog(NULL, a->window); | 825 destroy_dialog(NULL, a->window); |
| 822 } | 826 } |
| 823 | 827 |
| 824 | 828 |
| 1818 g_free(n); | 1822 g_free(n); |
| 1819 if (!d) { | 1823 if (!d) { |
| 1820 p->gc->deny = g_slist_append(p->gc->deny, name); | 1824 p->gc->deny = g_slist_append(p->gc->deny, name); |
| 1821 build_block_list(); | 1825 build_block_list(); |
| 1822 serv_add_deny(p->gc, name); | 1826 serv_add_deny(p->gc, name); |
| 1823 do_export(0, 0); | 1827 do_export(p->gc); |
| 1824 } else | 1828 } else |
| 1825 g_free(name); | 1829 g_free(name); |
| 1826 } else { | 1830 } else { |
| 1827 GSList *d = p->gc->permit; | 1831 GSList *d = p->gc->permit; |
| 1828 char *n; | 1832 char *n; |
| 1835 g_free(n); | 1839 g_free(n); |
| 1836 if (!d) { | 1840 if (!d) { |
| 1837 p->gc->permit = g_slist_append(p->gc->permit, name); | 1841 p->gc->permit = g_slist_append(p->gc->permit, name); |
| 1838 build_allow_list(); | 1842 build_allow_list(); |
| 1839 serv_add_permit(p->gc, name); | 1843 serv_add_permit(p->gc, name); |
| 1840 do_export(0, 0); | 1844 do_export(p->gc); |
| 1841 } else | 1845 } else |
| 1842 g_free(name); | 1846 g_free(name); |
| 1843 } | 1847 } |
| 1844 | 1848 |
| 1845 destroy_dialog(NULL, p->window); | 1849 destroy_dialog(NULL, p->window); |
| 2786 } | 2790 } |
| 2787 | 2791 |
| 2788 /* if dummy is 0, save to ~/.gaim/screenname.blist, where screenname is each | 2792 /* if dummy is 0, save to ~/.gaim/screenname.blist, where screenname is each |
| 2789 * signed in user. Else, let user choose */ | 2793 * signed in user. Else, let user choose */ |
| 2790 | 2794 |
| 2791 void do_export(GtkWidget *w, void *dummy) | 2795 void do_export(struct gaim_connection *g) |
| 2792 { | 2796 { |
| 2797 FILE *dir; | |
| 2793 FILE *f; | 2798 FILE *f; |
| 2794 gint show_dialog = (int) dummy; | 2799 char buf[32 * 1024]; |
| 2795 char *buf = g_malloc(BUF_LONG * 2); | |
| 2796 char *file; | 2800 char *file; |
| 2797 char path[PATHSIZE]; | 2801 char path[PATHSIZE]; |
| 2798 | 2802 char *g_screenname; |
| 2803 | |
| 2804 /* | |
| 2799 if ( show_dialog == 1 ) { | 2805 if ( show_dialog == 1 ) { |
| 2800 file = gtk_file_selection_get_filename(GTK_FILE_SELECTION(exportdialog)); | 2806 file = gtk_file_selection_get_filename(GTK_FILE_SELECTION(exportdialog)); |
| 2801 strncpy( path, file, PATHSIZE - 1 ); | 2807 strncpy( path, file, PATHSIZE - 1 ); |
| 2802 if (file_is_dir(path, exportdialog)) { | 2808 if (file_is_dir(path, exportdialog)) { |
| 2803 g_free (buf); | |
| 2804 return; | 2809 return; |
| 2805 } | 2810 } |
| 2806 if ((f = fopen(path,"w"))) { | 2811 if ((f = fopen(path,"w"))) { |
| 2807 toc_build_config(connections->data, buf, 8192 - 1, TRUE); | 2812 toc_build_config(connections->data, buf, 8192 - 1, TRUE); |
| 2808 fprintf(f, "%s\n", buf); | 2813 fprintf(f, "%s\n", buf); |
| 2813 do_error_dialog(buf, _("Error")); | 2818 do_error_dialog(buf, _("Error")); |
| 2814 } | 2819 } |
| 2815 destroy_dialog(NULL, exportdialog); | 2820 destroy_dialog(NULL, exportdialog); |
| 2816 exportdialog = NULL; | 2821 exportdialog = NULL; |
| 2817 } else { | 2822 } else { |
| 2818 GSList *c = connections; | 2823 */ |
| 2819 struct gaim_connection *g; | 2824 |
| 2820 char *g_screenname; | 2825 file = gaim_user_dir(); |
| 2821 | 2826 if (!file) return; |
| 2822 file = gaim_user_dir(); | 2827 |
| 2823 if ( file != (char *) NULL ) { | 2828 strcpy(buf, file); |
| 2824 FILE *dir; | 2829 dir = fopen(buf, "r"); |
| 2825 strcpy(buf, file); | 2830 if (!dir) |
| 2826 dir = fopen(buf, "r"); | 2831 mkdir(buf, S_IRUSR | S_IWUSR | S_IXUSR); |
| 2827 if (!dir) | 2832 else |
| 2828 mkdir(buf, S_IRUSR | S_IWUSR | S_IXUSR); | 2833 fclose(dir); |
| 2829 else | 2834 |
| 2830 fclose(dir); | 2835 g_screenname = get_screenname_filename(g->username); |
| 2831 | 2836 |
| 2832 while (c) { | 2837 sprintf(path, "%s/%s.%d.blist", file, g_screenname, |
| 2833 g = (struct gaim_connection *)c->data; | 2838 (g->protocol == PROTO_OSCAR) ? PROTO_TOC : g->protocol); |
| 2834 | 2839 if ((f = fopen(path,"w"))) { |
| 2835 g_screenname = get_screenname_filename(g->username); | 2840 debug_printf("writing %s\n", path); |
| 2836 | 2841 toc_build_config(g, buf, 8192 - 1, TRUE); |
| 2837 sprintf(path, "%s/%s.%d.blist", file, g_screenname, | 2842 fprintf(f, "%s\n", buf); |
| 2838 (g->protocol == PROTO_OSCAR) ? PROTO_TOC : g->protocol); | 2843 fclose(f); |
| 2839 if ((f = fopen(path,"w"))) { | 2844 chmod(buf, S_IRUSR | S_IWUSR); |
| 2840 debug_printf("writing %s\n", path); | 2845 } else { |
| 2841 toc_build_config(g, buf, 8192 - 1, TRUE); | 2846 debug_printf("unable to write %s\n", path); |
| 2842 fprintf(f, "%s\n", buf); | 2847 } |
| 2843 fclose(f); | 2848 |
| 2844 chmod(buf, S_IRUSR | S_IWUSR); | 2849 g_free(g_screenname); |
| 2845 } else { | 2850 g_free(file); |
| 2846 debug_printf("unable to write %s\n", path); | 2851 } |
| 2847 } | 2852 |
| 2848 | 2853 |
| 2849 g_free(g_screenname); | 2854 /* |
| 2850 | |
| 2851 c = c->next; | |
| 2852 } | |
| 2853 g_free(file); | |
| 2854 } else return; | |
| 2855 } | |
| 2856 | |
| 2857 g_free(buf); | |
| 2858 | |
| 2859 } | |
| 2860 | |
| 2861 | |
| 2862 void show_export_dialog() | 2855 void show_export_dialog() |
| 2863 { | 2856 { |
| 2864 char *buf = g_malloc(BUF_LEN); | 2857 char *buf = g_malloc(BUF_LEN); |
| 2865 if (!exportdialog) { | 2858 if (!exportdialog) { |
| 2866 exportdialog = gtk_file_selection_new(_("Gaim - Export Buddy List")); | 2859 exportdialog = gtk_file_selection_new(_("Gaim - Export Buddy List")); |
| 2885 | 2878 |
| 2886 gtk_widget_show(exportdialog); | 2879 gtk_widget_show(exportdialog); |
| 2887 gdk_window_raise(exportdialog->window); | 2880 gdk_window_raise(exportdialog->window); |
| 2888 | 2881 |
| 2889 } | 2882 } |
| 2883 */ | |
| 2890 | 2884 |
| 2891 /* if gc is non-NULL, then import from ~/.gaim/gc->username.blist, else let user | 2885 /* if gc is non-NULL, then import from ~/.gaim/gc->username.blist, else let user |
| 2892 choose */ | 2886 choose */ |
| 2893 | 2887 |
| 2894 void do_import(GtkWidget *w, struct gaim_connection *gc) | 2888 void do_import(GtkWidget *w, struct gaim_connection *gc) |
| 2990 fclose( f ); | 2984 fclose( f ); |
| 2991 | 2985 |
| 2992 if ( from_dialog ) { | 2986 if ( from_dialog ) { |
| 2993 /* save what we just did to cache */ | 2987 /* save what we just did to cache */ |
| 2994 | 2988 |
| 2995 do_export( (GtkWidget *) NULL, 0 ); | 2989 do_export(gc); |
| 2996 destroy_dialog(NULL, importdialog); | 2990 destroy_dialog(NULL, importdialog); |
| 2997 importdialog = NULL; | 2991 importdialog = NULL; |
| 2998 } | 2992 } |
| 2999 | 2993 |
| 3000 g_free(buf); | 2994 g_free(buf); |
| 3389 static void do_alias_bud(GtkWidget *w, struct buddy *b) | 3383 static void do_alias_bud(GtkWidget *w, struct buddy *b) |
| 3390 { | 3384 { |
| 3391 char *al = gtk_entry_get_text(GTK_ENTRY(aliasname)); | 3385 char *al = gtk_entry_get_text(GTK_ENTRY(aliasname)); |
| 3392 g_snprintf(b->show, sizeof(b->show), "%s", (al && strlen(al)) ? al : b->name); | 3386 g_snprintf(b->show, sizeof(b->show), "%s", (al && strlen(al)) ? al : b->name); |
| 3393 handle_buddy_rename(b, b->name); | 3387 handle_buddy_rename(b, b->name); |
| 3394 do_export(0, 0); | 3388 do_export(b->gc); |
| 3395 destroy_dialog(aliasdlg, aliasdlg); | 3389 destroy_dialog(aliasdlg, aliasdlg); |
| 3396 } | 3390 } |
| 3397 | 3391 |
| 3398 void alias_dialog_bud(struct buddy *b) | 3392 void alias_dialog_bud(struct buddy *b) |
| 3399 { | 3393 { |
| 3791 prevname = g_strdup(g->name); | 3785 prevname = g_strdup(g->name); |
| 3792 g_snprintf(g->name, sizeof(g->name), "%s", new_name); | 3786 g_snprintf(g->name, sizeof(g->name), "%s", new_name); |
| 3793 handle_group_rename(g, prevname); | 3787 handle_group_rename(g, prevname); |
| 3794 g_free(prevname); | 3788 g_free(prevname); |
| 3795 } | 3789 } |
| 3796 do_export(0, 0); | 3790 do_export(g->gc); |
| 3797 } | 3791 } |
| 3798 | 3792 |
| 3799 destroy_dialog(rename_dialog, rename_dialog); | 3793 destroy_dialog(rename_dialog, rename_dialog); |
| 3800 } | 3794 } |
| 3801 | 3795 |
