/***************************************************************************
- * Copyright (C) 2005/06 by The Quassel Team *
+ * Copyright (C) 2005-07 by the Quassel IRC Team *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
class IrcUser : public QObject {
Q_OBJECT
-
+
Q_PROPERTY(QString user READ user WRITE setUser STORED false)
Q_PROPERTY(QString host READ host WRITE setHost STORED false)
Q_PROPERTY(QString nick READ nick WRITE setNick STORED false)
Q_PROPERTY(QStringList channels READ channels STORED false)
// Q_PROPERTY(QStringList usermodes READ usermodes WRITE setUsermodes)
-
+
public:
IrcUser(const QString &hostmask, NetworkInfo *networkInfo);
virtual ~IrcUser();
QString userModes() const;
QStringList channels() const;
-
-public slots:
+
+public slots:
void setUser(const QString &user);
void setHost(const QString &host);
void setNick(const QString &nick);
void updateHostmask(const QString &mask);
-
- void setUserModes(const QString &modes);
- void joinChannel(const QString &channel);
- void partChannel(const QString &channel);
+ void setUserModes(const QString &modes);
+
+ void joinChannel(IrcChannel *channel);
+ void joinChannel(const QString &channelname);
+ void partChannel(IrcChannel *channel);
+ void partChannel(const QString &channelname);
void addUserMode(const QString &mode);
void removeUserMode(const QString &mode);
// init seters
void initSetChannels(const QStringList channels);
-
+
void setInitialized();
signals:
void nickSet(QString newnick);
void hostmaskUpdated(QString mask);
- void channelsSet(QStringList channels);
void userModesSet(QString modes);
void channelJoined(QString channel);
private slots:
void updateObjectName();
+ void channelDestroyed();
private:
inline bool operator==(const IrcUser &ircuser2) {
QString _user;
QString _host;
- QSet<QString> _channels;
+ // QSet<QString> _channels;
+ QSet<IrcChannel *> _channels;
QString _userModes;
NetworkInfo *networkInfo;