+ if(_channels.contains(channel)) {
+ _channels.remove(channel);
+
+ Q_ASSERT(networkInfo->ircChannel(channel));
+ networkInfo->ircChannel(channel)->part(this);
+
+ emit channelParted(channel);
+ }
+}
+
+void IrcUser::setUserModes(const QString &modes) {
+ _userModes = modes;
+ emit userModesSet(modes);
+}
+
+void IrcUser::addUserMode(const QString &mode) {
+ if(!_userModes.contains(mode)) {
+ _userModes += mode;
+ emit userModeAdded(mode);
+ }