aboutsummaryrefslogtreecommitdiff
path: root/examples/GuiClient
diff options
context:
space:
mode:
authorManjeet Dahiya <manjeetdahiya@gmail.com>2010-10-19 15:18:29 +0000
committerManjeet Dahiya <manjeetdahiya@gmail.com>2010-10-19 15:18:29 +0000
commit18f8e2db919b58f5aba68e6f0ff0890bea6529b8 (patch)
tree434bd1a41d7b535efd351cf233e0e8ea3d348da6 /examples/GuiClient
parent2a548516eaec820dcaaa628d639c9e9cabbf077d (diff)
downloadqxmpp-18f8e2db919b58f5aba68e6f0ff0890bea6529b8.tar.gz
removing contact should remove the contact from the UI as well
Diffstat (limited to 'examples/GuiClient')
-rw-r--r--examples/GuiClient/mainDialog.cpp2
-rw-r--r--examples/GuiClient/rosterItemModel.cpp9
-rw-r--r--examples/GuiClient/rosterItemModel.h2
3 files changed, 13 insertions, 0 deletions
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: