summaryrefslogtreecommitdiffstats
path: root/framework
diff options
context:
space:
mode:
Diffstat (limited to 'framework')
-rw-r--r--framework/mail/maillistcontroller.cpp37
-rw-r--r--framework/mail/maillistcontroller.h12
2 files changed, 30 insertions, 19 deletions
diff --git a/framework/mail/maillistcontroller.cpp b/framework/mail/maillistcontroller.cpp
index ea7d1661..859aed91 100644
--- a/framework/mail/maillistcontroller.cpp
+++ b/framework/mail/maillistcontroller.cpp
@@ -16,17 +16,18 @@ MailListModel *MailListController::model() const
16 16
17} 17}
18 18
19QString MailListController::folderId() const 19void MailListController::loadAllMail()
20{ 20{
21 return m_folderId; 21 Akonadi2::Query query;
22 query.syncOnDemand = false;
23 query.processAll = false;
24 query.liveQuery = true;
25 query.requestedProperties << "subject" << "sender" << "senderName" << "date" << "unread" << "important";
26 m_model->runQuery(query);
22} 27}
23 28
24void MailListController::setFolderId(const QString &folderId) 29void MailListController::loadMailFolder(const QString &folderId)
25{ 30{
26 if (m_folderId != folderId) {
27 m_folderId = folderId;
28
29
30 Akonadi2::Query query; 31 Akonadi2::Query query;
31 query.syncOnDemand = false; 32 query.syncOnDemand = false;
32 query.processAll = false; 33 query.processAll = false;
@@ -34,12 +35,26 @@ void MailListController::setFolderId(const QString &folderId)
34 query.requestedProperties << "subject" << "sender" << "senderName" << "date" << "unread" << "important" << "folder"; 35 query.requestedProperties << "subject" << "sender" << "senderName" << "date" << "unread" << "important" << "folder";
35 query.propertyFilter.insert("folder", folderId.toLatin1()); 36 query.propertyFilter.insert("folder", folderId.toLatin1());
36 m_model->runQuery(query); 37 m_model->runQuery(query);
38}
37 39
38 emit folderIdChanged(); 40void MailListController::loadUnreadMail()
39 } 41{
42 Akonadi2::Query query;
43 query.syncOnDemand = false;
44 query.processAll = false;
45 query.liveQuery = true;
46 query.requestedProperties << "subject" << "sender" << "senderName" << "date" << "unread" << "important";
47 query.propertyFilter.insert("unread", true);
48 m_model->runQuery(query);
40} 49}
41 50
42void MailListController::addMail(QString subject) 51void MailListController::loadImportantMail()
43{ 52{
44 qDebug() << "add mail"; 53 Akonadi2::Query query;
54 query.syncOnDemand = false;
55 query.processAll = false;
56 query.liveQuery = true;
57 query.requestedProperties << "subject" << "sender" << "senderName" << "date" << "unread" << "important";
58 query.propertyFilter.insert("important", true);
59 m_model->runQuery(query);
45} 60}
diff --git a/framework/mail/maillistcontroller.h b/framework/mail/maillistcontroller.h
index 9e972e18..ebdc990b 100644
--- a/framework/mail/maillistcontroller.h
+++ b/framework/mail/maillistcontroller.h
@@ -10,23 +10,19 @@
10class MailListController : public QObject 10class MailListController : public QObject
11{ 11{
12 Q_OBJECT 12 Q_OBJECT
13 Q_PROPERTY (QString folderId READ folderId WRITE setFolderId NOTIFY folderIdChanged)
14 Q_PROPERTY (MailListModel *model READ model CONSTANT) 13 Q_PROPERTY (MailListModel *model READ model CONSTANT)
15 14
16public: 15public:
17 explicit MailListController(QObject *parent = Q_NULLPTR); 16 explicit MailListController(QObject *parent = Q_NULLPTR);
18 17
19 QString folderId() const;
20 void setFolderId(const QString &query);
21 MailListModel *model() const; 18 MailListModel *model() const;
22 19
23signals:
24 void folderIdChanged();
25
26public slots: 20public slots:
27 void addMail(QString subject); 21 void loadAllMail();
22 void loadUnreadMail();
23 void loadImportantMail();
24 void loadMailFolder(const QString &folderId);
28 25
29private: 26private:
30 QString m_folderId;
31 QScopedPointer<MailListModel> m_model; 27 QScopedPointer<MailListModel> m_model;
32}; 28};