inital gtk2 patch
[claws.git] / src / procmsg.h
index ad7ee8b7856a35c960bbcd19e5727541710c2438..83d5fb1ae75c2b7ff61937ce4985ac3ca355bcdb 100644 (file)
@@ -71,7 +71,8 @@ typedef GSList MsgNumberList;
 
 #define MSG_IGNORE_THREAD      (1U << 10)   /* ignore threads */
 #define MSG_LOCKED             (1U << 11)   /* msg is locked  */
-#define MSG_RETRCPT_PENDING    (1U << 12)   /* return receipt pending */
+#define MSG_RETRCPT_SENT       (1U << 12)   /* new one */ 
+                                               
 /* RESERVED */
 #define        MSG_RESERVED_CLAWS      (1U << 30)   /* for sylpheed-claws */
 #define        MSG_RESERVED            (1U << 31)
@@ -138,10 +139,16 @@ typedef guint32 MsgTmpFlags;
 #define MSG_IS_REALLY_DELETED(msg)     (((msg).perm_flags & MSG_REALLY_DELETED) != 0)
 #define MSG_IS_IGNORE_THREAD(msg)      (((msg).perm_flags & MSG_IGNORE_THREAD) != 0)
 #define MSG_IS_RETRCPT_PENDING(msg)    (((msg).perm_flags & MSG_RETRCPT_PENDING) != 0)
+#define MSG_IS_RETRCPT_SENT(msg)       (((msg).perm_flags & MSG_RETRCPT_SENT) != 0)
 
 #define MSGINFO_UPDATE_HOOKLIST "msginfo_update"
 #define MAIL_FILTERING_HOOKLIST "mail_filtering_hooklist"
 
+typedef enum {
+       MSGINFO_UPDATE_FLAGS = 1 << 0,
+       MSGINFO_UPDATE_DELETED = 1 << 1,
+} MsgInfoUpdateFlags;
+
 #include "folder.h"
 #include "procmime.h"
 #include "prefs_filtering.h"
@@ -197,12 +204,14 @@ struct _MsgInfo
 
 struct _MsgFileInfo
 {
+       MsgInfo *msginfo;
         gchar *file;
         MsgFlags *flags;
 };
 
 struct _MsgInfoUpdate {
        MsgInfo *msginfo;
+       MsgInfoUpdateFlags flags;
 };
 
 struct _MailFilteringData
@@ -232,9 +241,11 @@ GNode  *procmsg_get_thread_tree            (GSList         *mlist);
 void   procmsg_move_messages           (GSList         *mlist);
 void   procmsg_copy_messages           (GSList         *mlist);
 
+/* return path is locale charset */
 gchar  *procmsg_get_message_file_path  (MsgInfo        *msginfo);
 gchar  *procmsg_get_message_file       (MsgInfo        *msginfo);
 GSList *procmsg_get_message_file_list  (MsgInfoList    *mlist);
+void   procmsg_message_file_list_free  (MsgInfoList    *file_list);
 FILE   *procmsg_open_message           (MsgInfo        *msginfo);
 #if USE_GPGME
 FILE   *procmsg_open_message_decrypted (MsgInfo        *msginfo,