+void Buffer::setIrcChannel(IrcChannel *ircchan) {
+ if(_ircChannel) {
+ disconnect(_ircChannel, 0, this, 0);
+ }
+ _ircChannel = ircchan;
+ if(_ircChannel) {
+ emit topicSet(_ircChannel->topic());
+ connect(_ircChannel, SIGNAL(topicSet(QString)), this, SIGNAL(topicSet(QString)));
+ connect(_ircChannel, SIGNAL(destroyed()), this, SLOT(setIrcChannel()));
+ }
+ _nickModel->setIrcChannel(ircChannel());
+}
+
+// no longer needed
+// back reference:
+
+// void Buffer::addNick(QString nick, QVariantMap props) {
+// if(nick == ownNick()) setActive(true);
+// nicks[nick] = props;
+// emit nickListChanged(nicks);
+// }
+
+// void Buffer::updateNick(QString nick, QVariantMap props) {
+// nicks[nick] = props;
+// emit nickListChanged(nicks);
+// }
+
+// void Buffer::renameNick(QString oldnick, QString newnick) {
+// QVariant v = nicks.take(oldnick);
+// nicks[newnick] = v;
+// emit nickListChanged(nicks);
+// }
+
+// void Buffer::removeNick(QString nick) {
+// if(nick == ownNick()) setActive(false);
+// nicks.remove(nick);
+// emit nickListChanged(nicks);
+// }
+
+// void Buffer::setOwnNick(QString nick) {
+// _ownNick = nick;
+// emit ownNickSet(nick);
+// }