* account setup dialog is now handled correctly after it is closed
[modest] / src / gtk-glade / modest-ui.c
index e96defe..262b01e 100644 (file)
@@ -43,6 +43,8 @@ static GtkWidget* modest_main_window_folder_tree (ModestAccountMgr *modest_acc_m
 static GtkWidget* modest_main_window_header_tree (TnyMsgFolderIface *folder);
 
 
+static void on_account_settings1_activate (GtkMenuItem *,
+                                          gpointer);
 static void on_password_requested (ModestTnyAccountStore *account_store,
                                   const gchar *account_name, gpointer user_data);
 
@@ -202,6 +204,10 @@ modest_ui_new (ModestConf *modest_conf)
                return NULL;
        }
 
+       /* FIXME: could be used, but doesn't work atm.
+        * glade_xml_signal_autoconnect(priv->glade_xml);
+        */
+
        priv->modest_acc_mgr = modest_acc_mgr;
        g_object_ref (priv->modest_conf = modest_conf);
 
@@ -223,10 +229,11 @@ modest_ui_show_main_window (ModestUI *modest_ui)
        ModestUIPrivate *priv;
        GtkWidget     *folder_view, *header_view;
        GtkWidget     *message_view;
+       GtkWidget *account_settings_item;
 
        GtkWidget  *folder_view_holder,
                *header_view_holder,
-               *message_view_holder;
+               *mail_paned;
 
        priv = MODEST_UI_GET_PRIVATE(modest_ui);
 
@@ -263,16 +270,27 @@ modest_ui_show_main_window (ModestUI *modest_ui)
                          G_CALLBACK(on_folder_clicked), modest_ui);
 
        message_view  = GTK_WIDGET(modest_tny_msg_view_new (NULL));
-       message_view_holder = glade_xml_get_widget (priv->glade_xml, "mail_view");
+       mail_paned = glade_xml_get_widget (priv->glade_xml, "mail_paned");
        if (!message_view) {
                g_warning ("failed to create message view");
                return FALSE;
        }
-       gtk_container_add (GTK_CONTAINER(message_view_holder), message_view);
+       gtk_paned_add2 (GTK_PANED(mail_paned), message_view);
 
        g_signal_connect (header_view, "message_selected",
                          G_CALLBACK(on_message_clicked),
-                         modest_ui);
+                         modest_ui);
+
+       account_settings_item = glade_xml_get_widget (priv->glade_xml, "account_settings1");
+       if (!account_settings_item)
+       {
+               g_warning ("The account settings item isn't available!\n");
+               return FALSE;
+       }
+
+       g_signal_connect (account_settings_item, "activate",
+                         G_CALLBACK(on_account_settings1_activate),
+                         modest_ui);
 
        register_toolbar_callbacks (modest_ui);
 
@@ -384,6 +402,24 @@ modest_ui_last_window_closed (GObject *obj, gpointer data)
 }
 
 
+static void
+on_account_settings1_activate (GtkMenuItem *menuitem,
+                              gpointer user_data)
+{
+       GtkWidget *advanced_account_setup;
+       ModestUIPrivate *priv;
+       gint retval;
+
+       priv = MODEST_UI_GET_PRIVATE(MODEST_UI(user_data));
+
+       advanced_account_setup = glade_xml_get_widget(priv->glade_xml, "mailbox_setup_advanced");
+
+       gtk_widget_show_all(GTK_WIDGET(advanced_account_setup));
+
+       retval=gtk_dialog_run(GTK_DIALOG(advanced_account_setup));
+
+        gtk_widget_hide(GTK_WIDGET(advanced_account_setup));
+}
 
 
 static void
@@ -418,7 +454,7 @@ static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
                                TnyMsgIface *message,
                                gpointer data)
 {
-       GtkWidget *scrollview;
+       GtkWidget *paned;
        ModestTnyMsgView *msg_view;
        ModestUIPrivate *priv;
 
@@ -426,10 +462,8 @@ static void on_message_clicked (ModestTnyFolderTreeView *folder_tree,
        g_return_if_fail (data);
 
        priv = MODEST_UI_GET_PRIVATE(data);
-       scrollview = glade_xml_get_widget (priv->glade_xml,"mail_view");
-
-       msg_view = MODEST_TNY_MSG_VIEW(
-               gtk_bin_get_child(GTK_BIN(scrollview)));
+       paned = glade_xml_get_widget (priv->glade_xml,"mail_paned");
+       msg_view = MODEST_TNY_MSG_VIEW(gtk_paned_get_child2 (GTK_PANED(paned)));
 
        modest_tny_msg_view_set_message (msg_view,
                                         message);
@@ -447,7 +481,6 @@ on_password_requested (ModestTnyAccountStore *account_store,
        gint retval;
        const gchar *infostring=g_strconcat("Please enter the password for ", account_name, ".", NULL);
 
-
        passdialog = gtk_dialog_new_with_buttons("MyDialog",
                                                 NULL,
                                                 GTK_DIALOG_MODAL|GTK_DIALOG_DESTROY_WITH_PARENT,
@@ -478,7 +511,9 @@ on_password_requested (ModestTnyAccountStore *account_store,
                                                             NULL);
                break;
        case GTK_RESPONSE_CANCEL:
-               g_message("Dann halt nich!\n");
+               /* FIXME:
+                * What happens, if canceled?"
+                */
                break;
        }