1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182
|
#ifndef __FOLDER_H__
#define __FOLDER_H__ 1
/*
elmo - ELectronic Mail Operator
Copyright (C) 2002, 2003, 2004 rzyjontko
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
/*****************************************************************************
* INTERFACE REQUIRED HEADERS
****************************************************************************/
#include "mail.h"
/*****************************************************************************
* INTERFACE DEFINITIONS / ENUMERATIONS / SIMPLE TYPEDEFS
****************************************************************************/
/****************************************************************************
* INTERFACE CLASS PROTOTYPES / EXTERNAL CLASS REFERENCES
****************************************************************************/
/****************************************************************************
* INTERFACE STRUCTURES / UTILITY CLASSES
****************************************************************************/
/****************************************************************************
* INTERFACE DATA DECLARATIONS
****************************************************************************/
/****************************************************************************
* INTERFACE FUNCTION PROTOTYPES (FOR OTHER MODULES)
****************************************************************************/
extern mail_t *folder_mail_selected (void);
extern void folder_init (void);
extern void folder_free_resources (void);
extern int folder_read_box (char *name);
/****************************************************************************
* INTERFACE FUNCTION PROTOTYPES (USER INTERFACE)
****************************************************************************/
/**
* bar movement
*/
/** move on to the next page */
extern void folder_page_next (void);
/** move to the previous page */
extern void folder_page_prev (void);
/** move bar to the next position */
extern void folder_bar_next (void);
/** move bar to the previous position */
extern void folder_bar_prev (void);
/** move bar to the first position */
extern void folder_bar_first (void);
/** move bar to the last position */
extern void folder_bar_last (void);
/** scroll window down */
extern void folder_scroll_down (void);
/** scroll window up */
extern void folder_scroll_up (void);
/** place bar in a center of the screen */
extern void folder_recenter (void);
/** move bar to next unread message */
extern void folder_next_unread (void);
/** move bar to previous unread message */
extern void folder_prev_unread (void);
extern void folder_redraw (void);
extern void folder_refresh (void);
/** re-read mailbox */
extern void folder_update (void);
/** remove spam and refresh the view */
extern void folder_flush (void);
/**
* searching
*/
/** search forward */
extern void folder_search_forward (void);
/** search backward */
extern void folder_search_backward (void);
/**
* sorting
*/
/** group mails in threads */
extern void folder_sort_threads (void);
/** sort messages by date */
extern void folder_sort_date (void);
/** sort messages by from */
extern void folder_sort_from (void);
/** sort messages by subject */
extern void folder_sort_subject (void);
/**
* flagging
*/
/** toggle flag */
extern void folder_toggle_flag (void);
/** flag all messages */
extern void folder_flag_all (void);
/** unflag all messages */
extern void folder_unflag_all (void);
/** invert flag */
extern void folder_flag_invert (void);
/*+
Set flag on all the messages, that are duplicates of other
messages in the box. It is useful to remove them.
+*/
/** flag messages that are duplicates */
extern void folder_flag_duplicates (void);
/** removes message flag */
extern void folder_remove_flag (void);
extern void folder_set_focus (void);
extern void folder_unset_focus (void);
/**
* spam
*/
/** check if selected messages are spam */
extern void folder_spam_check (void);
/** check all messages that were not checked if they are spam */
extern void folder_spam_check_all (void);
/** delete message as a spam */
extern void folder_spam_delete (void);
/** scan messages according to their spam indicator and delete spam */
extern void folder_spam_flush (void);
/** unmark message incorrectly recognized as spam */
extern void folder_spam_is_not (void);
extern void folder_after_read (void);
extern void folder_after_reply (void);
extern void folder_after_fwd (void);
/*+
If you have a trash field defined in your .elmorc file, than move
selected messages to trash folder. Otherwise delete them.
+*/
/** delete a message (or move to trash) */
extern void folder_delete_mail (void);
/*+
Remove selected messages from the box. It is then impossible
to recover them.
+*/
/** permanently delete message */
extern void folder_kill_mail (void);
/** move selected message to another box */
extern void folder_move_mail (void);
/** mark selected messages as read */
extern void folder_make_read (void);
/** this function is executed each time a box is being left */
extern void folder_at_leave (void);
/** this function is executed each time a bar in folder moves */
extern void folder_at_bar_move (void);
/****************************************************************************
* INTERFACE OBJECT CLASS DEFINITIONS
****************************************************************************/
/****************************************************************************
* INTERFACE TRAILING HEADERS
****************************************************************************/
/****************************************************************************
*
* END HEADER folder.h
*
****************************************************************************/
#endif
|