#include "maemo/easysetup/modest-easysetup-country-combo-box.h"
#include "maemo/easysetup/modest-easysetup-provider-combo-box.h"
#include "maemo/easysetup/modest-easysetup-servertype-combo-box.h"
-#include "maemo/easysetup/modest-easysetup-serversecurity-combo-box.h"
-#include "maemo/easysetup/modest-easysetup-secureauth-combo-box.h"
-#include "maemo/easysetup/modest-validating-entry.h"
+#include "widgets/modest-easysetup-serversecurity-combo-box.h"
+#include "widgets/modest-easysetup-secureauth-combo-box.h"
+#include "widgets/modest-validating-entry.h"
+#include <modest-account-mgr-helpers.h>
#include <gtk/gtkbutton.h>
#include <gtk/gtkhbox.h>
#include <gtk/gtkvbox.h>
{
ModestConnectionSpecificSmtpEditWindow *self =
MODEST_CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW (user_data);
- ModestConnectionSpecificSmtpEditWindowPrivate *priv = CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (self);
-
+ ModestConnectionSpecificSmtpEditWindowPrivate *priv =
+ CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (self);
const gint port_number =
easysetup_serversecurity_combo_box_get_active_serversecurity_port (
static void
modest_connection_specific_smtp_edit_window_init (ModestConnectionSpecificSmtpEditWindow *self)
{
- ModestConnectionSpecificSmtpEditWindowPrivate *priv = CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (self);
+ ModestConnectionSpecificSmtpEditWindowPrivate *priv =
+ CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (self);
GtkWidget *box = GTK_DIALOG(self)->vbox; /* gtk_vbox_new (FALSE, 2); */
void
modest_connection_specific_smtp_edit_window_set_connection (
- ModestConnectionSpecificSmtpEditWindow *window, const gchar* iap_id, const gchar* iap_name)
+ ModestConnectionSpecificSmtpEditWindow *window, const gchar* iap_id, const gchar* iap_name,
+ const ModestServerAccountData *data)
{
+ ModestConnectionSpecificSmtpEditWindowPrivate *priv =
+ CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (window);
+
/* This causes a warning because of the %s in the translation, but not in the original string: */
gchar* title = g_strdup_printf (_("mcen_ti_connection_connection_name"), iap_name);
-
gtk_window_set_title (GTK_WINDOW (window), title);
g_free (title);
+
+ if (data)
+ {
+ gtk_entry_set_text (GTK_ENTRY (priv->entry_outgoingserver), data->hostname);
+ gtk_entry_set_text (GTK_ENTRY (priv->entry_user_username), data->username);
+ gtk_entry_set_text (GTK_ENTRY (priv->entry_user_password), data->password);
+
+ easysetup_serversecurity_combo_box_set_active_serversecurity (
+ EASYSETUP_SERVERSECURITY_COMBO_BOX (priv->combo_outgoing_security), data->security);
+
+ easysetup_secureauth_combo_box_set_active_secureauth (
+ EASYSETUP_SECUREAUTH_COMBO_BOX (priv->combo_outgoing_auth), data->secure_auth);
+
+ /* port: */
+ gchar * port_str = g_strdup_printf ("%d", data->port);
+ gtk_entry_set_text (GTK_ENTRY (priv->entry_port), port_str);
+ g_free (port_str);
+ }
}
+/*
+ * The result must be freed with modest_account_mgr_free_server_account_data(). */
+ModestServerAccountData*
+modest_connection_specific_smtp_edit_window_get_settings (
+ ModestConnectionSpecificSmtpEditWindow *window,
+ ModestAccountMgr *account_manager, const gchar* server_account_name)
+{
+ ModestConnectionSpecificSmtpEditWindowPrivate *priv =
+ CONNECTION_SPECIFIC_SMTP_EDIT_WINDOW_GET_PRIVATE (window);
+
+ g_assert (server_account_name);
+
+ /* Use g_slice_new0(), because that's what modest_account_mgr_free_server_account_data()
+ * expects us to use. */
+ ModestServerAccountData *result = g_slice_new0 (ModestServerAccountData);
+
+ result->hostname = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->entry_outgoingserver)));
+ result->username = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->entry_user_username)));
+ result->password = g_strdup (gtk_entry_get_text (GTK_ENTRY (priv->entry_user_password)));
+
+ result->security = easysetup_serversecurity_combo_box_get_active_serversecurity (
+ EASYSETUP_SERVERSECURITY_COMBO_BOX (priv->combo_outgoing_security));
+
+ result->secure_auth = easysetup_secureauth_combo_box_get_active_secureauth (
+ EASYSETUP_SECUREAUTH_COMBO_BOX (priv->combo_outgoing_auth));
+
+ /* port: */
+ const gchar * port_str = gtk_entry_get_text (GTK_ENTRY (priv->entry_port));
+ if (port_str)
+ result->port = atoi (port_str);
+
+ return result;
+}