diff options
author | Richard Maudsley <richard.maudsley@isode.com> | 2014-03-14 14:15:34 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2014-04-02 11:14:52 (GMT) |
commit | c9275affd040ee1ca7c1d599b28df3b363bef888 (patch) | |
tree | 04afffe1e766f897f2208cf097a307a5fe530032 /Swift/QtUI/Roster/RosterModel.cpp | |
parent | b92fe0b47d519da5fd55ba55ad0838e1ff69195c (diff) | |
download | swift-c9275affd040ee1ca7c1d599b28df3b363bef888.zip swift-c9275affd040ee1ca7c1d599b28df3b363bef888.tar.bz2 |
Make the impromptu MUCs behave more like a regular chat.
This hides occupant types in the participant list and initiates a
direct 1-to-1 on occupant double-click instead of MUC-proxied 1-to-1.
Change-Id: I76c57fe52beb3e4236524c1d8cfbd583d3dc3f62
Diffstat (limited to 'Swift/QtUI/Roster/RosterModel.cpp')
-rw-r--r-- | Swift/QtUI/Roster/RosterModel.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Swift/QtUI/Roster/RosterModel.cpp b/Swift/QtUI/Roster/RosterModel.cpp index fa8c393..2bd0d09 100644 --- a/Swift/QtUI/Roster/RosterModel.cpp +++ b/Swift/QtUI/Roster/RosterModel.cpp @@ -102,6 +102,8 @@ QVariant RosterModel::data(const QModelIndex& index, int role) const { case PresenceIconRole: return getPresenceIcon(item); case ChildCountRole: return getChildCount(item); case IdleRole: return getIsIdle(item); + case JIDRole: return getJID(item); + case DisplayJIDRole: return getDisplayJID(item); default: return QVariant(); } } @@ -181,6 +183,16 @@ QString RosterModel::getStatusText(RosterItem* item) const { return P2QSTRING(contact->getStatusText()); } +QString RosterModel::getJID(RosterItem* item) const { + ContactRosterItem* contact = dynamic_cast<ContactRosterItem*>(item); + return contact ? P2QSTRING(contact->getJID().toString()) : QString(); +} + +QString RosterModel::getDisplayJID(RosterItem* item) const { + ContactRosterItem* contact = dynamic_cast<ContactRosterItem*>(item); + return contact ? P2QSTRING(contact->getDisplayJID().toString()) : QString(); +} + QIcon RosterModel::getPresenceIcon(RosterItem* item) const { ContactRosterItem* contact = dynamic_cast<ContactRosterItem*>(item); if (!contact) return QIcon(); |