aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-storage-set.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2000-05-14 09:32:19 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2000-05-14 09:32:19 +0800
commit7198aa064a8fc90389087c6704149e19bee51a43 (patch)
tree585f055ab291bf5e21626ceb32ed740a44e65d0b /shell/e-storage-set.c
parent8dea04ca5e0bef9db235e7f2e44a23b61be24e0f (diff)
downloadgsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar.gz
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar.bz2
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar.lz
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar.xz
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.tar.zst
gsoc2013-evolution-7198aa064a8fc90389087c6704149e19bee51a43.zip
Initial implementation of the tree view for the folders.
svn path=/trunk/; revision=3020
Diffstat (limited to 'shell/e-storage-set.c')
-rw-r--r--shell/e-storage-set.c40
1 files changed, 37 insertions, 3 deletions
diff --git a/shell/e-storage-set.c b/shell/e-storage-set.c
index df1096695d..6fcb4c24ba 100644
--- a/shell/e-storage-set.c
+++ b/shell/e-storage-set.c
@@ -33,6 +33,7 @@
#include "e-util/e-util.h"
+#include "e-storage-set-view.h"
#include "e-storage-set.h"
@@ -50,6 +51,8 @@ static guint signals[LAST_SIGNAL] = { 0 };
struct _EStorageSetPrivate {
GList *storages;
+
+ EFolderTypeRepository *folder_type_repository;
};
@@ -66,6 +69,8 @@ destroy (GtkObject *object)
e_free_object_list (priv->storages);
+ gtk_object_unref (GTK_OBJECT (priv->folder_type_repository));
+
g_free (priv);
(* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
@@ -111,28 +116,33 @@ init (EStorageSet *storage_set)
priv = g_new (EStorageSetPrivate, 1);
priv->storages = NULL;
+ priv->folder_type_repository = NULL;
storage_set->priv = priv;
}
void
-e_storage_set_construct (EStorageSet *storage_set)
+e_storage_set_construct (EStorageSet *storage_set,
+ EFolderTypeRepository *folder_type_repository)
{
g_return_if_fail (storage_set != NULL);
g_return_if_fail (E_IS_STORAGE_SET (storage_set));
GTK_OBJECT_UNSET_FLAGS (storage_set, GTK_FLOATING);
+
+ gtk_object_ref (GTK_OBJECT (folder_type_repository));
+ storage_set->priv->folder_type_repository = folder_type_repository;
}
EStorageSet *
-e_storage_set_new (void)
+e_storage_set_new (EFolderTypeRepository *folder_type_repository)
{
EStorageSet *new;
new = gtk_type_new (e_storage_set_get_type ());
- e_storage_set_construct (new);
+ e_storage_set_construct (new, folder_type_repository);
return new;
}
@@ -263,4 +273,28 @@ e_storage_set_get_folder (EStorageSet *storage_set,
}
+GtkWidget *
+e_storage_set_new_view (EStorageSet *storage_set)
+{
+ GtkWidget *storage_set_view;
+
+ g_return_val_if_fail (storage_set != NULL, NULL);
+ g_return_val_if_fail (E_IS_STORAGE_SET (storage_set), NULL);
+
+ storage_set_view = e_storage_set_view_new (storage_set);
+
+ return storage_set_view;
+}
+
+
+EFolderTypeRepository *
+e_storage_set_get_folder_type_repository (EStorageSet *storage_set)
+{
+ g_return_val_if_fail (storage_set != NULL, NULL);
+ g_return_val_if_fail (E_IS_STORAGE_SET (storage_set), NULL);
+
+ return storage_set->priv->folder_type_repository;
+}
+
+
E_MAKE_TYPE (e_storage_set, "EStorageSet", EStorageSet, class_init, init, PARENT_TYPE)