aboutsummaryrefslogtreecommitdiffstats
path: root/mail/component-factory.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@ximian.com>2003-01-18 07:31:27 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2003-01-18 07:31:27 +0800
commite0053bce8e3e5e7f18bea009f3bbfb1e51234f65 (patch)
treeaa2bee9193f6123438c829c326050a4ebd48dc58 /mail/component-factory.c
parent650c61584f8970de2cd9c9915dade6843d386191 (diff)
downloadgsoc2013-evolution-e0053bce8e3e5e7f18bea009f3bbfb1e51234f65.tar.gz
gsoc2013-evolution-e0053bce8e3e5e7f18bea009f3bbfb1e51234f65.tar.zst
gsoc2013-evolution-e0053bce8e3e5e7f18bea009f3bbfb1e51234f65.zip
Updated. (request_password): Same.
2003-01-17 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (do_get_pass): Updated. (request_password): Same. * mail-send-recv.c (mail_send): Fixed to use EAccountService. * mail-config-druid.c (make_account): Updated to use EAccount and friends. * mail-account-gui.c (service_check_supported): Updated to use EAccountService. (mail_account_gui_new): Ref the account passed in and also update to use EAccount objects. (save_service): Updated to use an EAccountService. (add_new_store): Updated to use an EAccount. (mail_account_gui_save): Updated to use EAccounts. (setup_signatures): Updated because the new account->id->def_sig is now an int and not a structure pointer. * mail-account-editor.c (construct): Updated. (mail_account_editor_new): Now takes an EAccount object as an argument instead of a MailConfigAccount. * mail-crypto.c (mail_crypto_get_pgp_cipher_context): Updated to use EAccounts. * subscribe-dialog.c (populate_store_foreach): Removed. (populate_store_list): Can't use populate_store_foreach here because of the change to EAccountList so do it manually. * mail-vfolder.c (uri_is_ignore): Rewrote to use EAccountList and EIterator and all that fun. * mail-send-recv.c (build_dialogue): Updated to use EAccountList and EAccount object stuff. *ugh* (mail_send_receive): Here too. (mail_autoreceive_setup): Same. * mail-callbacks.c (check_send_configuration): Updated. (composer_get_message): Updated. (compose_msg): " (list_add_addresses): " (guess_me): " (guess_me_from_accounts): Same. (forward_get_composer): Here too. (mail_generate_reply): Same. (redirect_get_composer): " (empty_trash): And finally here. * mail-accounts.c (account_edit_clicked): Updated. (account_delete_clicked): Same. (account_default_clicked): Here too. (account_able_clicked): " (account_cursor_change): " (mail_accounts_load): Again here. * folder-browser.c (folder_browser_is_drafts): Updated to use EAccountList and EAccount stuff. (folder_browser_is_sent): Same. * component-factory.c (mail_load_storages): Updated to use EAccount and EAccountList stuff. (owner_set_cb): Same. (send_receive_cb): Here too. * mail-config.c: Rewritten to use EAccount and EAccountList objects. svn path=/trunk/; revision=19509
Diffstat (limited to 'mail/component-factory.c')
-rw-r--r--mail/component-factory.c33
1 files changed, 17 insertions, 16 deletions
diff --git a/mail/component-factory.c b/mail/component-factory.c
index b78465c6a5..353d0026f2 100644
--- a/mail/component-factory.c
+++ b/mail/component-factory.c
@@ -762,7 +762,7 @@ owner_set_cb (EvolutionShellComponent *shell_component,
gpointer user_data)
{
GNOME_Evolution_Shell corba_shell;
- const GSList *accounts;
+ EAccountList *accounts;
int i;
/* FIXME: should we ref this? */
@@ -773,7 +773,7 @@ owner_set_cb (EvolutionShellComponent *shell_component,
mail_session_init ();
async_event = mail_async_event_new();
-
+
storages_hash = g_hash_table_new (NULL, NULL);
corba_shell = evolution_shell_client_corba_objref (shell_client);
@@ -972,7 +972,7 @@ send_receive_cb (EvolutionShellComponent *shell_component,
gboolean show_dialog,
void *data)
{
- const MailConfigAccount *account;
+ EAccount *account;
/* FIXME: configure_mail() should be changed to work without a
FolderBrowser, and then we will be able to call configure_mail from
@@ -981,7 +981,7 @@ send_receive_cb (EvolutionShellComponent *shell_component,
return;
account = mail_config_get_default_account ();
- if (!account || !account->transport) {
+ if (!account || !account->transport->url) {
GtkWidget *dialog;
dialog = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE,
@@ -1473,10 +1473,10 @@ mail_load_storage_by_uri (GNOME_Evolution_Shell shell, const char *uri, const ch
}
void
-mail_load_storages (GNOME_Evolution_Shell shell, const GSList *sources)
+mail_load_storages (GNOME_Evolution_Shell shell, EAccountList *accounts)
{
CamelException ex;
- const GSList *iter;
+ EIterator *iter;
camel_exception_init (&ex);
@@ -1485,22 +1485,23 @@ mail_load_storages (GNOME_Evolution_Shell shell, const GSList *sources)
* it.
*/
- for (iter = sources; iter; iter = iter->next) {
- const MailConfigAccount *account = NULL;
- const MailConfigService *service = NULL;
- char *name;
+ iter = e_list_get_iterator ((EList *) accounts);
+ while (e_iterator_is_valid (iter)) {
+ EAccountService *service;
+ EAccount *account;
+ const char *name;
- account = iter->data;
+ account = (EAccount *) e_iterator_get (iter);
service = account->source;
name = account->name;
- if (service == NULL || service->url == NULL || service->url[0] == '\0')
- continue;
-
- /* don't auto-connect here; the shell will tell us to goOnline */
- if (account->enabled)
+ if (account->enabled && service->url != NULL)
mail_load_storage_by_uri (shell, service->url, name);
+
+ e_iterator_next (iter);
}
+
+ g_object_unref (iter);
}
void