diff -r ecc8def7944a -r 2dc6caa42ec3 emailuis/nmframeworkadapter/inc/nmframeworkadapter.h --- a/emailuis/nmframeworkadapter/inc/nmframeworkadapter.h Mon May 03 12:23:15 2010 +0300 +++ b/emailuis/nmframeworkadapter/inc/nmframeworkadapter.h Fri May 14 15:41:10 2010 +0300 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2009 - 2010 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of "Eclipse Public License v1.0" @@ -18,14 +18,12 @@ #ifndef NMFRAMEWORKADAPTER_H #define NMFRAMEWORKADAPTER_H - #include #include #include #include -#ifdef Q_OS_SYMBIAN + #include -#endif class NmMailbox; class NmMessage; @@ -39,10 +37,11 @@ class CFSMailMessagePart; class NmStoreEnvelopesOperation; class NmAddAttachmentsOperation; -class NmOperation; class NmCheckOutboxOperation; +class NmMailboxSearchObserver; class NmMessageSendingOperation; + class NmFrameworkAdapter : public QObject, public NmDataPluginInterface, @@ -53,9 +52,9 @@ public: - NmFrameworkAdapter( ); + NmFrameworkAdapter(); - ~NmFrameworkAdapter( ); + ~NmFrameworkAdapter(); int listMailboxIds(QList& mailboxIdList); @@ -79,17 +78,23 @@ const NmId& mailboxId, const NmId& folderId, QList &messageMetaDataList); + + int listMessages( + const NmId& mailboxId, + const NmId& folderId, + QList &messageList, + const int maxAmountOfMessages = NmMaxItemsInMessageList); - NmOperation *fetchMessage( + QPointer fetchMessage( const NmId &mailboxId, const NmId &folderId, const NmId &messageId); - NmOperation *fetchMessagePart( - const NmId &mailboxId, - const NmId &folderId, - const NmId &messageId, - const NmId &messagePartId); + QPointer fetchMessagePart( + const NmId &mailboxId, + const NmId &folderId, + const NmId &messageId, + const NmId &messagePartId); XQSharableFile messagePartFile( const NmId &mailboxId, @@ -118,33 +123,33 @@ const NmId &folderId, const QList &messageIdList); - NmStoreEnvelopesOperation *storeEnvelopes( + QPointer storeEnvelopes( const NmId &mailboxId, const NmId &folderId, const QList &envelopeList); - NmMessageCreationOperation *createNewMessage( - const NmId &mailboxId); + QPointer createNewMessage( + const NmId &mailboxId); - NmMessageCreationOperation *createForwardMessage( - const NmId &mailboxId, - const NmId &originalMessageId); + QPointer createForwardMessage( + const NmId &mailboxId, + const NmId &originalMessageId); - NmMessageCreationOperation *createReplyMessage( - const NmId &mailboxId, - const NmId &originalMessageId, - const bool replyAll); + QPointer createReplyMessage( + const NmId &mailboxId, + const NmId &originalMessageId, + const bool replyAll); int saveMessage(const NmMessage &message); - NmOperation *saveMessageWithSubparts(const NmMessage &message); + QPointer saveMessageWithSubparts(const NmMessage &message); void EventL( - TFSMailEvent event, - TFSMailMsgId mailbox, - TAny* param1, - TAny* param2, - TAny* param3); + TFSMailEvent event, + TFSMailMsgId mailbox, + TAny* param1, + TAny* param2, + TAny* param3); int removeMessage(const NmId& mailboxId, const NmId& folderId, const NmId& messageId); @@ -152,15 +157,17 @@ void unsubscribeMailboxEvents(const NmId& mailboxId); - NmMessageSendingOperation *sendMessage(NmMessage *message); + QPointer sendMessage(NmMessage *message); - NmAddAttachmentsOperation *addAttachments( + QPointer addAttachments( const NmMessage &message, const QList &fileList); - NmOperation *removeAttachment(const NmMessage &message, const NmId &attachmentPartId); + QPointer removeAttachment( + const NmMessage &message, + const NmId &attachmentPartId); - NmCheckOutboxOperation *checkOutbox(const NmId& mailboxId); + QPointer checkOutbox(const NmId& mailboxId); NmSyncState syncState(const NmId& mailboxId) const; @@ -176,9 +183,17 @@ const NmId& folderId, QList &messageMetaDataList, const int maxAmountOfEnvelopes); - + + int search(const NmId &mailboxId, + const QStringList &searchStrings); + + int cancelSearch(const NmId &mailboxId); + + signals: + void mailboxEvent(NmMailboxEvent event, const QList &mailboxIds); + void messageEvent( NmMessageEvent event, const NmId &folderId, @@ -186,24 +201,29 @@ const NmId& mailboxId); //added to provide mailboxId void syncStateEvent( - NmSyncState state, - const NmOperationCompletionEvent &event ); + NmSyncState state, + const NmOperationCompletionEvent &event ); - void connectionEvent(NmConnectState state, const NmId mailboxId); + void connectionEvent(NmConnectState state, const NmId mailboxId, int errorCode); + + void matchFound(const NmId &messageId); + + void searchComplete(); + private: void getMessageByIdL( - const NmId& mailboxId, - const NmId& folderId, - const NmId& messageId, - NmMessage*& message); + const NmId& mailboxId, + const NmId& folderId, + const NmId& messageId, + NmMessage*& message); void contentToMessagePartL( - const NmId &mailboxId, - const NmId &folderId, - const NmId &messageId, - NmMessagePart &messagePart); + const NmId &mailboxId, + const NmId &folderId, + const NmId &messageId, + NmMessagePart &messagePart); void listMessagesL( const NmId &mailboxId, @@ -211,6 +231,17 @@ QList &messageMetaDataList, const int maxAmountOfEnvelopes); + void listMessagesL( + const NmId &mailboxId, + const NmId &folderId, + QList &messageList, + const int maxAmountOfMessages); + + void searchL(const NmId &mailboxId, + const QList &folderIds, + const QStringList &searchStrings, + NmMailboxSearchObserver &searchObserver); + NmId getMailboxIdByMailMsgId(TFSMailMsgId mailbox); void removeMessageL(const NmId& mailboxId, @@ -245,10 +276,13 @@ void getFolderByIdL( const NmId& mailboxId, const NmId& folderId, - NmFolder*& unreadCount ); - -private: - CFSMailClient* mFSfw;//singleton, not owned + NmFolder*& unreadCount ); + + +private: // Data + + CFSMailClient* mFSfw; // Singleton, not owned + NmMailboxSearchObserver *mSearchObserver; // Owned };