diff options
Diffstat (limited to 'kmail/kmfolderindex.h')
-rw-r--r-- | kmail/kmfolderindex.h | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/kmail/kmfolderindex.h b/kmail/kmfolderindex.h index 05453bb68..29039765d 100644 --- a/kmail/kmfolderindex.h +++ b/kmail/kmfolderindex.h @@ -48,6 +48,7 @@ public: */ enum IndexStatus { IndexOk, IndexMissing, + IndexCorrupt, IndexTooOld }; @@ -80,7 +81,16 @@ public: virtual TQString indexLocation() const; virtual int writeIndex( bool createEmptyIndex = false ); - void recreateIndex(); + void recreateIndex( bool readIndexAfterwards = true ); + void silentlyRecreateIndex(); + + /** Tests whether the contents of this folder is newer than the index. + Should return IndexTooOld if the index is older than the contents. + Should return IndexMissing if there is contents but no index. + Should return IndexOk if the folder doesn't exist anymore "physically" + or if the index is not older than the contents. + */ + virtual IndexStatus indexStatus() = 0; public slots: /** Incrementally update the index if possible else call writeIndex */ @@ -99,14 +109,6 @@ protected: bool updateIndexStreamPtr(bool just_close=FALSE); - /** Tests whether the contents of this folder is newer than the index. - Should return IndexTooOld if the index is older than the contents. - Should return IndexMissing if there is contents but no index. - Should return IndexOk if the folder doesn't exist anymore "physically" - or if the index is not older than the contents. - */ - virtual IndexStatus indexStatus() = 0; - /** Inserts messages into the message dictionary by iterating over the * message list. The messages will get new serial numbers. This is only * used on newly appeared folders, where there is no .ids file yet, or @@ -125,6 +127,10 @@ protected: int mIndexStreamPtrLength, mIndexId; bool mIndexSwapByteOrder; // Index file was written with swapped byte order int mIndexSizeOfLong; // Index file was written with longs of this size + +private: + void updateInvitationAndAddressFieldsFromContents(); + }; #endif /*kmfolderindex_h*/ |