summaryrefslogtreecommitdiffstats
path: root/framework/src/domain/composercontroller.h
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2017-06-12 22:11:52 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2017-06-12 22:11:52 +0200
commit0ef55c3bf02f8730ab821c3409c71e67bd382ecc (patch)
treebbe8478e476bccd7f2dd9f99b1796848510f40d5 /framework/src/domain/composercontroller.h
parentc8372a71b128eeb4f0440736e36c372d61b5a9a2 (diff)
downloadkube-0ef55c3bf02f8730ab821c3409c71e67bd382ecc.tar.gz
kube-0ef55c3bf02f8730ab821c3409c71e67bd382ecc.zip
Working but ugly editor for recipients in composer
What remains to be done is: * proper delegates * removal of recipeients * at some point d&d of recipients * Perhaps something that encapsulates the whole list and the model in a nicer way
Diffstat (limited to 'framework/src/domain/composercontroller.h')
-rw-r--r--framework/src/domain/composercontroller.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/framework/src/domain/composercontroller.h b/framework/src/domain/composercontroller.h
index 92467d05..87349d0c 100644
--- a/framework/src/domain/composercontroller.h
+++ b/framework/src/domain/composercontroller.h
@@ -23,6 +23,7 @@
23#include <QObject> 23#include <QObject>
24#include <QString> 24#include <QString>
25#include <QStringList> 25#include <QStringList>
26#include <QStringListModel>
26#include <QVariant> 27#include <QVariant>
27#include <sink/applicationdomaintype.h> 28#include <sink/applicationdomaintype.h>
28#include <KMime/Message> 29#include <KMime/Message>
@@ -47,9 +48,6 @@ class ComposerController : public Kube::Controller
47 Q_OBJECT 48 Q_OBJECT
48 49
49 //Interface properties 50 //Interface properties
50 KUBE_CONTROLLER_PROPERTY(QString, To, to)
51 KUBE_CONTROLLER_PROPERTY(QString, Cc, cc)
52 KUBE_CONTROLLER_PROPERTY(QString, Bcc, bcc)
53 KUBE_CONTROLLER_PROPERTY(QString, Subject, subject) 51 KUBE_CONTROLLER_PROPERTY(QString, Subject, subject)
54 KUBE_CONTROLLER_PROPERTY(QString, Body, body) 52 KUBE_CONTROLLER_PROPERTY(QString, Body, body)
55 53
@@ -65,6 +63,10 @@ class ComposerController : public Kube::Controller
65 Q_PROPERTY (Selector* identitySelector READ identitySelector CONSTANT) 63 Q_PROPERTY (Selector* identitySelector READ identitySelector CONSTANT)
66 //Q_PROPERTY (QValidator* subjectValidator READ subjectValidator CONSTANT) 64 //Q_PROPERTY (QValidator* subjectValidator READ subjectValidator CONSTANT)
67 65
66 Q_PROPERTY (QAbstractItemModel* toModel READ toModel CONSTANT)
67 Q_PROPERTY (QAbstractItemModel* ccModel READ ccModel CONSTANT)
68 Q_PROPERTY (QAbstractItemModel* bccModel READ bccModel CONSTANT)
69
68 KUBE_CONTROLLER_ACTION(send) 70 KUBE_CONTROLLER_ACTION(send)
69 KUBE_CONTROLLER_ACTION(saveAsDraft) 71 KUBE_CONTROLLER_ACTION(saveAsDraft)
70 72
@@ -76,6 +78,17 @@ public:
76 78
77 Q_INVOKABLE void loadMessage(const QVariant &draft, bool loadAsDraft); 79 Q_INVOKABLE void loadMessage(const QVariant &draft, bool loadAsDraft);
78 80
81 QAbstractItemModel *toModel() const;
82 QAbstractItemModel *ccModel() const;
83 QAbstractItemModel *bccModel() const;
84
85 Q_INVOKABLE void addTo(const QString &);
86 Q_INVOKABLE void removeTo(const QString &);
87 Q_INVOKABLE void addCc(const QString &);
88 Q_INVOKABLE void removeCc(const QString &);
89 Q_INVOKABLE void addBcc(const QString &);
90 Q_INVOKABLE void removeBcc(const QString &);
91
79public slots: 92public slots:
80 virtual void clear() Q_DECL_OVERRIDE; 93 virtual void clear() Q_DECL_OVERRIDE;
81 94
@@ -90,4 +103,7 @@ private:
90 103
91 QScopedPointer<Completer> mRecipientCompleter; 104 QScopedPointer<Completer> mRecipientCompleter;
92 QScopedPointer<Selector> mIdentitySelector; 105 QScopedPointer<Selector> mIdentitySelector;
106 QScopedPointer<QStringListModel> mToModel;
107 QScopedPointer<QStringListModel> mCcModel;
108 QScopedPointer<QStringListModel> mBccModel;
93}; 109};