X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcommon%2Fircchannel.cpp;h=3fd0ad5e75f405e08afd6a833636b264a1994297;hp=5c2ba7221f303fcb389cbf94c30b57cc72147f6e;hb=f9f40188bcdbc787ad3e2f5e29ad5223c755b252;hpb=f824db0e31b54969e0b7fa0b5405b1e9173d482c diff --git a/src/common/ircchannel.cpp b/src/common/ircchannel.cpp index 5c2ba722..3fd0ad5e 100644 --- a/src/common/ircchannel.cpp +++ b/src/common/ircchannel.cpp @@ -30,7 +30,7 @@ #include - +INIT_SYNCABLE_OBJECT(IrcChannel) IrcChannel::IrcChannel(const QString &channelname, Network *network) : SyncableObject(network), _initialized(false), @@ -116,12 +116,13 @@ QByteArray IrcChannel::encodeString(const QString &string) const { // ==================== void IrcChannel::setTopic(const QString &topic) { _topic = topic; + SYNC(ARG(topic)) emit topicSet(topic); } void IrcChannel::setPassword(const QString &password) { _password = password; - emit passwordSet(password); + SYNC(ARG(password)) } void IrcChannel::joinIrcUsers(const QList &users, const QStringList &modes) { @@ -148,6 +149,7 @@ void IrcChannel::joinIrcUsers(const QList &users, const QStringList & _userModes[ircuser] = modes[i]; ircuser->joinChannel(this); connect(ircuser, SIGNAL(nickSet(QString)), this, SLOT(ircUserNickSet(QString))); + // connect(ircuser, SIGNAL(destroyed()), this, SLOT(ircUserDestroyed())); // if you wonder why there is no counterpart to ircUserJoined: // the joines are propagted by the ircuser. the signal ircUserJoined is only for convenience @@ -159,9 +161,9 @@ void IrcChannel::joinIrcUsers(const QList &users, const QStringList & if(newNicks.isEmpty()) return; - + + SYNC_OTHER(joinIrcUsers, ARG(newNicks), ARG(newModes)); emit ircUsersJoined(newUsers); - emit ircUsersJoined(newNicks, newModes); } void IrcChannel::joinIrcUsers(const QStringList &nicks, const QStringList &modes) { @@ -171,7 +173,7 @@ void IrcChannel::joinIrcUsers(const QStringList &nicks, const QStringList &modes joinIrcUsers(users, modes); } -void IrcChannel::joinIrcUsers(IrcUser *ircuser) { +void IrcChannel::joinIrcUser(IrcUser *ircuser) { QList users; users << ircuser; QStringList modes; @@ -179,10 +181,6 @@ void IrcChannel::joinIrcUsers(IrcUser *ircuser) { joinIrcUsers(users, modes); } -void IrcChannel::joinIrcUsers(const QString &nick) { - joinIrcUsers(network->newIrcUser(nick)); -} - void IrcChannel::part(IrcUser *ircuser) { if(isKnownUser(ircuser)) { _userModes.remove(ircuser); @@ -215,7 +213,8 @@ void IrcChannel::part(const QString &nick) { void IrcChannel::setUserModes(IrcUser *ircuser, const QString &modes) { if(isKnownUser(ircuser)) { _userModes[ircuser] = modes; - emit userModesSet(ircuser->nick(), modes); + QString nick = ircuser->nick(); + SYNC_OTHER(setUserModes, ARG(nick), ARG(modes)) emit ircUserModesSet(ircuser, modes); } } @@ -231,7 +230,8 @@ void IrcChannel::addUserMode(IrcUser *ircuser, const QString &mode) { if(!_userModes[ircuser].contains(mode)) { _userModes[ircuser] += mode; - emit userModeAdded(ircuser->nick(), mode); + QString nick = ircuser->nick(); + SYNC_OTHER(addUserMode, ARG(nick), ARG(mode)) emit ircUserModeAdded(ircuser, mode); } @@ -248,7 +248,8 @@ void IrcChannel::removeUserMode(IrcUser *ircuser, const QString &mode) { if(_userModes[ircuser].contains(mode)) { _userModes[ircuser].remove(mode); - emit userModeRemoved(ircuser->nick(), mode); + QString nick = ircuser->nick(); + SYNC_OTHER(removeUserMode, ARG(nick), ARG(mode)); emit ircUserModeRemoved(ircuser, mode); } } @@ -432,7 +433,7 @@ void IrcChannel::addChannelMode(const QChar &mode, const QString &value) { _D_channelModes << mode; break; } - emit channelModeAdded(mode, value); + SYNC(ARG(mode), ARG(value)) } void IrcChannel::removeChannelMode(const QChar &mode, const QString &value) { @@ -458,7 +459,7 @@ void IrcChannel::removeChannelMode(const QChar &mode, const QString &value) { _D_channelModes.remove(mode); break; } - emit channelModeRemoved(mode, value); + SYNC(ARG(mode), ARG(value)) } bool IrcChannel::hasMode(const QChar &mode) const {