#include "signalproxy.h"
#include "network.h"
#include "ircchannel.h"
-#include "ircuser.h"
#include "buffersettings.h"
#include "util.h" // get rid of this (needed for isChannelName)
-
/*****************************************
* Fancy Buffer Items
*****************************************/
return qobject_cast<NetworkItem *>(parent())->isActive();
}
-bool BufferItem::setActivityLevel(Buffer::ActivityLevel level) {
- _activity = level;
- emit dataChanged();
- return true;
+void BufferItem::setActivityLevel(Buffer::ActivityLevel level) {
+ if(_activity != level) {
+ _activity = level;
+ emit dataChanged();
+ }
}
void BufferItem::updateActivityLevel(Buffer::ActivityLevel level) {
bool BufferItem::setData(int column, const QVariant &value, int role) {
switch(role) {
case NetworkModel::BufferActivityRole:
- return setActivityLevel((Buffer::ActivityLevel)value.toInt());
+ setActivityLevel((Buffer::ActivityLevel)value.toInt());
+ return true;
default:
return PropertyMapItem::setData(column, value, role);
}
UserCategoryItem *categoryItem = 0;
for(int i = 0; i < childCount(); i++) {
categoryItem = qobject_cast<UserCategoryItem *>(child(i));
- if(success = categoryItem->removeUser(ircUser)) {
+ if((success = categoryItem->removeUser(ircUser))) {
if(categoryItem->childCount() == 0)
removeChild(i);
break;
}
}
- if(!success) {
- qDebug() << "didn't find User:" << ircUser << qHash(ircUser);
- qDebug() << "==== Childlist for Item:" << this << id() << bufferName() << "====";
- for(int i = 0; i < childCount(); i++) {
- categoryItem = qobject_cast<UserCategoryItem *>(child(i));
- categoryItem->dumpChildList();
- }
- qDebug() << "==== End Of Childlist for Item:" << this << id() << bufferName() << "====";
- }
- Q_ASSERT(success);
+// if(!success) {
+// qDebug() << "didn't find User:" << ircUser << qHash(ircUser);
+// qDebug() << "==== Childlist for Item:" << this << id() << bufferName() << "====";
+// for(int i = 0; i < childCount(); i++) {
+// categoryItem = qobject_cast<UserCategoryItem *>(child(i));
+// categoryItem->dumpChildList();
+// }
+// qDebug() << "==== End Of Childlist for Item:" << this << id() << bufferName() << "====";
+// }
+// Q_ASSERT(success);
}
void BufferItem::userModeChanged(IrcUser *ircUser) {
toolTip.append(tr("<b>Topic:</b> %1").arg(_topic));
}
}
+ if(_ircChannel) {
+ QString channelMode = _ircChannel->channelModeString(); // channelModeString is compiled on the fly -> thus cache the result
+ if(!channelMode.isEmpty())
+ toolTip.append(tr("<b>Mode:</b> %1").arg(channelMode));
+ }
} else {
toolTip.append(tr("Not active <br /> Double-click to join"));
}
return false;
}
-IrcUser *IrcUserItem::ircUser() {
- return _ircUser;
-}
-
-quint64 IrcUserItem::id() const {
- return _id;
-}
-
QVariant IrcUserItem::data(int column, int role) const {
switch(role) {
case NetworkModel::ItemActiveRole: