Refactored the "Move to..." dialog
[modest] / src / gnome / modest-platform.c
index 3d77dcb..400dbfc 100644 (file)
@@ -41,6 +41,7 @@
 #include "widgets/modest-account-settings-dialog.h"
 #include "gnome/modest-account-assistant.h"
 #include "gnome/modest-gnome-sort-dialog.h"
+#include "widgets/modest-details-dialog.h"
 
 gboolean
 modest_platform_init (int argc, char *argv[])
@@ -511,3 +512,70 @@ gboolean modest_platform_check_memory_low (ModestWindow *win,
        g_debug ("%s not implemented", __FUNCTION__);
        return FALSE;
 }
+
+void 
+modest_platform_run_folder_details_dialog (GtkWindow *parent_window,
+                                          TnyFolder *folder)
+{
+       GtkWidget *dialog;
+       
+       /* Create dialog */
+       dialog = modest_details_dialog_new_with_folder (parent_window, folder);
+
+       /* Run dialog */
+       modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
+                                    GTK_WINDOW (dialog), 
+                                    parent_window);
+       gtk_widget_show_all (dialog);
+
+       g_signal_connect_swapped (dialog, "response", 
+                                 G_CALLBACK (gtk_widget_destroy),
+                                 dialog);
+}
+
+void
+modest_platform_run_header_details_dialog (GtkWindow *parent_window,
+                                          TnyHeader *header)
+{
+       GtkWidget *dialog;
+       
+       /* Create dialog */
+       dialog = modest_details_dialog_new_with_header (parent_window, header);
+
+       /* Run dialog */
+       modest_window_mgr_set_modal (modest_runtime_get_window_mgr (), 
+                                    GTK_WINDOW (dialog),
+                                    parent_window);
+       gtk_widget_show_all (dialog);
+
+       g_signal_connect_swapped (dialog, "response", 
+                                 G_CALLBACK (gtk_widget_destroy),
+                                 dialog);
+}
+
+GtkWidget* 
+modest_platform_create_move_to_dialog (GtkWindow *parent_window,
+                                      GtkWidget **folder_view_container)
+{
+       GtkWidget *dialog;
+
+       dialog = gtk_dialog_new_with_buttons (_("mcen_ti_moveto_folders_title"),
+                                             GTK_WINDOW (parent_window),
+                                             GTK_DIALOG_MODAL | GTK_DIALOG_NO_SEPARATOR |
+                                             GTK_DIALOG_DESTROY_WITH_PARENT,
+                                             _("mcen_bd_dialog_ok"), GTK_RESPONSE_OK,
+                                             _("mcen_bd_new"), MODEST_GTK_RESPONSE_NEW_FOLDER,
+                                             _("mcen_bd_dialog_cancel"), GTK_RESPONSE_CANCEL,
+                                             NULL);
+
+       /* Create pannable and add it to the dialog */
+       *folder_view_container = gtk_scrolled_window_new (NULL, NULL);
+       gtk_scrolled_window_set_policy  (GTK_SCROLLED_WINDOW (*folder_view_container),
+                                        GTK_POLICY_AUTOMATIC,
+                                        GTK_POLICY_AUTOMATIC);
+       gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), *folder_view_container);
+
+       gtk_window_set_default_size (GTK_WINDOW (dialog), 300, 300);
+
+       return dialog;
+}