31 |
#define MU_ATTRIBUTE_SEEN 0x10 |
#define MU_ATTRIBUTE_SEEN 0x10 |
32 |
#define MU_ATTRIBUTE_READ 0x20 |
#define MU_ATTRIBUTE_READ 0x20 |
33 |
#define MU_ATTRIBUTE_MODIFIED 0x40 |
#define MU_ATTRIBUTE_MODIFIED 0x40 |
34 |
#define MU_ATTRIBUTE_RECENT 0x00 |
|
35 |
|
/* A message is recent if the current session is the first session |
36 |
|
to have been notified about it. Practically, a message is considered |
37 |
|
"recent" if it does not have MU_ATTRIBUTE_SEEN set. For consistency |
38 |
|
a pseudo-attribute is provided: */ |
39 |
|
#define MU_ATTRIBUTE_RECENT 0 |
40 |
|
|
41 |
|
#define MU_ATTRIBUTE_IS_UNSEEN(f) \ |
42 |
|
((f) == 0 || ! ((f) & MU_ATTRIBUTE_SEEN)) |
43 |
|
|
44 |
|
#define MU_ATTRIBUTE_IS_UNREAD(f) \ |
45 |
|
((f) == 0 || ! ((f) & MU_ATTRIBUTE_READ)) |
46 |
|
|
47 |
extern int attribute_create __P ((attribute_t *, void *)); |
extern int attribute_create __P ((attribute_t *, void *)); |
48 |
extern void attribute_destroy __P ((attribute_t *, void *)); |
extern void attribute_destroy __P ((attribute_t *, void *)); |