- } else {
- toolTip.append(tr("Not active <br /> Double-click to join"));
- }
-
- return tr("<p> %1 </p>").arg(toolTip.join("<br />"));
-}
-
-void ChannelBufferItem::attachIrcChannel(IrcChannel *ircChannel) {
- Q_ASSERT(!_ircChannel && ircChannel);
-
- _ircChannel = ircChannel;
-
- connect(ircChannel, SIGNAL(topicSet(QString)),
- this, SLOT(setTopic(QString)));
- connect(ircChannel, SIGNAL(ircUsersJoined(QList<IrcUser *>)),
- this, SLOT(join(QList<IrcUser *>)));
- connect(ircChannel, SIGNAL(ircUserParted(IrcUser *)),
- this, SLOT(part(IrcUser *)));
- connect(ircChannel, SIGNAL(destroyed()),
- this, SLOT(ircChannelDestroyed()));
- connect(ircChannel, SIGNAL(ircUserModesSet(IrcUser *, QString)),
- this, SLOT(userModeChanged(IrcUser *)));
- connect(ircChannel, SIGNAL(ircUserModeAdded(IrcUser *, QString)),
- this, SLOT(userModeChanged(IrcUser *)));
- connect(ircChannel, SIGNAL(ircUserModeRemoved(IrcUser *, QString)),
- this, SLOT(userModeChanged(IrcUser *)));
-
- if(!ircChannel->ircUsers().isEmpty())
- join(ircChannel->ircUsers());
-
- emit dataChanged();
-}
-
-void ChannelBufferItem::ircChannelDestroyed() {
- Q_CHECK_PTR(_ircChannel);
- disconnect(_ircChannel, 0, this, 0);
- _ircChannel = 0;
- emit dataChanged();
- removeAllChilds();
-}
-
-void ChannelBufferItem::join(const QList<IrcUser *> &ircUsers) {
- addUsersToCategory(ircUsers);
- emit dataChanged(2);
-}
-
-UserCategoryItem *ChannelBufferItem::findCategoryItem(int categoryId) {
- UserCategoryItem *categoryItem = 0;
-
- for(int i = 0; i < childCount(); i++) {
- categoryItem = qobject_cast<UserCategoryItem *>(child(i));
- if(!categoryItem)
- continue;
- if(categoryItem->categoryId() == categoryId)
- return categoryItem;
- }
- return 0;
-}
-
-void ChannelBufferItem::addUserToCategory(IrcUser *ircUser) {
- addUsersToCategory(QList<IrcUser *>() << ircUser);
-}
-
-void ChannelBufferItem::addUsersToCategory(const QList<IrcUser *> &ircUsers) {
- Q_ASSERT(_ircChannel);
-
- QHash<UserCategoryItem *, QList<IrcUser *> > categories;
-
- int categoryId = -1;
- UserCategoryItem *categoryItem = 0;
-
- foreach(IrcUser *ircUser, ircUsers) {
- categoryId = UserCategoryItem::categoryFromModes(_ircChannel->userModes(ircUser));
- categoryItem = findCategoryItem(categoryId);
- if(!categoryItem) {
- categoryItem = new UserCategoryItem(categoryId, this);
- categories[categoryItem] = QList<IrcUser *>();
- newChild(categoryItem);
+
+ return tr("<p> %1 </p>").arg(toolTip.join("<br />"));
+}
+
+
+void ChannelBufferItem::attachIrcChannel(IrcChannel *ircChannel)
+{
+ Q_ASSERT(!_ircChannel && ircChannel);
+
+ _ircChannel = ircChannel;
+
+ connect(ircChannel, SIGNAL(topicSet(QString)),
+ this, SLOT(setTopic(QString)));
+ connect(ircChannel, SIGNAL(encryptedSet(bool)),
+ this, SLOT(setEncrypted(bool)));
+ connect(ircChannel, SIGNAL(ircUsersJoined(QList<IrcUser *> )),
+ this, SLOT(join(QList<IrcUser *> )));
+ connect(ircChannel, SIGNAL(ircUserParted(IrcUser *)),
+ this, SLOT(part(IrcUser *)));
+ connect(ircChannel, SIGNAL(parted()),
+ this, SLOT(ircChannelParted()));
+ connect(ircChannel, SIGNAL(ircUserModesSet(IrcUser *, QString)),
+ this, SLOT(userModeChanged(IrcUser *)));
+ connect(ircChannel, SIGNAL(ircUserModeAdded(IrcUser *, QString)),
+ this, SLOT(userModeChanged(IrcUser *)));
+ connect(ircChannel, SIGNAL(ircUserModeRemoved(IrcUser *, QString)),
+ this, SLOT(userModeChanged(IrcUser *)));
+
+ if (!ircChannel->ircUsers().isEmpty())
+ join(ircChannel->ircUsers());
+
+ emit dataChanged();
+}
+
+
+void ChannelBufferItem::ircChannelParted()
+{
+ Q_CHECK_PTR(_ircChannel);
+ disconnect(_ircChannel, 0, this, 0);
+ _ircChannel = 0;
+ emit dataChanged();
+ removeAllChilds();
+}
+
+
+void ChannelBufferItem::join(const QList<IrcUser *> &ircUsers)
+{
+ addUsersToCategory(ircUsers);
+ emit dataChanged(2);
+}
+
+
+UserCategoryItem *ChannelBufferItem::findCategoryItem(int categoryId)
+{
+ UserCategoryItem *categoryItem = 0;
+
+ for (int i = 0; i < childCount(); i++) {
+ categoryItem = qobject_cast<UserCategoryItem *>(child(i));
+ if (!categoryItem)
+ continue;
+ if (categoryItem->categoryId() == categoryId)
+ return categoryItem;