зеркало из https://github.com/mozilla/pjs.git
start moving stuff out of msgcom.h and into individual header files in mailnews
This commit is contained in:
Родитель
b13f50be97
Коммит
51c26bc638
277
include/msgcom.h
277
include/msgcom.h
|
@ -568,280 +568,13 @@ typedef enum
|
|||
===========================================================================
|
||||
*/
|
||||
|
||||
/* Flags about a single message. These values are used in the MSG_MessageLine
|
||||
struct and in a folder's mozilla-status line. The summary file database
|
||||
uses a different internal set of flags.
|
||||
*/
|
||||
/* MSG_FLAG_* now in mailnews/base/public/nsMsgMessageFlags.h */
|
||||
|
||||
#define MSG_FLAG_READ 0x0001 /* has been read */
|
||||
#define MSG_FLAG_REPLIED 0x0002 /* a reply has been successfully sent */
|
||||
#define MSG_FLAG_MARKED 0x0004 /* the user-provided mark */
|
||||
#define MSG_FLAG_EXPUNGED 0x0008 /* already gone (when folder not
|
||||
compacted.) Since actually
|
||||
removing a message from a
|
||||
folder is a semi-expensive
|
||||
operation, we tend to delay it;
|
||||
messages with this bit set will
|
||||
be removed the next time folder
|
||||
compaction is done. Once this
|
||||
bit is set, it never gets
|
||||
un-set. */
|
||||
#define MSG_FLAG_HAS_RE 0x0010 /* whether subject has "Re:" on
|
||||
the front. The folder summary
|
||||
uniquifies all of the strings
|
||||
in it, and to help this, any
|
||||
string which begins with "Re:"
|
||||
has that stripped first. This
|
||||
bit is then set, so that when
|
||||
presenting the message, we know
|
||||
to put it back (since the "Re:"
|
||||
is not itself stored in the
|
||||
file.) */
|
||||
#define MSG_FLAG_ELIDED 0x0020 /* Whether the children of this
|
||||
sub-thread are folded in the
|
||||
display. */
|
||||
#define MSG_FLAG_EXPIRED 0x0040 /* If this flag is set, then this
|
||||
is not a "real" message, but is
|
||||
a dummy container representing
|
||||
an expired parent in a thread. */
|
||||
#define MSG_FLAG_OFFLINE 0x0080 /* db has offline news or imap article
|
||||
*/
|
||||
#define MSG_FLAG_WATCHED 0x0100 /* If set, then this thread is watched (in
|
||||
3.0, this was MSG_FLAG_UPDATING).*/
|
||||
#define MSG_FLAG_SENDER_AUTHED 0x0200 /* If set, then this message's sender
|
||||
has been authenticated when sending this msg. */
|
||||
#define MSG_FLAG_PARTIAL 0x0400 /* If set, then this message's body is
|
||||
only the first ten lines or so of the
|
||||
message, and we need to add a link to
|
||||
let the user download the rest of it
|
||||
from the POP server. */
|
||||
#define MSG_FLAG_QUEUED 0x0800 /* If set, this message is queued for
|
||||
delivery. This only ever gets set on
|
||||
messages in the queue folder, but is
|
||||
used to protect against the case of
|
||||
other messages having made their way
|
||||
in there somehow -- if some other
|
||||
program put a message in the queue, we
|
||||
don't want to later deliver it! */
|
||||
#define MSG_FLAG_FORWARDED 0x1000 /* this message has been forwarded */
|
||||
#define MSG_FLAG_PRIORITIES 0xE000 /* These are used to remember the message
|
||||
priority in the mozilla status flags
|
||||
so we can regenerate a priority after a
|
||||
rule (or user) has changed it. They are
|
||||
not returned in MSG_MessageLine.flags,
|
||||
just in mozilla-status, so if you need
|
||||
more non-persistent flags, you could
|
||||
share these bits. But it would be wrong.
|
||||
. */
|
||||
|
||||
#define MSG_FLAG_NEW 0x10000 /* This msg is new since the last time
|
||||
the folder was closed.
|
||||
*/
|
||||
#define MSG_FLAG_IGNORED 0x40000 /* the thread is ignored */
|
||||
|
||||
|
||||
#define MSG_FLAG_IMAP_DELETED 0x200000 /* message is marked deleted on the server */
|
||||
|
||||
#define MSG_FLAG_MDN_REPORT_NEEDED 0x400000 /* This msg required to send an MDN
|
||||
* to the sender of the message
|
||||
*/
|
||||
#define MSG_FLAG_MDN_REPORT_SENT 0x800000 /* An MDN report message has been
|
||||
* sent for this message. No more
|
||||
* MDN report should be sent to the
|
||||
* sender
|
||||
*/
|
||||
#define MSG_FLAG_TEMPLATE 0x1000000 /* this message is a template */
|
||||
#define MSG_FLAG_ATTACHMENT 0x10000000 /* this message has files attached to it */
|
||||
|
||||
/* Flags about a folder or a newsgroup. Used in the MSG_FolderLine struct;
|
||||
also used internally in libmsg (the `flags' slot in MSG_Folder). Note that
|
||||
these don't have anything to do with the above MSG_FLAG flags; they belong
|
||||
to different objects entirely. */
|
||||
|
||||
/* These flags say what kind of folder this is:
|
||||
mail or news, directory or leaf.
|
||||
*/
|
||||
#define MSG_FOLDER_FLAG_NEWSGROUP 0x0001 /* The type of this folder. */
|
||||
#define MSG_FOLDER_FLAG_NEWS_HOST 0x0002 /* Exactly one of these three */
|
||||
#define MSG_FOLDER_FLAG_MAIL 0x0004 /* flags will be set. */
|
||||
|
||||
#define MSG_FOLDER_FLAG_DIRECTORY 0x0008 /* Whether this is a directory:
|
||||
NEWS_HOSTs are always
|
||||
directories; NEWS_GROUPs can be
|
||||
directories if we are in ``show
|
||||
all groups'' mode; MAIL folders
|
||||
will have this bit if they are
|
||||
really directories, not files.
|
||||
(Note that directories may have
|
||||
zero children.) */
|
||||
|
||||
#define MSG_FOLDER_FLAG_ELIDED 0x0010 /* Whether the children of this
|
||||
folder are currently hidden in
|
||||
the listing. This will only
|
||||
be present if the DIRECTORY
|
||||
bit is on. */
|
||||
|
||||
/* These flags only occur in folders which have
|
||||
the MSG_FOLDER_FLAG_NEWSGROUP bit set, and do
|
||||
not have the MSG_FOLDER_FLAG_DIRECTORY or
|
||||
MSG_FOLDER_FLAG_ELIDED bits set.
|
||||
*/
|
||||
|
||||
#define MSG_FOLDER_FLAG_MODERATED 0x0020 /* Whether this folder represents
|
||||
a moderated newsgroup. */
|
||||
#define MSG_FOLDER_FLAG_SUBSCRIBED 0x0040 /* Whether this folder represents
|
||||
a subscribed newsgroup. */
|
||||
#define MSG_FOLDER_FLAG_NEW_GROUP 0x0080 /* A newsgroup which has just
|
||||
been added by the `Check
|
||||
New Groups' command. */
|
||||
|
||||
|
||||
/* These flags only occur in folders which have
|
||||
the MSG_FOLDER_FLAG_MAIL bit set, and do
|
||||
not have the MSG_FOLDER_FLAG_DIRECTORY or
|
||||
MSG_FOLDER_FLAG_ELIDED bits set.
|
||||
|
||||
The numeric order of these flags is important;
|
||||
folders with these flags on get displayed first,
|
||||
in reverse numeric order, before folders that have
|
||||
none of these flags on. (Note that if a folder is,
|
||||
say, *both* inbox and sentmail, then its numeric value
|
||||
will be even bigger, and so will bubble up to where the
|
||||
inbox generally is. What a hack!)
|
||||
*/
|
||||
|
||||
#define MSG_FOLDER_FLAG_TRASH 0x0100 /* Whether this is the trash
|
||||
folder. */
|
||||
#define MSG_FOLDER_FLAG_SENTMAIL 0x0200 /* Whether this is a folder that
|
||||
sent mail gets delivered to.
|
||||
This particular magic flag is
|
||||
used only during sorting of
|
||||
folders; we generally don't care
|
||||
otherwise. */
|
||||
#define MSG_FOLDER_FLAG_DRAFTS 0x0400 /* Whether this is the folder in
|
||||
which unfinised, unsent messages
|
||||
are saved for later editing. */
|
||||
#define MSG_FOLDER_FLAG_QUEUE 0x0800 /* Whether this is the folder in
|
||||
which messages are queued for
|
||||
later delivery. */
|
||||
#define MSG_FOLDER_FLAG_INBOX 0x1000 /* Whether this is the primary
|
||||
inbox folder. */
|
||||
#define MSG_FOLDER_FLAG_IMAPBOX 0x2000 /* Whether this folder on online
|
||||
IMAP */
|
||||
|
||||
#define MSG_FOLDER_FLAG_CAT_CONTAINER 0x4000 /* This group contains categories */
|
||||
|
||||
#define MSG_FOLDER_FLAG_PROFILE_GROUP 0x8000 /* This is a virtual newsgroup */
|
||||
|
||||
#define MSG_FOLDER_FLAG_CATEGORY 0x10000 /* this is a category */
|
||||
|
||||
#define MSG_FOLDER_FLAG_GOT_NEW 0x20000 /* folder got new msgs */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_SERVER 0x40000 /* folder is an IMAP server */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_PERSONAL 0x80000 /* folder is an IMAP personal folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_PUBLIC 0x100000 /* folder is an IMAP public folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_OTHER_USER 0x200000 /* folder is another user's IMAP folder */
|
||||
/* Think of it like a folder that someone would share. */
|
||||
#define MSG_FOLDER_FLAG_TEMPLATES 0x400000 /* Whether this is the template folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_PERSONAL_SHARED 0x800000 /* This folder is one of your personal folders that
|
||||
` is shared with other users */
|
||||
|
||||
/* Flags in the subscribe pane (used inside of MSG_GroupNameLine). Where
|
||||
the flags overlap with the MSG_FOLDER_FLAG_* flags, it has the same value,
|
||||
to reduce the chance of someone using the wrong constant. */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_ELIDED 0x0010 /* Whether the children of this
|
||||
group are currently hidden
|
||||
in the listing. This will
|
||||
only be present if it has
|
||||
any children. */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_MODERATED 0x0020 /* Whether this folder
|
||||
represents a moderated
|
||||
newsgroup. */
|
||||
#define MSG_GROUPNAME_FLAG_SUBSCRIBED 0x0040 /* Whether this folder
|
||||
represents a subscribed
|
||||
newsgroup. */
|
||||
#define MSG_GROUPNAME_FLAG_NEW_GROUP 0x0080 /* A newsgroup which has just
|
||||
been added by the `Check
|
||||
New Groups' command. */
|
||||
#define MSG_GROUPNAME_FLAG_HASCHILDREN 0x40000 /* Whether there are children
|
||||
of this group. Whether those
|
||||
chilren are visible in this
|
||||
list is determined by the
|
||||
above "ELIDED" flag.
|
||||
Setting this to the same value
|
||||
as a MSG_FOLDER_FLAG_* IMAP server,
|
||||
since an IMAP _server_ will never
|
||||
appear in the subscribe pane. */
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_PERSONAL 0x80000 /* folder is an IMAP personal folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_PUBLIC 0x100000 /* folder is an IMAP public folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_OTHER_USER 0x200000 /* folder is another user's IMAP folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_NOSELECT 0x400000 /* A \NoSelect IMAP folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_PERSONAL_SHARED 0x800000 /* whether or not this folder is one of your personal folders that
|
||||
` is shared with other users */
|
||||
|
||||
|
||||
/* This set enumerates the header fields which may be displayed in the
|
||||
message composition window.
|
||||
*/
|
||||
typedef uint32 MSG_HEADER_SET;
|
||||
#define MSG_FROM_HEADER_MASK 0x00000001
|
||||
#define MSG_REPLY_TO_HEADER_MASK 0x00000002
|
||||
#define MSG_TO_HEADER_MASK 0x00000004
|
||||
#define MSG_CC_HEADER_MASK 0x00000008
|
||||
#define MSG_BCC_HEADER_MASK 0x00000010
|
||||
#define MSG_FCC_HEADER_MASK 0x00000020
|
||||
#define MSG_NEWSGROUPS_HEADER_MASK 0x00000040
|
||||
#define MSG_FOLLOWUP_TO_HEADER_MASK 0x00000080
|
||||
#define MSG_SUBJECT_HEADER_MASK 0x00000100
|
||||
#define MSG_ATTACHMENTS_HEADER_MASK 0x00000200
|
||||
|
||||
/* These next four are typically not ever displayed in the UI, but are still
|
||||
stored and used internally. */
|
||||
#define MSG_ORGANIZATION_HEADER_MASK 0x00000400
|
||||
#define MSG_REFERENCES_HEADER_MASK 0x00000800
|
||||
#define MSG_OTHERRANDOMHEADERS_HEADER_MASK 0x00001000
|
||||
#define MSG_NEWSPOSTURL_HEADER_MASK 0x00002000
|
||||
|
||||
#define MSG_PRIORITY_HEADER_MASK 0x00004000
|
||||
#define MSG_NEWS_FCC_HEADER_MASK 0x00008000
|
||||
#define MSG_MESSAGE_ENCODING_HEADER_MASK 0x00010000
|
||||
#define MSG_CHARACTER_SET_HEADER_MASK 0x00020000
|
||||
#define MSG_MESSAGE_ID_HEADER_MASK 0x00040000
|
||||
#define MSG_NEWS_BCC_HEADER_MASK 0x00080000
|
||||
|
||||
/* This is also not exposed to the UI; it's used internally to help remember
|
||||
whether the original message had an HTML portion that we can quote. */
|
||||
#define MSG_HTML_PART_HEADER_MASK 0x00100000
|
||||
|
||||
/* The "body=" pseudo-header (as in "mailto:me?body=hi+there") */
|
||||
#define MSG_DEFAULTBODY_HEADER_MASK 0x00200000
|
||||
|
||||
#define MSG_X_TEMPLATE_HEADER_MASK 0x00400000
|
||||
|
||||
/* IMAP folders for posting */
|
||||
#define MSG_IMAP_FOLDER_HEADER_MASK 0x02000000
|
||||
|
||||
typedef enum {
|
||||
MSG_RETURN_RECEIPT_BOOL_HEADER_MASK = 0,
|
||||
MSG_ENCRYPTED_BOOL_HEADER_MASK,
|
||||
MSG_SIGNED_BOOL_HEADER_MASK,
|
||||
MSG_UUENCODE_BINARY_BOOL_HEADER_MASK,
|
||||
MSG_ATTACH_VCARD_BOOL_HEADER_MASK,
|
||||
MSG_LAST_BOOL_HEADER_MASK /* last boolean header mask; must be the last one
|
||||
* DON'T remove.
|
||||
*/
|
||||
} MSG_BOOL_HEADER_SET;
|
||||
/* MSG_FOLDER_FLAG_* now in mailnews/base/public/nsMsgFolderFlags.h */
|
||||
|
||||
/* MSG_GROUPNAME_FLAG_* now in mailnews/base/public/nsMsgGroupnameFlags.h */
|
||||
|
||||
/* *_HEADER_MASK now in mailnews/base/public/nsMsgHeaderMasks.h */
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -28,6 +28,9 @@ IDLSRCS = \
|
|||
|
||||
EXPORTS = \
|
||||
msgCore.h \
|
||||
nsMsgFolderFlags.h \
|
||||
nsMsgHeaderMasks.h \
|
||||
nsMsgMessageFlags.h \
|
||||
nsIMsgRFC822Parser.h \
|
||||
nsIMsgHost.h \
|
||||
$(NULL)
|
||||
|
|
|
@ -0,0 +1,122 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public License
|
||||
* Version 1.0 (the "NPL"); you may not use this file except in
|
||||
* compliance with the NPL. You may obtain a copy of the NPL at
|
||||
* http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the NPL is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
||||
* for the specific language governing rights and limitations under the
|
||||
* NPL.
|
||||
*
|
||||
* The Initial Developer of this code under the NPL is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
||||
* Reserved.
|
||||
*/
|
||||
|
||||
/* Flags about a folder or a newsgroup. Used in the MSG_FolderLine struct;
|
||||
also used internally in libmsg (the `flags' slot in MSG_Folder). Note that
|
||||
these don't have anything to do with the above MSG_FLAG flags; they belong
|
||||
to different objects entirely. */
|
||||
|
||||
#ifndef _msgFolderFlags_h_
|
||||
#define _msgFolderFlags_h_
|
||||
|
||||
|
||||
/* These flags say what kind of folder this is:
|
||||
mail or news, directory or leaf.
|
||||
*/
|
||||
#define MSG_FOLDER_FLAG_NEWSGROUP 0x0001 /* The type of this folder. */
|
||||
#define MSG_FOLDER_FLAG_NEWS_HOST 0x0002 /* Exactly one of these three */
|
||||
#define MSG_FOLDER_FLAG_MAIL 0x0004 /* flags will be set. */
|
||||
|
||||
#define MSG_FOLDER_FLAG_DIRECTORY 0x0008 /* Whether this is a directory:
|
||||
NEWS_HOSTs are always
|
||||
directories; NEWS_GROUPs can be
|
||||
directories if we are in ``show
|
||||
all groups'' mode; MAIL folders
|
||||
will have this bit if they are
|
||||
really directories, not files.
|
||||
(Note that directories may have
|
||||
zero children.) */
|
||||
|
||||
#define MSG_FOLDER_FLAG_ELIDED 0x0010 /* Whether the children of this
|
||||
folder are currently hidden in
|
||||
the listing. This will only
|
||||
be present if the DIRECTORY
|
||||
bit is on. */
|
||||
|
||||
/* These flags only occur in folders which have
|
||||
the MSG_FOLDER_FLAG_NEWSGROUP bit set, and do
|
||||
not have the MSG_FOLDER_FLAG_DIRECTORY or
|
||||
MSG_FOLDER_FLAG_ELIDED bits set.
|
||||
*/
|
||||
|
||||
#define MSG_FOLDER_FLAG_MODERATED 0x0020 /* Whether this folder represents
|
||||
a moderated newsgroup. */
|
||||
#define MSG_FOLDER_FLAG_SUBSCRIBED 0x0040 /* Whether this folder represents
|
||||
a subscribed newsgroup. */
|
||||
#define MSG_FOLDER_FLAG_NEW_GROUP 0x0080 /* A newsgroup which has just
|
||||
been added by the `Check
|
||||
New Groups' command. */
|
||||
|
||||
|
||||
/* These flags only occur in folders which have
|
||||
the MSG_FOLDER_FLAG_MAIL bit set, and do
|
||||
not have the MSG_FOLDER_FLAG_DIRECTORY or
|
||||
MSG_FOLDER_FLAG_ELIDED bits set.
|
||||
|
||||
The numeric order of these flags is important;
|
||||
folders with these flags on get displayed first,
|
||||
in reverse numeric order, before folders that have
|
||||
none of these flags on. (Note that if a folder is,
|
||||
say, *both* inbox and sentmail, then its numeric value
|
||||
will be even bigger, and so will bubble up to where the
|
||||
inbox generally is. What a hack!)
|
||||
*/
|
||||
|
||||
#define MSG_FOLDER_FLAG_TRASH 0x0100 /* Whether this is the trash
|
||||
folder. */
|
||||
#define MSG_FOLDER_FLAG_SENTMAIL 0x0200 /* Whether this is a folder that
|
||||
sent mail gets delivered to.
|
||||
This particular magic flag is
|
||||
used only during sorting of
|
||||
folders; we generally don't care
|
||||
otherwise. */
|
||||
#define MSG_FOLDER_FLAG_DRAFTS 0x0400 /* Whether this is the folder in
|
||||
which unfinised, unsent messages
|
||||
are saved for later editing. */
|
||||
#define MSG_FOLDER_FLAG_QUEUE 0x0800 /* Whether this is the folder in
|
||||
which messages are queued for
|
||||
later delivery. */
|
||||
#define MSG_FOLDER_FLAG_INBOX 0x1000 /* Whether this is the primary
|
||||
inbox folder. */
|
||||
#define MSG_FOLDER_FLAG_IMAPBOX 0x2000 /* Whether this folder on online
|
||||
IMAP */
|
||||
|
||||
#define MSG_FOLDER_FLAG_CAT_CONTAINER 0x4000 /* This group contains categories */
|
||||
|
||||
#define MSG_FOLDER_FLAG_PROFILE_GROUP 0x8000 /* This is a virtual newsgroup */
|
||||
|
||||
#define MSG_FOLDER_FLAG_CATEGORY 0x10000 /* this is a category */
|
||||
|
||||
#define MSG_FOLDER_FLAG_GOT_NEW 0x20000 /* folder got new msgs */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_SERVER 0x40000 /* folder is an IMAP server */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_PERSONAL 0x80000 /* folder is an IMAP personal folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_PUBLIC 0x100000 /* folder is an IMAP public folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_OTHER_USER 0x200000 /* folder is another user's IMAP folder */
|
||||
/* Think of it like a folder that someone would share. */
|
||||
#define MSG_FOLDER_FLAG_TEMPLATES 0x400000 /* Whether this is the template folder */
|
||||
|
||||
#define MSG_FOLDER_FLAG_PERSONAL_SHARED 0x800000 /* This folder is one of your personal folders that
|
||||
` is shared with other users */
|
||||
|
||||
#define MSG_FOLDER_FLAG_IMAP_NOSELECT 0x1000000 /* This folder is an IMAP \Noselect folder */
|
||||
|
||||
#endif
|
|
@ -0,0 +1,62 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public License
|
||||
* Version 1.0 (the "NPL"); you may not use this file except in
|
||||
* compliance with the NPL. You may obtain a copy of the NPL at
|
||||
* http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the NPL is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
||||
* for the specific language governing rights and limitations under the
|
||||
* NPL.
|
||||
*
|
||||
* The Initial Developer of this code under the NPL is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
||||
* Reserved.
|
||||
*/
|
||||
|
||||
#ifndef _msgGroupnameFlags_h_
|
||||
#define _msgGroupnameFlags_h_
|
||||
|
||||
|
||||
/* Flags in the subscribe pane (used inside of MSG_GroupNameLine). Where
|
||||
the flags overlap with the MSG_FOLDER_FLAG_* flags, it has the same value,
|
||||
to reduce the chance of someone using the wrong constant. */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_ELIDED 0x0010 /* Whether the children of this
|
||||
group are currently hidden
|
||||
in the listing. This will
|
||||
only be present if it has
|
||||
any children. */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_MODERATED 0x0020 /* Whether this folder
|
||||
represents a moderated
|
||||
newsgroup. */
|
||||
#define MSG_GROUPNAME_FLAG_SUBSCRIBED 0x0040 /* Whether this folder
|
||||
represents a subscribed
|
||||
newsgroup. */
|
||||
#define MSG_GROUPNAME_FLAG_NEW_GROUP 0x0080 /* A newsgroup which has just
|
||||
been added by the `Check
|
||||
New Groups' command. */
|
||||
#define MSG_GROUPNAME_FLAG_HASCHILDREN 0x40000 /* Whether there are children
|
||||
of this group. Whether those
|
||||
chilren are visible in this
|
||||
list is determined by the
|
||||
above "ELIDED" flag.
|
||||
Setting this to the same value
|
||||
as a MSG_FOLDER_FLAG_* IMAP server,
|
||||
since an IMAP _server_ will never
|
||||
appear in the subscribe pane. */
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_PERSONAL 0x80000 /* folder is an IMAP personal folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_PUBLIC 0x100000 /* folder is an IMAP public folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_OTHER_USER 0x200000 /* folder is another user's IMAP folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_IMAP_NOSELECT 0x400000 /* A \NoSelect IMAP folder */
|
||||
|
||||
#define MSG_GROUPNAME_FLAG_PERSONAL_SHARED 0x800000 /* whether or not this folder is one of your personal folders that
|
||||
` is shared with other users */
|
||||
|
||||
#endif
|
|
@ -0,0 +1,75 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public License
|
||||
* Version 1.0 (the "NPL"); you may not use this file except in
|
||||
* compliance with the NPL. You may obtain a copy of the NPL at
|
||||
* http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the NPL is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
||||
* for the specific language governing rights and limitations under the
|
||||
* NPL.
|
||||
*
|
||||
* The Initial Developer of this code under the NPL is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
||||
* Reserved.
|
||||
*/
|
||||
|
||||
#ifndef _msgHeaderMasks_h_
|
||||
#define _msgHeaderMasks_h_
|
||||
|
||||
/* This set enumerates the header fields which may be displayed in the
|
||||
message composition window.
|
||||
*/
|
||||
typedef uint32 MSG_HEADER_SET;
|
||||
#define MSG_FROM_HEADER_MASK 0x00000001
|
||||
#define MSG_REPLY_TO_HEADER_MASK 0x00000002
|
||||
#define MSG_TO_HEADER_MASK 0x00000004
|
||||
#define MSG_CC_HEADER_MASK 0x00000008
|
||||
#define MSG_BCC_HEADER_MASK 0x00000010
|
||||
#define MSG_FCC_HEADER_MASK 0x00000020
|
||||
#define MSG_NEWSGROUPS_HEADER_MASK 0x00000040
|
||||
#define MSG_FOLLOWUP_TO_HEADER_MASK 0x00000080
|
||||
#define MSG_SUBJECT_HEADER_MASK 0x00000100
|
||||
#define MSG_ATTACHMENTS_HEADER_MASK 0x00000200
|
||||
|
||||
/* These next four are typically not ever displayed in the UI, but are still
|
||||
stored and used internally. */
|
||||
#define MSG_ORGANIZATION_HEADER_MASK 0x00000400
|
||||
#define MSG_REFERENCES_HEADER_MASK 0x00000800
|
||||
#define MSG_OTHERRANDOMHEADERS_HEADER_MASK 0x00001000
|
||||
#define MSG_NEWSPOSTURL_HEADER_MASK 0x00002000
|
||||
|
||||
#define MSG_PRIORITY_HEADER_MASK 0x00004000
|
||||
#define MSG_NEWS_FCC_HEADER_MASK 0x00008000
|
||||
#define MSG_MESSAGE_ENCODING_HEADER_MASK 0x00010000
|
||||
#define MSG_CHARACTER_SET_HEADER_MASK 0x00020000
|
||||
#define MSG_MESSAGE_ID_HEADER_MASK 0x00040000
|
||||
#define MSG_NEWS_BCC_HEADER_MASK 0x00080000
|
||||
|
||||
/* This is also not exposed to the UI; it's used internally to help remember
|
||||
whether the original message had an HTML portion that we can quote. */
|
||||
#define MSG_HTML_PART_HEADER_MASK 0x00100000
|
||||
|
||||
/* The "body=" pseudo-header (as in "mailto:me?body=hi+there") */
|
||||
#define MSG_DEFAULTBODY_HEADER_MASK 0x00200000
|
||||
|
||||
#define MSG_X_TEMPLATE_HEADER_MASK 0x00400000
|
||||
|
||||
/* IMAP folders for posting */
|
||||
#define MSG_IMAP_FOLDER_HEADER_MASK 0x02000000
|
||||
|
||||
typedef enum {
|
||||
MSG_RETURN_RECEIPT_BOOL_HEADER_MASK = 0,
|
||||
MSG_ENCRYPTED_BOOL_HEADER_MASK,
|
||||
MSG_SIGNED_BOOL_HEADER_MASK,
|
||||
MSG_UUENCODE_BINARY_BOOL_HEADER_MASK,
|
||||
MSG_ATTACH_VCARD_BOOL_HEADER_MASK,
|
||||
MSG_LAST_BOOL_HEADER_MASK /* last boolean header mask; must be the last one
|
||||
* DON'T remove.
|
||||
*/
|
||||
} MSG_BOOL_HEADER_SET;
|
||||
|
||||
|
||||
#endif
|
|
@ -0,0 +1,108 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
*
|
||||
* The contents of this file are subject to the Netscape Public License
|
||||
* Version 1.0 (the "NPL"); you may not use this file except in
|
||||
* compliance with the NPL. You may obtain a copy of the NPL at
|
||||
* http://www.mozilla.org/NPL/
|
||||
*
|
||||
* Software distributed under the NPL is distributed on an "AS IS" basis,
|
||||
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
||||
* for the specific language governing rights and limitations under the
|
||||
* NPL.
|
||||
*
|
||||
* The Initial Developer of this code under the NPL is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
||||
* Reserved.
|
||||
*/
|
||||
|
||||
#ifndef _msgMessageFlags_h_
|
||||
#define _msgMessageFlags_h_
|
||||
|
||||
/* Flags about a single message. These values are used in the MSG_MessageLine
|
||||
struct and in a folder's mozilla-status line. The summary file database
|
||||
uses a different internal set of flags.
|
||||
*/
|
||||
|
||||
#define MSG_FLAG_READ 0x0001 /* has been read */
|
||||
#define MSG_FLAG_REPLIED 0x0002 /* a reply has been successfully sent */
|
||||
#define MSG_FLAG_MARKED 0x0004 /* the user-provided mark */
|
||||
#define MSG_FLAG_EXPUNGED 0x0008 /* already gone (when folder not
|
||||
compacted.) Since actually
|
||||
removing a message from a
|
||||
folder is a semi-expensive
|
||||
operation, we tend to delay it;
|
||||
messages with this bit set will
|
||||
be removed the next time folder
|
||||
compaction is done. Once this
|
||||
bit is set, it never gets
|
||||
un-set. */
|
||||
#define MSG_FLAG_HAS_RE 0x0010 /* whether subject has "Re:" on
|
||||
the front. The folder summary
|
||||
uniquifies all of the strings
|
||||
in it, and to help this, any
|
||||
string which begins with "Re:"
|
||||
has that stripped first. This
|
||||
bit is then set, so that when
|
||||
presenting the message, we know
|
||||
to put it back (since the "Re:"
|
||||
is not itself stored in the
|
||||
file.) */
|
||||
#define MSG_FLAG_ELIDED 0x0020 /* Whether the children of this
|
||||
sub-thread are folded in the
|
||||
display. */
|
||||
#define MSG_FLAG_EXPIRED 0x0040 /* If this flag is set, then this
|
||||
is not a "real" message, but is
|
||||
a dummy container representing
|
||||
an expired parent in a thread. */
|
||||
#define MSG_FLAG_OFFLINE 0x0080 /* db has offline news or imap article
|
||||
*/
|
||||
#define MSG_FLAG_WATCHED 0x0100 /* If set, then this thread is watched (in
|
||||
3.0, this was MSG_FLAG_UPDATING).*/
|
||||
#define MSG_FLAG_SENDER_AUTHED 0x0200 /* If set, then this message's sender
|
||||
has been authenticated when sending this msg. */
|
||||
#define MSG_FLAG_PARTIAL 0x0400 /* If set, then this message's body is
|
||||
only the first ten lines or so of the
|
||||
message, and we need to add a link to
|
||||
let the user download the rest of it
|
||||
from the POP server. */
|
||||
#define MSG_FLAG_QUEUED 0x0800 /* If set, this message is queued for
|
||||
delivery. This only ever gets set on
|
||||
messages in the queue folder, but is
|
||||
used to protect against the case of
|
||||
other messages having made their way
|
||||
in there somehow -- if some other
|
||||
program put a message in the queue, we
|
||||
don't want to later deliver it! */
|
||||
#define MSG_FLAG_FORWARDED 0x1000 /* this message has been forwarded */
|
||||
#define MSG_FLAG_PRIORITIES 0xE000 /* These are used to remember the message
|
||||
priority in the mozilla status flags
|
||||
so we can regenerate a priority after a
|
||||
rule (or user) has changed it. They are
|
||||
not returned in MSG_MessageLine.flags,
|
||||
just in mozilla-status, so if you need
|
||||
more non-persistent flags, you could
|
||||
share these bits. But it would be wrong.
|
||||
. */
|
||||
|
||||
#define MSG_FLAG_NEW 0x10000 /* This msg is new since the last time
|
||||
the folder was closed.
|
||||
*/
|
||||
#define MSG_FLAG_IGNORED 0x40000 /* the thread is ignored */
|
||||
|
||||
|
||||
#define MSG_FLAG_IMAP_DELETED 0x200000 /* message is marked deleted on the server */
|
||||
|
||||
#define MSG_FLAG_MDN_REPORT_NEEDED 0x400000 /* This msg required to send an MDN
|
||||
* to the sender of the message
|
||||
*/
|
||||
#define MSG_FLAG_MDN_REPORT_SENT 0x800000 /* An MDN report message has been
|
||||
* sent for this message. No more
|
||||
* MDN report should be sent to the
|
||||
* sender
|
||||
*/
|
||||
#define MSG_FLAG_TEMPLATE 0x1000000 /* this message is a template */
|
||||
#define MSG_FLAG_ATTACHMENT 0x10000000 /* this message has files attached to it */
|
||||
|
||||
|
||||
#endif
|
Загрузка…
Ссылка в новой задаче