X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fnotmuch.h;h=41820b596c19c1a73d341dd45c6d067199d799f9;hp=bd0880f3a232df162e90db66daac6b70e0f47394;hb=d9d3d3e6f06a76dc0fbe24c9655b64acfcd4b9e4;hpb=e83b40138ef3dd116001a4c53150d0a3274b41c0 diff --git a/lib/notmuch.h b/lib/notmuch.h index bd0880f3..41820b59 100644 --- a/lib/notmuch.h +++ b/lib/notmuch.h @@ -176,6 +176,12 @@ notmuch_database_open (const char *path, void notmuch_database_close (notmuch_database_t *database); +/* Sets whether maildir flags should be synchronized with notmuch + * tags. */ +void +notmuch_database_set_maildir_sync (notmuch_database_t *database, + notmuch_bool_t maildir_sync); + /* Return the database path of the given database. * * The return value is a string owned by notmuch so should not be @@ -238,7 +244,8 @@ notmuch_database_get_directory (notmuch_database_t *database, * notmuch database will reference the filename, and will not copy the * entire contents of the file. * - * If 'message' is not NULL, then, on successful return '*message' + * If 'message' is not NULL, then, on successful return + * (NOTMUCH_STATUS_SUCCESS or NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID) '*message' * will be initialized to a message object that can be used for things * such as adding tags to the just-added message. The user should call * notmuch_message_destroy when done with the message. On any failure @@ -779,6 +786,7 @@ notmuch_message_get_filename (notmuch_message_t *message); /* Message flags */ typedef enum _notmuch_message_flag { NOTMUCH_MESSAGE_FLAG_MATCH, + NOTMUCH_MESSAGE_FLAG_TAGS_INVALID, } notmuch_message_flag_t; /* Get a value of a flag for the email corresponding to 'message'. */ @@ -895,6 +903,12 @@ notmuch_message_remove_tag (notmuch_message_t *message, const char *tag); notmuch_status_t notmuch_message_remove_all_tags (notmuch_message_t *message); +/* Add or remove tags based on the maildir flags in the file name. + */ +notmuch_status_t +notmuch_message_maildir_to_tags (notmuch_message_t *message, + const char *filename); + /* Freeze the current state of 'message' within the database. * * This means that changes to the message state, (via