38#ifndef MUTT_BROWSER_LIB_H
39#define MUTT_BROWSER_LIB_H
56#define MUTT_SEL_NO_FLAGS 0
57#define MUTT_SEL_MAILBOX (1 << 0)
58#define MUTT_SEL_MULTI (1 << 1)
59#define MUTT_SEL_FOLDER (1 << 2)
161bool link_is_dir(
const char *folder,
const char *path);
#define ARRAY_HEAD(name, type)
Define a named struct for arrays of elements of a certain type.
void init_state(struct BrowserState *state, struct Menu *menu)
Initialise a browser state.
void init_menu(struct BrowserState *state, struct Menu *menu, struct Mailbox *m, struct MuttWindow *sbar)
Set up a new menu.
void browser_sort(struct BrowserState *state)
Sort the entries in the browser.
ExpandoDataFolder
Expando UIDs for the File Browser.
@ ED_FOL_POLL
FolderFile.poll_new_mail.
@ ED_FOL_NOTIFY
FolderFile.notify_user.
@ ED_FOL_NEW_COUNT
FolderFile.nd (NntpMboxData)
@ ED_FOL_FILE_OWNER
FolderFile.uid.
@ ED_FOL_FILE_GROUP
FolderFile.gid.
@ ED_FOL_FILENAME
FolderFile.name.
@ ED_FOL_DATE_FORMAT
FolderFile.mtime.
@ ED_FOL_UNREAD_COUNT
FolderFile.msg_unread.
@ ED_FOL_FLAGS2
FolderFile.nd (NntpMboxData)
@ ED_FOL_FILE_MODE
FolderFile.move.
@ ED_FOL_NEW_MAIL
FolderFile.has_new_mail.
@ ED_FOL_FILE_SIZE
FolderFile.size.
@ ED_FOL_HARD_LINKS
FolderFile.nlink.
@ ED_FOL_DATE
FolderFile.mtime.
@ ED_FOL_STRF
FolderFile.mtime.
@ ED_FOL_TAGGED
FolderFile.tagged.
@ ED_FOL_NUMBER
Folder.num.
@ ED_FOL_DESCRIPTION
FolderFile.desc, FolderFile.name.
@ ED_FOL_MESSAGE_COUNT
FolderFile.msg_count.
@ ED_FOL_NEWSGROUP
FolderFile.name.
@ ED_FOL_FLAGS
FolderFile.nd (NntpMboxData)
const struct CompleteOps CompleteFileOps
Auto-Completion of Files.
struct Buffer LastDir
Browser: previous selected directory.
void mutt_browser_select_dir(const char *f)
Remember the last directory selected.
void destroy_state(struct BrowserState *state)
Free the BrowserState.
struct Buffer LastDirBackup
Browser: backup copy of the current directory.
const struct CompleteOps CompleteMailboxOps
Auto-Completion of Files / Mailboxes.
int examine_directory(struct Mailbox *m, struct Menu *menu, struct BrowserState *state, const char *d, const char *prefix)
Get list of all files/newsgroups with mask.
void browser_add_folder(const struct Menu *menu, struct BrowserState *state, const char *name, const char *desc, const struct stat *st, struct Mailbox *m, void *data)
Add a folder to the browser list.
void mutt_browser_cleanup(void)
Clean up working Buffers.
void browser_highlight_default(struct BrowserState *state, struct Menu *menu)
Decide which browser item should be highlighted.
void dump_state(struct BrowserState *state)
int examine_mailboxes(struct Mailbox *m, struct Menu *menu, struct BrowserState *state)
Get list of mailboxes/subscribed newsgroups.
uint8_t SelectFileFlags
Flags for mutt_select_file(), e.g. MUTT_SEL_MAILBOX.
bool link_is_dir(const char *folder, const char *path)
Does this symlink point to a directory?
void dlg_browser(struct Buffer *file, SelectFileFlags flags, struct Mailbox *m, char ***files, int *numfiles)
Let the user select a file -.
Convenience wrapper for the library headers.
State of the file/mailbox browser.
char * folder
Folder name.
bool is_mailbox_list
Viewing mailboxes.
struct BrowserEntryArray entry
Array of files / dirs / mailboxes.
bool imap_browse
IMAP folder.
String manipulation buffer.
Browser entry representing a folder/dir.
bool selectable
Folder can be selected.
char delim
Path delimiter.
bool imap
This is an IMAP folder.
bool has_mailbox
This is a mailbox.
char * name
Name of file/dir/mailbox.
bool tagged
Folder is tagged.
gid_t gid
File's Group ID.
bool has_new_mail
true if mailbox has "new mail"
bool poll_new_mail
Check mailbox for new mail.
bool notify_user
User will be notified of new mail.
nlink_t nlink
Number of hard links.
char * desc
Description of mailbox.
struct NntpMboxData * nd
Extra NNTP data.
int gen
Unique id, used for (un)sorting.
time_t mtime
Modification time.
int msg_count
total number of messages
mode_t mode
File permissions.
bool inferiors
Folder has children.
int msg_unread
number of unread messages
A folder/dir in the browser.
int num
Number in the index.
struct FolderFile * ff
File / Dir / Mailbox.
NNTP-specific Mailbox data -.