* update for new progress update in tinymail
authorDirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
Fri, 8 Dec 2006 17:55:09 +0000 (17:55 +0000)
committerDirk-Jan C. Binnema <dirk-jan.binnema@nokia.com>
Fri, 8 Dec 2006 17:55:09 +0000 (17:55 +0000)
pmo-trunk-r526

src/modest-widget-factory.c
src/widgets/modest-header-view.c
src/widgets/modest-header-view.h

index f26bef2..df93f8a 100644 (file)
@@ -58,7 +58,7 @@ static void on_folder_key_press_event  (ModestFolderView *header_view,
 static void on_message_selected        (ModestHeaderView *header_view, TnyMsg *msg,
                                        ModestWidgetFactory *self);
 static void on_header_status_update    (ModestHeaderView *header_view, const gchar *msg,
-                                       gint status_id, ModestWidgetFactory *self);
+                                       gint num, gint total, ModestWidgetFactory *self);
 static void on_msg_link_hover          (ModestMsgView *msgview, const gchar* link,
                                        ModestWidgetFactory *self);
 static void on_msg_link_clicked        (ModestMsgView *msgview, const gchar* link,
@@ -605,13 +605,18 @@ statusbar_push (ModestWidgetFactory *self, guint context_id, const gchar *msg)
 
 static void
 on_header_status_update (ModestHeaderView *header_view, const gchar *msg,
-                        gint status_id, ModestWidgetFactory *self)
+                        gint num, gint total, ModestWidgetFactory *self)
 {
        ModestWidgetFactoryPrivate *priv;
        
        priv = MODEST_WIDGET_FACTORY_GET_PRIVATE(self);
-                       
-       gtk_progress_bar_pulse (GTK_PROGRESS_BAR(priv->progress_bar));
+
+       if (total != 0)
+               gtk_progress_bar_set_fraction (GTK_PROGRESS_BAR(priv->progress_bar),
+                                              (gdouble)num/(gdouble)total);
+       else
+               gtk_progress_bar_pulse (GTK_PROGRESS_BAR(priv->progress_bar));
+
        statusbar_push (self, 0, msg);
 }
 
index 83926e2..af42d0a 100644 (file)
@@ -132,8 +132,8 @@ modest_header_view_class_init (ModestHeaderViewClass *klass)
                              G_SIGNAL_RUN_FIRST,
                              G_STRUCT_OFFSET (ModestHeaderViewClass,message_selected),
                              NULL, NULL,
-                             modest_marshal_VOID__STRING_INT,
-                             G_TYPE_NONE, 2, G_TYPE_STRING, G_TYPE_INT);       
+                             modest_marshal_VOID__STRING_INT_INT,
+                             G_TYPE_NONE, 3, G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT);   
 }
 
 static void
@@ -375,10 +375,11 @@ modest_header_view_set_columns (ModestHeaderView *self, const GList *columns)
        const GList *cursor;
        
        priv = MODEST_HEADER_VIEW_GET_PRIVATE(self); 
-       
+
+       /* FIXME: check whether these renderers need to be freed */
        renderer_msgtype = gtk_cell_renderer_pixbuf_new ();
        renderer_attach  = gtk_cell_renderer_pixbuf_new ();
-       renderer_header = gtk_cell_renderer_text_new (); 
+       renderer_header  = gtk_cell_renderer_text_new (); 
        
        remove_all_columns (self);
        
@@ -510,7 +511,7 @@ modest_header_view_finalize (GObject *obj)
        priv->headers       = NULL;
        priv->tny_folder    = NULL;
        
-       G_OBJECT_CLASS(parent_class)->finalize (obj);
+       //G_OBJECT_CLASS(parent_class)->finalize (obj);
 }
        
 GtkWidget*
@@ -700,7 +701,7 @@ cmp_rows (GtkTreeModel *tree_model, GtkTreeIter *iter1, GtkTreeIter *iter2,
                                                         MODEST_HEADER_VIEW_PTR);
                g_signal_emit (header_view,
                               signals[STATUS_UPDATE_SIGNAL],
-                              0, _("Sorting..."), 0);
+                              0, _("Sorting..."), 0, 0);
        }
        
        switch (col_id) {
@@ -860,7 +861,7 @@ on_refresh_folder (TnyFolder *folder, gboolean cancelled, GError **err,
 
 static void
 on_refresh_folder_status_update (TnyFolder *folder, const gchar *msg,
-                                gint status_id,  gpointer user_data)
+                                gint num, gint total,  gpointer user_data)
 {
        ModestHeaderView *self;
        ModestHeaderViewPrivate *priv;
@@ -869,7 +870,7 @@ on_refresh_folder_status_update (TnyFolder *folder, const gchar *msg,
        priv = MODEST_HEADER_VIEW_GET_PRIVATE(self);
 
        g_signal_emit (G_OBJECT(self), signals[STATUS_UPDATE_SIGNAL],
-                      0, msg, status_id);
+                      0, msg, num, total);
 }
 
 
index ed3465b..aaf7dac 100644 (file)
@@ -99,7 +99,7 @@ struct _ModestHeaderViewClass {
         * the progress indictation can be hidden */
        void (*status_update) (ModestHeaderView* self,
                               const gchar* msg,
-                              gint status,
+                              gint num, gint total,
                               gpointer user_data);
 };