[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:06:54 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=d5e6737

The following commit has been merged in the master branch:
commit d5e67379148fe0b0b01efab44830fcdd1c2e2b2b
Author: David Edmundson <kde at davidedmundson.co.uk>
Date:   Tue Jun 25 18:19:06 2013 +0100

    Move setRoleNames to ContactsModel so role names are exposed for all source models
---
 KTp/Models/contacts-list-model.cpp | 24 ------------------------
 KTp/Models/contacts-model.cpp      | 32 ++++++++++++++++++++++++++++++++
 2 files changed, 32 insertions(+), 24 deletions(-)

diff --git a/KTp/Models/contacts-list-model.cpp b/KTp/Models/contacts-list-model.cpp
index aede8bb..9a1b532 100644
--- a/KTp/Models/contacts-list-model.cpp
+++ b/KTp/Models/contacts-list-model.cpp
@@ -41,30 +41,6 @@ KTp::ContactsListModel::ContactsListModel(QObject *parent) :
     d(new KTp::ContactsListModel::Private())
 {
     d->contactManager = 0;
-
-    QHash<int, QByteArray> roles = roleNames();
-    roles[KTp::RowTypeRole]= "type";
-    roles[KTp::IdRole]= "id";
-
-    roles[KTp::ContactRole]= "contact";
-    roles[KTp::AccountRole]= "account";
-
-    roles[KTp::ContactClientTypesRole]= "clientTypes";
-    roles[KTp::ContactAvatarPathRole]= "avatar";
-    roles[KTp::ContactAvatarPixmapRole]="avatarPixmap";
-    roles[KTp::ContactGroupsRole]= "groups";
-    roles[KTp::ContactPresenceMessageRole]= "presenceMessage";
-    roles[KTp::ContactPresenceTypeRole]= "presenceType";
-    roles[KTp::ContactPresenceIconRole]= "presenceIcon";
-    roles[KTp::ContactSubscriptionStateRole]= "subscriptionState";
-    roles[KTp::ContactPublishStateRole]= "publishState";
-    roles[KTp::ContactIsBlockedRole]= "blocked";
-    roles[KTp::ContactCanTextChatRole]= "textChat";
-    roles[KTp::ContactCanFileTransferRole]= "fileTransfer";
-    roles[KTp::ContactCanAudioCallRole]= "audioCall";
-    roles[KTp::ContactCanVideoCallRole]= "videoCall";
-    roles[KTp::ContactTubesRole]= "tubes";
-    setRoleNames(roles);
 }
 
 KTp::ContactsListModel::~ContactsListModel()
diff --git a/KTp/Models/contacts-model.cpp b/KTp/Models/contacts-model.cpp
index c719b6c..fa4a575 100644
--- a/KTp/Models/contacts-model.cpp
+++ b/KTp/Models/contacts-model.cpp
@@ -69,6 +69,8 @@ KTp::ContactsModel::ContactsModel(QObject *parent)
 #else
     d->source = new KTp::ContactsListModel(this);
 #endif
+
+
 }
 
 KTp::ContactsModel::~ContactsModel()
@@ -189,4 +191,34 @@ void KTp::ContactsModel::updateGroupProxyModels()
 void KTp::ContactsModel::setSourceModel(QAbstractItemModel *sourceModel)
 {
     KTp::ContactsFilterModel::setSourceModel(sourceModel);
+
+    //Qt automatically updates the role names to use that of the source model
+    //this causes problems when we have multiple source models that we change between
+    //instead we update here just after we set a source model
+
+    //in Qt5.0 override the virtual roleNames() method and do it there.
+
+    QHash<int, QByteArray> roles = roleNames();
+    roles[KTp::RowTypeRole]= "type";
+    roles[KTp::IdRole]= "id";
+
+    roles[KTp::ContactRole]= "contact";
+    roles[KTp::AccountRole]= "account";
+
+    roles[KTp::ContactClientTypesRole]= "clientTypes";
+    roles[KTp::ContactAvatarPathRole]= "avatar";
+    roles[KTp::ContactAvatarPixmapRole]="avatarPixmap";
+    roles[KTp::ContactGroupsRole]= "groups";
+    roles[KTp::ContactPresenceMessageRole]= "presenceMessage";
+    roles[KTp::ContactPresenceTypeRole]= "presenceType";
+    roles[KTp::ContactPresenceIconRole]= "presenceIcon";
+    roles[KTp::ContactSubscriptionStateRole]= "subscriptionState";
+    roles[KTp::ContactPublishStateRole]= "publishState";
+    roles[KTp::ContactIsBlockedRole]= "blocked";
+    roles[KTp::ContactCanTextChatRole]= "textChat";
+    roles[KTp::ContactCanFileTransferRole]= "fileTransfer";
+    roles[KTp::ContactCanAudioCallRole]= "audioCall";
+    roles[KTp::ContactCanVideoCallRole]= "videoCall";
+    roles[KTp::ContactTubesRole]= "tubes";
+    setRoleNames(roles);
 }

-- 
ktp-common-internals packaging



More information about the pkg-kde-commits mailing list