projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Make behavior of input line history a bit more intuitive
[quassel.git]
/
src
/
common
/
ircchannel.h
diff --git
a/src/common/ircchannel.h
b/src/common/ircchannel.h
index
26340ce
..
5bcaa79
100644
(file)
--- a/
src/common/ircchannel.h
+++ b/
src/common/ircchannel.h
@@
-18,10
+18,11
@@
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
-#ifndef
_IRCCHANNEL_H_
-#define
_IRCCHANNEL_H_
+#ifndef
IRCCHANNEL_H
+#define
IRCCHANNEL_H
#include <QHash>
#include <QHash>
+#include <QSet>
#include <QString>
#include <QStringList>
#include <QVariantMap>
#include <QString>
#include <QStringList>
#include <QVariantMap>
@@
-30,7
+31,6
@@
class IrcUser;
class Network;
class IrcUser;
class Network;
-class SignalProxy;
class IrcChannel : public SyncableObject {
Q_OBJECT
class IrcChannel : public SyncableObject {
Q_OBJECT
@@
-55,6
+55,11
@@
public:
QString userModes(IrcUser *ircuser) const;
QString userModes(const QString &nick) const;
QString userModes(IrcUser *ircuser) const;
QString userModes(const QString &nick) const;
+ bool hasMode(const QChar &mode) const;
+ QString modeValue(const QChar &mode) const;
+ QStringList modeValueList(const QChar &mode) const;
+ QString channelModeString() const;
+
inline QTextCodec *codecForEncoding() const { return _codecForEncoding; }
inline QTextCodec *codecForDecoding() const { return _codecForDecoding; }
void setCodecForEncoding(const QString &codecName);
inline QTextCodec *codecForEncoding() const { return _codecForEncoding; }
inline QTextCodec *codecForDecoding() const { return _codecForDecoding; }
void setCodecForEncoding(const QString &codecName);
@@
-86,22
+91,26
@@
public slots:
void removeUserMode(IrcUser *ircuser, const QString &mode);
void removeUserMode(const QString &nick, const QString &mode);
void removeUserMode(IrcUser *ircuser, const QString &mode);
void removeUserMode(const QString &nick, const QString &mode);
+ void addChannelMode(const QChar &mode, const QString &value);
+ void removeChannelMode(const QChar &mode, const QString &value);
+
// init geters
QVariantMap initUserModes() const;
// init geters
QVariantMap initUserModes() const;
+ QVariantMap initChanModes() const;
// init seters
void initSetUserModes(const QVariantMap &usermodes);
// init seters
void initSetUserModes(const QVariantMap &usermodes);
+ void initSetChanModes(const QVariantMap &chanModes);
signals:
void topicSet(const QString &topic);
void passwordSet(const QString &password);
void userModesSet(QString nick, QString modes);
signals:
void topicSet(const QString &topic);
void passwordSet(const QString &password);
void userModesSet(QString nick, QString modes);
- //void userModesSet(IrcUser *ircuser, QString modes);
void userModeAdded(QString nick, QString mode);
void userModeAdded(QString nick, QString mode);
- //void userModeAdded(IrcUser *ircuser, QString mode);
void userModeRemoved(QString nick, QString mode);
void userModeRemoved(QString nick, QString mode);
- //void userModeRemoved(IrcUser *ircuser, QString mode);
-
+ void channelModeAdded(const QChar &mode, const QString &value);
+ void channelModeRemoved(const QChar &mode, const QString &value);
+
void ircUsersJoined(QList<IrcUser *> ircusers);
void ircUsersJoined(QStringList nicks, QStringList modes);
void ircUserParted(IrcUser *ircuser);
void ircUsersJoined(QList<IrcUser *> ircusers);
void ircUsersJoined(QStringList nicks, QStringList modes);
void ircUserParted(IrcUser *ircuser);
@@
-110,6
+119,8
@@
signals:
void ircUserModeRemoved(IrcUser *ircuser, QString mode);
void ircUserModesSet(IrcUser *ircuser, QString modes);
void ircUserModeRemoved(IrcUser *ircuser, QString mode);
void ircUserModesSet(IrcUser *ircuser, QString modes);
+ void parted(); // convenience signal emitted before channels destruction
+
private slots:
void ircUserDestroyed();
void ircUserNickSet(QString nick);
private slots:
void ircUserDestroyed();
void ircUserNickSet(QString nick);
@@
-126,6
+137,12
@@
private:
QTextCodec *_codecForEncoding;
QTextCodec *_codecForDecoding;
QTextCodec *_codecForEncoding;
QTextCodec *_codecForDecoding;
+
+ QHash<QChar, QStringList> _A_channelModes;
+ QHash<QChar, QString> _B_channelModes;
+ QHash<QChar, QString> _C_channelModes;
+ QSet<QChar> _D_channelModes;
+
};
#endif
};
#endif