[evolution] Bug 652958 - Evolution Account Assistant jumps steps



commit 1b1697630caf05f1831f6d9a1dd5e8c3f3def429
Author: Matthew Barnes <mbarnes redhat com>
Date:   Thu Jun 30 14:19:59 2011 -0400

    Bug 652958 - Evolution Account Assistant jumps steps
    
    The GTK+ patch in bug 653705 is also required for the Account Assistant
    to work properly under the new GtkAssistant design in GTK+ 3.1.
    
    This commit only deals with sidebar ordering issues.

 calendar/gui/dialogs/calendar-setup.c             |   28 ++++-
 e-util/e-config.c                                 |   44 +++++-
 e-util/e-config.h                                 |    2 +
 mail/em-account-editor.c                          |  149 +++++++++++++++++----
 mail/em-folder-properties.c                       |    1 +
 modules/addressbook/addressbook-config.c          |   56 +++++++-
 modules/calendar/e-calendar-preferences.c         |    1 +
 modules/mail/em-composer-prefs.c                  |    1 +
 modules/mail/em-mailer-prefs.c                    |    7 +-
 modules/mail/em-network-prefs.c                   |    7 +-
 modules/startup-wizard/evolution-startup-wizard.c |    6 +-
 11 files changed, 250 insertions(+), 52 deletions(-)
---
diff --git a/calendar/gui/dialogs/calendar-setup.c b/calendar/gui/dialogs/calendar-setup.c
index 231cd0d..7dfbfdb 100644
--- a/calendar/gui/dialogs/calendar-setup.c
+++ b/calendar/gui/dialogs/calendar-setup.c
@@ -140,7 +140,12 @@ eccp_type_changed (GtkComboBox *dropdown, CalendarSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eccp_get_source_type (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eccp_get_source_type (EConfig *ec,
+                      EConfigItem *item,
+                      GtkWidget *parent,
+                      GtkWidget *old,
+                      gint position,
+                      gpointer data)
 {
 	static GtkWidget *label, *type;
 	guint row;
@@ -217,7 +222,12 @@ name_changed (GtkEntry *entry, ECalConfigTargetSource *t)
 }
 
 static GtkWidget *
-eccp_get_source_name (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eccp_get_source_name (EConfig *ec,
+                      EConfigItem *item,
+                      GtkWidget *parent,
+                      GtkWidget *old,
+                      gint position,
+                      gpointer data)
 {
 	static GtkWidget *label, *entry;
 	guint row;
@@ -258,7 +268,12 @@ offline_status_changed_cb (GtkWidget *widget, CalendarSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eccp_general_offline (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eccp_general_offline (EConfig *ec,
+                      EConfigItem *item,
+                      GtkWidget *parent,
+                      GtkWidget *old,
+                      gint position,
+                      gpointer data)
 {
 	CalendarSourceDialog *sdialog = data;
 	GtkWidget *offline_setting = NULL;
@@ -324,7 +339,12 @@ choose_initial_color (void)
 }
 
 static GtkWidget *
-eccp_get_source_color (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eccp_get_source_color (EConfig *ec,
+                       EConfigItem *item,
+                       GtkWidget *parent,
+                       GtkWidget *old,
+                       gint position,
+                       gpointer data)
 {
 	CalendarSourceDialog *sdialog = data;
 	static GtkWidget *label, *color_button;
diff --git a/e-util/e-config.c b/e-util/e-config.c
index 2c781cf..9242c73 100644
--- a/e-util/e-config.c
+++ b/e-util/e-config.c
@@ -36,7 +36,15 @@
 
 #define d(x)
 
-typedef GtkWidget * (*EConfigItemSectionFactoryFunc)(EConfig *ec, EConfigItem *, GtkWidget *parent, GtkWidget *old, gpointer data, GtkWidget **real_frame);
+typedef GtkWidget *
+		(*EConfigItemSectionFactoryFunc)
+						(EConfig *ec,
+						 EConfigItem *item,
+						 GtkWidget *parent,
+						 GtkWidget *old,
+						 gint position,
+						 gpointer data,
+						 GtkWidget **real_frame);
 
 struct _EConfigFactory {
 	gchar *id;
@@ -83,7 +91,14 @@ struct _EConfigPrivate {
 	GList *finish_pages;
 };
 
-static GtkWidget *ech_config_section_factory (EConfig *config, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data, GtkWidget **real_frame);
+static GtkWidget *
+		ech_config_section_factory	(EConfig *config,
+						 EConfigItem *item,
+						 GtkWidget *parent,
+						 GtkWidget *old,
+						 gint position,
+						 gpointer data,
+						 GtkWidget **real_frame);
 
 G_DEFINE_TYPE (
 	EConfig,
@@ -624,7 +639,9 @@ ec_rebuild (EConfig *emp)
 					break;
 				}
 				if (item->factory) {
-					root = item->factory (emp, item, NULL, wn->widget, wn->context->data);
+					root = item->factory (
+						emp, item, NULL, wn->widget,
+						0, wn->context->data);
 				} else if (item->type == E_CONFIG_BOOK) {
 					root = gtk_notebook_new ();
 					gtk_widget_show (root);
@@ -685,7 +702,9 @@ ec_rebuild (EConfig *emp)
 
 			if (wn->widget == NULL) {
 				if (item->factory) {
-					page = item->factory (emp, item, root, wn->frame, wn->context->data);
+					page = item->factory (
+						emp, item, root, wn->frame,
+						pageno, wn->context->data);
 				} else {
 					page = gtk_vbox_new (FALSE, 0);
 					gtk_container_set_border_width (GTK_CONTAINER (page), 12);
@@ -753,7 +772,9 @@ ec_rebuild (EConfig *emp)
 			}
 
 			if (item->factory) {
-				page = item->factory (emp, item, root, wn->frame, wn->context->data);
+				page = item->factory (
+					emp, item, root, wn->frame,
+					pageno, wn->context->data);
 				if (emp->type == E_CONFIG_ASSISTANT) {
 					wn->frame = page;
 				} else {
@@ -832,7 +853,9 @@ ec_rebuild (EConfig *emp)
 				 */
 				EConfigItemSectionFactoryFunc factory = (EConfigItemSectionFactoryFunc) item->factory;
 
-				section = factory (emp, item, page, wn->widget, wn->context->data, &wn->real_frame);
+				section = factory (
+					emp, item, page, wn->widget, 0,
+					wn->context->data, &wn->real_frame);
 				wn->frame = section;
 				if (section)
 					itemno = 1;
@@ -927,7 +950,9 @@ ec_rebuild (EConfig *emp)
 				 || (item->type == E_CONFIG_ITEM_TABLE && !GTK_IS_TABLE (section)))
 				g_warning("EConfig item parent type is incorrect: %s", item->path);
 			else if (item->factory)
-				w = item->factory (emp, item, section, wn->widget, wn->context->data);
+				w = item->factory (
+					emp, item, section, wn->widget,
+					0, wn->context->data);
 
 			d(printf("item %d:%s widget %p\n", itemno, item->path, w));
 
@@ -1653,6 +1678,7 @@ ech_config_widget_factory (EConfig *config,
                            EConfigItem *item,
                            GtkWidget *parent,
                            GtkWidget *old,
+                           gint position,
                            gpointer data)
 {
 	struct _EConfigHookGroup *group = data;
@@ -1664,6 +1690,7 @@ ech_config_widget_factory (EConfig *config,
 	factory_data.target = config->target;
 	factory_data.parent = parent;
 	factory_data.old = old;
+	factory_data.position = position;
 
 	plugin = group->hook->hook.plugin;
 	return e_plugin_invoke (plugin, item->user_data, &factory_data);
@@ -1674,8 +1701,9 @@ ech_config_section_factory (EConfig *config,
                             EConfigItem *item,
                             GtkWidget *parent,
                             GtkWidget *old,
+                            gint position,
                             gpointer data,
-			    GtkWidget **real_frame)
+                            GtkWidget **real_frame)
 {
 	struct _EConfigHookGroup *group = data;
 	GtkWidget *label = NULL;
diff --git a/e-util/e-config.h b/e-util/e-config.h
index 5019acd..338824e 100644
--- a/e-util/e-config.h
+++ b/e-util/e-config.h
@@ -74,6 +74,7 @@ typedef GtkWidget *
 						 EConfigItem *item,
 						 GtkWidget *parent,
 						 GtkWidget *old,
+						 gint position,
 						 gpointer data);
 
 /* ok so this is all a bit bogussy
@@ -328,6 +329,7 @@ struct _EConfigHookItemFactoryData {
 	EConfigTarget *target;
 	GtkWidget *parent;
 	GtkWidget *old;
+	gint position;
 };
 
 /**
diff --git a/mail/em-account-editor.c b/mail/em-account-editor.c
index 03985de..c6bef76 100644
--- a/mail/em-account-editor.c
+++ b/mail/em-account-editor.c
@@ -2162,7 +2162,8 @@ emae_setup_service (EMAccountEditor *emae, EMAccountEditorService *service, GtkB
 static GtkWidget *
 emae_create_basic_assistant_page (EMAccountEditor *emae,
                                   GtkAssistant *assistant,
-                                  const gchar *page_id)
+                                  const gchar *page_id,
+                                  gint position)
 {
 	const gchar *title = NULL, *label = NULL;
 	GtkAssistantPageType page_type = GTK_ASSISTANT_PAGE_CONTENT;
@@ -2210,7 +2211,7 @@ emae_create_basic_assistant_page (EMAccountEditor *emae,
 	if (g_ascii_strcasecmp (page_id, "start_page") == 0)
 		g_hash_table_insert (emae->priv->widgets, (gchar *)"start_page_label", lbl);
 
-	gtk_assistant_append_page (assistant, vbox);
+	gtk_assistant_insert_page (assistant, vbox, position);
 	gtk_assistant_set_page_title (assistant, vbox, title);
 	gtk_assistant_set_page_type (assistant, vbox, page_type);
 
@@ -2243,7 +2244,12 @@ emae_queue_widgets (EMAccountEditor *emae, GtkBuilder *builder, const gchar *fir
 }
 
 static GtkWidget *
-emae_identity_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_identity_page (EConfig *ec,
+                    EConfigItem *item,
+                    GtkWidget *parent,
+                    GtkWidget *old,
+                    gint position,
+                    gpointer data)
 {
 	EMAccountEditor *emae = data;
 	EMAccountEditorPrivate *priv = emae->priv;
@@ -2292,14 +2298,23 @@ emae_identity_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
 	if (emae->type == EMAE_PAGES) {
 		gtk_box_pack_start ((GtkBox *) emae->pages[0], w, TRUE, TRUE, 0);
 	} else if (((EConfig *) priv->config)->type == E_CONFIG_ASSISTANT) {
-		GtkWidget *page = emae_create_basic_assistant_page (emae, GTK_ASSISTANT (parent), "identity_page");
+		GtkWidget *page;
+
+		page = emae_create_basic_assistant_page (
+			emae, GTK_ASSISTANT (parent),
+			"identity_page", position);
 
 		gtk_box_pack_start (GTK_BOX (page), w, TRUE, TRUE, 0);
 
 		w = page;
 	} else {
-		gtk_notebook_append_page ((GtkNotebook *)parent, w, gtk_label_new (_("Identity")));
-		gtk_container_child_set (GTK_CONTAINER (parent), w, "tab-fill", FALSE, "tab-expand", FALSE, NULL);
+		gtk_notebook_insert_page (
+			GTK_NOTEBOOK (parent), w,
+			gtk_label_new (_("Identity")),
+			position);
+		gtk_container_child_set (
+			GTK_CONTAINER (parent), w,
+			"tab-fill", FALSE, "tab-expand", FALSE, NULL);
 	}
 
 	emae_queue_widgets (
@@ -2317,7 +2332,12 @@ emae_identity_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
 }
 
 static GtkWidget *
-emae_receive_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_receive_page (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	EMAccountEditor *emae = data;
 	EMAccountEditorPrivate *priv = emae->priv;
@@ -2337,14 +2357,23 @@ emae_receive_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
 	if (emae->type == EMAE_PAGES) {
 		gtk_box_pack_start ((GtkBox *) emae->pages[1], w, TRUE, TRUE, 0);
 	} else if (((EConfig *) priv->config)->type == E_CONFIG_ASSISTANT) {
-		GtkWidget *page = emae_create_basic_assistant_page (emae, GTK_ASSISTANT (parent), "source_page");
+		GtkWidget *page;
+
+		page = emae_create_basic_assistant_page (
+			emae, GTK_ASSISTANT (parent),
+			"source_page", position);
 
 		gtk_box_pack_start (GTK_BOX (page), w, TRUE, TRUE, 0);
 
 		w = page;
 	} else {
-		gtk_notebook_append_page ((GtkNotebook *)parent, w, gtk_label_new (_("Receiving Email")));
-		gtk_container_child_set (GTK_CONTAINER (parent), w, "tab-fill", FALSE, "tab-expand", FALSE, NULL);
+		gtk_notebook_insert_page (
+			GTK_NOTEBOOK (parent), w,
+			gtk_label_new (_("Receiving Email")),
+			position);
+		gtk_container_child_set (
+			GTK_CONTAINER (parent), w,
+			"tab-fill", FALSE, "tab-expand", FALSE, NULL);
 	}
 
 	emae_queue_widgets (
@@ -2624,7 +2653,12 @@ emae_option_options (EMAccountEditorService *service, CamelURL *url, const gchar
 }
 
 static GtkWidget *
-emae_receive_options_item (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_receive_options_item (EConfig *ec,
+                           EConfigItem *item,
+                           GtkWidget *parent,
+                           GtkWidget *old,
+                           gint position,
+                           gpointer data)
 {
 	EMAccountEditor *emae = data;
 	GtkWidget *w, *box, *spin;
@@ -2677,7 +2711,12 @@ emae_receive_options_item (EConfig *ec, EConfigItem *item, GtkWidget *parent, Gt
 }
 
 static GtkWidget *
-emae_receive_options_extra_item (EConfig *ec, EConfigItem *eitem, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_receive_options_extra_item (EConfig *ec,
+                                 EConfigItem *eitem,
+                                 GtkWidget *parent,
+                                 GtkWidget *old,
+                                 gint position,
+                                 gpointer data)
 {
 	EMAccountEditor *emae = data;
 	struct _receive_options_item *item = (struct _receive_options_item *) eitem;
@@ -2813,7 +2852,12 @@ section:
 }
 
 static GtkWidget *
-emae_send_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_send_page (EConfig *ec,
+                EConfigItem *item,
+                GtkWidget *parent,
+                GtkWidget *old,
+                gint position,
+                gpointer data)
 {
 	EMAccountEditor *emae = data;
 	EMAccountEditorPrivate *priv = emae->priv;
@@ -2837,14 +2881,23 @@ emae_send_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *ol
 	if (emae->type == EMAE_PAGES) {
 		gtk_box_pack_start ((GtkBox *) emae->pages[3], w, TRUE, TRUE, 0);
 	} else if (((EConfig *) priv->config)->type == E_CONFIG_ASSISTANT) {
-		GtkWidget *page = emae_create_basic_assistant_page (emae, GTK_ASSISTANT (parent), "transport_page");
+		GtkWidget *page;
+
+		page = emae_create_basic_assistant_page (
+			emae, GTK_ASSISTANT (parent),
+			"transport_page", position);
 
 		gtk_box_pack_start (GTK_BOX (page), w, TRUE, TRUE, 0);
 
 		w = page;
 	} else {
-		gtk_notebook_append_page ((GtkNotebook *)parent, w, gtk_label_new (_("Sending Email")));
-		gtk_container_child_set (GTK_CONTAINER (parent), w, "tab-fill", FALSE, "tab-expand", FALSE, NULL);
+		gtk_notebook_insert_page (
+			GTK_NOTEBOOK (parent), w,
+			gtk_label_new (_("Sending Email")),
+			position);
+		gtk_container_child_set (
+			GTK_CONTAINER (parent), w,
+			"tab-fill", FALSE, "tab-expand", FALSE, NULL);
 	}
 
 	emae_queue_widgets (
@@ -3043,7 +3096,12 @@ setup_checkable_folder (EMAccountEditor *emae,
 }
 
 static GtkWidget *
-emae_defaults_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_defaults_page (EConfig *ec,
+                    EConfigItem *item,
+                    GtkWidget *parent,
+                    GtkWidget *old,
+                    gint position,
+                    gpointer data)
 {
 	EMAccountEditor *emae = data;
 	EMAccountEditorPrivate *priv = emae->priv;
@@ -3136,9 +3194,14 @@ emae_defaults_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
 	if (emae->type == EMAE_PAGES) {
 		gtk_box_pack_start ((GtkBox *) emae->pages[4], widget, TRUE, TRUE, 0);
 		gtk_widget_show  (widget);
-	}else {
-		gtk_notebook_append_page ((GtkNotebook *)parent, widget, gtk_label_new (_("Defaults")));
-		gtk_container_child_set (GTK_CONTAINER (parent), widget, "tab-fill", FALSE, "tab-expand", FALSE, NULL);
+	} else {
+		gtk_notebook_insert_page (
+			GTK_NOTEBOOK (parent), widget,
+			gtk_label_new (_("Defaults")),
+			position);
+		gtk_container_child_set (
+			GTK_CONTAINER (parent), widget,
+			"tab-fill", FALSE, "tab-expand", FALSE, NULL);
 	}
 
 	emae_queue_widgets (
@@ -3212,7 +3275,12 @@ emae_account_hash_algo_combo (EMAccountEditor *emae, const gchar *name, gint ite
 }
 
 static GtkWidget *
-emae_security_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_security_page (EConfig *ec,
+                    EConfigItem *item,
+                    GtkWidget *parent,
+                    GtkWidget *old,
+                    gint position,
+                    gpointer data)
 {
 	EMAccountEditor *emae = data;
 #if defined (HAVE_NSS) && defined (ENABLE_SMIME)
@@ -3266,8 +3334,13 @@ emae_security_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget
 #endif /* HAVE_NSS */
 
 	w = e_builder_get_widget (builder, item->label);
-	gtk_notebook_append_page ((GtkNotebook *)parent, w, gtk_label_new (_("Security")));
-	gtk_container_child_set (GTK_CONTAINER (parent), w, "tab-fill", FALSE, "tab-expand", FALSE, NULL);
+	gtk_notebook_insert_page (
+		GTK_NOTEBOOK (parent), w,
+		gtk_label_new (_("Security")),
+		position);
+	gtk_container_child_set (
+		GTK_CONTAINER (parent), w,
+		"tab-fill", FALSE, "tab-expand", FALSE, NULL);
 
 	g_object_unref (builder);
 
@@ -3292,7 +3365,12 @@ em_account_editor_get_widget (EMAccountEditor *emae, const gchar *name)
 }
 
 static GtkWidget *
-emae_widget_glade (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_widget_glade (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	return em_account_editor_get_widget (data, item->label);
 }
@@ -3334,7 +3412,12 @@ static EMConfigItem emae_editor_items[] = {
 static gboolean emae_editor_items_translated = FALSE;
 
 static GtkWidget *
-emae_management_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_management_page (EConfig *ec,
+                      EConfigItem *item,
+                      GtkWidget *parent,
+                      GtkWidget *old,
+                      gint position,
+                      gpointer data)
 {
 	EMAccountEditor *emae = data;
 	EMAccountEditorPrivate *priv = emae->priv;
@@ -3342,7 +3425,11 @@ emae_management_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidg
 
 	w = priv->management_frame;
 	if (((EConfig *) priv->config)->type == E_CONFIG_ASSISTANT) {
-		GtkWidget *page = emae_create_basic_assistant_page (emae, GTK_ASSISTANT (parent), "management_page");
+		GtkWidget *page;
+
+		page = emae_create_basic_assistant_page (
+			emae, GTK_ASSISTANT (parent),
+			"management_page", position);
 
 		gtk_widget_reparent (w, page);
 
@@ -3353,14 +3440,20 @@ emae_management_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidg
 }
 
 static GtkWidget *
-emae_widget_assistant_page (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emae_widget_assistant_page (EConfig *ec,
+                            EConfigItem *item,
+                            GtkWidget *parent,
+                            GtkWidget *old,
+                            gint position,
+                            gpointer data)
 {
 	EMAccountEditor *emae = (EMAccountEditor *) data;
 
 	if (emae->type == EMAE_PAGES)
 		return NULL;
 
-	return emae_create_basic_assistant_page (emae, GTK_ASSISTANT (parent), item->label);
+	return emae_create_basic_assistant_page (
+		emae, GTK_ASSISTANT (parent), item->label, position);
 }
 
 /* plugin meta-data for "org.gnome.evolution.mail.config.accountAssistant" */
diff --git a/mail/em-folder-properties.c b/mail/em-folder-properties.c
index 4f5b4f6..ff9d0d9 100644
--- a/mail/em-folder-properties.c
+++ b/mail/em-folder-properties.c
@@ -116,6 +116,7 @@ emfp_get_folder_item (EConfig *ec,
                       EConfigItem *item,
                       GtkWidget *parent,
                       GtkWidget *old,
+                      gint position,
                       gpointer data)
 {
 	GObjectClass *class;
diff --git a/modules/addressbook/addressbook-config.c b/modules/addressbook/addressbook-config.c
index f39fa79..3686fa6 100644
--- a/modules/addressbook/addressbook-config.c
+++ b/modules/addressbook/addressbook-config.c
@@ -493,7 +493,12 @@ eabc_type_changed (GtkComboBox *dropdown, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_type (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_type (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkComboBox *dropdown;
@@ -556,7 +561,12 @@ name_changed_cb (GtkWidget *w, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_name (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_name (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	const gchar *uri;
@@ -597,7 +607,12 @@ use_in_cal_changed_cb (GtkWidget *widget, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_use_in_cal (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_use_in_cal (EConfig *ec,
+                         EConfigItem *item,
+                         GtkWidget *parent,
+                         GtkWidget *old,
+                         gint position,
+                         gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkWidget *use_in_cal_setting;
@@ -631,7 +646,12 @@ offline_status_changed_cb (GtkWidget *widget, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_offline (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_offline (EConfig *ec,
+                      EConfigItem *item,
+                      GtkWidget *parent,
+                      GtkWidget *old,
+                      gint position,
+                      gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkWidget *offline_setting;
@@ -721,7 +741,12 @@ ssl_combobox_changed_cb (GtkWidget *w, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_host (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_host (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	const gchar *tmp;
@@ -806,7 +831,12 @@ auth_combobox_changed_cb (GtkWidget *w, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_general_auth (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_general_auth (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkWidget *w;
@@ -871,7 +901,12 @@ scope_combobox_changed_cb (GtkWidget *w, AddressbookSourceDialog *sdialog)
 }
 
 static GtkWidget *
-eabc_details_search (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_details_search (EConfig *ec,
+                     EConfigItem *item,
+                     GtkWidget *parent,
+                     GtkWidget *old,
+                     gint position,
+                     gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkWidget *w;
@@ -965,7 +1000,12 @@ canbrowse_toggled_cb (GtkWidget *toggle_button, ESource *source)
 }
 
 static GtkWidget *
-eabc_details_limit (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+eabc_details_limit (EConfig *ec,
+                    EConfigItem *item,
+                    GtkWidget *parent,
+                    GtkWidget *old,
+                    gint position,
+                    gpointer data)
 {
 	AddressbookSourceDialog *sdialog = data;
 	GtkAdjustment *adjustment;
diff --git a/modules/calendar/e-calendar-preferences.c b/modules/calendar/e-calendar-preferences.c
index f35c88a..40ba9c7 100644
--- a/modules/calendar/e-calendar-preferences.c
+++ b/modules/calendar/e-calendar-preferences.c
@@ -158,6 +158,7 @@ calendar_preferences_get_config_widget (EConfig *ec,
                                         EConfigItem *item,
                                         GtkWidget *parent,
                                         GtkWidget *old,
+                                        gint position,
                                         gpointer data)
 {
 	ECalendarPreferences *preferences = data;
diff --git a/modules/mail/em-composer-prefs.c b/modules/mail/em-composer-prefs.c
index a3e5bfa..39da854 100644
--- a/modules/mail/em-composer-prefs.c
+++ b/modules/mail/em-composer-prefs.c
@@ -252,6 +252,7 @@ emcp_widget_glade (EConfig *ec,
                    EConfigItem *item,
                    GtkWidget *parent,
                    GtkWidget *old,
+                   gint position,
                    gpointer data)
 {
 	EMComposerPrefs *prefs = data;
diff --git a/modules/mail/em-mailer-prefs.c b/modules/mail/em-mailer-prefs.c
index 18b5a1d..8e2688e 100644
--- a/modules/mail/em-mailer-prefs.c
+++ b/modules/mail/em-mailer-prefs.c
@@ -637,7 +637,12 @@ http_images_changed (GtkWidget *widget, EMMailerPrefs *prefs)
 }
 
 static GtkWidget *
-emmp_widget_glade (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emmp_widget_glade (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	EMMailerPrefs *prefs = data;
 
diff --git a/modules/mail/em-network-prefs.c b/modules/mail/em-network-prefs.c
index 3094f15..05572cb 100644
--- a/modules/mail/em-network-prefs.c
+++ b/modules/mail/em-network-prefs.c
@@ -107,7 +107,12 @@ toggle_button_init (EMNetworkPrefs *prefs, GtkToggleButton *toggle, const gchar
 }
 
 static GtkWidget *
-emnp_widget_glade (EConfig *ec, EConfigItem *item, GtkWidget *parent, GtkWidget *old, gpointer data)
+emnp_widget_glade (EConfig *ec,
+                   EConfigItem *item,
+                   GtkWidget *parent,
+                   GtkWidget *old,
+                   gint position,
+                   gpointer data)
 {
 	EMNetworkPrefs *prefs = data;
 
diff --git a/modules/startup-wizard/evolution-startup-wizard.c b/modules/startup-wizard/evolution-startup-wizard.c
index cd2a363..5e3b028 100644
--- a/modules/startup-wizard/evolution-startup-wizard.c
+++ b/modules/startup-wizard/evolution-startup-wizard.c
@@ -253,6 +253,7 @@ startup_wizard_importer_page (EConfig *config,
                               EConfigItem *item,
                               GtkAssistant *assistant,
                               GtkWidget *old,
+                              gint position,
                               EStartupWizard *extension)
 {
 	GtkWidget *container;
@@ -321,7 +322,7 @@ startup_wizard_importer_page (EConfig *config,
 	}
 
 	title = _("Importing Files");
-	gtk_assistant_append_page (assistant, page);
+	gtk_assistant_insert_page (assistant, page, position);
 	gtk_assistant_set_page_title (assistant, page, title);
 
 	return page;
@@ -332,6 +333,7 @@ startup_wizard_progress_page (EConfig *config,
                               EConfigItem *item,
                               GtkAssistant *assistant,
                               GtkWidget *old,
+                              gint position,
                               EStartupWizard *extension)
 {
 	GtkSizeGroup *size_group;
@@ -418,7 +420,7 @@ startup_wizard_progress_page (EConfig *config,
 	gtk_widget_show (widget);
 
 	title = _("Importing Files");
-	page_num = gtk_assistant_append_page (assistant, page);
+	page_num = gtk_assistant_insert_page (assistant, page, position);
 	gtk_assistant_set_page_title (assistant, page, title);
 
 	extension->import_progress_page_num = page_num;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]