Diffstat (limited to 'noncore/net/opieirc/ircchannelperson.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/opieirc/ircchannelperson.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/noncore/net/opieirc/ircchannelperson.h b/noncore/net/opieirc/ircchannelperson.h new file mode 100644 index 0000000..a8c4791 --- a/dev/null +++ b/noncore/net/opieirc/ircchannelperson.h @@ -0,0 +1,34 @@ +#ifndef IRCCHANNELPERSON_H +#define IRCCHANNELPERSON_H + +class QString; +class IRCPerson; + +/* This class encapsulates a IRCPerson and adds + * channel specific information */ +class IRCChannelPerson { + +public: + /* Flags which a person can have inside a channel */ + enum IRCChannelPersonFlag { + PERSON_FLAG_OP = 0x01, + PERSON_FLAG_VOICE = 0x02, + PERSON_FLAG_HALFOP = 0x04 + }; + + IRCChannelPerson(IRCPerson *person = 0); + ~IRCChannelPerson(); + + QString setOp(const QString &nickname, bool set); + QString setVoice(const QString &nickname, bool set); + QString nick(); + const unsigned int flags(); + void setFlags(int flags); + void setNick(const QString &nickname); + +protected: + IRCPerson *m_person; + unsigned int m_flags; +}; + +#endif |