Mercurial > pidgin
comparison src/gtkaccount.c @ 5697:fc659d75fcf7
[gaim-migrate @ 6118]
Several fixes. Checks for empty strings, and the buddy icon gets set now.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Tue, 03 Jun 2003 09:03:40 +0000 |
parents | 0a20c8e1d2ca |
children | 81d7b4239815 |
comparison
equal
deleted
inserted
replaced
5696:0a20c8e1d2ca | 5697:fc659d75fcf7 |
---|---|
714 g_signal_connect(G_OBJECT(dialog->proxy_dropdown), "changed", | 714 g_signal_connect(G_OBJECT(dialog->proxy_dropdown), "changed", |
715 G_CALLBACK(__proxy_type_changed_cb), dialog); | 715 G_CALLBACK(__proxy_type_changed_cb), dialog); |
716 } | 716 } |
717 | 717 |
718 static void | 718 static void |
719 __cancel_account_prefs_cb(GtkWidget *w, AccountPrefsDialog *dialog) | 719 __account_win_destroy_cb(GtkWidget *w, GdkEvent *event, |
720 AccountPrefsDialog *dialog) | |
720 { | 721 { |
721 if (dialog->user_split_entries != NULL) | 722 if (dialog->user_split_entries != NULL) |
722 g_list_free(dialog->user_split_entries); | 723 g_list_free(dialog->user_split_entries); |
723 | 724 |
724 if (dialog->protocol_opt_entries != NULL) | 725 if (dialog->protocol_opt_entries != NULL) |
725 g_list_free(dialog->protocol_opt_entries); | 726 g_list_free(dialog->protocol_opt_entries); |
726 | 727 |
728 g_free(dialog); | |
729 } | |
730 | |
731 static void | |
732 __cancel_account_prefs_cb(GtkWidget *w, AccountPrefsDialog *dialog) | |
733 { | |
727 gtk_widget_destroy(dialog->window); | 734 gtk_widget_destroy(dialog->window); |
728 | 735 |
729 g_free(dialog); | 736 __account_win_destroy_cb(NULL, NULL, dialog); |
730 } | |
731 | |
732 static void | |
733 __account_win_destroy_cb(GtkWidget *w, GdkEvent *event, | |
734 AccountPrefsDialog *dialog) | |
735 { | |
736 __cancel_account_prefs_cb(NULL, dialog); | |
737 } | 737 } |
738 | 738 |
739 static void | 739 static void |
740 __ok_account_prefs_cb(GtkWidget *w, AccountPrefsDialog *dialog) | 740 __ok_account_prefs_cb(GtkWidget *w, AccountPrefsDialog *dialog) |
741 { | 741 { |
751 screenname = gtk_entry_get_text(GTK_ENTRY(dialog->screenname_entry)); | 751 screenname = gtk_entry_get_text(GTK_ENTRY(dialog->screenname_entry)); |
752 | 752 |
753 dialog->account = gaim_account_new(screenname, dialog->protocol); | 753 dialog->account = gaim_account_new(screenname, dialog->protocol); |
754 } | 754 } |
755 | 755 |
756 if ((value = gtk_entry_get_text(GTK_ENTRY(dialog->alias_entry))) != NULL) | 756 /* Alias */ |
757 value = gtk_entry_get_text(GTK_ENTRY(dialog->alias_entry)); | |
758 | |
759 if (*value != '\0') | |
757 gaim_account_set_alias(dialog->account, value); | 760 gaim_account_set_alias(dialog->account, value); |
758 else | 761 else |
759 gaim_account_set_alias(dialog->account, NULL); | 762 gaim_account_set_alias(dialog->account, NULL); |
760 | 763 |
764 /* Buddy Icon */ | |
765 value = gtk_entry_get_text(GTK_ENTRY(dialog->buddy_icon_entry)); | |
766 | |
767 if ((dialog->prpl_info->options & OPT_PROTO_BUDDY_ICON) && *value != '\0') | |
768 gaim_account_set_buddy_icon(dialog->account, value); | |
769 else | |
770 gaim_account_set_buddy_icon(dialog->account, NULL); | |
771 | |
772 /* Remember Password */ | |
761 gaim_account_set_remember_password(dialog->account, | 773 gaim_account_set_remember_password(dialog->account, |
762 gtk_toggle_button_get_active( | 774 gtk_toggle_button_get_active( |
763 GTK_TOGGLE_BUTTON(dialog->remember_pass_check))); | 775 GTK_TOGGLE_BUTTON(dialog->remember_pass_check))); |
764 | 776 |
777 /* Check Mail */ | |
765 if (dialog->prpl_info->options & OPT_PROTO_MAIL_CHECK) | 778 if (dialog->prpl_info->options & OPT_PROTO_MAIL_CHECK) |
766 gaim_account_set_check_mail(dialog->account, | 779 gaim_account_set_check_mail(dialog->account, |
767 gtk_toggle_button_get_active( | 780 gtk_toggle_button_get_active( |
768 GTK_TOGGLE_BUTTON(dialog->new_mail_check))); | 781 GTK_TOGGLE_BUTTON(dialog->new_mail_check))); |
769 | 782 |
770 /* TODO: Do something about auto-login. */ | 783 /* TODO: Do something about auto-login. */ |
771 | 784 |
772 if (gaim_account_get_remember_password(dialog->account)) | 785 /* Password */ |
773 gaim_account_set_password(dialog->account, | 786 value = gtk_entry_get_text(GTK_ENTRY(dialog->password_entry)); |
774 gtk_entry_get_text(GTK_ENTRY(dialog->password_entry))); | 787 |
788 if (gaim_account_get_remember_password(dialog->account) && *value != '\0') | |
789 gaim_account_set_password(dialog->account, value); | |
775 else | 790 else |
776 gaim_account_set_password(dialog->account, NULL); | 791 gaim_account_set_password(dialog->account, NULL); |
777 | 792 |
778 /* Build the username string. */ | 793 /* Build the username string. */ |
779 username = g_strdup(gaim_account_get_username(dialog->account)); | 794 username = g_strdup(gaim_account_get_username(dialog->account)); |
872 gtk_entry_get_text(GTK_ENTRY(dialog->proxy_user_entry))); | 887 gtk_entry_get_text(GTK_ENTRY(dialog->proxy_user_entry))); |
873 | 888 |
874 gaim_proxy_info_set_password(proxy_info, | 889 gaim_proxy_info_set_password(proxy_info, |
875 gtk_entry_get_text(GTK_ENTRY(dialog->proxy_pass_entry))); | 890 gtk_entry_get_text(GTK_ENTRY(dialog->proxy_pass_entry))); |
876 } | 891 } |
892 | |
893 gtk_widget_destroy(dialog->window); | |
894 | |
895 __account_win_destroy_cb(NULL, NULL, dialog); | |
877 } | 896 } |
878 | 897 |
879 static void | 898 static void |
880 __show_account_prefs(AccountPrefsDialogType type, GaimAccount *account) | 899 __show_account_prefs(AccountPrefsDialogType type, GaimAccount *account) |
881 { | 900 { |