2 * $Id: newmail.h 807 2007-11-09 01:21:33Z hubert@u.washington.edu $
4 * ========================================================================
5 * Copyright 2013-2022 Eduardo Chappa
6 * Copyright 2006 University of Washington
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * ========================================================================
17 #ifndef PITH_NEWMAIL_INCLUDED
18 #define PITH_NEWMAIL_INCLUDED
21 typedef enum {GoodTime
= 0, BadTime
, VeryBadTime
, DoItNow
} CheckPointTime
;
25 * Macro to help with new mail check timing...
27 #define NM_TIMING(X) (((X)==NO_OP_IDLE) ? GoodTime : \
28 (((X)==NO_OP_COMMAND) ? BadTime : VeryBadTime))
30 #define NM_STATUS_MSG 0x01
31 #define NM_DEFER_SORT 0x02
32 #define NM_FROM_COMPOSER 0x04
36 * Icon text types, to tell which icon to use
42 /* exported prototypes */
43 long new_mail(int, CheckPointTime
, int);
44 void format_new_mail_msg(char *, long, ENVELOPE
*, char *, char *, char *, char *, size_t);
45 void check_point_change(MAILSTREAM
*);
46 void reset_check_point(MAILSTREAM
*);
47 int changes_to_checkpoint(MAILSTREAM
*);
48 void zero_new_mail_count(void);
49 void init_newmailfifo(char *);
50 void close_newmailfifo(void);
53 /* mandatory to implement prototypes */
54 void newmail_check_cue(int);
55 void newmail_check_point_cue(int);
56 void icon_text(char *, int);
57 time_t time_of_last_input(void);
60 #endif /* PITH_NEWMAIL_INCLUDED */