Mercurial > pidgin
diff src/prefs.c @ 705:dcf672c5a1ff
[gaim-migrate @ 715]
remember password button wackiness
committer: Tailor Script <tailor@pidgin.im>
| author | Eric Warmenhoven <eric@warmenhoven.org> |
|---|---|
| date | Thu, 17 Aug 2000 00:00:25 +0000 |
| parents | 056ed55962e0 |
| children | efd72a117875 |
line wrap: on
line diff
--- a/src/prefs.c Wed Aug 16 20:44:39 2000 +0000 +++ b/src/prefs.c Thu Aug 17 00:00:25 2000 +0000 @@ -57,6 +57,7 @@ static GtkWidget *prefdialog = NULL; static GtkWidget *debugbutton = NULL; +static GtkWidget *prefrem = NULL; GtkWidget *prefs_away_list = NULL; static void destdeb(GtkWidget *m, gpointer n) @@ -65,6 +66,12 @@ debugbutton = NULL; } +static void remdes(GtkWidget *m, gpointer n) +{ + gtk_widget_destroy(prefrem); + prefrem = NULL; +} + static void general_page() { GtkWidget *parent; @@ -87,7 +94,8 @@ gtk_box_pack_start(GTK_BOX(box), label, FALSE, FALSE, 5); gtk_widget_show(label); - gaim_button(_("Remember password"), &general_options, OPT_GEN_REMEMBER_PASS, box); + prefrem = gaim_button(_("Remember password"), &general_options, OPT_GEN_REMEMBER_PASS, box); + gtk_signal_connect(GTK_OBJECT(prefrem), "destroy", GTK_SIGNAL_FUNC(remdes), 0); gaim_button(_("Auto-login"), &general_options, OPT_GEN_AUTO_LOGIN, box); sep = gtk_hseparator_new(); @@ -1521,6 +1529,22 @@ if ((int)option == OPT_GEN_LOG_ALL) update_log_convs(); + + if (prefrem) + gtk_signal_handler_block_by_data(GTK_OBJECT(prefrem), (int *)OPT_GEN_REMEMBER_PASS); + if (remember) + gtk_signal_handler_block_by_data(GTK_OBJECT(remember), (int *)OPT_GEN_REMEMBER_PASS); + if (prefrem) + gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(prefrem), + (general_options & OPT_GEN_REMEMBER_PASS)); + if (remember) + gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(remember), + (general_options & OPT_GEN_REMEMBER_PASS)); + if (prefrem) + gtk_signal_handler_unblock_by_data(GTK_OBJECT(prefrem), (int *)OPT_GEN_REMEMBER_PASS); + if (remember) + gtk_signal_handler_unblock_by_data(GTK_OBJECT(remember), (int *)OPT_GEN_REMEMBER_PASS); + save_prefs(); }
