diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 17 | ||||
-rw-r--r-- | mail/em-account-editor.c | 29 | ||||
-rw-r--r-- | mail/em-account-editor.h | 3 | ||||
-rw-r--r-- | mail/em-account-prefs.c | 20 | ||||
-rw-r--r-- | mail/em-utils.c | 2 |
5 files changed, 44 insertions, 27 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 970013c0f8..fb29252fc1 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,20 @@ +2005-02-28 JP Rosevear <jpr@novell.com> + + * em-utils.c (em_utils_configure_account): pass in accountDruid + config id + + * em-account-prefs.c (account_add_clicked): pass in accountDruid + config id + (account_edit_clicked): pass in accountWizard config id + + * em-account-editor.h: update protos + + * em-account-editor.c (em_account_editor_new_with_config_id): + create a new account editor with a specific config id + (em_account_editor_new): pass + (em_account_editor_construct): make this static and take the + config id as an arg + 2005-02-24 Not Zed <NotZed@Ximian.com> ** See bug #72609 diff --git a/mail/em-account-editor.c b/mail/em-account-editor.c index 8946cef9a4..47bc9e2f9c 100644 --- a/mail/em-account-editor.c +++ b/mail/em-account-editor.c @@ -202,6 +202,7 @@ typedef struct _EMAccountEditorPrivate { } EMAccountEditorPrivate; static void emae_refresh_authtype(EMAccountEditor *emae, EMAccountEditorService *service); +static void em_account_editor_construct(EMAccountEditor *emae, EAccount *account, em_account_editor_t type, char *id); static GtkVBoxClass *emae_parent; @@ -281,11 +282,11 @@ em_account_editor_get_type(void) * * Return value: **/ -EMAccountEditor *em_account_editor_new(EAccount *account, em_account_editor_t type) +EMAccountEditor *em_account_editor_new(EAccount *account, em_account_editor_t type, char *id) { EMAccountEditor *emae = g_object_new(em_account_editor_get_type(), 0); - em_account_editor_construct(emae, account, type); + em_account_editor_construct(emae, account, type, id); return emae; } @@ -2483,8 +2484,8 @@ emae_editor_destroyed(GtkWidget *dialog, EMAccountEditor *emae) g_object_unref(emae); } -void -em_account_editor_construct(EMAccountEditor *emae, EAccount *account, em_account_editor_t type) +static void +em_account_editor_construct(EMAccountEditor *emae, EAccount *account, em_account_editor_t type, char *id) { EMAccountEditorPrivate *gui = emae->priv; int i, index; @@ -2520,26 +2521,10 @@ em_account_editor_construct(EMAccountEditor *emae, EAccount *account, em_account gui->providers = g_list_sort(camel_provider_list(TRUE), (GCompareFunc)provider_compare); if (type == EMAE_NOTEBOOK) { - /** @HookPoint-EMConfig: Mail Account Editor - * @Id: org.gnome.evolution.mail.config.accountEditor - * @Type: E_CONFIG_BOOK - * @Class: org.gnome.evolution.mail.config:1.0 - * @Target: EMConfigTargetAccount - * - * The account editor window. - */ - ec = em_config_new(E_CONFIG_BOOK, "org.gnome.evolution.mail.config.accountEditor"); + ec = em_config_new(E_CONFIG_BOOK, id); items = emae_editor_items; } else { - /** @HookPoint-EMConfig: New Mail Account Druid - * @Id: org.gnome.evolution.mail.config.accountDruid - * @Type: E_CONFIG_DRUID - * @Class: org.gnome.evolution.mail.config:1.0 - * @Target: EMConfigTargetAccount - * - * The new mail account druid. - */ - ec = em_config_new(E_CONFIG_DRUID, "org.gnome.evolution.mail.config.accountDruid"); + ec = em_config_new(E_CONFIG_DRUID, id); items = emae_druid_items; } diff --git a/mail/em-account-editor.h b/mail/em-account-editor.h index 0e84a07b7d..0a46aa45a9 100644 --- a/mail/em-account-editor.h +++ b/mail/em-account-editor.h @@ -64,8 +64,7 @@ struct _EMAccountEditorClass { GType em_account_editor_get_type(void); -void em_account_editor_construct(EMAccountEditor *emae, struct _EAccount *account, em_account_editor_t type); -EMAccountEditor *em_account_editor_new(struct _EAccount *account, em_account_editor_t type); +EMAccountEditor *em_account_editor_new(struct _EAccount *account, em_account_editor_t type, char *id); gboolean em_account_editor_save (EMAccountEditor *gui); void em_account_editor_destroy (EMAccountEditor *gui); diff --git a/mail/em-account-prefs.c b/mail/em-account-prefs.c index 4861f3d37b..1d58afe852 100644 --- a/mail/em-account-prefs.c +++ b/mail/em-account-prefs.c @@ -145,7 +145,15 @@ account_add_clicked (GtkButton *button, gpointer user_data) if (prefs->druid == NULL) { EMAccountEditor *emae; - emae = em_account_editor_new(NULL, EMAE_DRUID); + /** @HookPoint-EMConfig: New Mail Account Druid + * @Id: org.gnome.evolution.mail.config.accountDruid + * @Type: E_CONFIG_DRUID + * @Class: org.gnome.evolution.mail.config:1.0 + * @Target: EMConfigTargetAccount + * + * The new mail account druid. + */ + emae = em_account_editor_new(NULL, EMAE_DRUID, "org.gnome.evolution.mail.config.accountDruid"); prefs->druid = emae->editor; gtk_window_set_transient_for((GtkWindow *)prefs->druid, (GtkWindow *)gtk_widget_get_toplevel((GtkWidget *)prefs)); @@ -187,7 +195,15 @@ account_edit_clicked (GtkButton *button, gpointer user_data) if (account) { EMAccountEditor *emae; - emae = em_account_editor_new(account, EMAE_NOTEBOOK); + /** @HookPoint-EMConfig: Mail Account Editor + * @Id: org.gnome.evolution.mail.config.accountEditor + * @Type: E_CONFIG_BOOK + * @Class: org.gnome.evolution.mail.config:1.0 + * @Target: EMConfigTargetAccount + * + * The account editor window. + */ + emae = em_account_editor_new(account, EMAE_NOTEBOOK, "org.gnome.evolution.mail.config.accountEditor"); prefs->editor = emae->editor; gtk_window_set_transient_for((GtkWindow *)prefs->editor, (GtkWindow *)gtk_widget_get_toplevel((GtkWidget *)prefs)); diff --git a/mail/em-utils.c b/mail/em-utils.c index f00e45ecf3..679875bcfe 100644 --- a/mail/em-utils.c +++ b/mail/em-utils.c @@ -181,7 +181,7 @@ em_utils_configure_account (GtkWidget *parent) { EMAccountEditor *emae; - emae = em_account_editor_new(NULL, EMAE_DRUID); + emae = em_account_editor_new(NULL, EMAE_DRUID, "org.gnome.evolution.mail.config.accountDruid"); if (parent != NULL) e_dialog_set_transient_for((GtkWindow *)emae->editor, parent); |