#ifndef _KVI_MSGTYPE_H_ #define _KVI_MSGTYPE_H_ // // File : kvi_msgtype.h // Creation date : Fri Jun 30 2000 13:50:11 by Szymon Stefanek // // This file is part of the KVirc irc client distribution // Copyright (C) 1999-2000 Szymon Stefanek (pragma at kvirc dot net) // // 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 opinion) any later version. // // This program is distributed in the HOPE that it will be USEFUL, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. // See the GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, write to the Free Software Foundation, // Inc. ,51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // #include "kvi_settings.h" #include "kvi_string.h" #define KVI_MSGTYPE_MINLEVEL 0 #define KVI_MSGTYPE_LEVEL_0 0 #define KVI_MSGTYPE_LEVEL_1 1 #define KVI_MSGTYPE_LEVEL_2 2 #define KVI_MSGTYPE_LEVEL_3 3 #define KVI_MSGTYPE_LEVEL_4 4 #define KVI_MSGTYPE_LEVEL_5 5 #define KVI_MSGTYPE_MAXLEVEL 5 // 1 : Common activity // 2 : People talking // 3 : Response messages (whois , dns) // 4 : // 5 : Highlighted text // FIXME: Check the message ranges!!! class KVILIB_API KviMsgType { public: KviMsgType(const char * type,int pixId,unsigned char fore,unsigned char back,bool bLog,int iLevel); KviMsgType(const KviMsgType &msg); ~KviMsgType(); public: const char * m_szType; int m_iPixId; unsigned char m_cForeColor; unsigned char m_cBackColor; bool m_bLogEnabled; int m_iLevel; public: void setBack(char back){ m_cBackColor = back; }; void setFore(char fore){ m_cForeColor = fore; }; int pixId(){ return m_iPixId; }; int level(){ return m_iLevel; }; void setLevel(int iLevel){ if((iLevel < KVI_MSGTYPE_MINLEVEL) || (iLevel > KVI_MSGTYPE_MAXLEVEL))m_iLevel = 1; else m_iLevel = iLevel; }; void setPixId(int pixId){ m_iPixId = pixId; }; unsigned char back(){ return m_cBackColor; }; unsigned char fore(){ return m_cForeColor; }; bool logEnabled(){ return m_bLogEnabled; }; void enableLogging(bool bEnable){ m_bLogEnabled = bEnable; }; const char * type(){ return m_szType; }; KviMsgType & operator=(const KviMsgType &msg); // deep copy }; #endif //_KVI_MSGTYPE_H_