src/mn-message-mime.h (2754B) - raw
1 /*
2 * Mail Notification
3 * Copyright (C) 2003-2008 Jean-Yves Lefort <jylefort@brutele.be>
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 3 of the License, or
8 * (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19
20 #ifndef _MN_MESSAGE_MIME_H
21 #define _MN_MESSAGE_MIME_H
22
23 #include <libgnomevfs/gnome-vfs.h>
24 #include <gmime/gmime.h>
25 #include "mn-message.h"
26
27 /*
28 * The following functions return a NULL message but do not set @err
29 * if one of the following conditions is true:
30 *
31 * - handle_status is TRUE and the message is marked as read
32 * - the message is marked as spam
33 */
34
35 MNMessage *mn_message_new_from_mime_message (MNMailbox *mailbox,
36 GMimeMessage *mime_message,
37 const char *uri,
38 MNMessageFlags flags,
39 gboolean handle_status);
40 MNMessage *mn_message_new_from_mime_message_full (GType type,
41 MNMailbox *mailbox,
42 GMimeMessage *mime_message,
43 const char *mid,
44 const char *uri,
45 MNMessageFlags flags,
46 gboolean handle_status);
47 MNMessage *mn_message_new_from_mime_stream (MNMailbox *mailbox,
48 GMimeStream *mime_stream,
49 const char *mid,
50 const char *uri,
51 MNMessageFlags flags,
52 gboolean handle_status,
53 GError **err);
54 MNMessage *mn_message_new_from_mime_stream_full (GType type,
55 MNMailbox *mailbox,
56 GMimeStream *mime_stream,
57 const char *mid,
58 const char *uri,
59 MNMessageFlags flags,
60 gboolean handle_status,
61 GError **err);
62 MNMessage *mn_message_new_from_uri (MNMailbox *mailbox,
63 GnomeVFSURI *uri,
64 MNMessageFlags flags,
65 gboolean handle_status,
66 GError **err);
67 MNMessage *mn_message_new_from_uri_full (GType type,
68 MNMailbox *mailbox,
69 const char *mid,
70 GnomeVFSURI *uri,
71 MNMessageFlags flags,
72 gboolean handle_status,
73 GError **err);
74 MNMessage *mn_message_new_from_buffer (MNMailbox *mailbox,
75 const char *buffer,
76 unsigned int len,
77 const char *mid,
78 MNMessageFlags flags,
79 gboolean handle_status,
80 GError **err);
81
82 #endif /* _MN_MESSAGE_MIME_H */