some minor improvements to the NetworkModel and added a sanity check to TreeModel
authorMarcus Eggenberger <egs@quassel-irc.org>
Thu, 31 Jan 2008 21:56:16 +0000 (21:56 +0000)
committerMarcus Eggenberger <egs@quassel-irc.org>
Thu, 31 Jan 2008 21:56:16 +0000 (21:56 +0000)
src/client/networkmodel.cpp
src/client/networkmodel.h
src/client/treemodel.cpp
version.inc

index 7cfc5f6..7890099 100644 (file)
@@ -227,14 +227,13 @@ void BufferItem::removeUserFromCategory(IrcUser *ircUser) {
   UserCategoryItem *categoryItem = 0;
   for(int i = 0; i < childCount(); i++) {
     categoryItem = qobject_cast<UserCategoryItem *>(child(i));
-    if(success = categoryItem->removeChildById((quint64)ircUser)) {
+    if(success = categoryItem->removeUser(ircUser)) {
       if(categoryItem->childCount() == 0)
        removeChild(i);
       break;
     }
   }
 
-  
   if(!success) {
     qDebug() << "didn't find User:" << ircUser << (quint64)ircUser;
     qDebug() << "==== Childlist for Item:" << this << id() << bufferName() << "====";
@@ -405,6 +404,10 @@ void UserCategoryItem::addUser(IrcUser *ircUser) {
   newChild(new IrcUserItem(ircUser, this));
 }
 
+bool UserCategoryItem::removeUser(IrcUser *ircUser) {
+  return removeChildById((quint64)ircUser);
+}
+
 int UserCategoryItem::categoryFromModes(const QString &modes) {
   for(int i = 0; i < categories.count(); i++) {
     if(modes.contains(categories[i].mode))
index bc4a17b..7bd7219 100644 (file)
@@ -156,6 +156,7 @@ public:
   virtual QVariant data(int column, int role) const;
   
   void addUser(IrcUser *ircUser);
+  bool removeUser(IrcUser *ircUser);
 
   static int categoryFromModes(const QString &modes);
 
index 6d6ea84..80e7630 100644 (file)
@@ -57,6 +57,9 @@ bool AbstractTreeItem::newChild(int column, AbstractTreeItem *item) {
     _childItems[column] = QList<AbstractTreeItem *>();
   }
 
+  // check if a child with that ID is already known
+  Q_ASSERT(childById(item->id()) == 0);
+    
   int newRow = _childItems[column].count();
   emit beginAppendChilds(column, newRow, newRow);
   _childItems[column].append(item);
index 1d16430..5654c87 100644 (file)
@@ -4,8 +4,8 @@
 { using namespace Global;
 
   quasselVersion = "0.2.0-pre";
-  quasselDate = "2008-01-30";
-  quasselBuild = 419;
+  quasselDate = "2008-01-31";
+  quasselBuild = 420;
 
   //! Minimum client build number the core needs
   clientBuildNeeded = 358;