00001 /* 00002 This file is part of OpieIRC - An embedded IRC client 00003 Copyright (C) 2005 Alberto 'Skyhusker' García Hierro 00004 <skyhusker@handhelds.org> 00005 00006 This program is free software; you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation; either version 2 of the License, or 00009 (at your option) any later version. 00010 00011 This program is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with this program; if not, write to the Free Software 00018 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00019 00020 */ 00021 00022 #ifndef IRCCHANNELPERSON_H 00023 #define IRCCHANNELPERSON_H 00024 00025 class QString; 00026 class IRCPerson; 00027 00028 /* This class encapsulates a IRCPerson and adds 00029 * channel specific information */ 00030 class IRCChannelPerson { 00031 00032 public: 00033 /* Flags which a person can have inside a channel */ 00034 enum IRCChannelPersonFlag { 00035 PERSON_FLAG_OP = 0x01, 00036 PERSON_FLAG_VOICE = 0x02, 00037 PERSON_FLAG_HALFOP = 0x04 00038 }; 00039 00040 IRCChannelPerson(IRCPerson *person = 0); 00041 ~IRCChannelPerson(); 00042 00043 QString setOp(const QString &nickname, bool set); 00044 QString setVoice(const QString &nickname, bool set); 00045 QString nick(); 00046 const unsigned int flags(); 00047 void setFlags(int flags); 00048 void setNick(const QString &nickname); 00049 00050 protected: 00051 IRCPerson *m_person; 00052 unsigned int m_flags; 00053 }; 00054 00055 #endif
1.4.2