[evolution-data-server/wip/camel-more-gobject: 44/62] Add CamelVeeMessageInfo, descendant of CamelMessageInfo
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-data-server/wip/camel-more-gobject: 44/62] Add CamelVeeMessageInfo, descendant of CamelMessageInfo
- Date: Mon, 19 Sep 2016 11:12:37 +0000 (UTC)
commit 7eee75058cd4c9f726ecf292a15c68a7bf5329e6
Author: Milan Crha <mcrha redhat com>
Date: Fri Sep 2 20:31:53 2016 +0200
Add CamelVeeMessageInfo, descendant of CamelMessageInfo
camel/Makefile.am | 2 +
camel/camel-message-info.h | 4 +-
camel/camel-vee-message-info.c | 433 ++++++++++++++++++++++++++++++++++++++++
camel/camel-vee-message-info.h | 71 +++++++
camel/camel-vee-summary.h | 4 +-
camel/camel.h | 1 +
6 files changed, 511 insertions(+), 4 deletions(-)
---
diff --git a/camel/Makefile.am b/camel/Makefile.am
index 646fde3..f7a0cdd 100644
--- a/camel/Makefile.am
+++ b/camel/Makefile.am
@@ -170,6 +170,7 @@ libcamel_1_2_la_SOURCES = \
camel-utf8.c \
camel-vee-data-cache.c \
camel-vee-folder.c \
+ camel-vee-message-info.c \
camel-vee-store.c \
camel-vee-summary.c \
camel-vtrash-folder.c \
@@ -291,6 +292,7 @@ libcamelinclude_HEADERS = \
camel-utf8.h \
camel-vee-data-cache.h \
camel-vee-folder.h \
+ camel-vee-message-info.h \
camel-vee-store.h \
camel-vee-summary.h \
camel-vtrash-folder.h \
diff --git a/camel/camel-message-info.h b/camel/camel-message-info.h
index 5863d1d..6c4b163 100644
--- a/camel/camel-message-info.h
+++ b/camel/camel-message-info.h
@@ -105,7 +105,7 @@ struct _xCamelMessageInfoClass {
GObjectClass parent_class;
xCamelMessageInfo * (* clone) (const xCamelMessageInfo *mi,
- struct _CamelFolderSummary *summary);
+ struct _CamelFolderSummary *assign_summary);
guint32 (* get_flags) (const xCamelMessageInfo *mi);
gboolean (* set_flags) (xCamelMessageInfo *mi,
CamelMessageFlags flags,
@@ -187,7 +187,7 @@ xCamelMessageInfo *
xcamel_message_info_new (struct _CamelFolderSummary *summary);
xCamelMessageInfo *
xcamel_message_info_clone (const xCamelMessageInfo *mi,
- struct _CamelFolderSummary *summary);
+ struct _CamelFolderSummary *assign_summary);
struct _CamelFolderSummary *
xcamel_message_info_ref_summary (const xCamelMessageInfo *mi);
void xcamel_message_info_property_lock
diff --git a/camel/camel-vee-message-info.c b/camel/camel-vee-message-info.c
new file mode 100644
index 0000000..8c52b94
--- /dev/null
+++ b/camel/camel-vee-message-info.c
@@ -0,0 +1,433 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2016 Red Hat, Inc. (www.redhat.com)
+ *
+ * This library is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <stdio.h>
+
+#include "camel-folder-summary.h"
+#include "camel-message-info.h"
+#include "camel-string-utils.h"
+#include "camel-vee-summary.h"
+
+#include "camel-vee-message-info.h"
+
+struct _xCamelVeeMessageInfoPrivate {
+ CamelFolderSummary *orig_summary;
+};
+
+G_DEFINE_TYPE (xCamelVeeMessageInfo, xcamel_vee_message_info, XCAMEL_TYPE_MESSAGE_INFO)
+
+static xCamelMessageInfo *
+vee_message_info_clone (const xCamelMessageInfo *mi,
+ CamelFolderSummary *assign_summary)
+{
+ xCamelMessageInfo *result;
+
+ g_return_val_if_fail (XCAMEL_IS_VEE_MESSAGE_INFO (mi), NULL);
+
+ result = XCAMEL_MESSAGE_INFO_CLASS (xcamel_vee_message_info_parent_class)->clone (mi, assign_summary);
+ if (!result)
+ return NULL;
+
+ if (XCAMEL_IS_VEE_MESSAGE_INFO (result)) {
+ xCamelVeeMessageInfo *vmi, *vmi_result;
+
+ vmi = XCAMEL_VEE_MESSAGE_INFO (mi);
+ vmi_result = XCAMEL_VEE_MESSAGE_INFO (result);
+
+ if (vmi->priv->orig_summary)
+ vmi_result->priv->orig_summary = g_object_ref (vmi->priv->orig_summary);
+ }
+
+ return result;
+}
+
+#define vee_call_from_parent_mi(_err_ret, _ret_type, _call_what, _call_args) G_STMT_START { \
+ xCamelVeeMessageInfo *vmi; \
+ xCamelMessageInfo *orig_mi; \
+ const gchar *uid; \
+ _ret_type result; \
+ \
+ g_return_val_if_fail (XCAMEL_IS_VEE_MESSAGE_INFO (mi), _err_ret); \
+ \
+ vmi = XCAMEL_VEE_MESSAGE_INFO (mi); \
+ g_return_val_if_fail (vmi->priv->orig_summary != NULL, _err_ret); \
+ \
+ uid = xcamel_message_info_pooldup_uid (mi); \
+ g_return_val_if_fail (uid != NULL, _err_ret); \
+ \
+ if (!uid[0] || !uid[1] || !uid[2] || !uid[3] || !uid[4] || \
+ !uid[5] || !uid[6] || !uid[7] || !uid[8]) { \
+ camel_pstring_free (uid); \
+ g_warn_if_reached (); \
+ return _err_ret; \
+ } \
+ \
+ orig_mi = (xCamelMessageInfo *)camel_folder_summary_get (vmi->priv->orig_summary, uid + 8);
\
+ if (!orig_mi) { \
+ g_warning ("%s: Failed to get orig uid '%s'\n", G_STRFUNC, uid); \
+ camel_pstring_free (uid); \
+ return _err_ret; \
+ } \
+ \
+ camel_pstring_free (uid); \
+ \
+ result = _call_what _call_args; \
+ \
+ g_clear_object (&orig_mi); \
+ \
+ return result; \
+ } G_STMT_END
+
+static guint32
+vee_message_info_get_flags (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (0, guint32, xcamel_message_info_get_flags, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_flags (xCamelMessageInfo *mi,
+ CamelMessageFlags mask,
+ guint32 set)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_flags, (orig_mi, mask, set));
+}
+
+static gboolean
+vee_message_info_get_user_flag (const xCamelMessageInfo *mi,
+ const gchar *name)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_get_user_flag, (orig_mi, name));
+}
+
+static gboolean
+vee_message_info_set_user_flag (xCamelMessageInfo *mi,
+ const gchar *name,
+ gboolean state)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_user_flag, (orig_mi, name, state));
+}
+
+static CamelNamedFlags *
+vee_message_info_dup_user_flags (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, CamelNamedFlags *, xcamel_message_info_dup_user_flags, (orig_mi));
+}
+
+static gboolean
+vee_message_info_take_user_flags (xCamelMessageInfo *mi,
+ CamelNamedFlags *user_flags)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_take_user_flags, (orig_mi, user_flags));
+}
+
+static const gchar *
+vee_message_info_get_user_tag (const xCamelMessageInfo *mi,
+ const gchar *name)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_user_tag, (orig_mi, name));
+}
+
+static gboolean
+vee_message_info_set_user_tag (xCamelMessageInfo *mi,
+ const gchar *name,
+ const gchar *value)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_user_tag, (orig_mi, name, value));
+}
+
+static CamelNameValueArray *
+vee_message_info_dup_user_tags (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, CamelNameValueArray *, xcamel_message_info_dup_user_tags, (orig_mi));
+}
+
+static gboolean
+vee_message_info_take_user_tags (xCamelMessageInfo *mi,
+ CamelNameValueArray *user_tags)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_take_user_tags, (orig_mi, user_tags));
+}
+
+static const gchar *
+vee_message_info_get_subject (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_subject, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_subject (xCamelMessageInfo *mi,
+ const gchar *subject)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_subject, (orig_mi, subject));
+}
+
+static const gchar *
+vee_message_info_get_preview (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_preview, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_preview (xCamelMessageInfo *mi,
+ const gchar *preview)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_preview, (orig_mi, preview));
+}
+
+static const gchar *
+vee_message_info_get_from (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_from, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_from (xCamelMessageInfo *mi,
+ const gchar *from)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_from, (orig_mi, from));
+}
+
+static const gchar *
+vee_message_info_get_to (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_to, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_to (xCamelMessageInfo *mi,
+ const gchar *to)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_to, (orig_mi, to));
+}
+
+static const gchar *
+vee_message_info_get_cc (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_cc, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_cc (xCamelMessageInfo *mi,
+ const gchar *cc)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_cc, (orig_mi, cc));
+}
+
+static const gchar *
+vee_message_info_get_mlist (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const gchar *, xcamel_message_info_get_mlist, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_mlist (xCamelMessageInfo *mi,
+ const gchar *mlist)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_mlist, (orig_mi, mlist));
+}
+
+static guint32
+vee_message_info_get_size (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (0, guint32, xcamel_message_info_get_size, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_size (xCamelMessageInfo *mi,
+ guint32 size)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_size, (orig_mi, size));
+}
+
+static gint64
+vee_message_info_get_date_sent (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (0, gint64, xcamel_message_info_get_date_sent, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_date_sent (xCamelMessageInfo *mi,
+ gint64 date_sent)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_date_sent, (orig_mi, date_sent));
+}
+
+static gint64
+vee_message_info_get_date_received (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (0, gint64, xcamel_message_info_get_date_received, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_date_received (xCamelMessageInfo *mi,
+ gint64 date_received)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_date_received, (orig_mi,
date_received));
+}
+
+static guint64
+vee_message_info_get_message_id (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (0, guint64, xcamel_message_info_get_message_id, (orig_mi));
+}
+
+static gboolean
+vee_message_info_set_message_id (xCamelMessageInfo *mi,
+ guint64 message_id)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_set_message_id, (orig_mi, message_id));
+}
+
+static const GArray *
+vee_message_info_get_references (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const GArray *, xcamel_message_info_get_references, (orig_mi));
+}
+
+static gboolean
+vee_message_info_take_references (xCamelMessageInfo *mi,
+ GArray *references)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_take_references, (orig_mi, references));
+}
+
+static const CamelNameValueArray *
+vee_message_info_get_headers (const xCamelMessageInfo *mi)
+{
+ vee_call_from_parent_mi (NULL, const CamelNameValueArray *, xcamel_message_info_get_headers,
(orig_mi));
+}
+
+static gboolean
+vee_message_info_take_headers (xCamelMessageInfo *mi,
+ CamelNameValueArray *headers)
+{
+ vee_call_from_parent_mi (FALSE, gboolean, xcamel_message_info_take_headers, (orig_mi, headers));
+}
+
+#undef vee_call_from_parent_mi
+
+static void
+vee_message_info_dispose (GObject *object)
+{
+ xCamelVeeMessageInfo *vmi = XCAMEL_VEE_MESSAGE_INFO (object);
+
+ g_clear_object (&vmi->priv->orig_summary);
+
+ /* Chain up to parent's method. */
+ G_OBJECT_CLASS (xcamel_vee_message_info_parent_class)->dispose (object);
+}
+
+static void
+xcamel_vee_message_info_class_init (xCamelVeeMessageInfoClass *class)
+{
+ xCamelMessageInfoClass *mi_class;
+ GObjectClass *object_class;
+
+ g_type_class_add_private (class, sizeof (xCamelVeeMessageInfoPrivate));
+
+ mi_class = XCAMEL_MESSAGE_INFO_CLASS (class);
+ mi_class->clone = vee_message_info_clone;
+ mi_class->get_flags = vee_message_info_get_flags;
+ mi_class->set_flags = vee_message_info_set_flags;
+ mi_class->get_user_flag = vee_message_info_get_user_flag;
+ mi_class->set_user_flag = vee_message_info_set_user_flag;
+ mi_class->dup_user_flags = vee_message_info_dup_user_flags;
+ mi_class->take_user_flags = vee_message_info_take_user_flags;
+ mi_class->get_user_tag = vee_message_info_get_user_tag;
+ mi_class->set_user_tag = vee_message_info_set_user_tag;
+ mi_class->dup_user_tags = vee_message_info_dup_user_tags;
+ mi_class->take_user_tags = vee_message_info_take_user_tags;
+ mi_class->get_subject = vee_message_info_get_subject;
+ mi_class->set_subject = vee_message_info_set_subject;
+ mi_class->get_preview = vee_message_info_get_preview;
+ mi_class->set_preview = vee_message_info_set_preview;
+ mi_class->get_from = vee_message_info_get_from;
+ mi_class->set_from = vee_message_info_set_from;
+ mi_class->get_to = vee_message_info_get_to;
+ mi_class->set_to = vee_message_info_set_to;
+ mi_class->get_cc = vee_message_info_get_cc;
+ mi_class->set_cc = vee_message_info_set_cc;
+ mi_class->get_mlist = vee_message_info_get_mlist;
+ mi_class->set_mlist = vee_message_info_set_mlist;
+ mi_class->get_size = vee_message_info_get_size;
+ mi_class->set_size = vee_message_info_set_size;
+ mi_class->get_date_sent = vee_message_info_get_date_sent;
+ mi_class->set_date_sent = vee_message_info_set_date_sent;
+ mi_class->get_date_received = vee_message_info_get_date_received;
+ mi_class->set_date_received = vee_message_info_set_date_received;
+ mi_class->get_message_id = vee_message_info_get_message_id;
+ mi_class->set_message_id = vee_message_info_set_message_id;
+ mi_class->get_references = vee_message_info_get_references;
+ mi_class->take_references = vee_message_info_take_references;
+ mi_class->get_headers = vee_message_info_get_headers;
+ mi_class->take_headers = vee_message_info_take_headers;
+
+ object_class = G_OBJECT_CLASS (class);
+ object_class->dispose = vee_message_info_dispose;
+}
+
+static void
+xcamel_vee_message_info_init (xCamelVeeMessageInfo *vmi)
+{
+ vmi->priv = G_TYPE_INSTANCE_GET_PRIVATE (vmi, XCAMEL_TYPE_VEE_MESSAGE_INFO,
xCamelVeeMessageInfoPrivate);
+}
+
+/**
+ * xcamel_vee_message_info_new:
+ * @summary: a #CamelVeeSummary, the "owner" of the created message info
+ * @orig_mi: an original #CamelMessageInfo to reference to
+ * @vuid: what UID to set on the resulting message info
+ *
+ * Creates a new instance of #CamelVeeMessageInfo which references
+ * the @orig_mi internally.
+ *
+ * The @vuid should be encoded in a way which the vFolder understands,
+ * which is like the one returned by camel_vee_message_info_data_get_vee_message_uid().
+ *
+ * Returns: (transfer full): a newly created #CamelVeeMessageInfo
+ * which references @orig_mi. Free with g_object_unref() when done
+ * with it.
+ *
+ * Since: 3.24
+ **/
+xCamelMessageInfo *
+xcamel_vee_message_info_new (CamelFolderSummary *summary,
+ const xCamelMessageInfo *orig_mi,
+ const gchar *vuid)
+{
+ xCamelMessageInfo *mi;
+ xCamelVeeMessageInfo *vmi;
+
+ g_return_val_if_fail (CAMEL_IS_VEE_SUMMARY (summary), NULL);
+ g_return_val_if_fail (XCAMEL_IS_MESSAGE_INFO (orig_mi), NULL);
+ g_return_val_if_fail (vuid != NULL, NULL);
+ g_return_val_if_fail (vuid[0] && vuid[1] && vuid[2] && vuid[3] && vuid[4] && vuid[5] && vuid[6] &&
vuid[7] && vuid[8], NULL);
+
+ mi = xcamel_message_info_new (summary);
+ g_return_val_if_fail (XCAMEL_IS_VEE_MESSAGE_INFO (mi), NULL);
+
+ vmi = XCAMEL_VEE_MESSAGE_INFO (mi);
+ vmi->priv->orig_summary = xcamel_message_info_ref_summary (orig_mi);
+
+ xcamel_message_info_set_uid (mi, vuid);
+
+ return mi;
+}
diff --git a/camel/camel-vee-message-info.h b/camel/camel-vee-message-info.h
new file mode 100644
index 0000000..b831ad2
--- /dev/null
+++ b/camel/camel-vee-message-info.h
@@ -0,0 +1,71 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+/*
+ * Copyright (C) 2016 Red Hat, Inc. (www.redhat.com)
+ *
+ * This library is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this library. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#if !defined (__CAMEL_H_INSIDE__) && !defined (CAMEL_COMPILATION)
+#error "Only <camel/camel.h> can be included directly."
+#endif
+
+#ifndef XCAMEL_VEE_MESSAGE_INFO_H
+#define XCAMEL_VEE_MESSAGE_INFO_H
+
+#include <glib-object.h>
+
+#include <camel/camel-message-info.h>
+
+/* Standard GObject macros */
+#define XCAMEL_TYPE_VEE_MESSAGE_INFO \
+ (xcamel_vee_message_info_get_type ())
+#define XCAMEL_VEE_MESSAGE_INFO(obj) \
+ (G_TYPE_CHECK_INSTANCE_CAST \
+ ((obj), XCAMEL_TYPE_VEE_MESSAGE_INFO, xCamelVeeMessageInfo))
+#define XCAMEL_VEE_MESSAGE_INFO_CLASS(cls) \
+ (G_TYPE_CHECK_CLASS_CAST \
+ ((cls), XCAMEL_TYPE_VEE_MESSAGE_INFO, xCamelVeeMessageInfoClass))
+#define XCAMEL_IS_VEE_MESSAGE_INFO(obj) \
+ (G_TYPE_CHECK_INSTANCE_TYPE \
+ ((obj), XCAMEL_TYPE_VEE_MESSAGE_INFO))
+#define XCAMEL_IS_VEE_MESSAGE_INFO_CLASS(cls) \
+ (G_TYPE_CHECK_CLASS_TYPE \
+ ((cls), XCAMEL_TYPE_VEE_MESSAGE_INFO))
+#define XCAMEL_VEE_MESSAGE_INFO_GET_CLASS(obj) \
+ (G_TYPE_INSTANCE_GET_CLASS \
+ ((obj), XCAMEL_TYPE_VEE_MESSAGE_INFO, xCamelVeeMessageInfoClass))
+
+G_BEGIN_DECLS
+
+typedef struct _xCamelVeeMessageInfo xCamelVeeMessageInfo;
+typedef struct _xCamelVeeMessageInfoClass xCamelVeeMessageInfoClass;
+typedef struct _xCamelVeeMessageInfoPrivate xCamelVeeMessageInfoPrivate;
+
+struct _xCamelVeeMessageInfo {
+ xCamelMessageInfo parent;
+ xCamelVeeMessageInfoPrivate *priv;
+};
+
+struct _xCamelVeeMessageInfoClass {
+ xCamelMessageInfoClass parent_class;
+};
+
+GType xcamel_vee_message_info_get_type (void);
+xCamelMessageInfo *
+ xcamel_vee_message_info_new (struct _CamelFolderSummary *summary,
+ const xCamelMessageInfo *orig_mi,
+ const gchar *vuid);
+
+G_END_DECLS
+
+#endif /* XCAMEL_VEE_MESSAGE_INFO_H */
diff --git a/camel/camel-vee-summary.h b/camel/camel-vee-summary.h
index 94a95dc..9003561 100644
--- a/camel/camel-vee-summary.h
+++ b/camel/camel-vee-summary.h
@@ -80,12 +80,12 @@ CamelVeeMessageInfo *
struct _CamelVeeMessageInfoData *mi_data);
void camel_vee_summary_remove (CamelVeeSummary *summary,
const gchar *vuid,
- CamelFolder *subfolder);
+ struct _CamelFolder *subfolder);
void camel_vee_summary_replace_flags (CamelVeeSummary *summary,
const gchar *uid);
GHashTable * camel_vee_summary_get_uids_for_subfolder
(CamelVeeSummary *summary,
- CamelFolder *subfolder);
+ struct _CamelFolder *subfolder);
G_END_DECLS
diff --git a/camel/camel.h b/camel/camel.h
index 4e6f621..d99c95a 100644
--- a/camel/camel.h
+++ b/camel/camel.h
@@ -132,6 +132,7 @@
#include <camel/camel-utf8.h>
#include <camel/camel-vee-data-cache.h>
#include <camel/camel-vee-folder.h>
+#include <camel/camel-vee-message-info.h>
#include <camel/camel-vee-store.h>
#include <camel/camel-vee-summary.h>
#include <camel/camel-vtrash-folder.h>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]