Modified webpage: now tinymail repository is in gitorious.
[modest] / src / modest-platform.h
index 8ce6607..f92e0cc 100644 (file)
@@ -34,7 +34,8 @@
 #include "widgets/modest-window.h"
 #include "widgets/modest-folder-view.h"
 #include "widgets/modest-sort-criterium-view.h"
-#ifndef MODEST_TOOLKIT_GTK
+#ifdef MODEST_PLATFORM_MAEMO
+#include <dbus/dbus.h>
 #include <libosso.h>
 #endif
 
@@ -46,7 +47,7 @@ typedef enum _ModestConfirmationDialogType {
 
 typedef enum _ModestConnectedVia {
        MODEST_CONNECTED_VIA_WLAN_OR_WIMAX = 1,
-       MODEST_CONNECTED_VIA_ANY,
+       MODEST_CONNECTED_VIA_ANY = 2,
 } ModestConnectedVia;
 
 #define MODEST_GTK_RESPONSE_NEW_FOLDER 1
@@ -182,7 +183,7 @@ gint      modest_platform_run_new_folder_dialog        (GtkWindow *parent_window
  * 
  * Returns: the #GtkResponseType returned by the dialog
  **/
-gint      modest_platform_run_rename_folder_dialog        (GtkWindow *parent_window,
+gint      modest_platform_run_rename_folder_dialog        (ModestWindow *parent_window,
                                                           TnyFolderStore *parent,
                                                           const gchar *current_name,
                                                           gchar **folder_name);
@@ -304,13 +305,13 @@ void modest_platform_push_email_notification(void);
 
 /**
  * modest_platform_on_new_headers_received:
- * @header_list: the list of new received headers
+ * @header_list: a list of #ModestMsgNotificationData
  * @show_visual: adds a visual notification 
  *
  * Performs the required actions when new headers are
  * received. Tipically it's useful for showing new email notifications
  **/
-void modest_platform_on_new_headers_received (TnyList *header_list,
+void modest_platform_on_new_headers_received (GList *URI_list,
                                              gboolean show_visual);
 
 /**
@@ -346,6 +347,10 @@ void modest_platform_information_banner (GtkWidget *widget,
                                         const gchar *icon_name,
                                         const gchar *text);
 
+void modest_platform_system_banner (GtkWidget *widget,
+                                   const gchar *icon_name,
+                                   const gchar *text);
+
 /* Timeout is in miliseconds */
 void modest_platform_information_banner_with_timeout (GtkWidget *parent,
                                                      const gchar *icon_name,
@@ -400,10 +405,11 @@ gboolean modest_platform_run_alert_dialog (const gchar* prompt, gboolean is_ques
 /**
  * modest_platform_remove_new_mail_notifications:
  * @only_visuals: remove only the visual notifications (like LEDs)
+ * @acc_name: account to remove notifications
  *
  * Removes all the active new mail notifications
  **/
-void modest_platform_remove_new_mail_notifications (gboolean only_visuals);
+void modest_platform_remove_new_mail_notifications (gboolean only_visuals, const gchar *acc_name);
 
 /* ModestConnectedPerformer:
  * @canceled: whether or not the user canceled
@@ -416,7 +422,7 @@ void modest_platform_remove_new_mail_notifications (gboolean only_visuals);
  */
 typedef void (*ModestConnectedPerformer) (gboolean canceled, 
                                          GError *err,
-                                         GtkWindow *parent_window, 
+                                         ModestWindow *parent_window,
                                          TnyAccount *account, 
                                          gpointer user_data);
 
@@ -439,10 +445,10 @@ typedef struct {
  * call of @callback. While making a connection, @account, if not NULL, will go online too. If
  * @account is NULL, only a network connection is made using the platform's device.
  */            
-void modest_platform_connect_and_perform (GtkWindow *parent_window, 
+void modest_platform_connect_and_perform (ModestWindow *parent_window,
                                          gboolean force,
-                                         TnyAccount *account, 
-                                         ModestConnectedPerformer callback, 
+                                         TnyAccount *account,
+                                         ModestConnectedPerformer callback,
                                          gpointer user_data);
                
 /*
@@ -456,10 +462,10 @@ void modest_platform_connect_and_perform (GtkWindow *parent_window,
  * folder store uses the network. For instance, this just returns for local maildir folders. It
  * will in that case synchronously and instantly perform the @callback
  */
-void modest_platform_connect_if_remote_and_perform (GtkWindow *parent_window, 
+void modest_platform_connect_if_remote_and_perform (ModestWindow *parent_window,
                                                    gboolean force,
                                                    TnyFolderStore *folder_store,
-                                                   ModestConnectedPerformer callback, 
+                                                   ModestConnectedPerformer callback,
                                                    gpointer user_data);
 
 /*
@@ -470,7 +476,7 @@ void modest_platform_connect_if_remote_and_perform (GtkWindow *parent_window,
  * @info: 
  * 
  */
-void modest_platform_double_connect_and_perform (GtkWindow *parent_window, 
+void modest_platform_double_connect_and_perform (ModestWindow *parent_window,
                                                 gboolean force,
                                                 TnyFolderStore *folder_store,
                                                 DoubleConnectionInfo *info);
@@ -519,11 +525,15 @@ void     modest_platform_run_folder_details_dialog (GtkWindow *parent_window,
  * modest_platform_run_header_details_dialog:
  * @parent_window: the parent #GtkWindow for the new dialog
  * @header: the #TnyHeader whose details will be shown
+ * @async_get_size: %TRUE if size is obtained asynchronously from @msg
+ * @msg: a #TnyMsg
  *
  * Shows the header details dialog
  **/
 void     modest_platform_run_header_details_dialog (GtkWindow *parent_window,
-                                                   TnyHeader *header);
+                                                   TnyHeader *header,
+                                                   gboolean async_get_size,
+                                                   TnyMsg *msg);
 
 /**
  * modest_platform_on_runtime_initialized:
@@ -534,7 +544,7 @@ void     modest_platform_run_header_details_dialog (GtkWindow *parent_window,
  **/
 void     modest_platform_on_runtime_initialized ();
 
-#ifndef MODEST_TOOLKIT_GTK
+#ifdef MODEST_PLATFORM_MAEMO
 /**
  * modest_platform_get_osso_context:
  *
@@ -552,6 +562,15 @@ GtkWidget* modest_platform_create_move_to_dialog (GtkWindow *parent_window,
 
 TnyList* modest_platform_get_list_to_move (ModestWindow *window);
 
+#ifdef MODEST_PLATFORM_MAEMO
+DBusConnection* modest_platform_get_dbus_connection (void);
+#endif
+
+void modest_platform_emit_folder_updated_signal (const gchar *account_id, const gchar *folder_id);
+void modest_platform_emit_account_created_signal (const gchar *account_id);
+void modest_platform_emit_account_removed_signal (const gchar *account_id);
+void modest_platform_emit_msg_read_changed_signal (const gchar *msg_uid, gboolean is_read);
+
 G_END_DECLS
 
 #endif /* __MODEST_PLATFORM_UTILS_H__ */