NeoMutt  2023-05-17-33-gce4425
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#include "mutt/lib.h"
31
32struct AttachCtx;
33struct Body;
34struct ConfigSubset;
35struct Email;
36struct Menu;
37struct MuttWindow;
38
43{
48};
49
57{
61};
62
63int mutt_attach_display_loop(struct ConfigSubset *sub, struct Menu *menu, int op,
64 struct Email *e, struct AttachCtx *actx, bool recv);
65
66void mutt_save_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
67 struct Body *top, struct Email *e, struct Menu *menu);
68void mutt_pipe_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
69 struct Body *top, bool filter);
70void mutt_print_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag,
71 struct Body *top);
72
73int mutt_view_attachment(FILE *fp, struct Body *a, enum ViewAttachMode mode, struct Email *e, struct AttachCtx *actx, struct MuttWindow *win);
74
75void mutt_check_lookup_list(struct Body *b, char *type, size_t len);
76int mutt_compose_attachment(struct Body *a);
77int mutt_decode_save_attachment(FILE *fp, struct Body *m, const char *path, StateFlags flags, enum SaveAttach opt);
78bool mutt_edit_attachment(struct Body *a);
79int mutt_get_tmp_attachment(struct Body *a);
80int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfile);
81int mutt_print_attachment(FILE *fp, struct Body *a);
82int mutt_save_attachment(FILE *fp, struct Body *m, const char *path, enum SaveAttach opt, struct Email *e);
83
84/* small helper functions to handle temporary attachment files */
85void mutt_add_temp_attachment(const char *filename);
87
88#endif /* MUTT_ATTACH_MUTT_ATTACH_H */
Convenience wrapper for the library headers.
uint16_t StateFlags
Flags for State->flags, e.g. STATE_DISPLAY.
Definition: state.h:30
int mutt_pipe_attachment(FILE *fp, struct Body *b, const char *path, char *outfile)
Pipe an attachment to a command.
Definition: mutt_attach.c:745
bool mutt_edit_attachment(struct Body *a)
Edit an attachment.
Definition: mutt_attach.c:264
void mutt_check_lookup_list(struct Body *b, char *type, size_t len)
Update the mime type.
Definition: mutt_attach.c:342
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:426
int mutt_decode_save_attachment(FILE *fp, struct Body *m, const char *path, StateFlags flags, enum SaveAttach opt)
Decode, then save an attachment.
Definition: mutt_attach.c:1047
int mutt_print_attachment(FILE *fp, struct Body *a)
Print out an attachment.
Definition: mutt_attach.c:1147
SaveAttach
Options for saving attachments.
Definition: mutt_attach.h:57
@ MUTT_SAVE_APPEND
Append to existing file.
Definition: mutt_attach.h:59
@ MUTT_SAVE_OVERWRITE
Overwrite existing file.
Definition: mutt_attach.h:60
@ MUTT_SAVE_NO_FLAGS
No flags set.
Definition: mutt_attach.h:58
ViewAttachMode
Options for mutt_view_attachment()
Definition: mutt_attach.h:43
@ MUTT_VA_MAILCAP
Force viewing using mailcap entry.
Definition: mutt_attach.h:45
@ MUTT_VA_REGULAR
View using default method.
Definition: mutt_attach.h:44
@ MUTT_VA_PAGER
View attachment in pager using copiousoutput mailcap.
Definition: mutt_attach.h:47
@ MUTT_VA_AS_TEXT
Force viewing as text.
Definition: mutt_attach.h:46
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:957
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:719
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:1307
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:422
int mutt_compose_attachment(struct Body *a)
Create an attachment.
Definition: mutt_attach.c:117
void mutt_unlink_temp_attachments(void)
Delete all temporary attachments.
Definition: mutt_attach.c:1315
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:913
void mutt_print_attachment_list(struct AttachCtx *actx, FILE *fp, bool tag, struct Body *top)
Print a list of Attachments.
Definition: recvattach.c:882
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:70
enum WindowType type
Window type, e.g. WT_SIDEBAR.
Definition: mutt_window.h:144