diff options
author | Jameson Graef Rollins <jrollins@finestructure.net> | 2011-05-20 11:45:33 -0700 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2011-05-20 12:27:35 -0700 |
commit | dcdb8430945e6323d78997ce47639eebc683c6d3 (patch) | |
tree | 2524848a50faad38083e4d75cdf1f5eedc7b21cc /notmuch-client.h | |
parent | 8b9fc33d9904070d88e8b94711f613886b2eb2db (diff) |
pass entire format structure to various show_message functions
Various show_message* functions require formatting functions, which
were previously being passed individually as arguments. Since we will
need to be needing to passing in more formatting function in the
future (ie. for crypto support), we here modify things so that we just
pass in the entire format structure. This will make things much
simpler down the line as we need to pass in new format functions.
We move the show_format structure into notmuch-client.c as
notmuch_show_format. This also affects notmuch-reply.c, so we create
a mostly-empty format_reply to pass the reply_part function to
show_message_body.
Diffstat (limited to 'notmuch-client.h')
-rw-r--r-- | notmuch-client.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/notmuch-client.h b/notmuch-client.h index 1dbd987..57daa9a 100644 --- a/notmuch-client.h +++ b/notmuch-client.h @@ -54,6 +54,27 @@ #define STRINGIFY(s) STRINGIFY_(s) #define STRINGIFY_(s) #s +typedef struct notmuch_show_format { + const char *message_set_start; + const char *message_start; + void (*message) (const void *ctx, + notmuch_message_t *message, + int indent); + const char *header_start; + void (*header) (const void *ctx, + notmuch_message_t *message); + const char *header_end; + const char *body_start; + void (*part) (GMimeObject *part, + int *part_count, + int first); + void (*part_end) (GMimeObject *part); + const char *body_end; + const char *message_end; + const char *message_set_sep; + const char *message_set_end; +} notmuch_show_format_t; + /* There's no point in continuing when we've detected that we've done * something wrong internally (as opposed to the user passing in a * bogus value). @@ -133,8 +154,7 @@ query_string_from_args (void *ctx, int argc, char *argv[]); notmuch_status_t show_message_body (const char *filename, - void (*show_part) (GMimeObject *part, int *part_count, int first), - void (*show_part_end) (GMimeObject *part)); + const notmuch_show_format_t *format); notmuch_status_t show_one_part (const char *filename, int part); |