summaryrefslogtreecommitdiffstats
path: root/akonadish/akonadish_utils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'akonadish/akonadish_utils.cpp')
-rw-r--r--akonadish/akonadish_utils.cpp28
1 files changed, 6 insertions, 22 deletions
diff --git a/akonadish/akonadish_utils.cpp b/akonadish/akonadish_utils.cpp
index 070d788..27a863d 100644
--- a/akonadish/akonadish_utils.cpp
+++ b/akonadish/akonadish_utils.cpp
@@ -22,6 +22,8 @@
22 22
23#include "common/clientapi.h" 23#include "common/clientapi.h"
24 24
25#include "utils.h"
26
25namespace AkonadishUtils 27namespace AkonadishUtils
26{ 28{
27 29
@@ -75,8 +77,6 @@ QStringList resourceIds(State &state)
75{ 77{
76 QStringList resources; 78 QStringList resources;
77 Akonadi2::Query query; 79 Akonadi2::Query query;
78 query.syncOnDemand = false;
79 query.processAll = false;
80 query.liveQuery = false; 80 query.liveQuery = false;
81 auto model = AkonadishUtils::loadModel("resource", query); 81 auto model = AkonadishUtils::loadModel("resource", query);
82 82
@@ -98,40 +98,24 @@ QStringList resourceIds(State &state)
98 return resources; 98 return resources;
99} 99}
100 100
101QStringList filtered(const QStringList &list, const QString &fragment)
102{
103 if (fragment.isEmpty()) {
104 return list;
105 }
106
107 QStringList filtered;
108 for (auto item: list) {
109 if (item.startsWith(fragment)) {
110 filtered << item;
111 }
112 }
113
114 return filtered;
115}
116
117QStringList resourceCompleter(const QStringList &, const QString &fragment, State &state) 101QStringList resourceCompleter(const QStringList &, const QString &fragment, State &state)
118{ 102{
119 return filtered(resourceIds(state), fragment); 103 return Utils::filteredCompletions(resourceIds(state), fragment);
120} 104}
121 105
122QStringList resourceOrTypeCompleter(const QStringList &commands, const QString &fragment, State &state) 106QStringList resourceOrTypeCompleter(const QStringList &commands, const QString &fragment, State &state)
123{ 107{
124 static QStringList types = QStringList() << "resource" << "folder" << "mail" << "event"; 108 static QStringList types = QStringList() << "resource" << "folder" << "mail" << "event";
125 if (commands.count() == 1) { 109 if (commands.count() == 1) {
126 return filtered(s_types, fragment); 110 return Utils::filteredCompletions(s_types, fragment);
127 } 111 }
128 112
129 return filtered(resourceIds(state), fragment); 113 return Utils::filteredCompletions(resourceIds(state), fragment);
130} 114}
131 115
132QStringList typeCompleter(const QStringList &commands, const QString &fragment, State &state) 116QStringList typeCompleter(const QStringList &commands, const QString &fragment, State &state)
133{ 117{
134 return filtered(s_types, fragment); 118 return Utils::filteredCompletions(s_types, fragment);
135} 119}
136 120
137QMap<QString, QString> keyValueMapFromArgs(const QStringList &args) 121QMap<QString, QString> keyValueMapFromArgs(const QStringList &args)