#include <kmmessage.h>
Inherits KMMsgBase, and KMail::ISubject.
Public Types | |
enum | HeaderFieldType { Unstructured , Structured , Address } |
Public Member Functions | |
KMMessage (KMFolder *parent=0) | |
KMMessage (DwMessage *) | |
KMMessage (KMMsgInfo &msgInfo) | |
KMMessage (const KMMessage &other) | |
virtual | ~KMMessage () |
KMMsgBase & | toMsgBase () |
const KMMsgBase & | toMsgBase () const |
bool | isMessage () const |
bool | isUrgent () const |
void | setUnencryptedMsg (KMMessage *unencrypted) |
bool | hasUnencryptedMsg () const |
KMMessage * | unencryptedMsg () const |
KMMessage * | takeUnencryptedMsg () |
void | del () |
void | undel () |
void | touch () |
KMMessage * | createReply (KMail::ReplyStrategy replyStrategy=KMail::ReplySmart, TQString selection=TQString(), bool noQuote=false, bool allowDecryption=true, const TQString &tmpl=TQString(), const TQString &originatingAccount=TQString()) |
KMMessage * | createRedirect (const TQString &toStr) |
TQCString | createForwardBody () |
KMMessage * | createForward (const TQString &tmpl=TQString()) |
KMMessage * | createDeliveryReceipt () const |
KMMessage * | createMDN (KMime::MDN::ActionMode a, KMime::MDN::DispositionType d, bool allowGUI=false, TQValueList< KMime::MDN::DispositionModifier > m=TQValueList< KMime::MDN::DispositionModifier >()) |
void | sanitizeHeaders (const TQStringList &whiteList=TQStringList()) |
void | fromDwString (const DwString &str, bool setStatus=false) |
void | fromString (const TQCString &str, bool setStatus=false) |
void | fromByteArray (const TQByteArray &ba, bool setStatus=false) |
const DwString & | asDwString () const |
const DwMessage * | asDwMessage () |
TQCString | asString () const |
TQByteArray | asSendableString () const |
TQCString | headerAsSendableString () const |
void | removePrivateHeaderFields () |
DwMediaType & | dwContentType () |
TQString | headerAsString () const |
void | parseTextStringFromDwPart (partNode *root, TQCString &parsedString, const TQTextCodec *&codec, bool &isHTML) const |
void | initHeader (uint identity=0) |
void | initFromMessage (const KMMessage *msg, bool idHeaders=true) |
uint | identityUoid () const |
void | applyIdentity (uint id) |
void | cleanupHeader () |
void | setAutomaticFields (bool isMultipart=false) |
TQString | dateStr () const |
TQCString | dateShortStr () const |
TQString | dateIsoStr () const |
time_t | date () const |
void | setDate (const TQCString &str) |
void | setDate (time_t aUnixTime) |
void | setDateToday () |
TQString | to () const |
void | setTo (const TQString &aStr) |
TQString | toStrip () const |
TQString | replyTo () const |
void | setReplyTo (const TQString &aStr) |
void | setReplyTo (KMMessage *) |
TQString | cc () const |
void | setCc (const TQString &aStr) |
TQString | ccStrip () const |
TQString | bcc () const |
void | setBcc (const TQString &aStr) |
TQString | fcc () const |
void | setFcc (const TQString &aStr) |
TQString | drafts () const |
void | setDrafts (const TQString &aStr) |
TQString | templates () const |
void | setTemplates (const TQString &aStr) |
TQString | from () const |
void | setFrom (const TQString &aStr) |
TQString | fromStrip () const |
TQString | sender () const |
TQString | who () const |
TQString | subject () const |
void | setSubject (const TQString &aStr) |
void | initStrippedSubjectMD5 () |
TQString | xmark () const |
void | setXMark (const TQString &aStr) |
TQString | replyToId () const |
void | setReplyToId (const TQString &aStr) |
TQString | replyToIdMD5 () const |
TQString | replyToAuxIdMD5 () const |
TQString | strippedSubjectMD5 () const |
TQString | subjectMD5 () const |
bool | subjectIsPrefixed () const |
TQString | msgId () const |
void | setMsgId (const TQString &aStr) |
TQString | msgIdMD5 () const |
TQString | references () const |
void | setReferences (const TQCString &aStr) |
TQCString | id () const |
void | setMsgSerNum (unsigned long newMsgSerNum=0) |
TQString | headerField (const TQCString &name) const |
void | setHeaderField (const TQCString &name, const TQString &value, HeaderFieldType type=Unstructured, bool prepend=false) |
TQStringList | headerFields (const TQCString &name) const |
TQCString | rawHeaderField (const TQCString &name) const |
TQValueList< TQCString > | rawHeaderFields (const TQCString &field) const |
KMime::Types::AddressList | headerAddrField (const TQCString &name) const |
KMime::Types::AddrSpecList | extractAddrSpecs (const TQCString &headerNames) const |
void | removeHeaderField (const TQCString &name) |
void | removeHeaderFields (const TQCString &name) |
TQCString | typeStr () const |
int | type () const |
void | setTypeStr (const TQCString &aStr) |
void | setType (int aType) |
TQCString | subtypeStr () const |
int | subtype () const |
void | setSubtypeStr (const TQCString &aStr) |
void | setSubtype (int aSubtype) |
void | setContentTypeParam (const TQCString &attr, const TQCString &val) |
DwHeaders & | headers () const |
void | setNeedsAssembly () |
void | assembleIfNeeded () |
TQCString | contentTransferEncodingStr () const |
int | contentTransferEncoding (DwEntity *entity=0) const |
void | setContentTransferEncodingStr (const TQCString &cteString, DwEntity *entity=0) |
void | setContentTransferEncoding (int cte, DwEntity *entity=0) |
TQCString | cteStr () const |
int | cte (DwEntity *entity=0) const |
void | setCteStr (const TQCString &aStr, DwEntity *entity=0) |
void | setCte (int aCte, DwEntity *entity=0) |
void | setBodyFromUnicode (const TQString &str, DwEntity *entity=0) |
TQString | bodyToUnicode (const TQTextCodec *codec=0) const |
TQCString | body () const |
void | setBody (const TQCString &aStr) |
void | setBody (const DwString &aStr) |
void | setBody (const char *aStr) |
void | setMultiPartBody (const TQCString &aStr) |
void | setBodyEncoded (const TQCString &aStr, DwEntity *entity=0) |
void | setBodyEncodedBinary (const TQByteArray &aStr, DwEntity *entity=0) |
void | setBodyAndGuessCte (const TQByteArray &aBuf, TQValueList< int > &allowedCte, bool allow8Bit=false, bool willBeSigned=false, DwEntity *entity=0) |
void | setBodyAndGuessCte (const TQCString &aBuf, TQValueList< int > &allowedCte, bool allow8Bit=false, bool willBeSigned=false, DwEntity *entity=0) |
TQCString | bodyDecoded () const |
TQByteArray | bodyDecodedBinary () const |
int | numBodyParts () const |
DwBodyPart * | findDwBodyPart (int type, int subtype) const |
DwBodyPart * | findDwBodyPart (const TQCString &type, const TQCString &subtype) const |
DwBodyPart * | findDwBodyPart (DwBodyPart *part, const TQString &partSpecifier) |
DwBodyPart * | dwBodyPart (int aIdx) const |
int | partNumber (DwBodyPart *aDwBodyPart) const |
DwBodyPart * | getFirstDwBodyPart () const |
DwMessage * | getTopLevelPart () const |
void | bodyPart (int aIdx, KMMessagePart *aPart) const |
DwBodyPart * | createDWBodyPart (const KMMessagePart *aPart) |
void | addDwBodyPart (DwBodyPart *aDwPart) |
void | addBodyPart (const KMMessagePart *aPart) |
void | deleteBodyParts () |
bool | deleteBodyPart (int partIndex) |
void | setStatusFields () |
TQString | replaceHeadersInString (const TQString &s) const |
TQCString | charset () const |
void | setCharset (const TQCString &charset, DwEntity *entity=0) |
const TQTextCodec * | codec () const |
void | setOverrideCodec (const TQTextCodec *codec) |
void | setDecodeHTML (bool aDecodeHTML) |
TQCString | getRefStr () const |
off_t | folderOffset () const |
void | setFolderOffset (off_t offs) |
TQString | fileName () const |
void | setFileName (const TQString &file) |
TQString | originatingAccountName () const |
void | setOriginatingAccountName (const TQString &account) |
size_t | msgSize () const |
void | setMsgSize (size_t sz) |
size_t | msgLength () const |
void | setMsgLength (size_t sz) |
size_t | msgSizeServer () const |
void | setMsgSizeServer (size_t sz) |
ulong | UID () const |
void | setUID (ulong uid) |
KMMsgStatus | status () const |
void | setStatus (const KMMsgStatus status, int idx=-1) |
void | setStatus (const char *s1, const char *s2=0) |
void | setEncryptionState (const KMMsgEncryptionState, int idx=-1) |
void | setSignatureState (const KMMsgSignatureState, int idx=-1) |
void | setMDNSentState (KMMsgMDNSentState status, int idx=-1) |
KMMsgEncryptionState | encryptionState () const |
KMMsgSignatureState | signatureState () const |
KMMsgMDNSentState | mdnSentState () const |
void | link (const KMMessage *aMsg, KMMsgStatus aStatus) |
void | getLink (int n, ulong *retMsgSerNum, KMMsgStatus *reStatus) const |
TQString | formatString (const TQString &) const |
void | updateBodyPart (const TQString partSpecifier, const TQByteArray &data) |
DwBodyPart * | lastUpdatedPart () |
bool | isComplete () const |
void | setComplete (bool v) |
bool | readyToShow () const |
void | setReadyToShow (bool v) |
void | updateAttachmentState (DwBodyPart *part=0) |
void | updateInvitationState () |
bool | transferInProgress () const |
void | setTransferInProgress (bool value, bool force=false) |
TQCString | mboxMessageSeparator () |
TQString | asQuotedString (const TQString &headerStr, const TQString &indentStr, const TQString &selection=TQString(), bool aStripSignature=true, bool allowDecryption=true) const |
TQString | asPlainText (bool stripSignature, bool allowDecryption) const |
TQString | asPlainTextFromObjectTree (partNode *root, bool stripSignature, bool allowDecryption) const |
int | getCursorPos () |
void | setCursorPos (int pos) |
KMMsgInfo * | msgInfo () |
void | setMsgInfo (KMMsgInfo *msgInfo) |
bool | isBeingParsed () const |
void | setIsBeingParsed (bool t) |
void | deleteWhenUnused () |
DwBodyPart * | findPart (int index) |
Static Public Member Functions | |
static KPIM::EmailParseResult | isValidEmailAddressList (const TQString &aStr, TQString &brokenAddress) |
static KMime::Types::AddressList | splitAddrField (const TQCString &str) |
static void | setDwMediaTypeParam (DwMediaType &mType, const TQCString &attr, const TQCString &val) |
static TQValueList< int > | determineAllowedCtes (const KMime::CharFreq &cf, bool allow8Bit, bool willBeSigned) |
static void | bodyPart (DwBodyPart *aDwBodyPart, KMMessagePart *aPart, bool withBody=true) |
static TQString | generateMessageId (const TQString &addr) |
static TQCString | html2source (const TQCString &src) |
static TQString | encodeMailtoUrl (const TQString &str) |
static TQString | decodeMailtoUrl (const TQString &url) |
static TQCString | stripEmailAddr (const TQCString &emailAddr) |
static TQString | stripEmailAddr (const TQString &emailAddr) |
static TQString | quoteHtmlChars (const TQString &str, bool removeLineBreaks=false) |
static TQString | emailAddrAsAnchor (const TQString &emailAddr, bool stripped=true, const TQString &cssStyle=TQString(), bool link=true) |
static TQStringList | stripAddressFromAddressList (const TQString &address, const TQStringList &addresses) |
static TQStringList | stripMyAddressesFromAddressList (const TQStringList &list) |
static bool | addressIsInAddressList (const TQString &address, const TQStringList &addresses) |
static TQString | expandAliases (const TQString &recipients) |
static TQString | guessEmailAddressFromLoginName (const TQString &userName) |
static TQString | smartQuote (const TQString &msg, int maxLineLength) |
static TQCString | defaultCharset () |
static const TQStringList & | preferredCharsets () |
static void | readConfig () |
Friends | |
class | ::KMForwardDigestCommand |
Detailed Description
This is a Mime Message.
Definition at line 67 of file kmmessage.h.
Constructor & Destructor Documentation
◆ KMMessage() [1/4]
KMMessage::KMMessage | ( | KMFolder * | parent = 0 | ) |
Straight forward initialization.
Definition at line 97 of file kmmessage.cpp.
◆ KMMessage() [2/4]
KMMessage::KMMessage | ( | DwMessage * | aMsg | ) |
Constructor from a DwMessage.
KMMessage takes possession of the DwMessage, so don't dare to delete it.
Definition at line 88 of file kmmessage.cpp.
◆ KMMessage() [3/4]
KMMessage::KMMessage | ( | KMMsgInfo & | msgInfo | ) |
Copy constructor.
Does not automatically load the message.
Definition at line 104 of file kmmessage.cpp.
◆ KMMessage() [4/4]
KMMessage::KMMessage | ( | const KMMessage & | other | ) |
Copy constructor.
Definition at line 121 of file kmmessage.cpp.
◆ ~KMMessage()
|
virtual |
Destructor.
Definition at line 190 of file kmmessage.cpp.
Member Function Documentation
◆ addBodyPart()
void KMMessage::addBodyPart | ( | const KMMessagePart * | aPart | ) |
Append a body part to the message.
Definition at line 3356 of file kmmessage.cpp.
◆ addDwBodyPart()
void KMMessage::addDwBodyPart | ( | DwBodyPart * | aDwPart | ) |
Append a DwBodyPart to the message.
Definition at line 3348 of file kmmessage.cpp.
◆ addressIsInAddressList()
|
static |
Returns true if the given address is contained in the given address list.
Definition at line 3937 of file kmmessage.cpp.
◆ applyIdentity()
void KMMessage::applyIdentity | ( | uint | id | ) |
Set the from, to, cc, bcc, encrytion etc headers as specified in the given identity.
Definition at line 1662 of file kmmessage.cpp.
◆ asDwString()
const DwString & KMMessage::asDwString | ( | ) | const |
Return the entire message contents in the DwString.
This function is fast even for large message since it does not involve a string copy.
Definition at line 292 of file kmmessage.cpp.
◆ asPlainText()
TQString KMMessage::asPlainText | ( | bool | stripSignature, |
bool | allowDecryption | ||
) | const |
Return the textual content of the message as plain text, converting HTML to plain text if necessary.
Definition at line 822 of file kmmessage.cpp.
◆ asPlainTextFromObjectTree()
TQString KMMessage::asPlainTextFromObjectTree | ( | partNode * | root, |
bool | stripSignature, | ||
bool | allowDecryption | ||
) | const |
Same as asPlainText(), only that this method expects an already parsed object tree as paramter.
By passing an already parsed objecttree, this allows to share the objecttree and therefore reduce the amount of parsing (which can include decrypting, which can include a passphrase dialog)
Definition at line 740 of file kmmessage.cpp.
◆ asQuotedString()
TQString KMMessage::asQuotedString | ( | const TQString & | headerStr, |
const TQString & | indentStr, | ||
const TQString & | selection = TQString() , |
||
bool | aStripSignature = true , |
||
bool | allowDecryption = true |
||
) | const |
Returns message body with quoting header and indented by the given indentation string.
This is suitable for including the message in another message of for replies, forwards. The header string is a template where the following fields are replaced with the corresponding values:
D: date of this message S: subject of this message F: sender (from) of this message %%: a single percent sign
No attachments are handled if includeAttach is false. The signature is stripped if aStripSignature is true and smart quoting is turned on. Signed or encrypted texts get converted to plain text when allowDecryption is true.
Definition at line 835 of file kmmessage.cpp.
◆ assembleIfNeeded()
void KMMessage::assembleIfNeeded | ( | ) |
Assemble the internal message.
This is done automatically in most cases, but sometimes still necessary to call this manually.
Definition at line 2559 of file kmmessage.cpp.
◆ asSendableString()
TQByteArray KMMessage::asSendableString | ( | ) | const |
Return the message contents with the headers that should not be sent stripped off.
Definition at line 319 of file kmmessage.cpp.
◆ asString()
TQCString KMMessage::asString | ( | ) | const |
Return the entire message contents as a string.
This function is slow for large message since it involves a string copy. If you need the string representation only for a short time (i.e. without the chance of calling any function in the underlying mimelib, then you should use the asDwString function.
- See also
- asDwString
Definition at line 314 of file kmmessage.cpp.
◆ bcc()
TQString KMMessage::bcc | ( | ) | const |
Get or set the 'Bcc' header field.
Definition at line 1968 of file kmmessage.cpp.
◆ body()
TQCString KMMessage::body | ( | ) | const |
◆ bodyDecoded()
TQCString KMMessage::bodyDecoded | ( | ) | const |
Returns a decoded version of the body from the current content transfer encoding.
The first method returns a null terminated string, the second method is meant for binary data, not null is appended
Definition at line 2608 of file kmmessage.cpp.
◆ bodyPart() [1/2]
|
static |
Fill the KMMessagePart structure for a given DwBodyPart.
If withBody is false the body of the KMMessagePart will be left empty and only the headers of the part will be filled in
Definition at line 3108 of file kmmessage.cpp.
◆ bodyPart() [2/2]
void KMMessage::bodyPart | ( | int | aIdx, |
KMMessagePart * | aPart | ||
) | const |
Get the body part at position in aIdx.
Indexing starts at 0. If there is no body part at that index, aPart will have its attributes set to empty values.
Definition at line 3159 of file kmmessage.cpp.
◆ bodyToUnicode()
TQString KMMessage::bodyToUnicode | ( | const TQTextCodec * | codec = 0 | ) | const |
Returns the body part decoded to unicode.
Definition at line 4471 of file kmmessage.cpp.
◆ cc()
TQString KMMessage::cc | ( | ) | const |
Get or set the 'Cc' header field.
Definition at line 1940 of file kmmessage.cpp.
◆ charset()
TQCString KMMessage::charset | ( | ) | const |
Get the message charset.
Definition at line 4098 of file kmmessage.cpp.
◆ cleanupHeader()
void KMMessage::cleanupHeader | ( | ) |
Removes empty fields from the header, e.g.
an empty Cc: or Bcc: field.
Definition at line 1754 of file kmmessage.cpp.
◆ codec()
const TQTextCodec * KMMessage::codec | ( | ) | const |
Get a TQTextCodec suitable for this message part.
Definition at line 4453 of file kmmessage.cpp.
◆ contentTransferEncodingStr()
TQCString KMMessage::contentTransferEncodingStr | ( | ) | const |
Get or set the 'Content-Transfer-Encoding' header field The member functions that involve enumerated types (ints) will work only for well-known encodings.
Some functions take a DwEntity as second parameter, which specifies the body part or message of which the CTE will be changed or returned. If this is zero, the toplevel message will be taken.
Definition at line 2499 of file kmmessage.cpp.
◆ createDeliveryReceipt()
KMMessage * KMMessage::createDeliveryReceipt | ( | ) | const |
Create a new message that is a delivery receipt of this message, filling required header fileds with the proper values.
The returned message is not stored in any folder.
Definition at line 1635 of file kmmessage.cpp.
◆ createDWBodyPart()
DwBodyPart * KMMessage::createDWBodyPart | ( | const KMMessagePart * | aPart | ) |
Compose a DwBodyPart (needed for adding a part to the message).
Definition at line 3218 of file kmmessage.cpp.
◆ createForward()
KMMessage * KMMessage::createForward | ( | const TQString & | tmpl = TQString() | ) |
Create a new message that is a forward of this message, filling all required header fields with the proper values.
The returned message is not stored in any folder. Marks this message as forwarded.
Definition at line 1229 of file kmmessage.cpp.
◆ createForwardBody()
TQCString KMMessage::createForwardBody | ( | ) |
Create the forwarded body for the message.
Definition at line 1182 of file kmmessage.cpp.
◆ createMDN()
KMMessage * KMMessage::createMDN | ( | KMime::MDN::ActionMode | a, |
KMime::MDN::DispositionType | d, | ||
bool | allowGUI = false , |
||
TQValueList< KMime::MDN::DispositionModifier > | m = TQValueList<KMime::MDN::DispositionModifier>() |
||
) |
Create a new message that is a MDN for this message, filling all required fields with proper values.
The returned message is not stored in any folder.
- Parameters
-
a Use AutomaticAction for filtering and ManualAction for user-induced events. d See docs for KMime::MDN::DispositionType m See docs for KMime::MDN::DispositionModifier allowGUI Set to true if this method is allowed to ask the user questions
- Returns
- The notification message or 0, if none should be sent.
Definition at line 1395 of file kmmessage.cpp.
◆ createRedirect()
KMMessage * KMMessage::createRedirect | ( | const TQString & | toStr | ) |
Create a new message that is a redirect to this message, filling all required header fields with the proper values.
The returned message is not stored in any folder. Marks this message as replied. Redirects differ from forwards so they are forwarded to some other user, mail is not changed and the reply-to field is set to the email address of the original sender
Definition at line 1131 of file kmmessage.cpp.
◆ createReply()
KMMessage * KMMessage::createReply | ( | KMail::ReplyStrategy | replyStrategy = KMail::ReplySmart , |
TQString | selection = TQString() , |
||
bool | noQuote = false , |
||
bool | allowDecryption = true , |
||
const TQString & | tmpl = TQString() , |
||
const TQString & | originatingAccount = TQString() |
||
) |
Create a new message that is a reply to this message, filling all required header fields with the proper values.
The returned message is not stored in any folder. Marks this message as replied.
Definition at line 863 of file kmmessage.cpp.
◆ cteStr()
|
inline |
Cte is short for ContentTransferEncoding.
These functions are an alternative to the ones with longer names.
Definition at line 530 of file kmmessage.h.
◆ dateShortStr()
TQCString KMMessage::dateShortStr | ( | ) | const |
Returns the message date in asctime format or an empty string if the message lacks a Date header.
Definition at line 1815 of file kmmessage.cpp.
◆ dateStr()
TQString KMMessage::dateStr | ( | void | ) | const |
Get or set the 'Date' header field.
Definition at line 1797 of file kmmessage.cpp.
◆ decodeMailtoUrl()
|
static |
Decodes a mailto URL.
Definition at line 3473 of file kmmessage.cpp.
◆ defaultCharset()
|
static |
Get the default message charset.
Definition at line 4075 of file kmmessage.cpp.
◆ del()
|
inline |
Mark the message as deleted.
Definition at line 152 of file kmmessage.h.
◆ deleteBodyPart()
bool KMMessage::deleteBodyPart | ( | int | partIndex | ) |
Delete a body part with the specified part index.
A dummy body part with the text "the attachment foo was deleted" will replace the old part.
Definition at line 3181 of file kmmessage.cpp.
◆ deleteBodyParts()
void KMMessage::deleteBodyParts | ( | ) |
Delete all body parts.
Definition at line 3174 of file kmmessage.cpp.
◆ deleteWhenUnused()
void KMMessage::deleteWhenUnused | ( | ) |
Delete this message as soon as it no longer in use.
Definition at line 4497 of file kmmessage.cpp.
◆ determineAllowedCtes()
|
static |
Returns a list of content-transfer-encodings that can be used with the given result of the character frequency analysis of a message or message part under the given restrictions.
Definition at line 2637 of file kmmessage.cpp.
◆ drafts()
|
inline |
Get or set the 'Drafts' folder.
Definition at line 333 of file kmmessage.h.
◆ dwBodyPart()
DwBodyPart * KMMessage::dwBodyPart | ( | int | aIdx | ) | const |
Get the DwBodyPart at position in aIdx.
Indexing starts at 0. If there is no body part at that index, return value will be zero.
Definition at line 2895 of file kmmessage.cpp.
◆ dwContentType()
DwMediaType & KMMessage::dwContentType | ( | ) |
Return reference to Content-Type header for direct manipulation.
Definition at line 389 of file kmmessage.cpp.
◆ emailAddrAsAnchor()
|
static |
Converts the email address(es) to (a) nice HTML mailto: anchor(s).
If stripped is TRUE then the visible part of the anchor contains only the name part and not the given emailAddr.
Definition at line 3840 of file kmmessage.cpp.
◆ encodeMailtoUrl()
|
static |
Encodes an email address as mailto URL.
Definition at line 3462 of file kmmessage.cpp.
◆ encryptionState()
|
inline |
Encryption status of the message.
Definition at line 844 of file kmmessage.h.
◆ expandAliases()
|
static |
Expands aliases (distribution lists and nick names) and appends a domain part to all email addresses which are missing the domain part.
Definition at line 3953 of file kmmessage.cpp.
◆ fcc()
TQString KMMessage::fcc | ( | ) | const |
Get or set the 'Fcc' header field.
Definition at line 1981 of file kmmessage.cpp.
◆ fileName()
|
inline |
Get/set filename in mail folder.
Definition at line 802 of file kmmessage.h.
◆ findDwBodyPart() [1/3]
DwBodyPart * KMMessage::findDwBodyPart | ( | const TQCString & | type, |
const TQCString & | subtype | ||
) | const |
Return the first DwBodyPart matching a given Content-Type or zero, if no found.
Definition at line 2984 of file kmmessage.cpp.
◆ findDwBodyPart() [2/3]
DwBodyPart * KMMessage::findDwBodyPart | ( | DwBodyPart * | part, |
const TQString & | partSpecifier | ||
) |
Return the first DwBodyPart matching a given partSpecifier or zero, if no found.
Definition at line 4238 of file kmmessage.cpp.
◆ findDwBodyPart() [3/3]
DwBodyPart * KMMessage::findDwBodyPart | ( | int | type, |
int | subtype | ||
) | const |
Return the first DwBodyPart matching a given Content-Type or zero, if no found.
Definition at line 2935 of file kmmessage.cpp.
◆ folderOffset()
|
inline |
Get/set offset in mail folder.
Definition at line 798 of file kmmessage.h.
◆ formatString()
TQString KMMessage::formatString | ( | const TQString & | aStr | ) | const |
Convert wildcards into normal string.
Definition at line 426 of file kmmessage.cpp.
◆ from()
TQString KMMessage::from | ( | ) | const |
Get or set the 'From' header field.
Definition at line 2015 of file kmmessage.cpp.
◆ fromDwString()
void KMMessage::fromDwString | ( | const DwString & | str, |
bool | setStatus = false |
||
) |
Parse the string and create this message from it.
Definition at line 402 of file kmmessage.cpp.
◆ generateMessageId()
|
static |
Generates the Message-Id.
It uses either the Message-Id suffix defined by the user or the given email address as suffix. The address must be given as addr-spec as defined in RFC 2822.
Definition at line 3364 of file kmmessage.cpp.
◆ getCursorPos()
|
inline |
Get stored cursor position.
Definition at line 925 of file kmmessage.h.
◆ getFirstDwBodyPart()
DwBodyPart * KMMessage::getFirstDwBodyPart | ( | ) | const |
Get the 1st DwBodyPart.
If there is no body part, return value will be zero.
Definition at line 2848 of file kmmessage.cpp.
◆ getLink()
void KMMessage::getLink | ( | int | n, |
ulong * | retMsgSerNum, | ||
KMMsgStatus * | reStatus | ||
) | const |
Returns the information for the Nth link into retMsg
and reStatus
.
Definition at line 4216 of file kmmessage.cpp.
◆ getRefStr()
TQCString KMMessage::getRefStr | ( | ) | const |
Creates reference string for reply to messages.
reference = original first reference + original last reference + original msg-id
Definition at line 1103 of file kmmessage.cpp.
◆ guessEmailAddressFromLoginName()
|
static |
Uses the hostname as domain part and tries to determine the real name from the entries in the password file.
Definition at line 4003 of file kmmessage.cpp.
◆ hasUnencryptedMsg()
|
inline |
Returns TRUE if the message contains an unencrypted copy of itself.
Definition at line 134 of file kmmessage.h.
◆ headerAddrField()
AddressList KMMessage::headerAddrField | ( | const TQCString & | name | ) | const |
Returns header address list as string list.
Valid for the following fields: To, Bcc, Cc, ReplyTo, ResentBcc, ResentCc, ResentReplyTo, ResentTo
Definition at line 2251 of file kmmessage.cpp.
◆ headerAsSendableString()
TQCString KMMessage::headerAsSendableString | ( | ) | const |
Return the message header with the headers that should not be sent stripped off.
Definition at line 327 of file kmmessage.cpp.
◆ headerAsString()
TQString KMMessage::headerAsString | ( | ) | const |
Return header as string.
Definition at line 378 of file kmmessage.cpp.
◆ headerField()
TQString KMMessage::headerField | ( | const TQCString & | name | ) | const |
Returns the value of a header field with the given name.
If multiple header fields with the given name might exist then you should use headerFields() instead.
Definition at line 2289 of file kmmessage.cpp.
◆ headerFields()
TQStringList KMMessage::headerFields | ( | const TQCString & | name | ) | const |
Returns a list of the values of all header fields with the given name.
Definition at line 2302 of file kmmessage.cpp.
◆ headers()
DwHeaders & KMMessage::headers | ( | ) | const |
get the DwHeaders (make sure to call setNeedsAssembly() function after directly modyfying internal data like the headers)
Definition at line 2546 of file kmmessage.cpp.
◆ html2source()
|
static |
Convert '<' into "<" resp.
'>' into ">" in order to prevent their interpretation by TDEHTML. Does not use the TQt replace function but runs a very fast C code the same way as lf2crlf() does.
Definition at line 3389 of file kmmessage.cpp.
◆ id()
TQCString KMMessage::id | ( | ) | const |
Returns the message ID, useful for followups.
Definition at line 208 of file kmmessage.cpp.
◆ identityUoid()
uint KMMessage::identityUoid | ( | ) | const |
- Returns
- the UOID of the identity for this message. Searches the "x-kmail-identity" header and if that fails, searches with KPIM::IdentityManager::identityForAddress() and if that fails queries the KMMsgBase::parent() folder for a default.
Definition at line 1727 of file kmmessage.cpp.
◆ initFromMessage()
void KMMessage::initFromMessage | ( | const KMMessage * | msg, |
bool | idHeaders = true |
||
) |
Initialize headers fields according to the identity and the transport header of the given original message.
Definition at line 1742 of file kmmessage.cpp.
◆ initHeader()
void KMMessage::initHeader | ( | uint | identity = 0 | ) |
Initialize header fields.
Should be called on new messages if they are not set manually. E.g. before composing. Calling of setAutomaticFields(), see below, is still required.
Definition at line 1715 of file kmmessage.cpp.
◆ initStrippedSubjectMD5()
|
inline |
Calculate strippedSubject.
Definition at line 359 of file kmmessage.h.
◆ isComplete()
|
inline |
Return true if the complete message is available without referring to the backing store.
Definition at line 867 of file kmmessage.h.
◆ isMessage()
bool KMMessage::isMessage | ( | void | ) | const |
Returns TRUE if object is a real message (not KMMsgInfo or KMMsgBase)
Definition at line 230 of file kmmessage.cpp.
◆ isUrgent()
bool KMMessage::isUrgent | ( | ) | const |
- Returns
- whether the priority: or x-priority headers indicate that this message should be considered urgent
Definition at line 259 of file kmmessage.cpp.
◆ isValidEmailAddressList()
|
static |
Validate a list of email addresses, and also allow aliases and distribution lists to be expanded before validation.
- Returns
- Enum to describe the error.
- brokenAddress the address that was faulty. FIXME: this should be in libemailfucntions but that requires moving expandAliases and all that it brings
Definition at line 273 of file kmmessage.cpp.
◆ lastUpdatedPart()
|
inline |
Returns the last DwBodyPart that was updated.
Definition at line 864 of file kmmessage.h.
◆ link()
void KMMessage::link | ( | const KMMessage * | aMsg, |
KMMsgStatus | aStatus | ||
) |
Links this message to aMsg
, setting link type to aStatus
.
Definition at line 4190 of file kmmessage.cpp.
◆ mboxMessageSeparator()
TQCString KMMessage::mboxMessageSeparator | ( | ) |
Returns an mbox message separator line for this message, i.e.
a string of the form "From local@domain.invalid Sat Jun 12 14:00:00 2004\n".
Definition at line 4481 of file kmmessage.cpp.
◆ msgId()
TQString KMMessage::msgId | ( | ) | const |
Get or set the 'Message-Id' header field.
Definition at line 2182 of file kmmessage.cpp.
◆ msgInfo()
|
inline |
Get the KMMsgInfo object that was set with setMsgInfo().
Definition at line 930 of file kmmessage.h.
◆ msgLength()
|
inline |
Unlike the above function this works also, if the message is not in a folder.
Definition at line 817 of file kmmessage.h.
◆ msgSize()
|
inline |
Get/set size of message in the folder including the whole header in bytes.
Can be 0, if the message is not in a folder. The setting of mMsgSize = mMsgLength = sz is needed for popFilter
Definition at line 812 of file kmmessage.h.
◆ msgSizeServer()
size_t KMMessage::msgSizeServer | ( | void | ) | const |
Get/set size on server.
Definition at line 2212 of file kmmessage.cpp.
◆ numBodyParts()
int KMMessage::numBodyParts | ( | ) | const |
Number of body parts the message has.
This is one for plain messages without any attachment.
Definition at line 2806 of file kmmessage.cpp.
◆ originatingAccountName()
|
inline |
Get/set originating account name.
Definition at line 806 of file kmmessage.h.
◆ parseTextStringFromDwPart()
void KMMessage::parseTextStringFromDwPart | ( | partNode * | root, |
TQCString & | parsedString, | ||
const TQTextCodec *& | codec, | ||
bool & | isHTML | ||
) | const |
Returns a decoded body part string to be further processed by function asQuotedString().
THIS FUNCTION WILL BE REPLACED ONCE KMime IS FULLY INTEGRATED (khz, June 05 2002)
Definition at line 714 of file kmmessage.cpp.
◆ partNumber()
int KMMessage::partNumber | ( | DwBodyPart * | aDwBodyPart | ) | const |
Get the number of the given DwBodyPart.
If no body part is given, return value will be -1.
Definition at line 2855 of file kmmessage.cpp.
◆ preferredCharsets()
|
static |
Get a list of preferred message charsets.
Definition at line 4092 of file kmmessage.cpp.
◆ quoteHtmlChars()
|
static |
Quotes the following characters which have a special meaning in HTML: '<' '>' '&' '"'. Additionally '\n' is converted to "<br />" if removeLineBreaks
is false.
If removeLineBreaks
is true, then '\n' is removed. Last but not least '\r' is removed.
Definition at line 3804 of file kmmessage.cpp.
◆ rawHeaderField()
TQCString KMMessage::rawHeaderField | ( | const TQCString & | name | ) | const |
Returns the raw value of a header field with the given name.
If multiple header fields with the given name might exist then you should use rawHeaderFields() instead.
Definition at line 2264 of file kmmessage.cpp.
◆ rawHeaderFields()
TQValueList< TQCString > KMMessage::rawHeaderFields | ( | const TQCString & | field | ) | const |
Returns a list of the raw values of all header fields with the given name.
Definition at line 2275 of file kmmessage.cpp.
◆ readConfig()
|
static |
Reads config settings from group "KMMessage" and sets all internal variables (e.g.
indent-prefix, etc.)
Definition at line 4033 of file kmmessage.cpp.
◆ readyToShow()
|
inline |
Return if the message is ready to be shown.
Definition at line 872 of file kmmessage.h.
◆ references()
TQString KMMessage::references | ( | ) | const |
Get or set the references for this message.
Definition at line 2125 of file kmmessage.cpp.
◆ removeHeaderField()
void KMMessage::removeHeaderField | ( | const TQCString & | name | ) |
Remove header field with given name.
Definition at line 2317 of file kmmessage.cpp.
◆ removeHeaderFields()
void KMMessage::removeHeaderFields | ( | const TQCString & | name | ) |
Remove all header fields with given name.
Definition at line 2328 of file kmmessage.cpp.
◆ removePrivateHeaderFields()
void KMMessage::removePrivateHeaderFields | ( | ) |
Remove all private header fields: Status: and X-KMail-
Definition at line 335 of file kmmessage.cpp.
◆ replaceHeadersInString()
TQString KMMessage::replaceHeadersInString | ( | const TQString & | s | ) | const |
Replaces every occurrence of "${foo}" in s
with headerField("foo")
Definition at line 1610 of file kmmessage.cpp.
◆ replyTo()
TQString KMMessage::replyTo | ( | ) | const |
Get or set the 'ReplyTo' header field.
Definition at line 1919 of file kmmessage.cpp.
◆ replyToAuxIdMD5()
TQString KMMessage::replyToAuxIdMD5 | ( | ) | const |
Get the second to last id from the References header field.
If outgoing messages are not kept in the same folder as incoming ones, this will be a good place to thread the message beneath. bob <- second to last reference points to this |_kmailuser <- not in our folder, but Outbox |_bob <- In-Reply-To points to our mail above
Thread like this: bob |_bob
using replyToAuxIdMD5
Definition at line 2146 of file kmmessage.cpp.
◆ replyToId()
TQString KMMessage::replyToId | ( | ) | const |
Get or set the 'In-Reply-To' header field.
Definition at line 2079 of file kmmessage.cpp.
◆ sanitizeHeaders()
void KMMessage::sanitizeHeaders | ( | const TQStringList & | whiteList = TQStringList() | ) |
Remove all headers but the content description ones, and those in the white list.
Definition at line 1210 of file kmmessage.cpp.
◆ sender()
TQString KMMessage::sender | ( | ) | const |
- Returns
- The addr-spec of either the Sender: (if one is given) or the first addr-spec in From:
Definition at line 2039 of file kmmessage.cpp.
◆ setAutomaticFields()
void KMMessage::setAutomaticFields | ( | bool | isMultipart = false | ) |
Set fields that are either automatically set (Message-id) or that do not change from one message to another (MIME-Version).
Call this method before sending after all changes to the message are done because this method does things different if there are attachments / multiple body parts.
Definition at line 1777 of file kmmessage.cpp.
◆ setBody()
void KMMessage::setBody | ( | const TQCString & | aStr | ) |
◆ setBodyAndGuessCte()
void KMMessage::setBodyAndGuessCte | ( | const TQByteArray & | aBuf, |
TQValueList< int > & | allowedCte, | ||
bool | allow8Bit = false , |
||
bool | willBeSigned = false , |
||
DwEntity * | entity = 0 |
||
) |
Sets body, encoded in the best fitting content-transfer-encoding, which is determined by character frequency count.
- Parameters
-
aBuf input buffer allowedCte return: list of allowed cte's allow8Bit whether "8bit" is allowed as cte. willBeSigned whether "7bit"/"8bit" is allowed as cte according to RFC 3156 entity The body of this message or body part will get changed. If this is 0, the body of the toplevel message will be set.
Definition at line 2685 of file kmmessage.cpp.
◆ setBodyEncoded()
void KMMessage::setBodyEncoded | ( | const TQCString & | aStr, |
DwEntity * | entity = 0 |
||
) |
Set the message body, encoding it according to the current content transfer encoding.
The first method for null terminated strings, the second for binary data.
- Parameters
-
entity Specifies the body part or message of which the body will be set. If this is 0, the body of the toplevel message will be set.
Definition at line 2719 of file kmmessage.cpp.
◆ setBodyFromUnicode()
void KMMessage::setBodyFromUnicode | ( | const TQString & | str, |
DwEntity * | entity = 0 |
||
) |
Sets this body's content to str
.
str
is subject to automatic charset and CTE detection.
- Parameters
-
entity The body of this entity will be changed. If entity is 0, the body of the whole message will be changed.
Definition at line 4440 of file kmmessage.cpp.
◆ setCharset()
void KMMessage::setCharset | ( | const TQCString & | charset, |
DwEntity * | entity = 0 |
||
) |
Sets the charset of the message or a subpart of the message.
Only call this when the message or the subpart has a textual mimetype.
- Parameters
-
aStr the MIME-compliant charset name, like 'ISO-88519-15'. entity the body part or message of which the charset should be changed. If this is 0, the charset of the toplevel message will be changed.
Definition at line 4114 of file kmmessage.cpp.
◆ setComplete()
|
inline |
Set if the message is a complete message.
Definition at line 869 of file kmmessage.h.
◆ setContentTypeParam()
void KMMessage::setContentTypeParam | ( | const TQCString & | attr, |
const TQCString & | val | ||
) |
add or change a parameter of the Content-Type field
Definition at line 2489 of file kmmessage.cpp.
◆ setCursorPos()
|
inline |
Set cursor position as offset from message start.
Definition at line 927 of file kmmessage.h.
◆ setDateToday()
void KMMessage::setDateToday | ( | ) |
Set the 'Date' header field to the current date.
Definition at line 1859 of file kmmessage.cpp.
◆ setDecodeHTML()
|
inline |
Allow decoding of HTML for quoting.
Definition at line 785 of file kmmessage.h.
◆ setDwMediaTypeParam()
|
static |
add or change a parameter of a DwMediaType field
Definition at line 2464 of file kmmessage.cpp.
◆ setEncryptionState()
void KMMessage::setEncryptionState | ( | const KMMsgEncryptionState | s, |
int | idx = -1 |
||
) |
Set encryption status of the message.
Definition at line 4160 of file kmmessage.cpp.
◆ setHeaderField()
void KMMessage::setHeaderField | ( | const TQCString & | name, |
const TQString & | value, | ||
HeaderFieldType | type = Unstructured , |
||
bool | prepend = false |
||
) |
Set the header field with the given name to the given value.
If prepend is set to true, the header is inserted at the beginning and does not overwrite an existing header field with the same name.
Definition at line 2339 of file kmmessage.cpp.
◆ setMsgInfo()
|
inline |
Set the KMMsgInfo object corresponding to this message.
Definition at line 932 of file kmmessage.h.
◆ setMsgSerNum()
void KMMessage::setMsgSerNum | ( | unsigned long | newMsgSerNum = 0 | ) |
Sets the message serial number.
If defaulted to zero, the serial number will be assigned using the dictionary. Note that unless it is explicitely set the serial number will remain 0 as long as the mail is not in a folder.
Definition at line 223 of file kmmessage.cpp.
◆ setMultiPartBody()
void KMMessage::setMultiPartBody | ( | const TQCString & | aStr | ) |
Hack to enable structured body parts to be set as flat text...
Definition at line 2791 of file kmmessage.cpp.
◆ setNeedsAssembly()
void KMMessage::setNeedsAssembly | ( | ) |
tell the message that internal data were changed (must be called after directly modifying message structures e.g.
when like changing header information by accessing the header via headers() function)
Definition at line 2553 of file kmmessage.cpp.
◆ setOverrideCodec()
|
inline |
Set the charset the user selected for the message to display.
Definition at line 782 of file kmmessage.h.
◆ setReadyToShow()
|
inline |
Set if the message is ready to be shown.
Definition at line 874 of file kmmessage.h.
◆ setSignatureState()
void KMMessage::setSignatureState | ( | const | KMMsgSignatureState, |
int | idx = -1 |
||
) |
Set signature status of the message.
Definition at line 4169 of file kmmessage.cpp.
◆ setStatus()
void KMMessage::setStatus | ( | const KMMsgStatus | status, |
int | idx = -1 |
||
) |
Set status and mark dirty.
Definition at line 4153 of file kmmessage.cpp.
◆ setStatusFields()
void KMMessage::setStatusFields | ( | ) |
Set "Status" and "X-Status" fields of the message from the internal message status.
Definition at line 351 of file kmmessage.cpp.
◆ setTransferInProgress()
void KMMessage::setTransferInProgress | ( | bool | value, |
bool | force = false |
||
) |
Set that the message shall not be deleted because it is still required.
Definition at line 243 of file kmmessage.cpp.
◆ setUnencryptedMsg()
void KMMessage::setUnencryptedMsg | ( | KMMessage * | unencrypted | ) |
Specifies an unencrypted copy of this message to be stored in a separate member variable to allow saving messages in unencrypted form that were sent in encrypted form.
NOTE: Ownership of unencrypted
transfers to this KMMessage, and it will be deleted in the d'tor.
Definition at line 265 of file kmmessage.cpp.
◆ signatureState()
|
inline |
Signature status of the message.
Definition at line 847 of file kmmessage.h.
◆ smartQuote()
|
static |
Given argument msg add quoting characters and relayout for max width maxLength.
- Parameters
-
msg the string which it to be quoted maxLineLength reformat text to be this amount of columns at maximum, adding linefeeds at word boundaries to make it fit.
Definition at line 646 of file kmmessage.cpp.
◆ splitAddrField()
|
static |
Splits the given address list into separate addresses.
Definition at line 2238 of file kmmessage.cpp.
◆ status()
|
inline |
Status of the message.
Definition at line 830 of file kmmessage.h.
◆ stripAddressFromAddressList()
|
static |
Strips an address from an address list.
This is for example used when replying to all.
Definition at line 3894 of file kmmessage.cpp.
◆ stripEmailAddr() [1/2]
|
static |
This function generates a displayable string from a list of email addresses.
Input : mailbox-list Output: comma separated list of display name resp. comment resp. address
Definition at line 3483 of file kmmessage.cpp.
◆ stripEmailAddr() [2/2]
|
static |
Does the same as the above function.
Shouldn't be used.
Definition at line 3642 of file kmmessage.cpp.
◆ stripMyAddressesFromAddressList()
|
static |
Strips all the user's addresses from an address list.
This is used when replying.
Definition at line 3916 of file kmmessage.cpp.
◆ strippedSubjectMD5()
TQString KMMessage::strippedSubjectMD5 | ( | ) | const |
Get a hash of the subject with all prefixes such as Re: removed.
Used for threading.
Definition at line 2159 of file kmmessage.cpp.
◆ subject()
TQString KMMessage::subject | ( | void | ) | const |
Get or set the 'Subject' header field.
Definition at line 2049 of file kmmessage.cpp.
◆ subjectIsPrefixed()
bool KMMessage::subjectIsPrefixed | ( | ) | const |
Is the subject prefixed by Re: or similar?
Definition at line 2169 of file kmmessage.cpp.
◆ subjectMD5()
TQString KMMessage::subjectMD5 | ( | ) | const |
◆ subtypeStr()
TQCString KMMessage::subtypeStr | ( | ) | const |
Subtype.
Definition at line 2428 of file kmmessage.cpp.
◆ takeUnencryptedMsg()
|
inline |
Returns an unencrypted copy of this message or 0 if none exists.
- Note
- This function removes the internal unencrypted message pointer from the message: the process calling takeUnencryptedMsg() must delete the returned pointer when no longer needed.
Definition at line 144 of file kmmessage.h.
◆ templates()
|
inline |
Get or set the 'Templates' folder.
Definition at line 337 of file kmmessage.h.
◆ to()
TQString KMMessage::to | ( | ) | const |
Get or set the 'To' header field.
Definition at line 1894 of file kmmessage.cpp.
◆ toMsgBase()
|
inline |
Get KMMsgBase for this object.
Definition at line 114 of file kmmessage.h.
◆ touch()
|
inline |
Touch the message - mark it as read.
Definition at line 158 of file kmmessage.h.
◆ transferInProgress()
bool KMMessage::transferInProgress | ( | ) | const |
Return, if the message should not be deleted.
Definition at line 236 of file kmmessage.cpp.
◆ typeStr()
TQCString KMMessage::typeStr | ( | ) | const |
Get or set the 'Content-Type' header field The member functions that involve enumerated types (ints) will work only for well-known types or subtypes.
Definition at line 2391 of file kmmessage.cpp.
◆ UID()
ulong KMMessage::UID | ( | void | ) | const |
Get/set UID.
Definition at line 2225 of file kmmessage.cpp.
◆ undel()
|
inline |
◆ unencryptedMsg()
|
inline |
Returns an unencrypted copy of this message or 0 if none exists.
Definition at line 137 of file kmmessage.h.
◆ updateBodyPart()
void KMMessage::updateBodyPart | ( | const TQString | partSpecifier, |
const TQByteArray & | data | ||
) |
Sets the body of the specified part.
Definition at line 4270 of file kmmessage.cpp.
◆ who()
TQString KMMessage::who | ( | ) | const |
Get or set the 'Who' header field.
The actual field that is returned depends on the contents of the owning folders whoField(). Usually this is 'From', but it can also contain 'To'.
Definition at line 2006 of file kmmessage.cpp.
◆ xmark()
TQString KMMessage::xmark | ( | void | ) | const |
Get or set the 'X-Mark' header field.
Definition at line 2064 of file kmmessage.cpp.
The documentation for this class was generated from the following files: