kmail

KMMsgBase Class Reference

Inheritance diagram for KMMsgBase:

KMMessage KMMsgInfo List of all members.

Detailed Description

Definition at line 136 of file kmmsgbase.h.


Public Types

enum  MsgPartType {
  MsgNoPart = 0, MsgFromPart = 1, MsgSubjectPart = 2, MsgToPart = 3,
  MsgReplyToIdMD5Part = 4, MsgIdMD5Part = 5, MsgXMarkPart = 6, MsgOffsetPart = 7,
  MsgLegacyStatusPart = 8, MsgSizePart = 9, MsgDatePart = 10, MsgFilePart = 11,
  MsgCryptoStatePart = 12, MsgMDNSentPart = 13, MsgReplyToAuxIdMD5Part = 14, MsgStrippedSubjectMD5Part = 15,
  MsgStatusPart = 16, MsgSizeServerPart = 17, MsgUIDPart = 18
}

Public Member Functions

 KMMsgBase (KMFolder *p=0)
virtual ~KMMsgBase ()
KMFolderIndexstorage () const
KMFolderparent () const
void setParent (KMFolder *p)
QString statusToSortRank ()
virtual bool isMessage (void) const
virtual bool isUnread (void) const
virtual bool isNew (void) const
virtual bool isOfUnknownStatus (void) const
virtual bool isOld (void) const
virtual bool isRead (void) const
virtual bool isDeleted (void) const
virtual bool isReplied (void) const
virtual bool isForwarded (void) const
virtual bool isQueued (void) const
virtual bool isTodo (void) const
virtual bool isSent (void) const
virtual bool isImportant (void) const
virtual bool isWatched (void) const
virtual bool isIgnored (void) const
virtual bool isSpam (void) const
virtual bool isHam (void) const
virtual KMMsgStatus status (void) const=0
virtual void setStatus (const KMMsgStatus status, int idx=-1)
virtual void toggleStatus (const KMMsgStatus status, int idx=-1)
virtual void setStatus (const char *statusField, const char *xstatusField=0)
virtual KMMsgEncryptionState encryptionState () const=0
virtual KMMsgSignatureState signatureState () const=0
virtual KMMsgMDNSentState mdnSentState () const=0
virtual void setMDNSentState (KMMsgMDNSentState status, int idx=-1)
virtual void setEncryptionState (const KMMsgEncryptionState, int idx=-1)
virtual void setSignatureState (const KMMsgSignatureState, int idx=-1)
virtual void setEncryptionStateChar (QChar status, int idx=-1)
virtual void setSignatureStateChar (QChar status, int idx=-1)
virtual QString subject (void) const=0
virtual QString fromStrip (void) const=0
virtual QString toStrip (void) const=0
virtual QString replyToIdMD5 (void) const=0
virtual QString msgIdMD5 (void) const=0
virtual QString replyToAuxIdMD5 () const=0
virtual QString strippedSubjectMD5 () const=0
virtual bool subjectIsPrefixed () const=0
virtual time_t date (void) const=0
virtual QString dateStr (void) const
virtual QString xmark (void) const=0
virtual void setDate (const QCString &aStrDate)
virtual void setDate (time_t aUnixTime)=0
virtual bool dirty (void) const
void setDirty (bool b)
virtual void setSubject (const QString &)=0
virtual void setXMark (const QString &)=0
virtual void initStrippedSubjectMD5 ()=0
const uchar * asIndexString (int &len) const
virtual off_t folderOffset (void) const=0
virtual void setFolderOffset (off_t offs)=0
virtual QString fileName (void) const=0
virtual void setFileName (const QString &filename)=0
virtual size_t msgSize (void) const=0
virtual void setMsgSize (size_t sz)=0
virtual size_t msgSizeServer (void) const=0
virtual void setMsgSizeServer (size_t sz)=0
virtual ulong UID (void) const=0
virtual void setUID (ulong uid)=0
virtual void setIndexOffset (off_t off)
virtual off_t indexOffset () const
virtual void setIndexLength (short len)
virtual short indexLength () const
void assign (const KMMsgBase *other)
KMMsgBaseoperator= (const KMMsgBase &other)
 KMMsgBase (const KMMsgBase &other)
virtual unsigned long getMsgSerNum () const
virtual bool enableUndo ()
virtual void setEnableUndo (bool enable)
virtual KMMsgAttachmentState attachmentState () const
QString cleanSubject (const QStringList &prefixRegExps, bool replace, const QString &newPrefix) const
QString cleanSubject () const
QString forwardSubject () const
QString replySubject () const
off_t getLongPart (MsgPartType) const
QString getStringPart (MsgPartType) const
bool syncIndexString () const

Static Public Member Functions

static QCString statusToStr (const KMMsgStatus status)
static QString skipKeyword (const QString &str, QChar sepChar=':', bool *keywordFound=0)
static const QTextCodec * codecForName (const QCString &_str)
static QCString toUsAscii (const QString &_str, bool *ok=0)
static QStringList supportedEncodings (bool usAscii)
static QCString encodeRFC2047Quoted (const QCString &aStr, bool base64)
static QString decodeRFC2047String (const QCString &aStr, const QCString prefCharset="")
static QCString encodeRFC2047String (const QString &aStr, const QCString &charset)
static QCString encodeRFC2231String (const QString &aStr, const QCString &charset)
static QString decodeRFC2231String (const QCString &aStr)
static QCString extractRFC2231HeaderField (const QCString &aStr, const QCString &field)
static QString base64EncodedMD5 (const QString &aStr, bool utf8=false)
static QString base64EncodedMD5 (const QCString &aStr)
static QString base64EncodedMD5 (const char *aStr, int len=-1)
static QCString autoDetectCharset (const QCString &encoding, const QStringList &encodingList, const QString &text)
static QString replacePrefixes (const QString &str, const QStringList &prefixRegExps, bool replace, const QString &newPrefix)
static QString stripOffPrefixes (const QString &str)
static void readConfig ()

Protected Attributes

KMFoldermParent
off_t mIndexOffset
short mIndexLength
bool mDirty
bool mEnableUndo
KMMsgStatus mStatus
KMLegacyMsgStatus mLegacyStatus

Constructor & Destructor Documentation

KMMsgBase::KMMsgBase ( const KMMsgBase other  ) 

Copy constructor that simply calls assign().

Definition at line 113 of file kmmsgbase.cpp.


Member Function Documentation

KMFolderIndex * KMMsgBase::storage (  )  const

Return owning storage.

Definition at line 86 of file kmmsgbase.cpp.

KMFolder* KMMsgBase::parent ( void   )  const [inline]

Return owning folder.

Definition at line 146 of file kmmsgbase.h.

void KMMsgBase::setParent ( KMFolder p  )  [inline]

Set owning folder.

Definition at line 149 of file kmmsgbase.h.

QCString KMMsgBase::statusToStr ( const KMMsgStatus  status  )  [static]

Convert the given message status to a string.

Definition at line 468 of file kmmsgbase.cpp.

QString KMMsgBase::statusToSortRank (  ) 

Convert the given message status to a string.

Definition at line 493 of file kmmsgbase.cpp.

bool KMMsgBase::isMessage ( void   )  const [virtual]

Returns TRUE if object is a real message (not KMMsgInfo or KMMsgBase).

Reimplemented in KMMessage.

Definition at line 119 of file kmmsgbase.cpp.

bool KMMsgBase::isUnread ( void   )  const [virtual]

Returns TRUE if status unread.

Note that new messages are not unread.

Definition at line 356 of file kmmsgbase.cpp.

bool KMMsgBase::isNew ( void   )  const [virtual]

Returns TRUE if status is new.

Definition at line 363 of file kmmsgbase.cpp.

bool KMMsgBase::isOfUnknownStatus ( void   )  const [virtual]

Returns TRUE if status is unknown.

Definition at line 370 of file kmmsgbase.cpp.

bool KMMsgBase::isOld ( void   )  const [virtual]

Returns TRUE if status is old.

Definition at line 377 of file kmmsgbase.cpp.

bool KMMsgBase::isRead ( void   )  const [virtual]

Returns TRUE if status is read.

Definition at line 384 of file kmmsgbase.cpp.

bool KMMsgBase::isDeleted ( void   )  const [virtual]

Returns TRUE if status is deleted.

Definition at line 391 of file kmmsgbase.cpp.

bool KMMsgBase::isReplied ( void   )  const [virtual]

Returns TRUE if status is replied.

Definition at line 398 of file kmmsgbase.cpp.

bool KMMsgBase::isForwarded ( void   )  const [virtual]

Returns TRUE if status is forwarded.

Definition at line 405 of file kmmsgbase.cpp.

bool KMMsgBase::isQueued ( void   )  const [virtual]

Returns TRUE if status is queued.

Definition at line 412 of file kmmsgbase.cpp.

bool KMMsgBase::isTodo ( void   )  const [virtual]

Returns TRUE if status is todo flaged.

Definition at line 419 of file kmmsgbase.cpp.

bool KMMsgBase::isSent ( void   )  const [virtual]

Returns TRUE if status is sent.

Definition at line 426 of file kmmsgbase.cpp.

bool KMMsgBase::isImportant ( void   )  const [virtual]

Returns TRUE if status is important.

Definition at line 433 of file kmmsgbase.cpp.

bool KMMsgBase::isWatched ( void   )  const [virtual]

Returns TRUE if status is watched.

Definition at line 440 of file kmmsgbase.cpp.

bool KMMsgBase::isIgnored ( void   )  const [virtual]

Returns TRUE if status is ignored.

Definition at line 447 of file kmmsgbase.cpp.

bool KMMsgBase::isSpam ( void   )  const [virtual]

Returns TRUE if status is spam.

Definition at line 454 of file kmmsgbase.cpp.

bool KMMsgBase::isHam ( void   )  const [virtual]

Returns TRUE if status is not spam.

Definition at line 461 of file kmmsgbase.cpp.

virtual KMMsgStatus KMMsgBase::status ( void   )  const [pure virtual]

Status of the message.

Implemented in KMMessage, and KMMsgInfo.

void KMMsgBase::setStatus ( const KMMsgStatus  status,
int  idx = -1 
) [virtual]

Set status and mark dirty.

Optional optimization: idx may specify the index of this message within the parent folder.

Reimplemented in KMMessage, and KMMsgInfo.

Definition at line 153 of file kmmsgbase.cpp.

virtual KMMsgEncryptionState KMMsgBase::encryptionState (  )  const [pure virtual]

Encryption status of the message.

Implemented in KMMessage, and KMMsgInfo.

virtual KMMsgSignatureState KMMsgBase::signatureState (  )  const [pure virtual]

Signature status of the message.

Implemented in KMMessage, and KMMsgInfo.

virtual KMMsgMDNSentState KMMsgBase::mdnSentState (  )  const [pure virtual]

"MDN send" status of the message.

Implemented in KMMessage, and KMMsgInfo.

void KMMsgBase::setMDNSentState ( KMMsgMDNSentState  status,
int  idx = -1 
) [virtual]

Set "MDN sent" status of the message.

Reimplemented in KMMessage, and KMMsgInfo.

Definition at line 333 of file kmmsgbase.cpp.

void KMMsgBase::setEncryptionState ( const   KMMsgEncryptionState,
int  idx = -1 
) [virtual]

Set encryption status of the message and mark dirty.

Optional optimization: idx may specify the index of this message within the parent folder.

Reimplemented in KMMessage, and KMMsgInfo.

Definition at line 300 of file kmmsgbase.cpp.

void KMMsgBase::setSignatureState ( const   KMMsgSignatureState,
int  idx = -1 
) [virtual]

Set signature status of the message and mark dirty.

Optional optimization: idx may specify the index of this message within the parent folder.

Reimplemented in KMMessage, and KMMsgInfo.

Definition at line 325 of file kmmsgbase.cpp.

void KMMsgBase::setEncryptionStateChar ( QChar  status,
int  idx = -1 
) [virtual]

Set encryption status of the message and mark dirty.

Optional optimization: idx may specify the index of this message within the parent folder.

Definition at line 308 of file kmmsgbase.cpp.

void KMMsgBase::setSignatureStateChar ( QChar  status,
int  idx = -1 
) [virtual]

Set signature status of the message and mark dirty.

Optional optimization: idx may specify the index of this message within the parent folder.

Definition at line 339 of file kmmsgbase.cpp.

virtual QString KMMsgBase::subject ( void   )  const [pure virtual]

Important header fields of the message that are also kept in the index.

Implemented in KMMessage, and KMMsgInfo.

void KMMsgBase::setDate ( const QCString &  aStrDate  )  [virtual]

Set date.

Reimplemented in KMMessage.

Definition at line 523 of file kmmsgbase.cpp.

virtual bool KMMsgBase::dirty ( void   )  const [inline, virtual]

Returns TRUE if changed since last folder-sync.

Reimplemented in KMMsgInfo.

Definition at line 268 of file kmmsgbase.h.

void KMMsgBase::setDirty ( bool  b  )  [inline]

Change dirty flag.

Definition at line 271 of file kmmsgbase.h.

virtual void KMMsgBase::setSubject ( const QString &   )  [pure virtual]

Set subject/from/date and xmark.

Implemented in KMMessage, and KMMsgInfo.

virtual void KMMsgBase::initStrippedSubjectMD5 (  )  [pure virtual]

Calculate strippedSubject.

Implemented in KMMessage, and KMMsgInfo.

const uchar * KMMsgBase::asIndexString ( int &  len  )  const

Return contents as index string.

This string is of indexStringLength() size

Definition at line 1311 of file kmmsgbase.cpp.

virtual off_t KMMsgBase::folderOffset ( void   )  const [pure virtual]

Get/set offset in mail folder.

Implemented in KMMessage, and KMMsgInfo.

virtual QString KMMsgBase::fileName ( void   )  const [pure virtual]

Get/set msg filename.

Implemented in KMMessage, and KMMsgInfo.

virtual size_t KMMsgBase::msgSize ( void   )  const [pure virtual]

Get/set size of message including the whole header in bytes.

Implemented in KMMessage, and KMMsgInfo.

virtual size_t KMMsgBase::msgSizeServer ( void   )  const [pure virtual]

Get/set size of message on server.

Implemented in KMMessage, and KMMsgInfo.

virtual ulong KMMsgBase::UID ( void   )  const [pure virtual]

Get/set UID for IMAP.

Implemented in KMMessage, and KMMsgInfo.

virtual void KMMsgBase::setIndexOffset ( off_t  off  )  [inline, virtual]

offset into index file

Definition at line 304 of file kmmsgbase.h.

virtual void KMMsgBase::setIndexLength ( short  len  )  [inline, virtual]

size in index file

Definition at line 308 of file kmmsgbase.h.

QString KMMsgBase::skipKeyword ( const QString &  str,
QChar  sepChar = ':',
bool *  keywordFound = 0 
) [static]

Skip leading keyword if keyword has given character at it's end (e.g.

':' or ',') and skip the then following blanks (if any) too. If keywordFound is specified it will be TRUE if a keyword was skipped and FALSE otherwise.

Definition at line 538 of file kmmsgbase.cpp.

const QTextCodec * KMMsgBase::codecForName ( const QCString &  _str  )  [static]

Return a QTextCodec for the specified charset.

This function is a bit more tolerant, than QTextCodec::codecForName

Definition at line 566 of file kmmsgbase.cpp.

QCString KMMsgBase::toUsAscii ( const QString &  _str,
bool *  ok = 0 
) [static]

Convert all non-ascii characters to question marks If ok is non-null, *ok will be set to true if all characters where ascii, *ok will be set to false otherwise.

Definition at line 576 of file kmmsgbase.cpp.

QStringList KMMsgBase::supportedEncodings ( bool  usAscii  )  [static]

Return a list of the supported encodings.

Definition at line 593 of file kmmsgbase.cpp.

void KMMsgBase::assign ( const KMMsgBase other  ) 

Copy all values from other to this object.

Definition at line 96 of file kmmsgbase.cpp.

KMMsgBase & KMMsgBase::operator= ( const KMMsgBase other  ) 

Assignment operator that simply calls assign().

Definition at line 105 of file kmmsgbase.cpp.

QCString KMMsgBase::encodeRFC2047Quoted ( const QCString &  aStr,
bool  base64 
) [static]

Helper function for encodeRFC2047String.

Definition at line 755 of file kmmsgbase.cpp.

QString KMMsgBase::decodeRFC2047String ( const QCString &  aStr,
const QCString  prefCharset = "" 
) [static]

This function handles both encodings described in RFC2047: Base64 ("=?iso-8859-1?b?...?=") and quoted-printable.

Definition at line 649 of file kmmsgbase.cpp.

QCString KMMsgBase::encodeRFC2047String ( const QString &  aStr,
const QCString &  charset 
) [static]

Encode given string as described in RFC2047: using quoted-printable.

Definition at line 765 of file kmmsgbase.cpp.

QCString KMMsgBase::encodeRFC2231String ( const QString &  aStr,
const QCString &  charset 
) [static]

Encode given string as described in RFC2231 (parameters in MIME headers).

Definition at line 858 of file kmmsgbase.cpp.

QString KMMsgBase::decodeRFC2231String ( const QCString &  aStr  )  [static]

Decode given string as described in RFC2231.

Definition at line 921 of file kmmsgbase.cpp.

QCString KMMsgBase::extractRFC2231HeaderField ( const QCString &  aStr,
const QCString &  field 
) [static]

Extract a given param from the RFC2231-encoded header field, in particular concatenate possibly multiple entries, which are given as paramname*0=.

.; paramname*1=..; ... or paramname*0*=..; paramname*1*=..; ... and return their value as one string. That string will still be encoded

Definition at line 951 of file kmmsgbase.cpp.

QString KMMsgBase::base64EncodedMD5 ( const QString &  aStr,
bool  utf8 = false 
) [static]

Calculate the base64 encoded md5sum (sans the trailing equal signs).

If utf8 is false, uses QString::latin1() to calculate the md5sum of, else uses QString::utf8()

Definition at line 987 of file kmmsgbase.cpp.

QCString KMMsgBase::autoDetectCharset ( const QCString &  encoding,
const QStringList &  encodingList,
const QString &  text 
) [static]

Find out preferred charset for 'text'.

First encoding is tried and if that one is not suitable, the encodings in encodingList are tried.

Definition at line 1009 of file kmmsgbase.cpp.

unsigned long KMMsgBase::getMsgSerNum (  )  const [virtual]

Returns the message serial number for the message.

Definition at line 1052 of file kmmsgbase.cpp.

virtual bool KMMsgBase::enableUndo (  )  [inline, virtual]

If undo for this message should be enabled.

Definition at line 382 of file kmmsgbase.h.

KMMsgAttachmentState KMMsgBase::attachmentState (  )  const [virtual]

Return if the message has at least one attachment.

Definition at line 1068 of file kmmsgbase.cpp.

QString KMMsgBase::replacePrefixes ( const QString &  str,
const QStringList &  prefixRegExps,
bool  replace,
const QString &  newPrefix 
) [static]

Check for prefixes prefixRegExps in str.

If none is found, newPrefix + ' ' is prepended to str and the resulting string is returned. If replace is true, any sequence of whitespace-delimited prefixes at the beginning of str is replaced by newPrefix.

Definition at line 1414 of file kmmsgbase.cpp.

QString KMMsgBase::stripOffPrefixes ( const QString &  str  )  [static]

Returns str with all "forward" and "reply" prefixes stripped off.

Definition at line 1406 of file kmmsgbase.cpp.

QString KMMsgBase::cleanSubject ( const QStringList &  prefixRegExps,
bool  replace,
const QString &  newPrefix 
) const

Check for prefixes prefixRegExps in subject().

If none is found, newPrefix + ' ' is prepended to the subject and the resulting string is returned. If replace is true, any sequence of whitespace-delimited prefixes at the beginning of subject() is replaced by newPrefix

Definition at line 1454 of file kmmsgbase.cpp.

QString KMMsgBase::cleanSubject (  )  const

Return this mails subject, with all "forward" and "reply" prefixes removed.

Definition at line 1447 of file kmmsgbase.cpp.

QString KMMsgBase::forwardSubject (  )  const

Return this mails subject, formatted for "forward" mails.

Definition at line 1463 of file kmmsgbase.cpp.

QString KMMsgBase::replySubject (  )  const

Return this mails subject, formatted for "reply" mails.

Definition at line 1468 of file kmmsgbase.cpp.

void KMMsgBase::readConfig (  )  [static]

Reads config settings from group "Composer" and sets all internal variables (e.g.

indent-prefix, etc.)

Reimplemented in KMMessage.

Definition at line 1391 of file kmmsgbase.cpp.

off_t KMMsgBase::getLongPart ( MsgPartType   )  const

access to long msgparts

Definition at line 1179 of file kmmsgbase.cpp.

QString KMMsgBase::getStringPart ( MsgPartType   )  const

access to string msgparts

Definition at line 1110 of file kmmsgbase.cpp.

bool KMMsgBase::syncIndexString (  )  const

sync'ing just one KMMsgBase

Definition at line 1371 of file kmmsgbase.cpp.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys