[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9
Maximiliano Curia
maxy at moszumanska.debian.org
Mon May 9 09:05:54 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=86584d5
The following commit has been merged in the master branch:
commit 86584d5d16ea6a781307f7ab9fa6bb543e9a0554
Author: Weng Xuetian <wengxt at gmail.com>
Date: Wed Nov 28 11:55:04 2012 -0500
Make AccountsFilterModel can be filtered by Id, fix globalFilterString
REVIEW: 107500
---
KTp/Models/accounts-filter-model.cpp | 57 +++++++++++++++++++++++++++++++++++-
KTp/Models/accounts-filter-model.h | 19 ++++++++++++
2 files changed, 75 insertions(+), 1 deletion(-)
diff --git a/KTp/Models/accounts-filter-model.cpp b/KTp/Models/accounts-filter-model.cpp
index eeecc77..dd911ac 100644
--- a/KTp/Models/accounts-filter-model.cpp
+++ b/KTp/Models/accounts-filter-model.cpp
@@ -47,7 +47,8 @@ public:
displayNameFilterMatchFlags(Qt::MatchContains),
nicknameFilterMatchFlags(Qt::MatchContains),
aliasFilterMatchFlags(Qt::MatchContains),
- groupsFilterMatchFlags(Qt::MatchContains)
+ groupsFilterMatchFlags(Qt::MatchContains),
+ idFilterMatchFlags(Qt::MatchContains)
{
}
@@ -64,10 +65,12 @@ public:
QString nicknameFilterString;
QString aliasFilterString;
QString groupsFilterString;
+ QString idFilterString;
Qt::MatchFlags displayNameFilterMatchFlags;
Qt::MatchFlags nicknameFilterMatchFlags;
Qt::MatchFlags aliasFilterMatchFlags;
Qt::MatchFlags groupsFilterMatchFlags;
+ Qt::MatchFlags idFilterMatchFlags;
bool filterAcceptsAccount(const QModelIndex &index) const;
bool filterAcceptsContact(const QModelIndex &index) const;
@@ -306,6 +309,13 @@ bool AccountsFilterModel::Private::filterAcceptsContact(const QModelIndex &index
if (!q->match(index, ContactsModel::GroupsRole, globalFilterString, 1, globalFilterMatchFlags).isEmpty()) {
return true;
}
+
+ // Check id
+ if (!q->match(index, ContactsModel::IdRole, globalFilterString, 1, globalFilterMatchFlags).isEmpty()) {
+ return true;
+ }
+
+ return false;
} else {
// Check on single filters
// Check display name
@@ -335,6 +345,13 @@ bool AccountsFilterModel::Private::filterAcceptsContact(const QModelIndex &index
return false;
}
}
+
+ // Check id
+ if (!idFilterString.isEmpty()) {
+ if (q->match(index, ContactsModel::IdRole, idFilterString, 1, idFilterMatchFlags).isEmpty()) {
+ return false;
+ }
+ }
}
return true;
@@ -754,6 +771,44 @@ void AccountsFilterModel::setGroupsFilterMatchFlags(Qt::MatchFlags groupsFilterM
}
}
+QString AccountsFilterModel::idFilterString() const
+{
+ return d->idFilterString;
+}
+
+void AccountsFilterModel::clearIdFilterString()
+{
+ setIdFilterString(QString());
+}
+
+void AccountsFilterModel::setIdFilterString(const QString &idFilterString)
+{
+ if (d->idFilterString != idFilterString) {
+ d->idFilterString = idFilterString;
+ invalidateFilter();
+ Q_EMIT idFilterStringChanged(idFilterString);
+ }
+}
+
+Qt::MatchFlags AccountsFilterModel::idFilterMatchFlags() const
+{
+ return d->idFilterMatchFlags;
+}
+
+void AccountsFilterModel::resetIdFilterMatchFlags()
+{
+ setIdFilterMatchFlags(Qt::MatchStartsWith | Qt::MatchWrap);
+}
+
+void AccountsFilterModel::setIdFilterMatchFlags(Qt::MatchFlags idFilterMatchFlags)
+{
+ if (d->idFilterMatchFlags != idFilterMatchFlags) {
+ d->idFilterMatchFlags = idFilterMatchFlags;
+ invalidateFilter();
+ Q_EMIT idFilterMatchFlagsChanged(idFilterMatchFlags);
+ }
+}
+
void AccountsFilterModel::countContacts(const QModelIndex &index) const
{
QVariant item = index.data(ContactsModel::ItemRole);
diff --git a/KTp/Models/accounts-filter-model.h b/KTp/Models/accounts-filter-model.h
index b0d7402..a7ba2c7 100644
--- a/KTp/Models/accounts-filter-model.h
+++ b/KTp/Models/accounts-filter-model.h
@@ -102,6 +102,11 @@ class KTP_EXPORT AccountsFilterModel : public QSortFilterProxyModel
RESET clearGroupsFilterString
WRITE setGroupsFilterString
NOTIFY groupsFilterStringChanged)
+ Q_PROPERTY(QString idFilterString
+ READ idFilterString
+ RESET clearIdFilterString
+ WRITE setIdFilterString
+ NOTIFY idFilterStringChanged)
Q_PROPERTY(Qt::MatchFlags displayNameFilterMatchFlags
READ displayNameFilterMatchFlags
RESET resetDisplayNameFilterMatchFlags
@@ -122,6 +127,11 @@ class KTP_EXPORT AccountsFilterModel : public QSortFilterProxyModel
RESET resetGroupsFilterMatchFlags
WRITE setGroupsFilterMatchFlags
NOTIFY groupsFilterMatchFlagsChanged)
+ Q_PROPERTY(Qt::MatchFlags idFilterMatchFlags
+ READ idFilterMatchFlags
+ RESET resetIdFilterMatchFlags
+ WRITE setIdFilterMatchFlags
+ NOTIFY idFilterMatchFlagsChanged)
public:
enum SortMode {
@@ -261,6 +271,15 @@ public:
Q_SLOT void setGroupsFilterMatchFlags(Qt::MatchFlags groupsFilterMatchFlags);
Q_SIGNAL void groupsFilterMatchFlagsChanged(Qt::MatchFlags groupsFilterMatchFlags);
+ QString idFilterString() const;
+ Q_SLOT void clearIdFilterString();
+ Q_SLOT void setIdFilterString(const QString &idFilterString);
+ Q_SIGNAL void idFilterStringChanged(const QString &idFilterString);
+ Qt::MatchFlags idFilterMatchFlags() const;
+ Q_SLOT void resetIdFilterMatchFlags();
+ Q_SLOT void setIdFilterMatchFlags(Qt::MatchFlags idFilterMatchFlags);
+ Q_SIGNAL void idFilterMatchFlagsChanged(Qt::MatchFlags idFilterMatchFlags);
+
Q_SLOT void countContacts(const QModelIndex &index) const;
protected:
--
ktp-common-internals packaging
More information about the pkg-kde-commits
mailing list