NeoMutt  2022-04-29-215-gc12b98
Teaching an old dog new tricks
DOXYGEN
mutt_attach.h
Go to the documentation of this file.
1
23/* common protos for compose / attach menus */
24
25#ifndef MUTT_ATTACH_MUTT_ATTACH_H
26#define MUTT_ATTACH_MUTT_ATTACH_H
27
28#include <stdbool.h>
29#include <stdio.h>
30
31struct AttachCtx;
32struct Body;
33struct ConfigSubset;
34struct Email;
35struct Menu;
36struct MuttWindow;
37
42{
47};
48
56{
60};
61
62int mutt_attach_display_loop(struct ConfigSubset *sub, struct Menu *menu, int op,
63 struct Email *e, struct AttachCtx *actx, bool recv);
64
65void mutt_save_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
66 struct Body *top, struct Email *e, struct Menu *menu);
67void mutt_pipe_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
68 struct Body *top, bool filter);
69void mutt_print_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
70 struct Body *top);
71
72int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode, struct Email *e, struct AttachCtx *actx, struct MuttWindow *win);
73
74void mutt_check_lookup_list(struct Body *b, char *type, size_t len);
75int mutt_compose_attachment(struct Body *a);
76int mutt_decode_save_attachment(FILE *fp, struct Body *m, const char *path, int displaying, enum SaveAttach opt);
77bool mutt_edit_attachment(struct Body *a);
78int mutt_get_tmp_attachment(struct Body *a);
79int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfile);
80int mutt_print_attachment(FILE *fp, struct Body *a);
81int mutt_save_attachment(FILE *fp, struct Body *m, const char *path, enum SaveAttach opt, struct Email *e);
82
83/* small helper functions to handle temporary attachment files */
84void mutt_add_temp_attachment(const char *filename);
86
87#endif /* MUTT_ATTACH_MUTT_ATTACH_H */
int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfile)
Pipe an attachment to a command.
Definition: mutt_attach.c:729
bool mutt_edit_attachment(struct Body *a)
Edit an attachment.
Definition: mutt_attach.c:260
void mutt_check_lookup_list(struct Body *b, char *type, size_t len)
Update the mime type.
Definition: mutt_attach.c:336
void mutt_save_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag, struct Body *top, struct Email *e, struct Menu *menu)
Save a list of attachments.
Definition: recvattach.c:413
int mutt_decode_save_attachment(FILE *fp, struct Body *m, const char *path, int displaying, enum SaveAttach opt)
Decode, then save an attachment.
Definition: mutt_attach.c:1030
int mutt_print_attachment(FILE *fp, struct Body *a)
Print out an attachment.
Definition: mutt_attach.c:1130
SaveAttach
Options for saving attachments.
Definition: mutt_attach.h:56
@ MUTT_SAVE_APPEND
Append to existing file.
Definition: mutt_attach.h:58
@ MUTT_SAVE_OVERWRITE
Overwrite existing file.
Definition: mutt_attach.h:59
@ MUTT_SAVE_NO_FLAGS
No flags set.
Definition: mutt_attach.h:57
ViewAttachMode
Options for mutt_view_attachment()
Definition: mutt_attach.h:42
@ MUTT_VA_MAILCAP
Force viewing using mailcap entry.
Definition: mutt_attach.h:44
@ MUTT_VA_REGULAR
View using default method.
Definition: mutt_attach.h:43
@ MUTT_VA_PAGER
View attachment in pager using copiousoutput mailcap.
Definition: mutt_attach.h:46
@ MUTT_VA_AS_TEXT
Force viewing as text.
Definition: mutt_attach.h:45
int mutt_attach_display_loop(struct ConfigSubset *sub, struct Menu *menu, int op, struct Email *e, struct AttachCtx *actx, bool recv)
Event loop for the Attachment menu.
Definition: recvattach.c:938
void mutt_pipe_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag, struct Body *top, bool filter)
Pipe a list of attachments to a command.
Definition: recvattach.c:705
int mutt_get_tmp_attachment(struct Body *a)
Get a temporary copy of an attachment.
Definition: mutt_attach.c:69
void mutt_add_temp_attachment(const char *filename)
Add file to list of temporary attachments.
Definition: mutt_attach.c:1292
int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode, struct Email *e, struct AttachCtx *actx, struct MuttWindow *win)
View an attachment.
Definition: mutt_attach.c:416
int mutt_compose_attachment(struct Body *a)
Create an attachment.
Definition: mutt_attach.c:115
void mutt_unlink_temp_attachments(void)
Delete all temporary attachments.
Definition: mutt_attach.c:1300
int mutt_save_attachment(FILE *fp, struct Body *m, const char *path, enum SaveAttach opt, struct Email *e)
Save an attachment.
Definition: mutt_attach.c:896
void mutt_print_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag, struct Body *top)
Print a list of Attachments.
Definition: recvattach.c:863
A set of attachments.
Definition: attach.h:51
The body of an email.
Definition: body.h:36
A set of inherited config items.
Definition: subset.h:47
The envelope/body of an email.
Definition: email.h:37
Definition: lib.h:69
enum WindowType type
Window type, e.g. WT_SIDEBAR.
Definition: mutt_window.h:144