* Add update method to ModestTnyFolderTreeView.
authorFlorian Boor <florian@kernelconcepts.de>
Tue, 20 Jun 2006 12:50:24 +0000 (12:50 +0000)
committerFlorian Boor <florian@kernelconcepts.de>
Tue, 20 Jun 2006 12:50:24 +0000 (12:50 +0000)
* Use update method in case of account changes. Open: restore current view if possible.

pmo-trunk-r289

src/gtk-glade/modest-ui.c
src/modest-tny-folder-tree-view.c
src/modest-tny-folder-tree-view.h

index 0077c97..5ac7c4e 100644 (file)
@@ -92,12 +92,6 @@ modest_ui_class_init (ModestUIClass *klass)
 
        g_type_class_add_private (gobject_class, sizeof(ModestUIPrivate));
 
-       /* signal definitions go here, e.g.: */
-/*     signals[MY_SIGNAL_1] = */
-/*             g_signal_new ("my_signal_1",....); */
-/*     signals[MY_SIGNAL_2] = */
-/*             g_signal_new ("my_signal_2",....); */
-/*     etc. */
 }
 
 
@@ -146,7 +140,9 @@ on_accounts_reloaded (ModestTnyAccountStore *account_store, gpointer user_data)
 {
        ModestUIPrivate *priv = user_data;
        
-       
+       g_return_if_fail (MODEST_IS_TNY_FOLDER_TREE_VIEW (priv->folder_view));
+       
+       modest_tny_folder_tree_view_update_model(priv->folder_view, account_store);
 }
 
 
index 9960119..0db42ce 100644 (file)
@@ -80,6 +80,8 @@ modest_tny_folder_tree_view_class_init (ModestTnyFolderTreeViewClass *klass)
 
        parent_class            = g_type_class_peek_parent (klass);
        gobject_class->finalize = modest_tny_folder_tree_view_finalize;
+       
+       klass->update_model = modest_tny_folder_tree_view_update_model;
 
        g_type_class_add_private (gobject_class,
                                  sizeof(ModestTnyFolderTreeViewPrivate));
@@ -362,7 +364,7 @@ update_model_empty (ModestTnyFolderTreeView *self)
 
 
 static gboolean
-update_model (ModestTnyFolderTreeView *self,TnyAccountStoreIface *iface)
+update_model (ModestTnyFolderTreeView *self, TnyAccountStoreIface *iface)
 {
        const GList *accounts;
        TnyAccountTreeModel *folder_model;
@@ -451,5 +453,11 @@ selection_changed (GtkTreeSelection *sel, gpointer user_data)
 }
 
 
-
-
+gboolean
+modest_tny_folder_tree_view_update_model(ModestTnyFolderTreeView *self, 
+                                         TnyAccountStoreIface *iface)
+{
+       g_return_val_if_fail (MODEST_IS_TNY_FOLDER_TREE_VIEW (self), FALSE);
+       
+       return update_model (self, iface);
+}
index ba382d2..4821409 100644 (file)
@@ -33,6 +33,10 @@ struct _ModestTnyFolderTreeViewClass {
        void (*folder_selected) (ModestTnyFolderTreeView* self,
                                 TnyMsgFolderIface *folder,
                                 gpointer user_data);
+                                
+       gboolean (*update_model) (ModestTnyFolderTreeView *self, 
+                                 TnyAccountStoreIface *iface);
+
 };
 
 
@@ -70,6 +74,19 @@ GtkWidget*   modest_tny_folder_tree_view_new         (TnyAccountStoreIface *ifac
 gboolean     modest_tny_folder_tree_view_is_empty    (ModestTnyFolderTreeView *self);
 
 
+/**
+ * modest_tny_folder_tree_view_update_model:
+ * @self: a #ModestTnyFolderTreeView instance
+ * @iface: a #TnyAccountStoreIface instance
+ * 
+ * Update the thee model from a given account store.
+ *  
+ * Returns: TRUE on success, FALSE otherwise
+ */
+gboolean     modest_tny_folder_tree_view_update_model(ModestTnyFolderTreeView *self, 
+                                         TnyAccountStoreIface *iface);
+
+
 G_END_DECLS
 
 #endif /* __MODEST_TNY_FOLDER_TREE_VIEW_H__ */