From 8dc8912c82789e6cd205d92667366a3008c601d3 Mon Sep 17 00:00:00 2001 From: Jose Dapena Paz Date: Tue, 17 Nov 2009 17:57:56 +0100 Subject: [PATCH] Use server security selector in connection specific smtp dialog. --- .../modest-connection-specific-smtp-edit-window.c | 73 ++++++++++++-------- src/widgets/modest-toolkit-factory.c | 4 +- 2 files changed, 45 insertions(+), 32 deletions(-) diff --git a/src/hildon2/modest-connection-specific-smtp-edit-window.c b/src/hildon2/modest-connection-specific-smtp-edit-window.c index 077240e..32c2c45 100644 --- a/src/hildon2/modest-connection-specific-smtp-edit-window.c +++ b/src/hildon2/modest-connection-specific-smtp-edit-window.c @@ -32,7 +32,6 @@ #include "modest-hildon-includes.h" #include "modest-runtime.h" -#include "modest-serversecurity-picker.h" #include "modest-secureauth-picker.h" #include "widgets/modest-validating-entry.h" #include @@ -44,6 +43,7 @@ #include #include "modest-text-utils.h" #include "modest-maemo-utils.h" +#include #include @@ -67,7 +67,7 @@ struct _ModestConnectionSpecificSmtpEditWindowPrivate GtkWidget *outgoing_auth_picker; GtkWidget *entry_user_username; GtkWidget *entry_user_password; - GtkWidget *outgoing_security_picker; + GtkWidget *outgoing_security_selector; GtkWidget *entry_port; GtkWidget *button_ok; @@ -286,11 +286,10 @@ on_set_focus_child (GtkContainer *container, GtkWidget *widget, gpointer user_da } static void -security_picker_set_port (ModestConnectionSpecificSmtpEditWindowPrivate *priv) +security_selector_set_port (ModestConnectionSpecificSmtpEditWindowPrivate *priv) { const gint port_number = - modest_serversecurity_picker_get_active_serversecurity_port ( - MODEST_SERVERSECURITY_PICKER (priv->outgoing_security_picker)); + modest_serversecurity_selector_get_active_serversecurity_port (priv->outgoing_security_selector); if(port_number != 0) { modest_number_entry_set_value ( @@ -299,7 +298,7 @@ security_picker_set_port (ModestConnectionSpecificSmtpEditWindowPrivate *priv) } static void -on_security_picker_changed (HildonPickerButton *widget, gpointer user_data) +on_security_selector_changed (GtkWidget *widget, gpointer user_data) { ModestConnectionSpecificSmtpEditWindow *self = MODEST_CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW (user_data); @@ -309,7 +308,7 @@ on_security_picker_changed (HildonPickerButton *widget, gpointer user_data) on_change(GTK_WIDGET(widget), self); /* Enable/disable username and password fields */ - security_picker_set_port (priv); + security_selector_set_port (priv); } static void @@ -439,19 +438,26 @@ modest_connection_specific_smtp_edit_window_init (ModestConnectionSpecificSmtpEd gtk_widget_show (captioned); /* The secure connection widgets: */ - if (!priv->outgoing_security_picker) - priv->outgoing_security_picker = - GTK_WIDGET (modest_serversecurity_picker_new (MODEST_EDITABLE_SIZE, - HILDON_BUTTON_ARRANGEMENT_HORIZONTAL)); - modest_serversecurity_picker_fill ( - MODEST_SERVERSECURITY_PICKER (priv->outgoing_security_picker), MODEST_PROTOCOLS_TRANSPORT_SMTP); - modest_serversecurity_picker_set_active_serversecurity ( - MODEST_SERVERSECURITY_PICKER (priv->outgoing_security_picker), MODEST_PROTOCOLS_CONNECTION_NONE); - modest_maemo_utils_set_hbutton_layout (title_sizegroup, value_sizegroup, - _("mcen_li_emailsetup_secure_connection"), - priv->outgoing_security_picker); - gtk_widget_show (priv->outgoing_security_picker); - gtk_box_pack_start (GTK_BOX (vbox), priv->outgoing_security_picker, FALSE, FALSE, 0); + if (!priv->outgoing_security_selector) + priv->outgoing_security_selector = + modest_toolkit_factory_create_serversecurity_selector (modest_runtime_get_toolkit_factory ()); + modest_serversecurity_selector_fill (priv->outgoing_security_selector, MODEST_PROTOCOLS_TRANSPORT_SMTP); + modest_serversecurity_selector_set_active_serversecurity (priv->outgoing_security_selector, MODEST_PROTOCOLS_CONNECTION_NONE); + if (GTK_IS_COMBO_BOX (priv->outgoing_security_selector)) { + GtkWidget *captioned; + + captioned = modest_maemo_utils_create_captioned (title_sizegroup, value_sizegroup, + _("mcen_li_emailsetup_secure_connection"), FALSE, + priv->outgoing_security_selector); + gtk_box_pack_start (GTK_BOX (vbox), captioned, FALSE, FALSE, MODEST_MARGIN_HALF); + gtk_widget_show (captioned); + } else { + modest_maemo_utils_set_hbutton_layout (title_sizegroup, value_sizegroup, + _("mcen_li_emailsetup_secure_connection"), + priv->outgoing_security_selector); + gtk_box_pack_start (GTK_BOX (vbox), priv->outgoing_security_selector, FALSE, FALSE, 0); + } + gtk_widget_show (priv->outgoing_security_selector); /* The port number widgets: */ if (!priv->entry_port) @@ -494,13 +500,20 @@ modest_connection_specific_smtp_edit_window_init (ModestConnectionSpecificSmtpEd /* Refresh view with current settings */ auth_picker_set_sensitive (priv); - security_picker_set_port (priv); + security_selector_set_port (priv); /* Connect signals to track changes */ - g_signal_connect (G_OBJECT (priv->outgoing_security_picker), - "value-changed", - (GCallback) on_security_picker_changed, - self); + if (GTK_IS_COMBO_BOX (priv->outgoing_security_selector)) { + g_signal_connect (G_OBJECT (priv->outgoing_security_selector), + "changed", + (GCallback) on_security_selector_changed, + self); + } else { + g_signal_connect (G_OBJECT (priv->outgoing_security_selector), + "value-changed", + (GCallback) on_security_selector_changed, + self); + } g_signal_connect (G_OBJECT (priv->outgoing_auth_picker), "value-changed", (GCallback) on_auth_picker_changed, @@ -548,9 +561,9 @@ modest_connection_specific_smtp_edit_window_set_connection ( modest_entry_set_text (priv->entry_user_password, modest_server_account_settings_get_password (server_settings)); - modest_serversecurity_picker_set_active_serversecurity ( - MODEST_SERVERSECURITY_PICKER (priv->outgoing_security_picker), - modest_server_account_settings_get_security_protocol (server_settings)); + modest_serversecurity_selector_set_active_serversecurity + (priv->outgoing_security_selector, + modest_server_account_settings_get_security_protocol (server_settings)); modest_secureauth_picker_set_active_secureauth ( MODEST_SECUREAUTH_PICKER (priv->outgoing_auth_picker), @@ -595,8 +608,8 @@ modest_connection_specific_smtp_edit_window_get_settings (ModestConnectionSpecif modest_entry_get_text (priv->entry_user_password)); modest_server_account_settings_set_security_protocol (server_settings, - modest_serversecurity_picker_get_active_serversecurity ( - MODEST_SERVERSECURITY_PICKER (priv->outgoing_security_picker))); + modest_serversecurity_selector_get_active_serversecurity ( + priv->outgoing_security_selector)); modest_server_account_settings_set_auth_protocol (server_settings, modest_secureauth_picker_get_active_secureauth ( MODEST_SECUREAUTH_PICKER (priv->outgoing_auth_picker))); diff --git a/src/widgets/modest-toolkit-factory.c b/src/widgets/modest-toolkit-factory.c index 8266732..506a738 100644 --- a/src/widgets/modest-toolkit-factory.c +++ b/src/widgets/modest-toolkit-factory.c @@ -106,7 +106,7 @@ static GtkWidget * modest_toolkit_factory_create_country_selector_default (M static GtkWidget * modest_toolkit_factory_create_provider_selector_default (ModestToolkitFactory *self); static GtkWidget * modest_toolkit_factory_create_servertype_selector_default (ModestToolkitFactory *self, gboolean filter_providers); -static GtkWidget * modest_toolkit_factory_create_security_selector_default (ModestToolkitFactory *self); +static GtkWidget * modest_toolkit_factory_create_serversecurity_selector_default (ModestToolkitFactory *self); /* globals */ static GObjectClass *parent_class = NULL; @@ -609,7 +609,7 @@ modest_servertype_selector_set_active_servertype (GtkWidget *self, GtkWidget * modest_toolkit_factory_create_serversecurity_selector (ModestToolkitFactory *self) { - return MODEST_TOOLKIT_FACTORY_GET_CLASS (self)->create_servertype_selector (self); + return MODEST_TOOLKIT_FACTORY_GET_CLASS (self)->create_serversecurity_selector (self); } static GtkWidget * -- 1.7.9.5