From f5ab7142647eaee7b701bc49bc8ce1ba0f3455fb Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Mon, 5 Feb 2001 21:06:54 +0000 Subject: Keep track of the CheckSettings check boxes. (transport_next): Connect if 2001-02-05 Jeffrey Stedfast * mail-config-druid.c (construct): Keep track of the CheckSettings check boxes. (transport_next): Connect if the user says so. (incoming_next): Same. Also, don't jump to the next page if test-settings fails. svn path=/trunk/; revision=7984 --- mail/ChangeLog | 8 ++++++ mail/mail-config-druid.c | 17 +++++++----- mail/mail-config-druid.h | 2 ++ mail/mail-config.glade | 71 ++++++++++++++++++++++++------------------------ mail/mail-config.glade.h | 2 ++ 5 files changed, 57 insertions(+), 43 deletions(-) (limited to 'mail') diff --git a/mail/ChangeLog b/mail/ChangeLog index bc327f4be9..11c6df36e7 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,11 @@ +2001-02-05 Jeffrey Stedfast + + * mail-config-druid.c (construct): Keep track of the CheckSettings + check boxes. + (transport_next): Connect if the user says so. + (incoming_next): Same. Also, don't jump to the next page if + test-settings fails. + 2001-02-05 Jeffrey Stedfast * mail-config-druid.c (incoming_next): Updated to not connect when diff --git a/mail/mail-config-druid.c b/mail/mail-config-druid.c index 5547f8791a..4e164cccbc 100644 --- a/mail/mail-config-druid.c +++ b/mail/mail-config-druid.c @@ -333,6 +333,7 @@ incoming_next (GnomeDruidPage *page, GnomeDruid *druid, gpointer data) GtkWidget *transport_page; GList *authtypes = NULL; gchar *source_url; + gboolean connect; CamelURL *url; config->have_auth_page = TRUE; @@ -353,8 +354,10 @@ incoming_next (GnomeDruidPage *page, GnomeDruid *druid, gpointer data) url = camel_url_new (source_url, NULL); g_free (source_url); + connect = GTK_TOGGLE_BUTTON (config->incoming_check_settings)->active; + /* If we can't connect, warn them and continue on to the Transport page. */ - if (!mail_config_check_service (url, CAMEL_PROVIDER_STORE, FALSE, &authtypes)) { + if (!mail_config_check_service (url, CAMEL_PROVIDER_STORE, connect, &authtypes)) { GtkWidget *dialog; char *source, *warning; @@ -370,11 +373,6 @@ incoming_next (GnomeDruidPage *page, GnomeDruid *druid, gpointer data) gnome_dialog_run_and_close (GNOME_DIALOG (dialog)); - /* Skip to transport page. */ - config->have_auth_page = FALSE; - transport_page = glade_xml_get_widget (config->gui, "druidTransportPage"); - gnome_druid_set_page (config->druid, GNOME_DRUID_PAGE (transport_page)); - return TRUE; } camel_url_free (url); @@ -627,6 +625,7 @@ static gboolean transport_next (GnomeDruidPage *page, GnomeDruid *druid, gpointer data) { MailConfigDruid *config = data; + gboolean connect; gchar *xport_url; CamelURL *url; @@ -634,8 +633,10 @@ transport_next (GnomeDruidPage *page, GnomeDruid *druid, gpointer data) url = camel_url_new (xport_url, NULL); g_free (xport_url); + connect = GTK_TOGGLE_BUTTON (config->outgoing_check_settings)->active; + /* If we can't connect, don't let them continue. */ - if (!mail_config_check_service (url, CAMEL_PROVIDER_TRANSPORT, FALSE, NULL)) { + if (!mail_config_check_service (url, CAMEL_PROVIDER_TRANSPORT, connect, NULL)) { GtkWidget *dialog; char *transport, *warning; @@ -1045,6 +1046,7 @@ construct (MailConfigDruid *druid) druid->incoming_path = GTK_ENTRY (glade_xml_get_widget (gui, "txtIncomingPath")); gtk_signal_connect (GTK_OBJECT (druid->incoming_path), "changed", incoming_changed, druid); druid->incoming_keep_mail = GTK_CHECK_BUTTON (glade_xml_get_widget (gui, "chkIncomingKeepMail")); + druid->incoming_check_settings = GTK_CHECK_BUTTON (glade_xml_get_widget (gui, "chkIncomingCheckSettings")); druid->have_auth_page = TRUE; druid->auth_text = glade_xml_get_widget (gui, "htmlAuthentication"); @@ -1059,6 +1061,7 @@ construct (MailConfigDruid *druid) druid->outgoing_hostname = GTK_ENTRY (glade_xml_get_widget (gui, "txtTransportHostname")); gtk_signal_connect (GTK_OBJECT (druid->outgoing_hostname), "changed", transport_changed, druid); druid->outgoing_requires_auth = GTK_CHECK_BUTTON (glade_xml_get_widget (gui, "chkTransportNeedsAuth")); + druid->outgoing_check_settings = GTK_CHECK_BUTTON (glade_xml_get_widget (gui, "chkOutgoingCheckSettings")); set_defaults (druid); diff --git a/mail/mail-config-druid.h b/mail/mail-config-druid.h index 9dc3d6dd8e..836e00a6ae 100644 --- a/mail/mail-config-druid.h +++ b/mail/mail-config-druid.h @@ -69,6 +69,7 @@ struct _MailConfigDruid { GtkEntry *incoming_username; GtkEntry *incoming_path; GtkCheckButton *incoming_keep_mail; + GtkCheckButton *incoming_check_settings; /* authentication */ gboolean have_auth_page; @@ -82,6 +83,7 @@ struct _MailConfigDruid { GtkOptionMenu *outgoing_type; GtkEntry *outgoing_hostname; GtkCheckButton *outgoing_requires_auth; + GtkCheckButton *outgoing_check_settings; const CamelProvider *source_provider; const CamelProvider *transport_provider; diff --git a/mail/mail-config.glade b/mail/mail-config.glade index 3573488b83..9f481a8adb 100644 --- a/mail/mail-config.glade +++ b/mail/mail-config.glade @@ -697,47 +697,31 @@ Click "Next" to begin. - GtkHBox - hbox9 - False - 0 + GtkCheckButton + chkIncomingKeepMail + True + + False + True 0 False - True + False + - - GtkCheckButton - chkIncomingKeepMail - 3 - True - - True - True - - 2 - False - False - - - - - GtkHButtonBox - hbuttonbox1 - GTK_BUTTONBOX_END - 30 - 85 - 27 - 7 - 0 - - 0 - False - True - GTK_PACK_END - - + + GtkCheckButton + chkIncomingCheckSettings + True + + True + True + + 0 + False + False + @@ -1179,6 +1163,21 @@ Click "Next" to begin. False + + + GtkCheckButton + chkOutgoingCheckSettings + 3 + True + + True + True + + 0 + False + False + + diff --git a/mail/mail-config.glade.h b/mail/mail-config.glade.h index 23c8adca0a..f5660ebe7c 100644 --- a/mail/mail-config.glade.h +++ b/mail/mail-config.glade.h @@ -23,6 +23,7 @@ gchar *s = N_("Host:"); gchar *s = N_("Username:"); gchar *s = N_("Path:"); gchar *s = N_("Keep mail on server"); +gchar *s = N_("Check settings"); gchar *s = N_("Authentication"); gchar *s = N_("Authentication"); gchar *s = N_("Authentication Type:"); @@ -33,6 +34,7 @@ gchar *s = N_("Server Type: "); gchar *s = N_("Server Configuration"); gchar *s = N_("Host:"); gchar *s = N_("Server requires authentication"); +gchar *s = N_("Check settings"); gchar *s = N_("Account Management"); gchar *s = N_("Account Information"); gchar *s = N_("Name:"); -- cgit v1.2.3