diff options
author | Marko Minkkinen <marko.minkkinen@digia.com> | 2010-01-18 18:08:28 +0200 |
---|---|---|
committer | Marko Minkkinen <marko.minkkinen@digia.com> | 2010-01-18 18:08:28 +0200 |
commit | cf1c7888e999b050f052ae2cb085c98036018b6d (patch) | |
tree | aa2acd496d3087440286fd735416a205e097f553 /src/messaging/qmessagestore_maemo.cpp | |
parent | eb8b12f0e385f2691377b412b05999f647b24274 (diff) |
Initial version for Maemo messaging development
Diffstat (limited to 'src/messaging/qmessagestore_maemo.cpp')
-rw-r--r-- | src/messaging/qmessagestore_maemo.cpp | 41 |
1 files changed, 29 insertions, 12 deletions
diff --git a/src/messaging/qmessagestore_maemo.cpp b/src/messaging/qmessagestore_maemo.cpp index d71be627a4..d50e211bb3 100644 --- a/src/messaging/qmessagestore_maemo.cpp +++ b/src/messaging/qmessagestore_maemo.cpp @@ -40,6 +40,8 @@ ****************************************************************************/ #include "qmessagestore.h" #include "qmessagestore_p.h" +#include "modestengine_maemo_p.h" +#include "maemohelpers_p.h" QTM_BEGIN_NAMESPACE @@ -60,6 +62,10 @@ QMessageStorePrivate::QMessageStorePrivate() { } +QMessageStorePrivate::~QMessageStorePrivate() +{ +} + void QMessageStorePrivate::initialize(QMessageStore *store) { q_ptr = store; @@ -91,9 +97,9 @@ QMessageStore* QMessageStore::instance() return d->q_ptr; } -QMessageManager::Error QMessageManager::error() const +QMessageManager::Error QMessageStore::error() const { - return NotYetImplemented; + return QMessageManager::NoError; } QMessageIdList QMessageStore::queryMessages(const QMessageFilter &filter, const QMessageSortOrder &sortOrder, uint limit, uint offset) const @@ -127,11 +133,20 @@ QMessageFolderIdList QMessageStore::queryFolders(const QMessageFolderFilter &fil QMessageAccountIdList QMessageStore::queryAccounts(const QMessageAccountFilter &filter, const QMessageAccountSortOrder &sortOrder, uint limit, uint offset) const { - Q_UNUSED(filter) - Q_UNUSED(sortOrder) - Q_UNUSED(limit) - Q_UNUSED(offset) - return QMessageAccountIdList(); // stub + QMessageAccountIdList accountIds; + + bool isFiltered = false; + bool isSorted = false; + accountIds = ModestEngine::instance()->queryAccounts(filter, sortOrder, limit, offset, isFiltered, isSorted); + if (!isFiltered) { + MessagingHelper::filterAccounts(accountIds, filter); + } + if (!isSorted) { + MessagingHelper::orderAccounts(accountIds, sortOrder); + } + MessagingHelper::applyOffsetAndLimitToAccountIdList(accountIds, limit, offset); + + return accountIds; } int QMessageStore::countMessages(const QMessageFilter& filter) const @@ -148,11 +163,14 @@ int QMessageStore::countFolders(const QMessageFolderFilter& filter) const int QMessageStore::countAccounts(const QMessageAccountFilter& filter) const { - Q_UNUSED(filter) - return 0; // stub + int count = 0; + + count += ModestEngine::instance()->countAccounts(filter); + + return count; } -bool QMessageStore::removeMessage(const QMessageId& id, RemovalOption option) +bool QMessageStore::removeMessage(const QMessageId& id, QMessageManager::RemovalOption option) { Q_UNUSED(id) Q_UNUSED(option) @@ -192,8 +210,7 @@ QMessageFolder QMessageStore::folder(const QMessageFolderId& id) const QMessageAccount QMessageStore::account(const QMessageAccountId& id) const { - Q_UNUSED(id) - return QMessageAccount(); // stub + return ModestEngine::instance()->account(id); } QMessageManager::NotificationFilterId QMessageStore::registerNotificationFilter(const QMessageFilter &filter) |