aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.in3
-rw-r--r--mail/ChangeLog17
-rw-r--r--mail/em-account-editor.c29
-rw-r--r--mail/em-account-editor.h3
-rw-r--r--mail/em-account-prefs.c20
-rw-r--r--mail/em-utils.c2
-rw-r--r--plugins/exchange-account-setup/ChangeLog4
-rw-r--r--plugins/exchange-account-setup/org-gnome-exchange-account-setup.eplug.in18
-rw-r--r--plugins/groupwise-account-setup/ChangeLog4
-rw-r--r--plugins/groupwise-account-setup/org-gnome-gw-account-setup.eplug.in7
-rw-r--r--shell/ChangeLog2
-rw-r--r--shell/e-shell.c18
-rw-r--r--shell/es-event.c13
-rw-r--r--shell/es-event.h11
14 files changed, 114 insertions, 37 deletions
diff --git a/configure.in b/configure.in
index 8bf8aece23..362a58bbdb 100644
--- a/configure.in
+++ b/configure.in
@@ -1335,7 +1335,7 @@ AC_SUBST_FILE(EVO_PLUGIN_RULE)
AC_ARG_ENABLE(plugins, [ --enable-plugins=[no/base/all/experimental/list] Enable plugins.],enable_plugins="$enableval",enable_plugins=all)
dnl Add any new plugins here
-plugins_base="calendar-file calendar-http calendar-weather groupwise-account-setup itip-formatter plugin-manager send-options shared-folder groupwise-send-options exchange-account-setup groupwise-status-tracking default-source addressbook-file addressbook-groupwise"
+plugins_base="calendar-file calendar-http calendar-weather groupwise-account-setup itip-formatter plugin-manager send-options shared-folder groupwise-send-options exchange-account-setup groupwise-status-tracking default-source addressbook-file addressbook-groupwise startup-wizard"
plugins_standard="bbdb subject-thread save-attachments prefer-plain save-calendar select-one-source copy-tool mail-to-task folder-unsubscribe mark-calendar-offline audio-inline mailing-list-actions new-mail-notify"
@@ -1589,6 +1589,7 @@ plugins/groupwise-status-tracking/Makefile
plugins/default-source/Makefile
plugins/addressbook-file/Makefile
plugins/addressbook-groupwise/Makefile
+plugins/startup-wizard/Makefile
smime/Makefile
smime/lib/Makefile
smime/gui/Makefile
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);
diff --git a/plugins/exchange-account-setup/ChangeLog b/plugins/exchange-account-setup/ChangeLog
index 073e007f56..1ae1722805 100644
--- a/plugins/exchange-account-setup/ChangeLog
+++ b/plugins/exchange-account-setup/ChangeLog
@@ -1,3 +1,7 @@
+2005-02-28 JP Rosevear <jpr@novell.com>
+
+ * org-gnome-exchange-account-setup.eplug.in: add account wizard item
+
2005-02-27 Sushma Rai <rsushma@novell.com>
* exchange-account-setup.c (org_gnome_exchange_settings): Storing the
diff --git a/plugins/exchange-account-setup/org-gnome-exchange-account-setup.eplug.in b/plugins/exchange-account-setup/org-gnome-exchange-account-setup.eplug.in
index a21b750423..cd96e0b5c4 100644
--- a/plugins/exchange-account-setup/org-gnome-exchange-account-setup.eplug.in
+++ b/plugins/exchange-account-setup/org-gnome-exchange-account-setup.eplug.in
@@ -34,6 +34,24 @@
path="10.receive/10.config/20.owa"
factory="org_gnome_exchange_owa_url"/>
</group>
+
+ <group
+ target="account"
+ id="org.gnome.evolution.mail.config.accountWizard"
+ check="org_gnome_exchange_check_options">
+ <item type="item_table"
+ path="10.receive/10.config/20.owa"
+ factory="org_gnome_exchange_owa_url"/>
+ </group>
+
+ <group
+ target="account"
+ id="org.gnome.evolution.mail.config.accountWizard"
+ check="org_gnome_exchange_check_options">
+ <item type="item_table"
+ path="10.receive/10.config/20.owa"
+ factory="org_gnome_exchange_owa_url"/>
+ </group>
</hook>
</e-plugin>
diff --git a/plugins/groupwise-account-setup/ChangeLog b/plugins/groupwise-account-setup/ChangeLog
index 93aa2db012..b5ab43c75c 100644
--- a/plugins/groupwise-account-setup/ChangeLog
+++ b/plugins/groupwise-account-setup/ChangeLog
@@ -1,3 +1,7 @@
+2005-02-23 JP Rosevear <jpr@novell.com>
+
+ * org-gnome-gw-account-setup.eplug.in: add account wizard item
+
2005-02-24 Björn Torkelsson <torkel@acc.umu.se>
* org-gnome-gw-account-setup.eplug.in: Added author and fixed
diff --git a/plugins/groupwise-account-setup/org-gnome-gw-account-setup.eplug.in b/plugins/groupwise-account-setup/org-gnome-gw-account-setup.eplug.in
index d351dc6069..6e799d366c 100644
--- a/plugins/groupwise-account-setup/org-gnome-gw-account-setup.eplug.in
+++ b/plugins/groupwise-account-setup/org-gnome-gw-account-setup.eplug.in
@@ -20,7 +20,12 @@
<item type="item_table" path="20.receive_options/30.soapport/50.dummy" factory="org_gnome_gw_account_setup"/>
</group>
</hook>
-
+
+ <hook class="org.gnome.evolution.mail.config:1.0">
+ <group target="account" id="org.gnome.evolution.mail.config.accountWizard">
+ <item type="item_table" path="20.receive_options/30.soapport/50.dummy" factory="org_gnome_gw_account_setup"/>
+ </group>
+ </hook>
</e-plugin>
</e-plugin-list>
diff --git a/shell/ChangeLog b/shell/ChangeLog
index b412c4b8d4..7fcca9c5fc 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,7 +1,7 @@
2005-02-28 JP Rosevear <jpr@novell.com>
* e-shell-window-commands.c (command_submit_bug): update authors
- list for about dialogs
+ list for about dialog
2005-02-21 JP Rosevear <jpr@novell.com>
diff --git a/shell/e-shell.c b/shell/e-shell.c
index bd9b332f37..d61ba3b8ed 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -652,13 +652,6 @@ e_shell_construct (EShell *shell,
e_shell_attempt_upgrade(shell);
-#if 0
- if (e_shell_startup_wizard_create () == FALSE) {
- bonobo_object_unref (BONOBO_OBJECT (shell));
- exit (0);
- }
-#endif
-
priv->is_initialized = TRUE;
switch (startup_line_mode) {
@@ -781,6 +774,7 @@ e_shell_attempt_upgrade (EShell *shell)
int done_upgrade = FALSE;
char *oldpath;
struct stat st;
+ ESEvent *ese;
gconf_client = gconf_client_get_default();
@@ -871,6 +865,16 @@ check_old:
g_free(oldpath);
g_object_unref (gconf_client);
+ /** @Event: Shell attempted upgrade
+ * @Id: upgrade.done
+ * @Target: ESMenuTargetState
+ *
+ * This event is emitted whenever the shell successfully attempts an upgrade.
+ *
+ */
+ ese = es_event_peek();
+ e_event_emit((EEvent *)ese, "upgrade.done", (EEventTarget *)es_event_target_new_upgrade(ese, cmajor, cminor, crevision));
+
return TRUE;
}
diff --git a/shell/es-event.c b/shell/es-event.c
index c49ce66163..72a05931bd 100644
--- a/shell/es-event.c
+++ b/shell/es-event.c
@@ -129,6 +129,18 @@ es_event_target_new_state(ESEvent *eme, int state)
return t;
}
+ESEventTargetUpgrade *
+es_event_target_new_upgrade(ESEvent *eme, int major, int minor, int revision)
+{
+ ESEventTargetUpgrade *t = e_event_target_new(&eme->event, ES_EVENT_TARGET_UPGRADE, sizeof(*t));
+
+ t->major = major;
+ t->minor = minor;
+ t->revision = revision;
+
+ return t;
+}
+
/* ********************************************************************** */
static void *emeh_parent_class;
@@ -142,6 +154,7 @@ static const EEventHookTargetMask emeh_state_masks[] = {
static const EEventHookTargetMap emeh_targets[] = {
{ "state", ES_EVENT_TARGET_STATE, emeh_state_masks },
+ { "upgrade", ES_EVENT_TARGET_UPGRADE, NULL },
{ 0 }
};
diff --git a/shell/es-event.h b/shell/es-event.h
index f660733fbb..db18dbce2d 100644
--- a/shell/es-event.h
+++ b/shell/es-event.h
@@ -38,6 +38,7 @@ typedef struct _ESEventClass ESEventClass;
/* Current target description */
enum _es_event_target_t {
ES_EVENT_TARGET_STATE,
+ ES_EVENT_TARGET_UPGRADE
};
/* Flags that qualify TARGET_STATE */
@@ -47,6 +48,7 @@ enum {
};
typedef struct _ESEventTargetState ESEventTargetState;
+typedef struct _ESEventTargetUpgrade ESEventTargetUpgrade;
struct _ESEventTargetState {
EEventTarget target;
@@ -54,6 +56,14 @@ struct _ESEventTargetState {
int state;
};
+struct _ESEventTargetUpgrade {
+ EEventTarget target;
+
+ int major;
+ int minor;
+ int revision;
+};
+
typedef struct _EEventItem ESEventItem;
/* The object */
@@ -72,6 +82,7 @@ GType es_event_get_type(void);
ESEvent *es_event_peek(void);
ESEventTargetState *es_event_target_new_state(ESEvent *emp, int state);
+ESEventTargetUpgrade *es_event_target_new_upgrade(ESEvent *emp, int major, int minor, int revision);
/* ********************************************************************** */