From 9a52902ab1ed5bf02825a1eec1a0ba09b11c1a3c Mon Sep 17 00:00:00 2001 From: Silvan Marco Fin Date: Thu, 8 Jun 2006 13:39:36 +0000 Subject: [PATCH] * fixed some more typos * added Submenu "Account Wizardry" to glade file and "New Account..." As first menuitem thereof * added dynamic generation for this submenu (from the list of accounts) proposals for other names for "Account Wizardry" welcome :-) pmo-trunk-r185 --- src/gtk-glade/modest-ui-wizard.c | 44 ++++++++++++++++++++++++++++++++++---- src/gtk-glade/modest-ui-wizard.h | 6 ++++++ src/gtk-glade/modest-ui.c | 18 ++++++++++------ src/gtk-glade/modest.glade | 43 ++++++++++++++++++++++++------------- 4 files changed, 85 insertions(+), 26 deletions(-) diff --git a/src/gtk-glade/modest-ui-wizard.c b/src/gtk-glade/modest-ui-wizard.c index dbf20b2..d828771 100644 --- a/src/gtk-glade/modest-ui-wizard.c +++ b/src/gtk-glade/modest-ui-wizard.c @@ -112,15 +112,19 @@ gboolean advance_sanity_check(GtkWindow *parent, GladeXML *glade_xml, gint cp) return FALSE; } -gboolean wizard_account_add(GladeXML *glade_xml, ModestUIPrivate *priv) +gboolean wizard_account_add(GladeXML *glade_xml, ModestUI *modest_ui) { ModestAccountMgr *acc_mgr; ModestIdentityMgr *id_mgr; const gchar *account_name="default"; - ModestConf *conf=priv->modest_conf; + ModestUIPrivate *priv; + ModestConf *conf; gchar *tmptext; - g_return_if_fail (conf); + g_return_if_fail (MODEST_IS_UI(modest_ui)); + priv = MODEST_UI_GET_PRIVATE(MODEST_UI(modest_ui)); + conf = priv->modest_conf; + acc_mgr = MODEST_ACCOUNT_MGR(modest_account_mgr_new (conf)); if (!acc_mgr) { @@ -186,6 +190,7 @@ void wizard_account_dialog(ModestUI *modest_ui) gint finishallowed=0; gboolean account_added_successfully; + g_return_if_fail(MODEST_IS_UI(modest_ui)); priv = MODEST_UI_GET_PRIVATE(MODEST_UI(modest_ui)); glade_xml = glade_xml_new(MODEST_GLADE, "account_wizard", NULL); @@ -238,7 +243,7 @@ void wizard_account_dialog(ModestUI *modest_ui) gtk_notebook_prev_page(GTK_NOTEBOOK(Notebook)); break; case GTK_RESPONSE_ACCEPT: - account_added_successfully=wizard_account_add(glade_xml, priv); + account_added_successfully=wizard_account_add(glade_xml, modest_ui); break; default: account_added_successfully=FALSE; @@ -257,3 +262,34 @@ void new_wizard_account (GtkWidget *widget, wizard_account_dialog(MODEST_UI(user_data)); } +void setup_account_wizardry_menu (GtkWidget *menu, + ModestUI *modest_ui) +{ + ModestUIPrivate *priv; + gint retval; + GSList *account_name_list; + GSList *account_name_list_iter; + GtkWidget *awidget; + gint menucounter; + + g_return_if_fail(MODEST_IS_UI(modest_ui)); + priv = MODEST_UI_GET_PRIVATE(MODEST_UI(modest_ui)); + + account_name_list=modest_account_mgr_account_names(priv->modest_acc_mgr, NULL); + + menucounter=1; /* The first item is supposed to be the "New Account..." item. */ + for (account_name_list_iter=account_name_list; + account_name_list_iter!=NULL; + account_name_list_iter=g_slist_next(account_name_list_iter)) + { + awidget=gtk_menu_item_new_with_label(account_name_list_iter->data); + gtk_widget_show(awidget); + gtk_menu_attach(GTK_MENU(menu), + awidget, + 0, 1, menucounter, menucounter+1); + } + + g_slist_free(account_name_list); +} + + diff --git a/src/gtk-glade/modest-ui-wizard.h b/src/gtk-glade/modest-ui-wizard.h index 254bee0..bb97ff8 100644 --- a/src/gtk-glade/modest-ui-wizard.h +++ b/src/gtk-glade/modest-ui-wizard.h @@ -4,8 +4,14 @@ #ifndef __MODEST_UI_WIZZARD_H__ #define __MODEST_UI_WIZZARD_H__ +#include "modest-ui-glade.h" + void new_wizard_account (GtkWidget *, gpointer); +void setup_account_wizardry_menu(GtkWidget *, + ModestUI *); + + #endif /* __MODEST_UI_WIZZARD_H__ */ diff --git a/src/gtk-glade/modest-ui.c b/src/gtk-glade/modest-ui.c index 85d6e6c..53e5b59 100644 --- a/src/gtk-glade/modest-ui.c +++ b/src/gtk-glade/modest-ui.c @@ -256,7 +256,8 @@ modest_ui_show_main_window (ModestUI *modest_ui) GtkWidget *message_view; GtkWidget *account_settings_item; GtkWidget *new_account_item; - GtkWidget *delete_item; + GtkWidget *delete_item; + GtkWidget *AccountWizardryMenu; GtkWidget *folder_view_holder, *header_view_holder, @@ -306,7 +307,10 @@ modest_ui_show_main_window (ModestUI *modest_ui) g_signal_connect (header_view, "message_selected", G_CALLBACK(on_message_clicked), - modest_ui); + modest_ui); + + AccountWizardryMenu=glade_xml_get_widget(priv->glade_xml, "AccountWizardry_menu"); + setup_account_wizardry_menu(AccountWizardryMenu, modest_ui); account_settings_item = glade_xml_get_widget (priv->glade_xml, "AccountSettingsMenuItem"); if (!account_settings_item) @@ -318,17 +322,17 @@ modest_ui_show_main_window (ModestUI *modest_ui) G_CALLBACK(on_account_settings1_activate), modest_ui); - new_account_item = glade_xml_get_widget (priv->glade_xml, "NewAccountWizzardMenuItem"); + new_account_item = glade_xml_get_widget (priv->glade_xml, "NewAccountWizardMenuItem"); if (!new_account_item) { g_warning ("The new account item isn't available!\n"); return FALSE; } -/* + g_signal_connect (new_account_item, "activate", - G_CALLBACK(on_new_account1_activate), + G_CALLBACK(new_wizard_account), modest_ui); -*/ + delete_item = glade_xml_get_widget (priv->glade_xml, "delete1"); if (!delete_item) { @@ -501,7 +505,7 @@ modest_ui_new_edit_window (ModestUI *modest_ui, const gchar* to, modest_window_mgr_register (priv->modest_window_mgr, G_OBJECT(win), MODEST_EDIT_WINDOW, 0); } - + to_entry = glade_xml_get_widget (priv->glade_xml, "to_entry"); subject_entry = glade_xml_get_widget (priv->glade_xml, "subject_entry"); body_view = glade_xml_get_widget (priv->glade_xml, "body_view"); diff --git a/src/gtk-glade/modest.glade b/src/gtk-glade/modest.glade index 0e6a27a..e70b112 100644 --- a/src/gtk-glade/modest.glade +++ b/src/gtk-glade/modest.glade @@ -40,7 +40,7 @@ True - + @@ -136,7 +136,7 @@ True - + @@ -237,7 +237,7 @@ True - + @@ -302,7 +302,7 @@ True Outbox True - False + True inbox1 @@ -313,7 +313,7 @@ True Drafts True - False + True inbox1 @@ -324,7 +324,7 @@ True Sent True - False + True inbox1 @@ -335,7 +335,7 @@ True Archive True - False + True inbox1 @@ -352,7 +352,7 @@ True - + @@ -435,7 +435,7 @@ - + @@ -476,7 +476,7 @@ - + @@ -494,11 +494,24 @@ - + True - New account... + Account Wizardry True - + + + + + + + True + New account... + True + + + + + @@ -561,7 +574,7 @@ True - + @@ -3817,7 +3830,7 @@ True - + True False 0 -- 1.7.9.5