X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fircchannel.cpp;h=edb2c710a1dfc104c727d3d2d20671c983a60411;hp=12f70c235c5c12d8bf617be25c515a25953fe554;hb=4aca5963302eb2f6dfc41b723df4b362704f1b2b;hpb=fd7c2c4a41b5bb9cffcfe7a8f86a28ab7f38ac27 diff --git a/src/common/ircchannel.cpp b/src/common/ircchannel.cpp index 12f70c23..edb2c710 100644 --- a/src/common/ircchannel.cpp +++ b/src/common/ircchannel.cpp @@ -40,11 +40,10 @@ IrcChannel::IrcChannel(const QString &channelname, Network *network) _topic(QString()), network(network) { - setObjectName(QString::number(network->networkId()) + "/" + channelname); + setObjectName(QString::number(network->networkId().toInt()) + "/" + channelname); } IrcChannel::~IrcChannel() { - } // ==================== @@ -73,10 +72,6 @@ bool IrcChannel::isValidChannelUserMode(const QString &mode) const { return isvalid; } -bool IrcChannel::initialized() const { - return _initialized; -} - QString IrcChannel::name() const { return _name; } @@ -147,7 +142,7 @@ void IrcChannel::setTopic(const QString &topic) { void IrcChannel::join(IrcUser *ircuser) { if(!_userModes.contains(ircuser) && ircuser) { _userModes[ircuser] = QString(); - ircuser->joinChannel(name()); + ircuser->joinChannel(this); //qDebug() << "JOIN" << name() << ircuser->nick() << ircUsers().count(); connect(ircuser, SIGNAL(nickSet(QString)), this, SLOT(ircUserNickSet(QString))); connect(ircuser, SIGNAL(destroyed()), this, SLOT(ircUserDestroyed())); @@ -164,11 +159,14 @@ void IrcChannel::join(const QString &nick) { void IrcChannel::part(IrcUser *ircuser) { if(isKnownUser(ircuser)) { _userModes.remove(ircuser); - ircuser->partChannel(name()); + ircuser->partChannel(this); //qDebug() << "PART" << name() << ircuser->nick() << ircUsers().count(); // if you wonder why there is no counterpart to ircUserParted: // the joines are propagted by the ircuser. the signal ircUserParted is only for convenience + disconnect(ircuser, 0, this, 0); emit ircUserParted(ircuser); + if(network->isMe(ircuser)) + deleteLater(); } } @@ -256,8 +254,3 @@ void IrcChannel::ircUserNickSet(QString nick) { emit ircUserNickSet(ircUser, nick); } -void IrcChannel::setInitialized() { - _initialized = true; - emit initDone(); -} -