17 |
17 |
18 #ifndef NMAPIMESSAGEMANAGER_P_H_ |
18 #ifndef NMAPIMESSAGEMANAGER_P_H_ |
19 #define NMAPIMESSAGEMANAGER_P_H_ |
19 #define NMAPIMESSAGEMANAGER_P_H_ |
20 |
20 |
21 #include <QObject> |
21 #include <QObject> |
|
22 #include <QPointer> |
|
23 |
|
24 #include <CFSMailCommon.h> |
22 #include <nmapimessagemanager.h> |
25 #include <nmapimessagemanager.h> |
23 #include <nmapifolder.h> |
|
24 #include <nmapidatapluginfactory.h> |
|
25 #include <nmcommon.h> |
|
26 #include <nmapifolder.h> |
|
27 #include <nmapiprivateclasses.h> |
|
28 |
26 |
29 |
27 class NmApiEngine; |
30 class NmApiEmailMessage; |
28 class CFSMailBox; |
|
29 class CFSMailPlugin; |
31 |
30 |
32 namespace EmailClientApi |
31 namespace EmailClientApi |
33 { |
32 { |
34 |
33 |
35 class NmApiMessageManagerPrivate : public QObject |
34 class NmApiMessageManagerPrivate : public QObject |
37 Q_OBJECT |
36 Q_OBJECT |
38 public: |
37 public: |
39 NmApiMessageManagerPrivate(QObject *parent,quint64 mailboxId); |
38 NmApiMessageManagerPrivate(QObject *parent,quint64 mailboxId); |
40 virtual ~NmApiMessageManagerPrivate(); |
39 virtual ~NmApiMessageManagerPrivate(); |
41 |
40 |
|
41 public slots: |
|
42 QPointer<NmApiOperation> createDraftMessage(const QVariant *initData); |
|
43 QPointer<NmApiOperation> sendMessage(const NmApiMessage &message); |
|
44 QPointer<NmApiOperation> saveMessage(const NmApiMessage &message); |
|
45 |
42 private: |
46 private: |
43 enum EState { |
47 void initialise(); |
44 EIdle = 0, |
|
45 ECopyPending, |
|
46 EMovePending, |
|
47 EDeletePending |
|
48 }; |
|
49 |
48 |
50 public slots: |
|
51 bool moveMessages(const QList<quint64> messageIds, |
|
52 quint64 sourceFolderId, |
|
53 quint64 targetFolderId); |
|
54 |
|
55 bool copyMessages(const QList<quint64> messageIds, |
|
56 quint64 sourceFolder, |
|
57 quint64 targetFolder); |
|
58 |
|
59 void messageEventHandler(NmMessageEvent event, |
|
60 const NmId &folder, |
|
61 const QList<NmId> &messages, |
|
62 const NmId &mailBox); |
|
63 |
|
64 signals: |
|
65 void messagesCopied(int result); |
|
66 void messagesCreated(int result); |
|
67 void messagesMoved(int result); |
|
68 void messagesDeleted(int result); |
|
69 |
|
70 |
|
71 private: |
49 private: |
72 NmApiMessageManagerPrivate::EState mState; |
50 TFSMailMsgId mMailBoxId; |
73 QList<quint64> mMessages; |
51 CFSMailBox *mMailBox; |
74 NmId mTarget; |
52 CFSMailPlugin *mMailPlugin; //not owned |
75 NmId mMailboxId; |
53 NmApiEngine *mEngine; |
76 NmApiDataPluginFactory *mFactory; |
|
77 QObject *mPlugin; |
|
78 }; |
54 }; |
79 |
55 |
80 } |
56 } |
81 |
57 |
82 #endif /*NMAPIMESSAGEMANAGER_P_H_ */ |
58 #endif /*NMAPIMESSAGEMANAGER_P_H_ */ |