aboutsummaryrefslogtreecommitdiffstats
path: root/camel/camel-folder.c
diff options
context:
space:
mode:
authorbertrand <Bertrand.Guiheneuf@aful.org>1999-08-13 23:30:45 +0800
committerBertrand Guiheneuf <bertrand@src.gnome.org>1999-08-13 23:30:45 +0800
commitc232c3eeaaf85c3e92a1c6bf7a802f7ffee30451 (patch)
treeccc9a01d37252abf14639fc1f30cc1f8f900f080 /camel/camel-folder.c
parent0472611db8f67bb0c4fc09138e1131802d85b9c3 (diff)
downloadgsoc2013-evolution-c232c3eeaaf85c3e92a1c6bf7a802f7ffee30451.tar.gz
gsoc2013-evolution-c232c3eeaaf85c3e92a1c6bf7a802f7ffee30451.tar.zst
gsoc2013-evolution-c232c3eeaaf85c3e92a1c6bf7a802f7ffee30451.zip
new method, returns the list of permanent flags supported by the folder.
1999-08-13 bertrand <Bertrand.Guiheneuf@aful.org> * camel/camel-folder.c (_get_parmanent_flag_list): (camel_folder_get_parmanent_flag_list): new method, returns the list of permanent flags supported by the folder. * camel/camel-mime-message.c (_get_flag_list): (camel_mime_message_get_flag_list): new method, return the list of flag name used by this message. svn path=/trunk/; revision=1111
Diffstat (limited to 'camel/camel-folder.c')
-rw-r--r--camel/camel-folder.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/camel/camel-folder.c b/camel/camel-folder.c
index 1ea2a7247b..271b5e1644 100644
--- a/camel/camel-folder.c
+++ b/camel/camel-folder.c
@@ -53,6 +53,8 @@ static GList *_expunge (CamelFolder *folder);
static CamelMimeMessage *_get_message (CamelFolder *folder, gint number);
static gint _get_message_count (CamelFolder *folder);
static gint _append_message (CamelFolder *folder, CamelMimeMessage *message);
+static const GList *_list_permanent_flags (CamelFolder *folder);
+
static void _finalize (GtkObject *object);
@@ -85,6 +87,7 @@ camel_folder_class_init (CamelFolderClass *camel_folder_class)
camel_folder_class->get_message = _get_message;
camel_folder_class->get_message_count = _get_message_count;
camel_folder_class->append_message = _append_message;
+ camel_folder_class->list_permanent_flags = _list_permanent_flags;
/* virtual method overload */
gtk_object_class->finalize = _finalize;
@@ -129,7 +132,8 @@ _finalize (GtkObject *object)
if (camel_folder->name) g_free (camel_folder->name);
if (camel_folder->full_name) g_free (camel_folder->full_name);
-
+ if (camel_folder->permanent_flags) g_free (camel_folder->permanent_flags);
+
GTK_OBJECT_CLASS (parent_class)->finalize (object);
CAMEL_LOG_FULL_DEBUG ("Leaving CamelFolder::finalize\n");
}
@@ -817,3 +821,17 @@ gint camel_folder_append_message (CamelFolder *folder, CamelMimeMessage *message
{
return CF_CLASS (folder)->append_message (folder, message);
}
+
+
+static const GList *
+_list_permanent_flags (CamelFolder *folder)
+{
+ return folder->permanent_flags;
+}
+
+
+const GList *
+camel_folder_list_permanent_flags (CamelFolder *folder)
+{
+ return CF_CLASS (folder)->list_permanent_flags (folder);
+}