From 18f8e2db919b58f5aba68e6f0ff0890bea6529b8 Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Tue, 19 Oct 2010 15:18:29 +0000 Subject: removing contact should remove the contact from the UI as well --- examples/GuiClient/mainDialog.cpp | 2 ++ examples/GuiClient/rosterItemModel.cpp | 9 +++++++++ examples/GuiClient/rosterItemModel.h | 2 ++ 3 files changed, 13 insertions(+) (limited to 'examples/GuiClient') diff --git a/examples/GuiClient/mainDialog.cpp b/examples/GuiClient/mainDialog.cpp index 2b7c689c..5ec06900 100644 --- a/examples/GuiClient/mainDialog.cpp +++ b/examples/GuiClient/mainDialog.cpp @@ -826,6 +826,8 @@ void mainDialog::action_removeContact(const QString& bareJid) itemRemove.setBareJid(bareJid); remove.addItem(itemRemove); m_xmppClient.sendPacket(remove); + + m_rosterItemModel.removeRosterEntry(bareJid); } } diff --git a/examples/GuiClient/rosterItemModel.cpp b/examples/GuiClient/rosterItemModel.cpp index a7bd7c1f..8ed1d457 100644 --- a/examples/GuiClient/rosterItemModel.cpp +++ b/examples/GuiClient/rosterItemModel.cpp @@ -109,3 +109,12 @@ void rosterItemModel::clear() QStandardItemModel::clear(); m_jidRosterItemMap.clear(); } + +void rosterItemModel::removeRosterEntry(const QString& bareJid) +{ + rosterItem* item = getRosterItemFromBareJid(bareJid); + if(item) + { + removeRow(item->row()); + } +} diff --git a/examples/GuiClient/rosterItemModel.h b/examples/GuiClient/rosterItemModel.h index 54fdeef9..12f2fa0f 100644 --- a/examples/GuiClient/rosterItemModel.h +++ b/examples/GuiClient/rosterItemModel.h @@ -41,6 +41,8 @@ public: void updateAvatar(const QString& bareJid, const QImage& image); void updateName(const QString& bareJid, const QString& name); + void removeRosterEntry(const QString& bareJid); + void clear(); private: -- cgit v1.2.3