summaryrefslogtreecommitdiffstats
path: root/src/messaging/modestengine_maemo_p.h
diff options
context:
space:
mode:
authorMarko Minkkinen <marko.minkkinen@digia.com>2010-05-18 20:31:48 +0300
committerMarko Minkkinen <marko.minkkinen@digia.com>2010-05-18 20:31:48 +0300
commitfe3b17864bb0c01e65ee944867fb156bbd1396f7 (patch)
treee30f8b48aa8b82dae4b3de27000d07e4deb9f6c0 /src/messaging/modestengine_maemo_p.h
parent21ee2fa34dcef5d8082f44001910d3e8d35d42b5 (diff)
Body & mime part download support, Folder name localization + bug fixes
Diffstat (limited to 'src/messaging/modestengine_maemo_p.h')
-rw-r--r--src/messaging/modestengine_maemo_p.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/messaging/modestengine_maemo_p.h b/src/messaging/modestengine_maemo_p.h
index 6a054455dc..36431c139e 100644
--- a/src/messaging/modestengine_maemo_p.h
+++ b/src/messaging/modestengine_maemo_p.h
@@ -120,6 +120,35 @@ struct ModestMessage
};
typedef enum {
+ MessagingModestFolderTypeUnknown,
+ MessagingModestFolderTypeNormal,
+ MessagingModestFolderTypeInbox,
+ MessagingModestFolderTypeOutbox,
+ MessagingModestFolderTypeTrash,
+ MessagingModestFolderTypeJunk,
+ MessagingModestFolderTypeSent,
+ MessagingModestFolderTypeRoot,
+ MessagingModestFolderTypeNotes,
+ MessagingModestFolderTypeDrafts,
+ MessagingModestFolderTypeContacts,
+ MessagingModestFolderTypeCalendar,
+ MessagingModestFolderTypeArchive,
+ MessagingModestFolderTypeMerge,
+ MessagingModestFolderTypeNum
+} MessagingModestFolderType;
+
+struct MessagingModestFolder
+{
+ QString id;
+ QString modestId;
+ QString parentAccountId;
+ QString parentFolderId;
+ MessagingModestFolderType type;
+ QString name;
+ QString localizedName;
+};
+
+typedef enum {
MessagingModestMessageNotDefined = 0,
MessagingModestMessageAnswered = 1<<0,
MessagingModestMessageDeleted = 1<<1,
@@ -280,6 +309,9 @@ public:
void unregisterNotificationFilter(QMessageManager::NotificationFilterId notificationFilterId);
QByteArray getMimePart (const QMessageId &id, const QString &attachmentId);
+ bool retrieveBody(QMessageService& messageService, const QMessageId &id);
+ bool retrieve(QMessageService& messageService, const QMessageId &messageId, const QMessageContentContainerId &id, QMessage *msg = 0);
+
void clearHeaderCache();
private:
@@ -289,6 +321,7 @@ private:
QFileInfoList accountFolders(QMessageAccountId& accountId) const;
QString localRootFolder() const;
QString accountRootFolder(QMessageAccountId& accountId) const;
+ void foldersFromModest(QList<MessagingModestFolder>& folders) const;
EmailProtocol accountEmailProtocol(QMessageAccountId& accountId) const;
QString accountEmailProtocolAsString(const QMessageAccountId& accountId) const;
QString accountUsername(QMessageAccountId& accountId) const;
@@ -358,6 +391,7 @@ private:
private slots:
void searchMessagesHeadersReceivedSlot(QDBusMessage msg);
void searchMessagesHeadersFetchedSlot(QDBusMessage msg);
+ void mimePartDownloadFinishedSlot(QDBusMessage msg);
void folderUpdatedSlot(QDBusMessage msg);
void messageReadChangedSlot(QDBusMessage msg);
void pendingGetUnreadMessagesFinishedSlot(QDBusPendingCallWatcher* pendingCallWatcher);
@@ -390,8 +424,11 @@ private: //Data
mutable QStringList m_latestAddOrRemoveNotifications;
+ mutable QMap<QString, MessagingModestFolder> m_folderCache;
mutable QMap<QString, QMessage> m_messageCache;
+ mutable QMap<int, QMessageServicePrivate*> m_pending_downloads;
+
// Following variables are used for sync queries
mutable QMessageService m_service;
mutable QEventLoop m_eventLoop;
@@ -416,6 +453,7 @@ Q_DECLARE_METATYPE(QtMobility::ModestUnreadMessageDBusStruct);
Q_DECLARE_METATYPE(QtMobility::ModestAccountsUnreadMessagesDBusStruct);
Q_DECLARE_METATYPE(QtMobility::ModestMessage);
Q_DECLARE_METATYPE(QtMobility::MessagingModestMimePart);
+Q_DECLARE_METATYPE(QtMobility::MessagingModestFolder);
#endif // MODESTENGINE_MAEMO_H