class IrcChannel : public QObject {
Q_OBJECT
-
+
Q_PROPERTY(QString name READ name STORED false)
Q_PROPERTY(QString topic READ topic WRITE setTopic STORED false)
public:
IrcChannel(const QString &channelname, NetworkInfo *networkInfo);
+ ~IrcChannel();
bool isKnownUser(IrcUser *ircuser) const;
bool isValidChannelUserMode(const QString &mode) const;
QString name() const;
QString topic() const;
-
+
QList<IrcUser *> ircUsers() const;
-
+
QString userMode(IrcUser *ircuser) const;
QString userMode(const QString &nick) const;
void setUserModes(IrcUser *ircuser, const QString &modes);
void setUserModes(const QString &nick, const QString &modes);
-
+
void addUserMode(IrcUser *ircuser, const QString &mode);
void addUserMode(const QString &nick, const QString &mode);
-
+
void removeUserMode(IrcUser *ircuser, const QString &mode);
void removeUserMode(const QString &nick, const QString &mode);
// init seters
void initSetUserModes(const QVariantMap &usermodes);
-
+
void setInitialized();
signals:
void ircUserJoined(IrcUser *ircuser);
void ircUserParted(IrcUser *ircuser);
-
+
void initDone();
private slots:
QString _topic;
QHash<IrcUser *, QString> _userModes;
-
+
NetworkInfo *networkInfo;
};