diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-09-29 10:02:01 +0000 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2011-09-29 10:02:01 +0000 |
| commit | 82ae99430647a9af638c7b19bddcf822115ff010 (patch) | |
| tree | aae230bd4cb254764b8fbde9559ab742ed7f804d /src/QXmppRosterManager.cpp | |
| parent | a5f3ebf596ec570d148ebb5958e6e2d594f52482 (diff) | |
| download | qxmpp-82ae99430647a9af638c7b19bddcf822115ff010.tar.gz | |
add QXmppRosterManager::renameItem to rename a roster item
Diffstat (limited to 'src/QXmppRosterManager.cpp')
| -rw-r--r-- | src/QXmppRosterManager.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/QXmppRosterManager.cpp b/src/QXmppRosterManager.cpp index 6da4ee51..b89bdc0a 100644 --- a/src/QXmppRosterManager.cpp +++ b/src/QXmppRosterManager.cpp @@ -254,6 +254,28 @@ bool QXmppRosterManager::removeItem(const QString &bareJid) return client()->sendPacket(iq); } +/// Renames a roster item. +/// +/// As a result, the server will initiate a roster push, causing the +/// itemChanged() signal to be emitted. +/// +/// \param bareJid +/// \param name + +bool QXmppRosterManager::renameItem(const QString &bareJid, const QString &name) +{ + if (!d->entries.contains(bareJid)) + return false; + + QXmppRosterIq::Item item = d->entries.value(bareJid); + item.setName(name); + + QXmppRosterIq iq; + iq.setType(QXmppIq::Set); + iq.addItem(item); + return client()->sendPacket(iq); +} + /// Requests a subscription to the given contact. /// /// As a result, the server will initiate a roster push, causing the |
