Changeset 5
- Timestamp:
- 10/28/07 02:34:09
- Files:
-
- trunk/src/tmut-menu-view.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/tmut-menu-view.c
r4 r5 21 21 #include "tmut-folder-view.h" 22 22 23 24 23 #include <tny-gtk-folder-store-tree-model.h> 25 24 #include <tny-gtk-account-list-model.h> … … 35 34 GtkProgress *progress; 36 35 GtkComboBox *accounts_combo; 36 TMutFolderView *folder_view; 37 37 }; 38 38 … … 103 103 } 104 104 105 static void 106 on_folder_view_destroy (GtkWidget *widget, gpointer user_data) 107 { 108 TMutMenuViewPriv *priv = TMUT_MENU_VIEW_GET_PRIVATE (user_data); 109 priv->folder_view = NULL; 110 return; 111 } 112 105 113 static void 106 114 on_folder_changed (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) 107 115 { 108 TMutMenuViewPriv *priv = TMUT_MENU_VIEW_GET_PRIVATE (user_data); 116 TMutMenuView *self = TMUT_MENU_VIEW (user_data); 117 TMutMenuViewPriv *priv = TMUT_MENU_VIEW_GET_PRIVATE (self); 109 118 GtkTreeSelection *selection = gtk_tree_view_get_selection (treeview); 110 119 … … 123 132 { 124 133 TnyFolder *folder; 125 TMutFolderView *folder_view;126 134 127 135 gtk_tree_model_get (model, &iter, … … 129 137 &folder, -1); 130 138 131 folder_view = tmut_folder_view_new (priv->progress); 132 tmut_folder_view_set_active_folder (folder_view, folder); 133 gtk_widget_show (GTK_WIDGET (folder_view)); 139 if (!priv->folder_view) { 140 priv->folder_view = tmut_folder_view_new (priv->progress); 141 g_signal_connect (G_OBJECT (priv->folder_view), "destroy", 142 G_CALLBACK (on_folder_view_destroy), self); 143 } 144 145 tmut_folder_view_set_active_folder (priv->folder_view, folder); 146 gtk_widget_show (GTK_WIDGET (priv->folder_view)); 134 147 135 148 g_object_unref (folder); … … 163 176 164 177 priv->progress = NULL; 178 priv->folder_view = NULL; 165 179 166 180 priv->accounts_combo = GTK_COMBO_BOX (gtk_combo_box_new ()); … … 218 232 { 219 233 TMutMenuViewPriv *priv = TMUT_MENU_VIEW_GET_PRIVATE (object); 234 235 if (priv->folder_view) 236 gtk_widget_destroy (GTK_WIDGET (priv->folder_view)); 220 237 221 238 if (priv->progress)
