+ gtk_widget_hide (GTK_WIDGET(modest_editwin));
+ modest_window_mgr_unregister(priv->modest_window_mgr, G_OBJECT(modest_editwin));
+ if (GTK_IS_WIDGET(modest_editwin)) {
+ gtk_widget_destroy(GTK_WIDGET(modest_editwin));
+ } else
+ g_warning("editor window has vanished!");
+}
+
+static void
+on_view_attachments_toggled(GtkWidget *widget, ModestUI *modest_ui)
+{
+ GtkWidget *view_attachments_item, *paned;
+ ModestTnyMsgView *msg_view;
+ ModestUIPrivate *priv;
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+ view_attachments_item = glade_xml_get_widget (priv->glade_xml, "menu_view_attachments");
+ g_return_if_fail(view_attachments_item);
+
+ modest_conf_set_bool(priv->modest_conf,
+ MODEST_CONF_MSG_VIEW_SHOW_ATTACHMENTS_INLINE,
+ gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(view_attachments_item)),
+ NULL);
+
+ /* refresh message view */
+ 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_redraw(MODEST_TNY_MSG_VIEW(msg_view));
+}
+static void
+on_delete_clicked (GtkWidget *widget, ModestUI *modest_ui)
+{
+ GtkTreeSelection *sel;
+ GtkWidget *paned;
+ GtkTreeModel *model;
+ GtkTreeIter iter;
+ GtkScrolledWindow *scroll;
+ GtkTreeModel *mymodel;
+
+ ModestTnyHeaderTreeView *header_view;
+ ModestTnyMsgView *msg_view;
+ ModestUIPrivate *priv;
+
+ g_return_if_fail (modest_ui);
+
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+
+ paned = glade_xml_get_widget (priv->glade_xml,"mail_paned");
+ g_return_if_fail (paned);
+
+ scroll = GTK_SCROLLED_WINDOW(gtk_paned_get_child1 (GTK_PANED(paned)));
+ g_return_if_fail (scroll);
+
+ msg_view = MODEST_TNY_MSG_VIEW(gtk_paned_get_child2 (GTK_PANED(paned)));
+ g_return_if_fail (msg_view);
+
+ header_view = MODEST_TNY_HEADER_TREE_VIEW(gtk_bin_get_child (GTK_BIN(scroll)));
+ g_return_if_fail (header_view);
+
+ sel = gtk_tree_view_get_selection (GTK_TREE_VIEW(header_view));
+ g_return_if_fail (sel);
+
+ /* get all selected mails */
+ if (G_LIKELY (gtk_tree_selection_get_selected (sel, &model, &iter)))
+ {
+ TnyMsgHeaderIface *header;
+
+ gtk_tree_model_get (model, &iter, TNY_MSG_HEADER_LIST_MODEL_INSTANCE_COLUMN,
+ &header, -1);
+
+ if (G_LIKELY (header))
+ {
+ TnyMsgFolderIface *folder;
+ // const TnyMsgIface *msg;
+
+ if (GTK_IS_TREE_MODEL_SORT (model))
+ {
+ mymodel = gtk_tree_model_sort_get_model
+ (GTK_TREE_MODEL_SORT (model));
+ } else
+ mymodel = model;
+
+ folder = (TnyMsgFolderIface*)tny_msg_header_iface_get_folder (header);
+
+ /* this will make the message as deleted */
+ /* tny_msg_folder_iface_expunge (folder); will finally delete messages */
+ if (TNY_IS_MSG_FOLDER (folder))
+ tny_msg_folder_iface_remove_message (folder, header);
+ gtk_widget_queue_draw (GTK_WIDGET (header_view));
+ }
+ }
+}
+
+static void
+on_sendreceive_button_clicked (GtkWidget *widget, ModestUI *modest_ui)
+{
+ ModestUIPrivate *priv;
+ ModestTnyStoreActions *store_actions;
+ TnyAccountStoreIface *account_store;
+ const GList *store_accounts;
+ const GList *iter;
+
+ g_return_if_fail (modest_ui);
+
+ store_actions = MODEST_TNY_STORE_ACTIONS (modest_tny_store_actions_new ());
+ priv = MODEST_UI_GET_PRIVATE(modest_ui);
+
+ account_store = priv->account_store;
+ store_accounts =
+ tny_account_store_iface_get_store_accounts (account_store);
+
+ for (iter = store_accounts; iter; iter = iter->next)
+ {
+ modest_tny_store_actions_update_folders (store_actions,
+ TNY_STORE_ACCOUNT_IFACE (iter->data));
+
+ }
+ g_object_unref (store_actions);